diff --git a/tsconfig.json b/common/tsconfig.json similarity index 69% rename from tsconfig.json rename to common/tsconfig.json index 0930fffea..928bbcacb 100644 --- a/tsconfig.json +++ b/common/tsconfig.json @@ -13,15 +13,8 @@ "@testing-library/jest-dom" ], "resolveJsonModule": true, - "baseUrl": ".", - "jsx": "react", "strictBindCallApply": true, "noUncheckedIndexedAccess": true, - "paths": { - "test-utils": [ - "./test/test-utils.tsx" - ] - }, - "skipLibCheck": true, - }, + "jsx": "react" + } } diff --git a/common/tsup.config.ts b/common/tsup.config.ts new file mode 100644 index 000000000..8a805af40 --- /dev/null +++ b/common/tsup.config.ts @@ -0,0 +1,17 @@ +import type { Options } from 'tsup'; +import styledComponentsPlugin from 'esbuild-plugin-styled-components'; + +export const tsupConfig: Options = { + // Here is the plugin for that allow us to use the + // styled-components CSS prop properly + // https://github.com/appzic/esbuild-plugin-styled-components + esbuildPlugins: [styledComponentsPlugin({})], + sourcemap: true, + clean: true, + dts: true, + minify: 'terser', + format: ['esm', 'cjs'], + metafile: true, + treeshake: true, + // silent: true, +}; diff --git a/common/vitest.config.ts b/common/vitest.config.ts new file mode 100644 index 000000000..0db276a39 --- /dev/null +++ b/common/vitest.config.ts @@ -0,0 +1,33 @@ +import react from '@vitejs/plugin-react'; +import { defineConfig } from 'vitest/config'; + +export const vitestConfig = defineConfig({ + // Here is the plugin for React that allow us to use the babel plugin for + // styled-components and test the CSS prop output properly + // https://styled-components.com/docs/tooling#babel-plugin + plugins: [ + react({ + babel: { + plugins: [ + [ + 'babel-plugin-styled-components', + { + ssr: false, + pure: true, + displayName: command !== 'build', + fileName: command !== 'build', + }, + ], + ], + }, + }), + ], + test: { + environment: 'happy-dom', + include: ['{src,stories}/**/*.test.ts?(x)'], + coverage: { + provider: 'v8', + include: ['{src,stories}/**/*'], + }, + }, +}); diff --git a/package-lock.json b/package-lock.json index 3c81b1cb2..5580c6a5a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,13 +1,12 @@ { "name": "genesys-ui", - "version": "14.3.1", + "version": "14.3.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "genesys-ui", - "version": "14.3.1", - "hasInstallScript": true, + "version": "14.3.2", "license": "MIT", "workspaces": [ "packages/core", @@ -47,6 +46,7 @@ "babel-plugin-styled-components": "^2.1.4", "dependency-cruiser": "^16.8.0", "dpdm": "^3.14.0", + "esbuild-plugin-styled-components": "^3.0.1", "framer-motion": "^11.15.0", "happy-dom": "^15.11.7", "identity-obj-proxy": "^3.0.0", @@ -63,11 +63,14 @@ "sass": "^1.83.0", "semver": "^7.6.3", "storybook": "^8.4.7", + "terser": "^5.37.0", "tocbot": "^4.32.2", "ts-node": "^10.9.2", + "tsup": "^8.3.5", "typescript": "^5.7.2", "vite": "^6.0.3", "vite-bundle-visualizer": "^1.2.1", + "vite-plugin-babel-macros": "^1.0.6", "vite-plugin-dts": "^4.3.0", "vite-tsconfig-paths": "^5.1.4", "vitest": "^2.1.8", @@ -700,9 +703,9 @@ "license": "MIT" }, "node_modules/@braintree/sanitize-url": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-7.1.0.tgz", - "integrity": "sha512-o+UlMLt49RvtCASlOMW0AkHnabN9wR9rwCCherxO0yG4Npy34GkvrAqdXQvrhNs+jh+gkK8gB8Lf05qL/O7KWg==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-7.1.1.tgz", + "integrity": "sha512-i1L7noDNxtFyL5DmZafWy1wRVhGehQmzZaz1HiN5e7iylJMSZR7ekOV7NsIqa5qBldlLrsKv4HbgFUVlQrz8Mw==", "dev": true, "license": "MIT" }, @@ -822,7 +825,6 @@ "version": "8.1.1", "resolved": "https://registry.npmjs.org/@devoinc/genesys-brand-devo/-/genesys-brand-devo-8.1.1.tgz", "integrity": "sha512-B1jJJD6wNmo4lVUlb/LuMwjGcinGN/0tOgyONHXZ0zhAFVmvG9x6VnndpwlmVK0Eno27x+hG2F1QmIvyatLhCA==", - "dev": true, "license": "MIT", "engines": { "node": ">=18", @@ -833,9 +835,9 @@ } }, "node_modules/@devoinc/genesys-icons": { - "version": "6.3.2", - "resolved": "https://registry.npmjs.org/@devoinc/genesys-icons/-/genesys-icons-6.3.2.tgz", - "integrity": "sha512-41RiMEGR3X893XZ4ltptgvMY/xXkR4OjrVvxmu86zMdrJRupZ/10hLBPXx6o5+VlTwWiVGnButRSsiitmn7jfw==", + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/@devoinc/genesys-icons/-/genesys-icons-6.3.3.tgz", + "integrity": "sha512-4r/1lii5sICL2fO0vE1f23FEC7T3jBBpib7L70hDySk1DjP/h5Xi9sO9EpoNoNGCJ2GROlsc/oayN2lx4rEVug==", "engines": { "node": ">=18", "npm": ">=7" @@ -1169,9 +1171,9 @@ "peer": true }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.0.tgz", - "integrity": "sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz", + "integrity": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==", "cpu": [ "ppc64" ], @@ -1186,9 +1188,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.0.tgz", - "integrity": "sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz", + "integrity": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==", "cpu": [ "arm" ], @@ -1203,9 +1205,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.0.tgz", - "integrity": "sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz", + "integrity": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==", "cpu": [ "arm64" ], @@ -1220,9 +1222,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.0.tgz", - "integrity": "sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz", + "integrity": "sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==", "cpu": [ "x64" ], @@ -1237,9 +1239,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.0.tgz", - "integrity": "sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz", + "integrity": "sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==", "cpu": [ "arm64" ], @@ -1254,9 +1256,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.0.tgz", - "integrity": "sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz", + "integrity": "sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==", "cpu": [ "x64" ], @@ -1271,9 +1273,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.0.tgz", - "integrity": "sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz", + "integrity": "sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==", "cpu": [ "arm64" ], @@ -1288,9 +1290,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.0.tgz", - "integrity": "sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz", + "integrity": "sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==", "cpu": [ "x64" ], @@ -1305,9 +1307,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.0.tgz", - "integrity": "sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz", + "integrity": "sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==", "cpu": [ "arm" ], @@ -1322,9 +1324,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.0.tgz", - "integrity": "sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz", + "integrity": "sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==", "cpu": [ "arm64" ], @@ -1339,9 +1341,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.0.tgz", - "integrity": "sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz", + "integrity": "sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==", "cpu": [ "ia32" ], @@ -1356,9 +1358,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.0.tgz", - "integrity": "sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz", + "integrity": "sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==", "cpu": [ "loong64" ], @@ -1373,9 +1375,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.0.tgz", - "integrity": "sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz", + "integrity": "sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==", "cpu": [ "mips64el" ], @@ -1390,9 +1392,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.0.tgz", - "integrity": "sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz", + "integrity": "sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==", "cpu": [ "ppc64" ], @@ -1407,9 +1409,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.0.tgz", - "integrity": "sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz", + "integrity": "sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==", "cpu": [ "riscv64" ], @@ -1424,9 +1426,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.0.tgz", - "integrity": "sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz", + "integrity": "sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==", "cpu": [ "s390x" ], @@ -1441,9 +1443,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.0.tgz", - "integrity": "sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz", + "integrity": "sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==", "cpu": [ "x64" ], @@ -1457,10 +1459,27 @@ "node": ">=18" } }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz", + "integrity": "sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.0.tgz", - "integrity": "sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz", + "integrity": "sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==", "cpu": [ "x64" ], @@ -1475,9 +1494,9 @@ } }, "node_modules/@esbuild/openbsd-arm64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.0.tgz", - "integrity": "sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz", + "integrity": "sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==", "cpu": [ "arm64" ], @@ -1492,9 +1511,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.0.tgz", - "integrity": "sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz", + "integrity": "sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==", "cpu": [ "x64" ], @@ -1509,9 +1528,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.0.tgz", - "integrity": "sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz", + "integrity": "sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==", "cpu": [ "x64" ], @@ -1526,9 +1545,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.0.tgz", - "integrity": "sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz", + "integrity": "sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==", "cpu": [ "arm64" ], @@ -1543,9 +1562,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.0.tgz", - "integrity": "sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz", + "integrity": "sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==", "cpu": [ "ia32" ], @@ -1560,9 +1579,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.0.tgz", - "integrity": "sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz", + "integrity": "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==", "cpu": [ "x64" ], @@ -1772,9 +1791,9 @@ } }, "node_modules/@inquirer/figures": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.8.tgz", - "integrity": "sha512-tKd+jsmhq21AP1LhexC0pPwsCxEhGgAkg28byjJAd+xhmIs8LUX8JbUc3vBf3PhLxWiB5EvyBE5X7JSPAqMAqg==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.9.tgz", + "integrity": "sha512-BXvGj0ehzrngHTPTDqUoDT3NXL8U0RxUk2zJm2A66RhCEIWdtU1v6GuUqNAgArW4PQ9CinqIWyHdQgdwOj06zQ==", "dev": true, "license": "MIT", "engines": { @@ -2066,7 +2085,6 @@ "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25" @@ -2991,9 +3009,9 @@ } }, "node_modules/@release-it/conventional-changelog": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/@release-it/conventional-changelog/-/conventional-changelog-9.0.3.tgz", - "integrity": "sha512-+3TL+B89Kc+VTbfGxpTvJkbegWt5XIzkovsYVJyoZpOZDG07v25FU8c5R5Q8yNUs76Ikfq0sp+ZTTxmefG4Hiw==", + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/@release-it/conventional-changelog/-/conventional-changelog-9.0.4.tgz", + "integrity": "sha512-eSZVATX2qiyxzpXdIVNczxTGR+uD4lG/ZEfDDYBJ8vKIj6fKp+eYicIS8Ff/eL3bA9XiQTmllKqxPRzmz9d45w==", "dev": true, "license": "MIT", "dependencies": { @@ -3034,9 +3052,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.28.1.tgz", - "integrity": "sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.29.1.tgz", + "integrity": "sha512-ssKhA8RNltTZLpG6/QNkCSge+7mBQGUqJRisZ2MDQcEGaK93QESEgWK2iOpIDZ7k9zPVkG5AS3ksvD5ZWxmItw==", "cpu": [ "arm" ], @@ -3048,9 +3066,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.28.1.tgz", - "integrity": "sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.29.1.tgz", + "integrity": "sha512-CaRfrV0cd+NIIcVVN/jx+hVLN+VRqnuzLRmfmlzpOzB87ajixsN/+9L5xNmkaUUvEbI5BmIKS+XTwXsHEb65Ew==", "cpu": [ "arm64" ], @@ -3062,9 +3080,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.28.1.tgz", - "integrity": "sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.29.1.tgz", + "integrity": "sha512-2ORr7T31Y0Mnk6qNuwtyNmy14MunTAMx06VAPI6/Ju52W10zk1i7i5U3vlDRWjhOI5quBcrvhkCHyF76bI7kEw==", "cpu": [ "arm64" ], @@ -3076,9 +3094,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.28.1.tgz", - "integrity": "sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.29.1.tgz", + "integrity": "sha512-j/Ej1oanzPjmN0tirRd5K2/nncAhS9W6ICzgxV+9Y5ZsP0hiGhHJXZ2JQ53iSSjj8m6cRY6oB1GMzNn2EUt6Ng==", "cpu": [ "x64" ], @@ -3090,9 +3108,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.28.1.tgz", - "integrity": "sha512-HTDPdY1caUcU4qK23FeeGxCdJF64cKkqajU0iBnTVxS8F7H/7BewvYoG+va1KPSL63kQ1PGNyiwKOfReavzvNA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.29.1.tgz", + "integrity": "sha512-91C//G6Dm/cv724tpt7nTyP+JdN12iqeXGFM1SqnljCmi5yTXriH7B1r8AD9dAZByHpKAumqP1Qy2vVNIdLZqw==", "cpu": [ "arm64" ], @@ -3104,9 +3122,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.28.1.tgz", - "integrity": "sha512-m/uYasxkUevcFTeRSM9TeLyPe2QDuqtjkeoTpP9SW0XxUWfcYrGDMkO/m2tTw+4NMAF9P2fU3Mw4ahNvo7QmsQ==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.29.1.tgz", + "integrity": "sha512-hEioiEQ9Dec2nIRoeHUP6hr1PSkXzQaCUyqBDQ9I9ik4gCXQZjJMIVzoNLBRGet+hIUb3CISMh9KXuCcWVW/8w==", "cpu": [ "x64" ], @@ -3118,9 +3136,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.28.1.tgz", - "integrity": "sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.29.1.tgz", + "integrity": "sha512-Py5vFd5HWYN9zxBv3WMrLAXY3yYJ6Q/aVERoeUFwiDGiMOWsMs7FokXihSOaT/PMWUty/Pj60XDQndK3eAfE6A==", "cpu": [ "arm" ], @@ -3132,9 +3150,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.28.1.tgz", - "integrity": "sha512-dRP9PEBfolq1dmMcFqbEPSd9VlRuVWEGSmbxVEfiq2cs2jlZAl0YNxFzAQS2OrQmsLBLAATDMb3Z6MFv5vOcXg==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.29.1.tgz", + "integrity": "sha512-RiWpGgbayf7LUcuSNIbahr0ys2YnEERD4gYdISA06wa0i8RALrnzflh9Wxii7zQJEB2/Eh74dX4y/sHKLWp5uQ==", "cpu": [ "arm" ], @@ -3146,9 +3164,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.28.1.tgz", - "integrity": "sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.29.1.tgz", + "integrity": "sha512-Z80O+taYxTQITWMjm/YqNoe9d10OX6kDh8X5/rFCMuPqsKsSyDilvfg+vd3iXIqtfmp+cnfL1UrYirkaF8SBZA==", "cpu": [ "arm64" ], @@ -3160,9 +3178,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.28.1.tgz", - "integrity": "sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.29.1.tgz", + "integrity": "sha512-fOHRtF9gahwJk3QVp01a/GqS4hBEZCV1oKglVVq13kcK3NeVlS4BwIFzOHDbmKzt3i0OuHG4zfRP0YoG5OF/rA==", "cpu": [ "arm64" ], @@ -3174,9 +3192,9 @@ ] }, "node_modules/@rollup/rollup-linux-loongarch64-gnu": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.28.1.tgz", - "integrity": "sha512-vPul4uodvWvLhRco2w0GcyZcdyBfpfDRgNKU+p35AWEbJ/HPs1tOUrkSueVbBS0RQHAf/A+nNtDpvw95PeVKOA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.29.1.tgz", + "integrity": "sha512-5a7q3tnlbcg0OodyxcAdrrCxFi0DgXJSoOuidFUzHZ2GixZXQs6Tc3CHmlvqKAmOs5eRde+JJxeIf9DonkmYkw==", "cpu": [ "loong64" ], @@ -3188,9 +3206,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.28.1.tgz", - "integrity": "sha512-pTnTdBuC2+pt1Rmm2SV7JWRqzhYpEILML4PKODqLz+C7Ou2apEV52h19CR7es+u04KlqplggmN9sqZlekg3R1A==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.29.1.tgz", + "integrity": "sha512-9b4Mg5Yfz6mRnlSPIdROcfw1BU22FQxmfjlp/CShWwO3LilKQuMISMTtAu/bxmmrE6A902W2cZJuzx8+gJ8e9w==", "cpu": [ "ppc64" ], @@ -3202,9 +3220,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.28.1.tgz", - "integrity": "sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.29.1.tgz", + "integrity": "sha512-G5pn0NChlbRM8OJWpJFMX4/i8OEU538uiSv0P6roZcbpe/WfhEO+AT8SHVKfp8qhDQzaz7Q+1/ixMy7hBRidnQ==", "cpu": [ "riscv64" ], @@ -3216,9 +3234,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.28.1.tgz", - "integrity": "sha512-/yqC2Y53oZjb0yz8PVuGOQQNOTwxcizudunl/tFs1aLvObTclTwZ0JhXF2XcPT/zuaymemCDSuuUPXJJyqeDOg==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.29.1.tgz", + "integrity": "sha512-WM9lIkNdkhVwiArmLxFXpWndFGuOka4oJOZh8EP3Vb8q5lzdSCBuhjavJsw68Q9AKDGeOOIHYzYm4ZFvmWez5g==", "cpu": [ "s390x" ], @@ -3230,9 +3248,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.28.1.tgz", - "integrity": "sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.29.1.tgz", + "integrity": "sha512-87xYCwb0cPGZFoGiErT1eDcssByaLX4fc0z2nRM6eMtV9njAfEE6OW3UniAoDhX4Iq5xQVpE6qO9aJbCFumKYQ==", "cpu": [ "x64" ], @@ -3244,9 +3262,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.28.1.tgz", - "integrity": "sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.29.1.tgz", + "integrity": "sha512-xufkSNppNOdVRCEC4WKvlR1FBDyqCSCpQeMMgv9ZyXqqtKBfkw1yfGMTUTs9Qsl6WQbJnsGboWCp7pJGkeMhKA==", "cpu": [ "x64" ], @@ -3258,9 +3276,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.28.1.tgz", - "integrity": "sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.29.1.tgz", + "integrity": "sha512-F2OiJ42m77lSkizZQLuC+jiZ2cgueWQL5YC9tjo3AgaEw+KJmVxHGSyQfDUoYR9cci0lAywv2Clmckzulcq6ig==", "cpu": [ "arm64" ], @@ -3272,9 +3290,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.28.1.tgz", - "integrity": "sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.29.1.tgz", + "integrity": "sha512-rYRe5S0FcjlOBZQHgbTKNrqxCBUmgDJem/VQTCcTnA2KCabYSWQDrytOzX7avb79cAAweNmMUb/Zw18RNd4mng==", "cpu": [ "ia32" ], @@ -3286,9 +3304,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.28.1.tgz", - "integrity": "sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.29.1.tgz", + "integrity": "sha512-+10CMg9vt1MoHj6x1pxyjPSMjHTIlqs8/tBztXvPAx24SKs9jwVnKqHJumlH/IzhaPUaj3T6T6wfZr8okdXaIg==", "cpu": [ "x64" ], @@ -3815,9 +3833,9 @@ } }, "node_modules/@storybook/csf": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/@storybook/csf/-/csf-0.1.12.tgz", - "integrity": "sha512-9/exVhabisyIVL0VxTCxo01Tdm8wefIXKXfltAPTSr8cbLn5JAxGQ6QV3mjdecLGEOucfoVhAKtJfVHxEK1iqw==", + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/@storybook/csf/-/csf-0.1.13.tgz", + "integrity": "sha512-7xOOwCLGB3ebM87eemep89MYRFTko+D8qE7EdAAq74lgdqRR5cOUtYWJLjO2dLtP94nqoOdHJo6MdLLKzg412Q==", "dev": true, "license": "MIT", "dependencies": { @@ -4931,8 +4949,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/@types/prop-types": { "version": "15.7.14", @@ -5838,6 +5855,13 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true, + "license": "MIT" + }, "node_modules/arg": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", @@ -5943,7 +5967,6 @@ "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", "license": "MIT", - "peer": true, "dependencies": { "@babel/runtime": "^7.12.5", "cosmiconfig": "^7.0.0", @@ -5959,7 +5982,6 @@ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", "license": "MIT", - "peer": true, "dependencies": { "@types/parse-json": "^4.0.0", "import-fresh": "^3.2.1", @@ -5976,7 +5998,6 @@ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "license": "MIT", - "peer": true, "dependencies": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", @@ -5995,7 +6016,6 @@ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "license": "MIT", - "peer": true, "engines": { "node": ">=8" } @@ -6005,7 +6025,6 @@ "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "license": "ISC", - "peer": true, "engines": { "node": ">= 6" } @@ -6262,9 +6281,9 @@ } }, "node_modules/boxen/node_modules/type-fest": { - "version": "4.30.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.2.tgz", - "integrity": "sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig==", + "version": "4.31.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz", + "integrity": "sha512-yCxltHW07Nkhv/1F6wWBr8kz+5BGMfP+RbRSYFnegVb0qV/UMT0G0ElBloPVerqn4M2ZV80Ir1FtCcYv1cT6vQ==", "dev": true, "license": "(MIT OR CC0-1.0)", "engines": { @@ -6402,6 +6421,22 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/bundle-require": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-5.1.0.tgz", + "integrity": "sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "load-tsconfig": "^0.2.3" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "peerDependencies": { + "esbuild": ">=0.18" + } + }, "node_modules/cac": { "version": "6.7.14", "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", @@ -6968,9 +7003,9 @@ } }, "node_modules/configstore/node_modules/type-fest": { - "version": "4.30.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.2.tgz", - "integrity": "sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig==", + "version": "4.31.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz", + "integrity": "sha512-yCxltHW07Nkhv/1F6wWBr8kz+5BGMfP+RbRSYFnegVb0qV/UMT0G0ElBloPVerqn4M2ZV80Ir1FtCcYv1cT6vQ==", "dev": true, "license": "(MIT OR CC0-1.0)", "engines": { @@ -6980,6 +7015,16 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/consola": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.3.2.tgz", + "integrity": "sha512-X3dcWPU+QeEaPrdtX3zBRQ0P0kIeEnmJV49uNtpy4N/TPnzA3grJvHftKjHuFIQNLrqBPzzykmc3fNrkQDl5yA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, "node_modules/conventional-changelog": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-6.0.0.tgz", @@ -8395,9 +8440,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.75", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.75.tgz", - "integrity": "sha512-Lf3++DumRE/QmweGjU+ZcKqQ+3bKkU/qjaKYhIJKEOhgIO9Xs6IiAQFkfFoj+RhgDk4LUeNsLo6plExHqSyu6Q==", + "version": "1.5.76", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.76.tgz", + "integrity": "sha512-CjVQyG7n7Sr+eBXE86HIulnL5N8xZY1sgmOPGuq/F0Rr0FJq63lg0kEtOIDfZBk44FnDLf6FUJ+dsJcuiUDdDQ==", "dev": true, "license": "ISC" }, @@ -8409,9 +8454,9 @@ "license": "MIT" }, "node_modules/enhanced-resolve": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", - "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.0.tgz", + "integrity": "sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ==", "dev": true, "license": "MIT", "dependencies": { @@ -8502,9 +8547,9 @@ } }, "node_modules/esbuild": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.0.tgz", - "integrity": "sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==", + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz", + "integrity": "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -8515,30 +8560,42 @@ "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.24.0", - "@esbuild/android-arm": "0.24.0", - "@esbuild/android-arm64": "0.24.0", - "@esbuild/android-x64": "0.24.0", - "@esbuild/darwin-arm64": "0.24.0", - "@esbuild/darwin-x64": "0.24.0", - "@esbuild/freebsd-arm64": "0.24.0", - "@esbuild/freebsd-x64": "0.24.0", - "@esbuild/linux-arm": "0.24.0", - "@esbuild/linux-arm64": "0.24.0", - "@esbuild/linux-ia32": "0.24.0", - "@esbuild/linux-loong64": "0.24.0", - "@esbuild/linux-mips64el": "0.24.0", - "@esbuild/linux-ppc64": "0.24.0", - "@esbuild/linux-riscv64": "0.24.0", - "@esbuild/linux-s390x": "0.24.0", - "@esbuild/linux-x64": "0.24.0", - "@esbuild/netbsd-x64": "0.24.0", - "@esbuild/openbsd-arm64": "0.24.0", - "@esbuild/openbsd-x64": "0.24.0", - "@esbuild/sunos-x64": "0.24.0", - "@esbuild/win32-arm64": "0.24.0", - "@esbuild/win32-ia32": "0.24.0", - "@esbuild/win32-x64": "0.24.0" + "@esbuild/aix-ppc64": "0.24.2", + "@esbuild/android-arm": "0.24.2", + "@esbuild/android-arm64": "0.24.2", + "@esbuild/android-x64": "0.24.2", + "@esbuild/darwin-arm64": "0.24.2", + "@esbuild/darwin-x64": "0.24.2", + "@esbuild/freebsd-arm64": "0.24.2", + "@esbuild/freebsd-x64": "0.24.2", + "@esbuild/linux-arm": "0.24.2", + "@esbuild/linux-arm64": "0.24.2", + "@esbuild/linux-ia32": "0.24.2", + "@esbuild/linux-loong64": "0.24.2", + "@esbuild/linux-mips64el": "0.24.2", + "@esbuild/linux-ppc64": "0.24.2", + "@esbuild/linux-riscv64": "0.24.2", + "@esbuild/linux-s390x": "0.24.2", + "@esbuild/linux-x64": "0.24.2", + "@esbuild/netbsd-arm64": "0.24.2", + "@esbuild/netbsd-x64": "0.24.2", + "@esbuild/openbsd-arm64": "0.24.2", + "@esbuild/openbsd-x64": "0.24.2", + "@esbuild/sunos-x64": "0.24.2", + "@esbuild/win32-arm64": "0.24.2", + "@esbuild/win32-ia32": "0.24.2", + "@esbuild/win32-x64": "0.24.2" + } + }, + "node_modules/esbuild-plugin-styled-components": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/esbuild-plugin-styled-components/-/esbuild-plugin-styled-components-3.0.1.tgz", + "integrity": "sha512-yhqHjVykhfek3TCLZQlLr6VSIrIbwAdwhn3Hpqj/n7KxEMcb3k/rkzO7U7BosbaC7TItJMyOauNwtGoioz4A1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.22.1", + "babel-plugin-styled-components": "^2.1.3" } }, "node_modules/esbuild-register": { @@ -8814,9 +8871,9 @@ "license": "BSD-3-Clause" }, "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.18.0.tgz", + "integrity": "sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==", "dev": true, "license": "ISC", "dependencies": { @@ -8837,6 +8894,21 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/fdir": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.2.tgz", + "integrity": "sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, "node_modules/figures": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/figures/-/figures-6.1.0.tgz", @@ -8874,9 +8946,9 @@ } }, "node_modules/filepond": { - "version": "4.32.5", - "resolved": "https://registry.npmjs.org/filepond/-/filepond-4.32.5.tgz", - "integrity": "sha512-KAY0C0DzEdJNblMY3sZAVKQqfsqefHU3YWZlC1xH1AAMrMfryOo5wP5QMMWGvZ0ieHetcyDXoZPMyHhvWHfQJw==", + "version": "4.32.6", + "resolved": "https://registry.npmjs.org/filepond/-/filepond-4.32.6.tgz", + "integrity": "sha512-9EM6Vvny3K5s7guxegedByQx8n6ycUFaoF+Wo20+t1DYNt+vQaOtkGy2jnY8/2roAlskUnwJI1rAnAhzBPXwiw==", "license": "MIT", "peer": true }, @@ -9960,9 +10032,9 @@ } }, "node_modules/is-core-module": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.0.tgz", - "integrity": "sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==", + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "license": "MIT", "dependencies": { "hasown": "^2.0.2" @@ -10384,6 +10456,16 @@ "dev": true, "license": "MIT" }, + "node_modules/joycon": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/joycon/-/joycon-3.1.1.tgz", + "integrity": "sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, "node_modules/js-cookie": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.5.tgz", @@ -10590,12 +10672,35 @@ "dev": true, "license": "MIT" }, + "node_modules/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "license": "MIT" }, + "node_modules/load-tsconfig": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/load-tsconfig/-/load-tsconfig-0.2.5.tgz", + "integrity": "sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, "node_modules/loader-runner": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", @@ -10687,6 +10792,13 @@ "dev": true, "license": "MIT" }, + "node_modules/lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", + "dev": true, + "license": "MIT" + }, "node_modules/lodash.uniqby": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz", @@ -12053,6 +12165,18 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, "node_modules/nanoid": { "version": "3.3.8", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", @@ -12169,7 +12293,6 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "license": "MIT", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -12449,9 +12572,9 @@ "license": "BlueOak-1.0.0" }, "node_modules/package-manager-detector": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-0.2.7.tgz", - "integrity": "sha512-g4+387DXDKlZzHkP+9FLt8yKj8+/3tOkPv7DVTJGGRm00RkEWgqbFstX1mXJ4M0VDYhUqsTOiISqNOJnhAu3PQ==", + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-0.2.8.tgz", + "integrity": "sha512-ts9KSdroZisdvKMWVAVCXiKqnqNfXz4+IbrBG8/BWx/TR5le+jfenvoBuIZ6UWM9nz47W7AbD9qYfAwfWMIwzA==", "dev": true, "license": "MIT" }, @@ -12505,9 +12628,9 @@ } }, "node_modules/parse-json/node_modules/type-fest": { - "version": "4.30.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.2.tgz", - "integrity": "sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig==", + "version": "4.31.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz", + "integrity": "sha512-yCxltHW07Nkhv/1F6wWBr8kz+5BGMfP+RbRSYFnegVb0qV/UMT0G0ElBloPVerqn4M2ZV80Ir1FtCcYv1cT6vQ==", "dev": true, "license": "(MIT OR CC0-1.0)", "engines": { @@ -12696,6 +12819,16 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, "node_modules/pkg-types": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.2.1.tgz", @@ -12777,6 +12910,49 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/postcss-load-config": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-6.0.1.tgz", + "integrity": "sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "lilconfig": "^3.1.1" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "jiti": ">=1.21.0", + "postcss": ">=8.0.9", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + }, + "postcss": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, "node_modules/postcss-modules-extract-imports": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", @@ -13005,20 +13181,20 @@ "license": "MIT" }, "node_modules/proxy-agent": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.4.0.tgz", - "integrity": "sha512-u0piLU+nCOHMgGjRbimiXmA9kM/L9EHh3zL81xCdp7m+Y2pHIsnmbdDoEDoAz5geaonNR6q6+yOPQs6n4T6sBQ==", + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.5.0.tgz", + "integrity": "sha512-TmatMXdr2KlRiA2CyDu8GqR8EjahTG3aY3nXjdzFyoZbmB8hrBsTyMezhULIXKnC0jpfjlmiZ3+EaCzoInSu/A==", "dev": true, "license": "MIT", "dependencies": { - "agent-base": "^7.0.2", + "agent-base": "^7.1.2", "debug": "^4.3.4", "http-proxy-agent": "^7.0.1", - "https-proxy-agent": "^7.0.3", + "https-proxy-agent": "^7.0.6", "lru-cache": "^7.14.1", - "pac-proxy-agent": "^7.0.1", + "pac-proxy-agent": "^7.1.0", "proxy-from-env": "^1.1.0", - "socks-proxy-agent": "^8.0.2" + "socks-proxy-agent": "^8.0.5" }, "engines": { "node": ">= 14" @@ -13433,9 +13609,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.30.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.2.tgz", - "integrity": "sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig==", + "version": "4.31.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz", + "integrity": "sha512-yCxltHW07Nkhv/1F6wWBr8kz+5BGMfP+RbRSYFnegVb0qV/UMT0G0ElBloPVerqn4M2ZV80Ir1FtCcYv1cT6vQ==", "dev": true, "license": "(MIT OR CC0-1.0)", "engines": { @@ -13466,9 +13642,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.30.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.2.tgz", - "integrity": "sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig==", + "version": "4.31.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz", + "integrity": "sha512-yCxltHW07Nkhv/1F6wWBr8kz+5BGMfP+RbRSYFnegVb0qV/UMT0G0ElBloPVerqn4M2ZV80Ir1FtCcYv1cT6vQ==", "dev": true, "license": "(MIT OR CC0-1.0)", "engines": { @@ -13672,9 +13848,9 @@ } }, "node_modules/release-it": { - "version": "17.10.0", - "resolved": "https://registry.npmjs.org/release-it/-/release-it-17.10.0.tgz", - "integrity": "sha512-00cXYEl7RFD5NnjXpwaH9JFjpwe8w3NcfUd4XPxrKQkszp1xppPo42zK9eSbxStKyPA5CVk2KmKPDPDiAKVJTA==", + "version": "17.11.0", + "resolved": "https://registry.npmjs.org/release-it/-/release-it-17.11.0.tgz", + "integrity": "sha512-qQGgfMbUZ3/vpXUPmngsgjFObOLjlkwtiozHUYen9fo9AEGciXjG1ZpGr+FNmuBT8R7TOSY+x/s84wOCRKJjbA==", "dev": true, "funding": [ { @@ -13691,8 +13867,8 @@ "@iarna/toml": "2.2.5", "@octokit/rest": "20.1.1", "async-retry": "1.3.3", - "chalk": "5.3.0", - "ci-info": "^4.0.0", + "chalk": "5.4.1", + "ci-info": "^4.1.0", "cosmiconfig": "9.0.0", "execa": "8.0.0", "git-url-parse": "14.0.0", @@ -13703,14 +13879,14 @@ "mime-types": "2.1.35", "new-github-release-url": "2.0.0", "open": "10.1.0", - "ora": "8.1.0", + "ora": "8.1.1", "os-name": "5.1.0", - "proxy-agent": "6.4.0", + "proxy-agent": "6.5.0", "semver": "7.6.3", "shelljs": "0.8.5", "update-notifier": "7.3.1", "url-join": "5.0.0", - "wildcard-match": "5.1.3", + "wildcard-match": "5.1.4", "yargs-parser": "21.1.1" }, "bin": { @@ -13733,6 +13909,19 @@ "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, + "node_modules/release-it/node_modules/chalk": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", + "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, "node_modules/release-it/node_modules/cli-cursor": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-5.0.0.tgz", @@ -13898,9 +14087,9 @@ } }, "node_modules/release-it/node_modules/ora": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/ora/-/ora-8.1.0.tgz", - "integrity": "sha512-GQEkNkH/GHOhPFXcqZs3IDahXEQcQxsSjEkK4KvEEST4t7eNzoMjxTzef+EZ+JluDEV+Raoi3WQ2CflnRdSVnQ==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-8.1.1.tgz", + "integrity": "sha512-YWielGi1XzG1UTvOaCFaNgEnuhZVMSHYkW/FQ7UX8O26PtlpdM84c0f7wLPlkvx2RfiQmnzd61d/MGxmpQeJPw==", "dev": true, "license": "MIT", "dependencies": { @@ -14196,9 +14385,9 @@ "license": "Unlicense" }, "node_modules/rollup": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.28.1.tgz", - "integrity": "sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.29.1.tgz", + "integrity": "sha512-RaJ45M/kmJUzSWDs1Nnd5DdV4eerC98idtUOVr6FfKcgxqvjwHmxc5upLF9qZU9EpsVzzhleFahrT3shLuJzIw==", "dev": true, "license": "MIT", "dependencies": { @@ -14212,25 +14401,25 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.28.1", - "@rollup/rollup-android-arm64": "4.28.1", - "@rollup/rollup-darwin-arm64": "4.28.1", - "@rollup/rollup-darwin-x64": "4.28.1", - "@rollup/rollup-freebsd-arm64": "4.28.1", - "@rollup/rollup-freebsd-x64": "4.28.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.28.1", - "@rollup/rollup-linux-arm-musleabihf": "4.28.1", - "@rollup/rollup-linux-arm64-gnu": "4.28.1", - "@rollup/rollup-linux-arm64-musl": "4.28.1", - "@rollup/rollup-linux-loongarch64-gnu": "4.28.1", - "@rollup/rollup-linux-powerpc64le-gnu": "4.28.1", - "@rollup/rollup-linux-riscv64-gnu": "4.28.1", - "@rollup/rollup-linux-s390x-gnu": "4.28.1", - "@rollup/rollup-linux-x64-gnu": "4.28.1", - "@rollup/rollup-linux-x64-musl": "4.28.1", - "@rollup/rollup-win32-arm64-msvc": "4.28.1", - "@rollup/rollup-win32-ia32-msvc": "4.28.1", - "@rollup/rollup-win32-x64-msvc": "4.28.1", + "@rollup/rollup-android-arm-eabi": "4.29.1", + "@rollup/rollup-android-arm64": "4.29.1", + "@rollup/rollup-darwin-arm64": "4.29.1", + "@rollup/rollup-darwin-x64": "4.29.1", + "@rollup/rollup-freebsd-arm64": "4.29.1", + "@rollup/rollup-freebsd-x64": "4.29.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.29.1", + "@rollup/rollup-linux-arm-musleabihf": "4.29.1", + "@rollup/rollup-linux-arm64-gnu": "4.29.1", + "@rollup/rollup-linux-arm64-musl": "4.29.1", + "@rollup/rollup-linux-loongarch64-gnu": "4.29.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.29.1", + "@rollup/rollup-linux-riscv64-gnu": "4.29.1", + "@rollup/rollup-linux-s390x-gnu": "4.29.1", + "@rollup/rollup-linux-x64-gnu": "4.29.1", + "@rollup/rollup-linux-x64-musl": "4.29.1", + "@rollup/rollup-win32-arm64-msvc": "4.29.1", + "@rollup/rollup-win32-ia32-msvc": "4.29.1", + "@rollup/rollup-win32-x64-msvc": "4.29.1", "fsevents": "~2.3.2" } }, @@ -14925,7 +15114,6 @@ "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -14937,7 +15125,6 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -15326,6 +15513,39 @@ "dev": true, "license": "MIT" }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/sucrase/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -15374,7 +15594,6 @@ "integrity": "sha512-B8wRRkmre4ERucLM/uXx4MOV5cbnOlVAqUst+1+iLKPI0dOgFO28f84ptoQt9HEI537PMzfYa/d+GEPKTRXmYA==", "dev": true, "license": "BSD-2-Clause", - "peer": true, "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", @@ -15469,8 +15688,7 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/test-exclude": { "version": "7.0.1", @@ -15487,6 +15705,29 @@ "node": ">=18" } }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, "node_modules/tiny-invariant": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", @@ -15515,6 +15756,20 @@ "dev": true, "license": "MIT" }, + "node_modules/tinyglobby": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.10.tgz", + "integrity": "sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.4.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/tinypool": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.2.tgz", @@ -15578,6 +15833,16 @@ "dev": true, "license": "MIT" }, + "node_modules/tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", + "dev": true, + "license": "MIT", + "dependencies": { + "punycode": "^2.1.0" + } + }, "node_modules/tree-kill": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", @@ -15609,6 +15874,13 @@ "node": ">=6.10" } }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true, + "license": "Apache-2.0" + }, "node_modules/ts-node": { "version": "10.9.2", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", @@ -15744,6 +16016,81 @@ "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", "license": "0BSD" }, + "node_modules/tsup": { + "version": "8.3.5", + "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.3.5.tgz", + "integrity": "sha512-Tunf6r6m6tnZsG9GYWndg0z8dEV7fD733VBFzFJ5Vcm1FtlXB8xBD/rtrBi2a3YKEV7hHtxiZtW5EAVADoe1pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "bundle-require": "^5.0.0", + "cac": "^6.7.14", + "chokidar": "^4.0.1", + "consola": "^3.2.3", + "debug": "^4.3.7", + "esbuild": "^0.24.0", + "joycon": "^3.1.1", + "picocolors": "^1.1.1", + "postcss-load-config": "^6.0.1", + "resolve-from": "^5.0.0", + "rollup": "^4.24.0", + "source-map": "0.8.0-beta.0", + "sucrase": "^3.35.0", + "tinyexec": "^0.3.1", + "tinyglobby": "^0.2.9", + "tree-kill": "^1.2.2" + }, + "bin": { + "tsup": "dist/cli-default.js", + "tsup-node": "dist/cli-node.js" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@microsoft/api-extractor": "^7.36.0", + "@swc/core": "^1", + "postcss": "^8.4.12", + "typescript": ">=4.5.0" + }, + "peerDependenciesMeta": { + "@microsoft/api-extractor": { + "optional": true + }, + "@swc/core": { + "optional": true + }, + "postcss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "node_modules/tsup/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tsup/node_modules/source-map": { + "version": "0.8.0-beta.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", + "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "whatwg-url": "^7.0.0" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/tunnel": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", @@ -16205,13 +16552,13 @@ "license": "MIT" }, "node_modules/vite": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.5.tgz", - "integrity": "sha512-akD5IAH/ID5imgue2DYhzsEwCi0/4VKY31uhMLEYJwPP4TiUp8pL5PIK+Wo7H8qT8JY9i+pVfPydcFPYD1EL7g==", + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.6.tgz", + "integrity": "sha512-NSjmUuckPmDU18bHz7QZ+bTYhRR0iA72cs2QAxCqDpafJ0S6qetco0LB3WW2OxlMHS0JmAv+yZ/R3uPmMyGTjQ==", "dev": true, "license": "MIT", "dependencies": { - "esbuild": "0.24.0", + "esbuild": "^0.24.2", "postcss": "^8.4.49", "rollup": "^4.23.0" }, @@ -16328,180 +16675,1021 @@ "url": "https://opencollective.com/vitest" } }, - "node_modules/vite-node/node_modules/vite": { + "node_modules/vite-node/node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-node/node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/vite-node/node_modules/vite": { "version": "5.4.11", "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz", "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==", "dev": true, "license": "MIT", - "dependencies": { - "esbuild": "^0.21.3", - "postcss": "^8.4.43", - "rollup": "^4.20.0" - }, - "bin": { - "vite": "bin/vite.js" - }, + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-plugin-babel-macros": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/vite-plugin-babel-macros/-/vite-plugin-babel-macros-1.0.6.tgz", + "integrity": "sha512-7cCT8jtu5UjpE46pH7RyVltWw5FbhDAtQliZ6QGqRNR5RUZKdAsB0CDjuF+VBoDpnl0KuESPu22SoNqXRYYWyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.17.7", + "@babel/plugin-syntax-jsx": "^7.16.7", + "@babel/plugin-syntax-typescript": "^7.16.7", + "@types/babel__core": "^7.1.18", + "babel-plugin-macros": "^3.1.0" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "vite": ">=2" + } + }, + "node_modules/vite-plugin-dts": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-4.4.0.tgz", + "integrity": "sha512-CJ6phvnnPLF+aFk8Jz2ZcMBLleJ4gKJOXb9We5Kzmsp5bPuD+uMDeVefjFNYSXZ+wdcqnf+Yp2P7oA5hBKQTlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@microsoft/api-extractor": "^7.48.1", + "@rollup/pluginutils": "^5.1.4", + "@volar/typescript": "^2.4.11", + "@vue/language-core": "2.1.10", + "compare-versions": "^6.1.1", + "debug": "^4.4.0", + "kolorist": "^1.8.0", + "local-pkg": "^0.5.1", + "magic-string": "^0.30.17" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "typescript": "*", + "vite": "*" + }, + "peerDependenciesMeta": { + "vite": { + "optional": true + } + } + }, + "node_modules/vite-tsconfig-paths": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.1.4.tgz", + "integrity": "sha512-cYj0LRuLV2c2sMqhqhGpaO3LretdtMn/BVX4cPLanIZuwwrkVl+lK84E/miEXkCHWXuq65rhNN4rXsBcOB3S4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "globrex": "^0.1.2", + "tsconfck": "^3.0.3" + }, + "peerDependencies": { + "vite": "*" + }, + "peerDependenciesMeta": { + "vite": { + "optional": true + } + } + }, + "node_modules/vitest": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.8.tgz", + "integrity": "sha512-1vBKTZskHw/aosXqQUlVWWlGUxSJR8YtiyZDJAFeW2kPAeX6S3Sool0mjspO+kXLuxVWlEDDowBAeqeAQefqLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/expect": "2.1.8", + "@vitest/mocker": "2.1.8", + "@vitest/pretty-format": "^2.1.8", + "@vitest/runner": "2.1.8", + "@vitest/snapshot": "2.1.8", + "@vitest/spy": "2.1.8", + "@vitest/utils": "2.1.8", + "chai": "^5.1.2", + "debug": "^4.3.7", + "expect-type": "^1.1.0", + "magic-string": "^0.30.12", + "pathe": "^1.1.2", + "std-env": "^3.8.0", + "tinybench": "^2.9.0", + "tinyexec": "^0.3.1", + "tinypool": "^1.0.1", + "tinyrainbow": "^1.2.0", + "vite": "^5.0.0", + "vite-node": "2.1.8", + "why-is-node-running": "^2.3.0" + }, + "bin": { + "vitest": "vitest.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "@edge-runtime/vm": "*", + "@types/node": "^18.0.0 || >=20.0.0", + "@vitest/browser": "2.1.8", + "@vitest/ui": "2.1.8", + "happy-dom": "*", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "@edge-runtime/vm": { + "optional": true + }, + "@types/node": { + "optional": true + }, + "@vitest/browser": { + "optional": true + }, + "@vitest/ui": { + "optional": true + }, + "happy-dom": { + "optional": true + }, + "jsdom": { + "optional": true + } + } + }, + "node_modules/vitest/node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^18.0.0 || >=20.0.0", - "less": "*", - "lightningcss": "^1.21.0", - "sass": "*", - "sass-embedded": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - } + "node": ">=12" } }, - "node_modules/vite-plugin-dts": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-4.4.0.tgz", - "integrity": "sha512-CJ6phvnnPLF+aFk8Jz2ZcMBLleJ4gKJOXb9We5Kzmsp5bPuD+uMDeVefjFNYSXZ+wdcqnf+Yp2P7oA5hBKQTlQ==", + "node_modules/vitest/node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@microsoft/api-extractor": "^7.48.1", - "@rollup/pluginutils": "^5.1.4", - "@volar/typescript": "^2.4.11", - "@vue/language-core": "2.1.10", - "compare-versions": "^6.1.1", - "debug": "^4.4.0", - "kolorist": "^1.8.0", - "local-pkg": "^0.5.1", - "magic-string": "^0.30.17" - }, + "optional": true, + "os": [ + "netbsd" + ], "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "peerDependencies": { - "typescript": "*", - "vite": "*" - }, - "peerDependenciesMeta": { - "vite": { - "optional": true - } + "node": ">=12" } }, - "node_modules/vite-tsconfig-paths": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.1.4.tgz", - "integrity": "sha512-cYj0LRuLV2c2sMqhqhGpaO3LretdtMn/BVX4cPLanIZuwwrkVl+lK84E/miEXkCHWXuq65rhNN4rXsBcOB3S4w==", + "node_modules/vitest/node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "debug": "^4.1.1", - "globrex": "^0.1.2", - "tsconfck": "^3.0.3" - }, - "peerDependencies": { - "vite": "*" - }, - "peerDependenciesMeta": { - "vite": { - "optional": true - } + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" } }, - "node_modules/vitest": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.8.tgz", - "integrity": "sha512-1vBKTZskHw/aosXqQUlVWWlGUxSJR8YtiyZDJAFeW2kPAeX6S3Sool0mjspO+kXLuxVWlEDDowBAeqeAQefqLQ==", + "node_modules/vitest/node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@vitest/expect": "2.1.8", - "@vitest/mocker": "2.1.8", - "@vitest/pretty-format": "^2.1.8", - "@vitest/runner": "2.1.8", - "@vitest/snapshot": "2.1.8", - "@vitest/spy": "2.1.8", - "@vitest/utils": "2.1.8", - "chai": "^5.1.2", - "debug": "^4.3.7", - "expect-type": "^1.1.0", - "magic-string": "^0.30.12", - "pathe": "^1.1.2", - "std-env": "^3.8.0", - "tinybench": "^2.9.0", - "tinyexec": "^0.3.1", - "tinypool": "^1.0.1", - "tinyrainbow": "^1.2.0", - "vite": "^5.0.0", - "vite-node": "2.1.8", - "why-is-node-running": "^2.3.0" - }, - "bin": { - "vitest": "vitest.mjs" - }, + "optional": true, + "os": [ + "sunos" + ], "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - }, - "peerDependencies": { - "@edge-runtime/vm": "*", - "@types/node": "^18.0.0 || >=20.0.0", - "@vitest/browser": "2.1.8", - "@vitest/ui": "2.1.8", - "happy-dom": "*", - "jsdom": "*" - }, - "peerDependenciesMeta": { - "@edge-runtime/vm": { - "optional": true - }, - "@types/node": { - "optional": true - }, - "@vitest/browser": { - "optional": true - }, - "@vitest/ui": { - "optional": true - }, - "happy-dom": { - "optional": true - }, - "jsdom": { - "optional": true - } + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitest/node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" } }, "node_modules/vitest/node_modules/@vitest/expect": { @@ -16560,6 +17748,45 @@ "url": "https://opencollective.com/vitest" } }, + "node_modules/vitest/node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, "node_modules/vitest/node_modules/estree-walker": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", @@ -16874,6 +18101,25 @@ "node": ">=12" } }, + "node_modules/whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, + "license": "MIT", + "dependencies": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "node_modules/whatwg-url/node_modules/webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true, + "license": "BSD-2-Clause" + }, "node_modules/when-exit": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/when-exit/-/when-exit-2.1.3.tgz", @@ -16998,9 +18244,9 @@ } }, "node_modules/wildcard-match": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/wildcard-match/-/wildcard-match-5.1.3.tgz", - "integrity": "sha512-a95hPUk+BNzSGLntNXYxsjz2Hooi5oL7xOfJR6CKwSsSALh7vUNuTlzsrZowtYy38JNduYFRVhFv19ocqNOZlg==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/wildcard-match/-/wildcard-match-5.1.4.tgz", + "integrity": "sha512-wldeCaczs8XXq7hj+5d/F38JE2r7EXgb6WQDM84RVwxy81T/sxB5e9+uZLK9Q9oNz1mlvjut+QtvgaOQFPVq/g==", "dev": true, "license": "ISC" }, @@ -17422,14 +18668,14 @@ }, "packages/code": { "name": "@devoinc/genesys-ui-code", - "version": "14.3.1", + "version": "14.3.2", "license": "MIT", "devDependencies": { "@types/file-saver": "^2.0.7", "file-saver": "^2.0.5" }, "peerDependencies": { - "@devoinc/genesys-ui": "^14.3.1", + "@devoinc/genesys-ui": "^14.3.2", "ahooks": "3.x", "monaco-editor-core": "0.x", "react": "^16.3.0 || 17.x || 18.x || 19.x", @@ -17438,10 +18684,10 @@ }, "packages/color": { "name": "@devoinc/genesys-ui-color", - "version": "14.3.1", + "version": "14.3.2", "license": "MIT", "peerDependencies": { - "@devoinc/genesys-ui": "^14.3.1", + "@devoinc/genesys-ui": "^14.3.2", "polished": "4.x", "react": "^16.3.0 || 17.x || 18.x || 19.x", "react-color": "2.x", @@ -17450,9 +18696,10 @@ }, "packages/core": { "name": "@devoinc/genesys-ui", - "version": "14.3.1", + "version": "14.3.2", "license": "MIT", "peerDependencies": { + "@devoinc/genesys-brand-devo": "8.x", "@devoinc/genesys-icons": "4.x || 5.x || 6.x", "@devoinc/genesys-tokens-types": "7.x", "@dnd-kit/core": "6.x", @@ -17474,11 +18721,11 @@ }, "packages/datetime": { "name": "@devoinc/genesys-ui-datetime", - "version": "14.3.1", + "version": "14.3.2", "license": "MIT", "peerDependencies": { "@devoinc/genesys-icons": "4.x || 5.x || 6.x", - "@devoinc/genesys-ui": "^14.3.1", + "@devoinc/genesys-ui": "^14.3.2", "date-fns": "4.x", "react": "^16.3.0 || 17.x || 18.x || 19.x", "react-popper": "2.x", @@ -17487,13 +18734,13 @@ }, "packages/table": { "name": "@devoinc/genesys-ui-table", - "version": "14.3.1", + "version": "14.3.2", "license": "MIT", "peerDependencies": { "@date-fns/tz": "1.x", "@devoinc/genesys-icons": "4.x || 5.x || 6.x", - "@devoinc/genesys-ui": "^14.3.1", - "@devoinc/genesys-ui-datetime": "^14.3.1", + "@devoinc/genesys-ui": "^14.3.2", + "@devoinc/genesys-ui-datetime": "^14.3.2", "@tanstack/react-virtual": "3.x", "date-fns": "4.x", "react": "^16.3.0 || 17.x || 18.x || 19.x", @@ -17502,11 +18749,11 @@ }, "packages/upload": { "name": "@devoinc/genesys-ui-upload", - "version": "14.3.1", + "version": "14.3.2", "license": "MIT", "peerDependencies": { "@devoinc/genesys-icons": "4.x || 5.x || 6.x", - "@devoinc/genesys-ui": "^14.3.1", + "@devoinc/genesys-ui": "^14.3.2", "filepond-plugin-file-validate-size": "2.x", "filepond-plugin-file-validate-type": "1.x", "filepond-plugin-image-preview": "4.x", diff --git a/package.json b/package.json index 37ddb7eff..f226d6c55 100644 --- a/package.json +++ b/package.json @@ -5,25 +5,20 @@ "type": "module", "private": true, "scripts": { - "compile": "npm run compile -ws --if-present", - "compile:watch": "npm run compile:watch -ws --if-present", "clean:cache": "rm -rf node_modules/.cache", - "clean": "rm -rf storybook-static coverage packages/*/dist", + "clean": "rm -rf storybook-static coverage packages/*/dist packages/*/coverage", "build": "npm run build -ws --if-present", - "build:watch": "npm run build:watch -ws --if-present", "depcruise": "npm run depcruise -ws", "lint": "oxlint -c oxlintrc.json", "start": "npm run storybook", "storybook": "storybook dev -p 6006", "build-storybook": "NODE_OPTIONS=\"--max_old_space_size=4096\" storybook build", "stryker": "npm run stryker -ws --if-present", - "analyzer": "npm run analyzer -ws --if-present", "test": "vitest", "test:ci": "npm run test -ws --if-present -- --coverage --watch=false", "dpdm": "npm run dpdm -ws --if-present", "release": "release-it --dry-run", - "release:ci": "release-it --ci", - "postinstall": "scripts/post_install.sh" + "release:ci": "release-it --ci" }, "keywords": [], "author": "Devo, Inc. Quvis Team (https://github.com/orgs/DevoInc/teams/quvis)", @@ -58,6 +53,7 @@ "babel-plugin-styled-components": "^2.1.4", "dependency-cruiser": "^16.8.0", "dpdm": "^3.14.0", + "esbuild-plugin-styled-components": "^3.0.1", "framer-motion": "^11.15.0", "happy-dom": "^15.11.7", "identity-obj-proxy": "^3.0.0", @@ -74,18 +70,20 @@ "sass": "^1.83.0", "semver": "^7.6.3", "storybook": "^8.4.7", + "terser": "^5.37.0", "tocbot": "^4.32.2", "ts-node": "^10.9.2", + "tsup": "^8.3.5", "typescript": "^5.7.2", "vite": "^6.0.3", "vite-bundle-visualizer": "^1.2.1", + "vite-plugin-babel-macros": "^1.0.6", "vite-plugin-dts": "^4.3.0", "vite-tsconfig-paths": "^5.1.4", "vitest": "^2.1.8", "viz.js": "^2.1.2" }, "overrides": { - "esbuild": "0.24.0", "ahooks": { "react": "$react", "react-dom": "$react-dom" diff --git a/packages/code/package.json b/packages/code/package.json index d4b6a4384..19ac64990 100644 --- a/packages/code/package.json +++ b/packages/code/package.json @@ -10,23 +10,14 @@ ".": { "import": "./dist/index.js", "require": "./dist/index.cjs" - }, - "./style.css": { - "import": "./dist/style.css", - "require": "./dist/style.css" } }, "files": [ "dist" ], "scripts": { - "compile": "tsc --project tsconfig.json", - "compile:watch": "npm run compile -- --watch", - "build": "vite build", - "build:watch": "vite build --watch", + "build": "tsup", "depcruise": "sh ../../depcruise.sh \"$npm_package_name\"", - "analyzer": "vite-bundle-visualizer -o 'dist/stats.html'", - "stryker": "npx stryker run", "dpdm": "dpdm --exit-code circular:1 ./src/index.ts" }, "peerDependencies": { diff --git a/packages/code/tsconfig.build.json b/packages/code/tsconfig.build.json deleted file mode 100644 index b416112a8..000000000 --- a/packages/code/tsconfig.build.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "composite": true, - "declaration": true, - "declarationMap": true, - "declarationDir": "./dist/types", - "emitDeclarationOnly": true, - "incremental": true, - "outDir": "./dist" - }, - "include": ["src"], - "exclude": [ - "src/**/*.test.*", - "src/**/*.stories.tsx", - "src/**/stories/*", - "src/**/__stories__/*" - ], - "references": [ - { - "path": "../core/tsconfig.build.json" - } - ] -} diff --git a/packages/code/tsconfig.json b/packages/code/tsconfig.json index 6d8585cd2..0fd53ea37 100644 --- a/packages/code/tsconfig.json +++ b/packages/code/tsconfig.json @@ -1,13 +1,14 @@ { - "extends": "../../tsconfig.json", + "extends": "../../common/tsconfig", "compilerOptions": { - "declaration": true, - "declarationMap": true, - "outDir": "./dist" + "paths": { + "@test": [ + "../../test/test-utils.tsx" + ] + } }, "include": [ "src", - "stories", - "vite.config.ts" - ], + "stories" + ] } diff --git a/packages/code/tsup.config.ts b/packages/code/tsup.config.ts new file mode 100644 index 000000000..2fae0e14c --- /dev/null +++ b/packages/code/tsup.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'tsup'; + +import { tsupConfig } from '../../common/tsup.config'; + +export default defineConfig({ + ...tsupConfig, + entry: ['src/index.ts'], +}); diff --git a/packages/code/vite.config.ts b/packages/code/vite.config.ts deleted file mode 100644 index ef267cc40..000000000 --- a/packages/code/vite.config.ts +++ /dev/null @@ -1,66 +0,0 @@ -/// <reference types="vitest" /> -import { resolve } from 'path'; -import { defineConfig } from 'vite'; -import react from '@vitejs/plugin-react'; -import tsconfigPaths from 'vite-tsconfig-paths'; -import dts from 'vite-plugin-dts'; - -export default defineConfig({ - resolve: { - preserveSymlinks: true, - }, - build: { - sourcemap: true, - lib: { - entry: resolve(__dirname, 'src/index.ts'), - name: 'index', - fileName: 'index', - formats: ['es', 'cjs'], - }, - rollupOptions: { - external: [ - 'ahooks', - '@devoinc/genesys-ui', - 'monaco-editor-core', - 'react', - 'react/jsx-runtime', - 'styled-components', - ], - }, - }, - plugins: [ - tsconfigPaths(), - react({ - babel: { - plugins: [ - [ - 'babel-plugin-styled-components', - { - ssr: false, - pure: true, - displayName: true, - fileName: false, - }, - ], - ], - }, - }), - dts({ - entryRoot: './src/', - exclude: ['./src/**/*.test.ts?(x)', './src/**/*.stories.tsx'], - }), - ], - test: { - environment: 'happy-dom', - include: ['{src,stories}/**/*.test.ts?(x)'], - coverage: { - provider: 'v8', - include: ['{src,stories}/**/*'], - }, - server: { - deps: { - inline: [/\/@devoinc\/genesys-ui\//], - }, - }, - }, -}); diff --git a/packages/code/vitest.config.ts b/packages/code/vitest.config.ts new file mode 100644 index 000000000..49cded315 --- /dev/null +++ b/packages/code/vitest.config.ts @@ -0,0 +1,13 @@ +import { defineConfig } from 'vitest/config'; +import { resolve } from 'node:path'; + +import { vitestConfig } from '../../common/vitest.config'; + +export default defineConfig({ + ...vitestConfig, + resolve: { + alias: { + '@test': resolve(__dirname, '../../test/test-utils.tsx'), + }, + }, +}); diff --git a/packages/color/package.json b/packages/color/package.json index 1ee93ddb7..944eabf39 100644 --- a/packages/color/package.json +++ b/packages/color/package.json @@ -4,13 +4,8 @@ "description": "", "type": "module", "scripts": { - "compile": "tsc --project tsconfig.json", - "compile:watch": "npm run compile -- --watch", - "build": "vite build", - "build:watch": "vite build --watch", + "build": "tsup", "depcruise": "sh ../../depcruise.sh \"$npm_package_name\"", - "analyzer": "vite-bundle-visualizer -o 'dist/stats.html'", - "stryker": "npx stryker run", "dpdm": "dpdm --exit-code circular:1 ./src/index.ts" }, "main": "./dist/index.cjs", diff --git a/packages/color/src/components/ColorPicker/styled/StyledColorPicker.ts b/packages/color/src/components/ColorPicker/styled/StyledColorPicker.ts index 89afd9198..0632d22bc 100644 --- a/packages/color/src/components/ColorPicker/styled/StyledColorPicker.ts +++ b/packages/color/src/components/ColorPicker/styled/StyledColorPicker.ts @@ -16,6 +16,12 @@ export interface StyledColorPickerProps { } export const StyledColorPicker = styled.button<StyledColorPickerProps>` + display: inline-flex; + align-items: center; + justify-content: center; + appearance: none; + padding: 0; + margin: 0; ${({ $disabled, $colorIndicatorType, @@ -37,12 +43,6 @@ export const StyledColorPicker = styled.button<StyledColorPickerProps>` colorPickerTokens.shape.borderRadius[isCircle ? 'isCircle' : 'base']; return css` - display: inline-flex; - align-items: center; - justify-content: center; - appearance: none; - padding: 0; - margin: 0; transition: border ${transitionDuration} ease-in-out, box-shadow ${transitionDuration} ease-in-out; @@ -54,30 +54,28 @@ export const StyledColorPicker = styled.button<StyledColorPickerProps>` width: ${width}; height: ${height}; - ${!$disabled && - !$readOnly && - css` - cursor: pointer; + ${!$disabled && !$readOnly + ? ` + cursor: pointer; - &:hover { - border-color: ${colorPickerTokens.color.border[$status].hovered}; - color: ${colorPickerTokens.color.text.base.hovered}; - } + &:hover { + border-color: ${colorPickerTokens.color.border[$status].hovered}; + color: ${colorPickerTokens.color.text.base.hovered}; + } - &:focus, - &:focus-visible { - //box-shadow: ${colorPickerTokens.elevation.boxShadow[$status] - .focused}; - border-color: ${colorPickerTokens.color.border[$status].focused}; - color: ${colorPickerTokens.color.text.base.focused}; - outline: none; - } - `} + &:focus, + &:focus-visible { + //box-shadow: ${ + colorPickerTokens.elevation.boxShadow[$status].focused + }; + border-color: ${colorPickerTokens.color.border[$status].focused}; + color: ${colorPickerTokens.color.text.base.focused}; + outline: none; + } + ` + : ''} - ${$disabled && - css` - ${disabledMixin(theme)}; - `} + ${$disabled ? disabledMixin(theme) : ''} .color-indicator__sample { width: calc(${width} - (${spacing} * 2)); diff --git a/packages/color/tsconfig.build.json b/packages/color/tsconfig.build.json deleted file mode 100644 index 5147ae855..000000000 --- a/packages/color/tsconfig.build.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "composite": true, - "declaration": true, - "declarationMap": true, - "declarationDir": "./dist/types", - "emitDeclarationOnly": true, - "incremental": true, - "outDir": "./dist" - }, - "include": ["src"], - "exclude": [ - "src/**/*.test.*", - "src/**/*.stories.tsx", - "src/**/__stories__/*" - ], - "references": [ - { - "path": "../core/tsconfig.build.json" - } - ] -} - diff --git a/packages/color/tsconfig.json b/packages/color/tsconfig.json index 6d8585cd2..0fd53ea37 100644 --- a/packages/color/tsconfig.json +++ b/packages/color/tsconfig.json @@ -1,13 +1,14 @@ { - "extends": "../../tsconfig.json", + "extends": "../../common/tsconfig", "compilerOptions": { - "declaration": true, - "declarationMap": true, - "outDir": "./dist" + "paths": { + "@test": [ + "../../test/test-utils.tsx" + ] + } }, "include": [ "src", - "stories", - "vite.config.ts" - ], + "stories" + ] } diff --git a/packages/color/tsup.config.ts b/packages/color/tsup.config.ts new file mode 100644 index 000000000..2fae0e14c --- /dev/null +++ b/packages/color/tsup.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'tsup'; + +import { tsupConfig } from '../../common/tsup.config'; + +export default defineConfig({ + ...tsupConfig, + entry: ['src/index.ts'], +}); diff --git a/packages/color/vite.config.ts b/packages/color/vite.config.ts deleted file mode 100644 index 2a4ecd416..000000000 --- a/packages/color/vite.config.ts +++ /dev/null @@ -1,67 +0,0 @@ -/// <reference types="vitest" /> -import { resolve } from 'path'; -import { defineConfig } from 'vite'; -import react from '@vitejs/plugin-react'; -import tsconfigPaths from 'vite-tsconfig-paths'; -import dts from 'vite-plugin-dts'; - -export default defineConfig({ - resolve: { - preserveSymlinks: true, - }, - build: { - sourcemap: true, - lib: { - entry: resolve(__dirname, 'src/index.ts'), - name: 'index', - fileName: 'index', - formats: ['es', 'cjs'], - }, - rollupOptions: { - external: [ - '@devoinc/genesys-ui', - 'react', - 'react-dom', - 'react/jsx-runtime', - 'styled-components', - 'react-color', - 'polished', - ], - }, - }, - plugins: [ - tsconfigPaths(), - react({ - babel: { - plugins: [ - [ - 'babel-plugin-styled-components', - { - ssr: false, - pure: true, - displayName: true, - fileName: false, - }, - ], - ], - }, - }), - dts({ - entryRoot: './src/', - exclude: ['./src/**/*.test.ts?(x)', './src/**/*.stories.tsx'], - }), - ], - test: { - environment: 'happy-dom', - include: ['{src,stories}/**/*.test.ts?(x)'], - coverage: { - provider: 'v8', - include: ['{src,stories}/**/*'], - }, - server: { - deps: { - inline: [/\/@devoinc\/genesys-ui\//], - }, - }, - }, -}); diff --git a/packages/color/vitest.config.ts b/packages/color/vitest.config.ts new file mode 100644 index 000000000..49cded315 --- /dev/null +++ b/packages/color/vitest.config.ts @@ -0,0 +1,13 @@ +import { defineConfig } from 'vitest/config'; +import { resolve } from 'node:path'; + +import { vitestConfig } from '../../common/vitest.config'; + +export default defineConfig({ + ...vitestConfig, + resolve: { + alias: { + '@test': resolve(__dirname, '../../test/test-utils.tsx'), + }, + }, +}); diff --git a/packages/core/package.json b/packages/core/package.json index eb210ab9f..3cd975e4b 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -16,17 +16,13 @@ "dist" ], "scripts": { - "compile": "tsc --project tsconfig.json", - "compile:watch": "npm run compile -- --watch", "test": "vitest", - "build": "vite build", - "build:watch": "vite build --watch", + "build": "tsup", "depcruise": "sh ../../depcruise.sh \"$npm_package_name\"", - "analyzer": "vite-bundle-visualizer -o 'dist/stats.html'", - "stryker": "npx stryker run", "dpdm": "dpdm --exit-code circular:1 ./src/index.ts" }, "peerDependencies": { + "@devoinc/genesys-brand-devo": "8.x", "@devoinc/genesys-icons": "4.x || 5.x || 6.x", "@devoinc/genesys-tokens-types": "7.x", "@dnd-kit/core": "6.x", diff --git a/packages/core/src/components/Collapse/Collapse.stories.tsx b/packages/core/src/components/Collapse/Collapse.stories.tsx index f2f70b583..ffb07860f 100644 --- a/packages/core/src/components/Collapse/Collapse.stories.tsx +++ b/packages/core/src/components/Collapse/Collapse.stories.tsx @@ -16,7 +16,7 @@ import { } from '@dnd-kit/sortable'; import { CSS } from '@dnd-kit/utilities'; -import type { TElevation } from 'src/declarations'; +import type { TElevation } from '../../declarations'; import { elevationBoxShadowMixin } from '../../styled/mixins'; import { lorem } from '../../../stories/utils/fillerTexts'; diff --git a/packages/core/src/components/Form/components/FormLegend/FormLegend.tsx b/packages/core/src/components/Form/components/FormLegend/FormLegend.tsx index 9b8a411eb..ff34bcd99 100644 --- a/packages/core/src/components/Form/components/FormLegend/FormLegend.tsx +++ b/packages/core/src/components/Form/components/FormLegend/FormLegend.tsx @@ -4,7 +4,7 @@ import { Flex } from '../../../Flex'; import { Typography } from '../../../Typography'; import { Field, type FieldProps, type FieldLabelProps } from '../../../Field'; import { StyledFormLegendContainer } from './StyledFormLegendContainer'; -import { IGlobalAttrs } from 'src/declarations'; +import { IGlobalAttrs } from '../../../../declarations'; export interface FormLegendProps extends IGlobalAttrs, diff --git a/packages/core/src/components/InlineMessage/InlineMessage.tsx b/packages/core/src/components/InlineMessage/InlineMessage.tsx index 77795eab7..61155cbf1 100644 --- a/packages/core/src/components/InlineMessage/InlineMessage.tsx +++ b/packages/core/src/components/InlineMessage/InlineMessage.tsx @@ -70,7 +70,7 @@ const PartInlineMessage: React.FC<InlineMessageProps> = ({ id={id} placement={placement} arrowConfig={{ - component: ({ $placement: innerPlacement, $size: size }) => ( + component: ({ placement: innerPlacement, size }) => ( <InlineMessage.Arrow placement={innerPlacement} size={size} diff --git a/packages/core/src/components/InlineMessage/components/InlineMessageArrow/InlineMessageArrow.tsx b/packages/core/src/components/InlineMessage/components/InlineMessageArrow/InlineMessageArrow.tsx index 83b055775..d0ff1b0d4 100644 --- a/packages/core/src/components/InlineMessage/components/InlineMessageArrow/InlineMessageArrow.tsx +++ b/packages/core/src/components/InlineMessage/components/InlineMessageArrow/InlineMessageArrow.tsx @@ -3,7 +3,7 @@ import { useTheme } from 'styled-components'; import type { ComputedPlacement } from '@popperjs/core'; import type { TUIColorScheme } from '../../../../declarations/commonProps'; -import { StyledPopoverArrow } from '../../../Popover/StyledPopoverArrow'; +import { PopoverArrow } from '../../../Popover/components/'; import { inlineMessageArrowMixin } from './helpers'; export interface InlineMessageArrowProps { @@ -19,10 +19,10 @@ export const InlineMessageArrow: React.FC<InlineMessageArrowProps> = ({ }) => { const theme = useTheme(); return ( - <StyledPopoverArrow - $placement={placement} - $size={size} - css={inlineMessageArrowMixin({ placement, status, theme })} + <PopoverArrow + placement={placement} + size={size} + style={inlineMessageArrowMixin({ placement, status, theme })} /> ); }; diff --git a/packages/core/src/components/InputControl/components/InputControlShowPassword/InputControlShowPassword.tsx b/packages/core/src/components/InputControl/components/InputControlShowPassword/InputControlShowPassword.tsx index 79c0dd9cc..446a65d22 100644 --- a/packages/core/src/components/InputControl/components/InputControlShowPassword/InputControlShowPassword.tsx +++ b/packages/core/src/components/InputControl/components/InputControlShowPassword/InputControlShowPassword.tsx @@ -10,7 +10,7 @@ import type { IStyledOverloadCss } from '../../../../declarations'; import { IconButton, type IconButtonProps } from '../../../IconButton'; import { StyledInputControlShowPassword } from './StyledInputControlShowPassword'; import type { IInputControlShowPassword } from './declarations'; -import { type TButtonSize } from 'src/components/Button'; +import { type TButtonSize } from '../../../Button'; export interface InputControlShowPasswordProps extends IInputControlShowPassword, diff --git a/packages/core/src/components/Pagination/components/PaginationContainer/PaginationContainer.tsx b/packages/core/src/components/Pagination/components/PaginationContainer/PaginationContainer.tsx index bfc556ffa..da04cf18e 100644 --- a/packages/core/src/components/Pagination/components/PaginationContainer/PaginationContainer.tsx +++ b/packages/core/src/components/Pagination/components/PaginationContainer/PaginationContainer.tsx @@ -1,6 +1,7 @@ import * as React from 'react'; + import { HFlex, type HFlexProps } from '../../../HFlex'; -import { TBaseSize } from 'src/declarations'; +import { TBaseSize } from '../../../../declarations'; export interface PaginationContainerProps extends HFlexProps { size?: TBaseSize; diff --git a/packages/core/src/components/Pagination/components/PaginationNav/PaginationNav.tsx b/packages/core/src/components/Pagination/components/PaginationNav/PaginationNav.tsx index 93e23a57b..3aa10a744 100644 --- a/packages/core/src/components/Pagination/components/PaginationNav/PaginationNav.tsx +++ b/packages/core/src/components/Pagination/components/PaginationNav/PaginationNav.tsx @@ -10,7 +10,7 @@ import { import type { IPaginationCommonInterface } from '../../declarations'; import { HFlex } from '../../../HFlex'; import { IconButton } from '../../../IconButton'; -import { SelectControl } from '../../../SelectControl'; +import { SelectControl, type TSelectOption } from '../../../SelectControl'; import { Flex } from '../../../Flex'; import { Box } from '../../../Box'; import { DEFAULT_TEXTS } from '../../constants'; @@ -111,8 +111,8 @@ export const PaginationNav: React.FC<PaginationNavProps> = ({ isDisabled={lastPage === 0} id={id ? `${id}-page-selector` : null} noOptionsMessage={() => ''} - onChange={(e) => { - onChange(clamp(lastPage, e.value)); + onChange={(e: TSelectOption) => { + onChange(clamp(lastPage, e.value as number)); }} onMenuClose={() => setMenuOpen(false)} onMenuOpen={() => { diff --git a/packages/core/src/components/Pagination/components/PaginationRange/PaginationRange.tsx b/packages/core/src/components/Pagination/components/PaginationRange/PaginationRange.tsx index 948b9a884..a9d665378 100644 --- a/packages/core/src/components/Pagination/components/PaginationRange/PaginationRange.tsx +++ b/packages/core/src/components/Pagination/components/PaginationRange/PaginationRange.tsx @@ -5,7 +5,7 @@ import { DEFAULT_TEXTS } from '../../constants'; import { PaginationContext } from '../../context'; import { HFlex } from '../../../HFlex'; import { Label } from '../../../Label'; -import { SelectControl } from '../../../SelectControl'; +import { SelectControl, type TSelectOption } from '../../../SelectControl'; export interface PaginationRangeProps extends IPaginationCommonInterface {} @@ -27,7 +27,7 @@ export const PaginationRange: React.FC<PaginationRangeProps> = ({ <SelectControl id={id ? `${id}__page-range-selector` : null} noOptionsMessage={() => ''} - onChange={(option) => { + onChange={(option: TSelectOption) => { onPageSizeChange(Number(option.value)); }} options={pageSizeOptions.map((item) => ({ diff --git a/packages/core/src/components/Pagination/helpers/data/clamp.ts b/packages/core/src/components/Pagination/helpers/data/clamp.ts index 75ad8a4d9..ace744e29 100644 --- a/packages/core/src/components/Pagination/helpers/data/clamp.ts +++ b/packages/core/src/components/Pagination/helpers/data/clamp.ts @@ -1,2 +1,2 @@ -export const clamp = (max, value) => - value < 0 ? 0 : value > max ? max : value; \ No newline at end of file +export const clamp = (max: number, value: number) => + value < 0 ? 0 : value > max ? max : value; diff --git a/packages/core/src/components/Popover/Popover.stories.tsx b/packages/core/src/components/Popover/Popover.stories.tsx index f0c214b84..9f0e5b19d 100644 --- a/packages/core/src/components/Popover/Popover.stories.tsx +++ b/packages/core/src/components/Popover/Popover.stories.tsx @@ -59,8 +59,8 @@ export const WithArrow: Story = { {...props} id={popoverId} arrowConfig={{ - component: ({ $placement, $size }) => ( - <Popover.Arrow $placement={$placement} $size={$size} /> + component: ({ placement, size }) => ( + <Popover.Arrow placement={placement} size={size} /> ), }} > diff --git a/packages/core/src/components/Popover/Popover.tsx b/packages/core/src/components/Popover/Popover.tsx index 1806b841b..e533ab5e2 100644 --- a/packages/core/src/components/Popover/Popover.tsx +++ b/packages/core/src/components/Popover/Popover.tsx @@ -1,15 +1,12 @@ import * as React from 'react'; -import ReactDOM from 'react-dom'; +import { createPortal } from 'react-dom'; import { useTheme } from 'styled-components'; import { type PopperProps, StrictModifier, usePopper } from 'react-popper'; import { ComputedPlacement, Padding } from '@popperjs/core'; import { useOnEventOutside } from '../../hooks'; -import { PopoverPanel } from './components'; -import { - StyledPopoverArrow, - type StyledPopoverArrowProps, -} from './StyledPopoverArrow'; +import { PopoverArrow, PopoverArrowProps, PopoverPanel } from './components'; +import { type StyledPopoverArrowProps } from './components/PopoverArrow/StyledPopoverArrow'; type TTriggerProps = (props: { ref: React.Dispatch<React.SetStateAction<HTMLElement>>; @@ -43,7 +40,7 @@ export interface PopoverProps isOpened?: boolean; /** The configuration for the popover arrow: used component, padding... etc. */ arrowConfig?: { - component: (arrowProps: StyledPopoverArrowProps) => React.ReactNode; + component: (arrowProps: PopoverArrowProps) => React.ReactNode; padding?: Padding; size?: StyledPopoverArrowProps['$size']; }; @@ -159,8 +156,8 @@ export const InternalPopover: React.FC<PopoverProps> = ({ }} > {arrowConfig.component({ - $placement: (dynamicPlacement as ComputedPlacement) ?? undefined, - $size: arrowConfig.size ?? undefined, + placement: (dynamicPlacement as ComputedPlacement) ?? undefined, + size: arrowConfig.size ?? undefined, })} </div> )} @@ -185,17 +182,17 @@ export const InternalPopover: React.FC<PopoverProps> = ({ })} {opened && referenceElement && - (appendTo ? ReactDOM.createPortal(PopperCmp, appendTo) : PopperCmp)} + (appendTo ? createPortal(PopperCmp, appendTo) : PopperCmp)} </> ); }; export const Popover = InternalPopover as typeof InternalPopover & { - Arrow: typeof StyledPopoverArrow; + Arrow: typeof PopoverArrow; Panel: typeof PopoverPanel; }; -Popover.Arrow = StyledPopoverArrow; +Popover.Arrow = PopoverArrow; Popover.Panel = PopoverPanel; InternalPopover.displayName = 'Popover'; diff --git a/packages/core/src/components/Popover/components/PopoverArrow/PopoverArrow.tsx b/packages/core/src/components/Popover/components/PopoverArrow/PopoverArrow.tsx new file mode 100644 index 000000000..9a83d7d9a --- /dev/null +++ b/packages/core/src/components/Popover/components/PopoverArrow/PopoverArrow.tsx @@ -0,0 +1,18 @@ +import * as React from 'react'; + +import { + StyledPopoverArrow, + type StyledPopoverArrowProps, +} from './StyledPopoverArrow'; +import { IStyledOverloadCss } from '../../../../declarations'; + +export interface PopoverArrowProps extends IStyledOverloadCss { + placement: StyledPopoverArrowProps['$placement']; + size: StyledPopoverArrowProps['$size']; +} + +export const PopoverArrow: React.FC<PopoverArrowProps> = ({ + placement, + size, + style, +}) => <StyledPopoverArrow $placement={placement} $size={size} css={style} />; diff --git a/packages/core/src/components/Popover/StyledPopoverArrow.ts b/packages/core/src/components/Popover/components/PopoverArrow/StyledPopoverArrow.ts similarity index 100% rename from packages/core/src/components/Popover/StyledPopoverArrow.ts rename to packages/core/src/components/Popover/components/PopoverArrow/StyledPopoverArrow.ts diff --git a/packages/core/src/components/Popover/components/PopoverArrow/index.ts b/packages/core/src/components/Popover/components/PopoverArrow/index.ts new file mode 100644 index 000000000..958b955d1 --- /dev/null +++ b/packages/core/src/components/Popover/components/PopoverArrow/index.ts @@ -0,0 +1 @@ +export * from './PopoverArrow'; diff --git a/packages/core/src/components/Popover/components/index.ts b/packages/core/src/components/Popover/components/index.ts index 6707ece80..d992875b4 100644 --- a/packages/core/src/components/Popover/components/index.ts +++ b/packages/core/src/components/Popover/components/index.ts @@ -1 +1,2 @@ export * from './PopoverPanel'; +export * from './PopoverArrow'; diff --git a/packages/core/src/components/SelectControl/StyledSelectControl.ts b/packages/core/src/components/SelectControl/StyledSelectControl.ts index fe0a324cd..30ab1a81c 100644 --- a/packages/core/src/components/SelectControl/StyledSelectControl.ts +++ b/packages/core/src/components/SelectControl/StyledSelectControl.ts @@ -8,9 +8,13 @@ import { scrollbars } from '../../styled/mixins/scrollbars'; import { TSelectOption } from './declarations'; import { disabledMixin, truncateTypoMixin } from '../../styled'; +export interface StyledSelectControlProps extends BaseObject { + css: CSSProp; +} + export const StyledSelectControl = styled< ReactSelect, - BaseObject & { css: CSSProp } + StyledSelectControlProps >(ReactSelect)` flex: 1 1 auto; min-width: 0; diff --git a/packages/core/src/components/Tabs/hooks/useClosableTabs.ts b/packages/core/src/components/Tabs/hooks/useClosableTabs.ts index 3247e4092..97661ca16 100644 --- a/packages/core/src/components/Tabs/hooks/useClosableTabs.ts +++ b/packages/core/src/components/Tabs/hooks/useClosableTabs.ts @@ -10,7 +10,7 @@ export const useClosableTabs = ({ tabsRef: React.MutableRefObject<HTMLDivElement>; tabsLength: number; }) => { - const itemsRef = React.useRef<NodeListOf<Element>>([]); + const itemsRef = React.useRef<NodeListOf<Element>>(); React.useEffect(() => { // const removedItemIndex = Array.from(itemsRef.current).findIndex( // (item) => !document.body.contains(item), diff --git a/packages/core/src/components/Typography/utils.test.ts b/packages/core/src/components/Typography/utils.test.ts index 7700c8405..c461a7dc3 100644 --- a/packages/core/src/components/Typography/utils.test.ts +++ b/packages/core/src/components/Typography/utils.test.ts @@ -1,7 +1,7 @@ import { describe, test, expect } from 'vitest'; import { getTypoVariantAndSizeFromFormat } from './utils'; import { TTypoCategories, TTypographyFormat } from './declarations'; -import { TTypoSize } from 'src/declarations'; +import { TTypoSize } from '../../declarations'; describe('Core', () => { describe('Components', () => { diff --git a/packages/core/src/helpers/spacing/spacing.ts b/packages/core/src/helpers/spacing/spacing.ts index 8f1656129..f5aab07e1 100644 --- a/packages/core/src/helpers/spacing/spacing.ts +++ b/packages/core/src/helpers/spacing/spacing.ts @@ -1,6 +1,6 @@ import { DefaultTheme } from 'styled-components'; -import type { TGlobalSpacing } from 'src/declarations'; +import type { TGlobalSpacing } from '../../declarations'; /** * Get the map with spacing prop alias values and prop css values (tokens) diff --git a/packages/core/src/helpers/styles/mergeStyles.test.ts b/packages/core/src/helpers/styles/mergeStyles.test.ts new file mode 100644 index 000000000..01c16af33 --- /dev/null +++ b/packages/core/src/helpers/styles/mergeStyles.test.ts @@ -0,0 +1,39 @@ +import { describe, test, expect } from 'vitest'; +import { css, CSSProp } from 'styled-components'; + +import { mergeStyles } from './mergeStyles'; + +describe('helpers', () => { + describe('styles', () => { + describe('mergeStyles', () => { + const cases: [string, CSSProp[], string[]][] = [ + [ + 'styles components & react styles', + [ + css` + color: red; + position: absolute; + `, + css` + background-color: white; + .classy { + font-weight: bold; + } + `, + { + borderColor: 'black', + }, + ], + [ + 'color:red;position:absolute;', + 'background-color:white;.classy{font-weight:bold;}', + 'border-color: black;', + ], + ], + ]; + test.each(cases)('%s', (_title, params, expected) => { + expect(Array.from(mergeStyles(...params))).toEqual(expected); + }); + }); + }); +}); diff --git a/packages/core/src/helpers/styles/mergeStyles.ts b/packages/core/src/helpers/styles/mergeStyles.ts index 38366d45b..44d28c151 100644 --- a/packages/core/src/helpers/styles/mergeStyles.ts +++ b/packages/core/src/helpers/styles/mergeStyles.ts @@ -1,5 +1,5 @@ import { css, CSSProp } from 'styled-components'; export const mergeStyles = (...styles: CSSProp[]) => css` - ${styles.filter((x) => !!x)} + ${styles} `; diff --git a/packages/core/src/hooks/index.ts b/packages/core/src/hooks/index.ts index 61379daa3..d7797b172 100644 --- a/packages/core/src/hooks/index.ts +++ b/packages/core/src/hooks/index.ts @@ -1,5 +1,4 @@ export * from './useAddPropsToChildren'; export * from './useOnEventOutside'; export * from './useStateFromProps'; -export * from './useWindowSize'; export * from './useIsOverflow'; diff --git a/packages/core/src/hooks/useWindowSize.ts b/packages/core/src/hooks/useWindowSize.ts deleted file mode 100644 index 756f3c55f..000000000 --- a/packages/core/src/hooks/useWindowSize.ts +++ /dev/null @@ -1,39 +0,0 @@ -import * as React from 'react'; - -const throttle = (fn: (...args) => void, delay: number) => { - let timeout = undefined; - - return (...args) => { - if (!timeout) { - timeout = setTimeout(() => { - fn(...args); - timeout = undefined; - }, delay); - } - }; -}; - -export const useWindowSize = (delay = 0) => { - const [size, setSize] = React.useState([0, 0]); - - // eslint-disable-next-line consistent-return - const handleResizeWithThrottle = React.useMemo(() => { - if (typeof window !== 'undefined') { - return throttle( - () => setSize([window.innerWidth, window.innerHeight]), - delay, - ); - } - }, [delay]); - - // eslint-disable-next-line consistent-return - React.useLayoutEffect(() => { - if (typeof window !== 'undefined') { - window.addEventListener('resize', handleResizeWithThrottle); - return () => - window.removeEventListener('resize', handleResizeWithThrottle); - } - }, [handleResizeWithThrottle]); - - return size; -}; diff --git a/packages/core/tsconfig.build.json b/packages/core/tsconfig.build.json deleted file mode 100644 index f36278d27..000000000 --- a/packages/core/tsconfig.build.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "composite": true, - "declaration": true, - "declarationMap": true, - "declarationDir": "./dist/types", - "emitDeclarationOnly": true, - "incremental": true, - "outDir": "./dist" - }, - "include": ["src"], - "exclude": [ - "src/**/*.test.*", - "src/**/*.stories.tsx", - "src/**/__stories__/**/*" - ] -} - diff --git a/packages/core/tsconfig.json b/packages/core/tsconfig.json index caa12bb77..0fd53ea37 100644 --- a/packages/core/tsconfig.json +++ b/packages/core/tsconfig.json @@ -1,11 +1,6 @@ { - "extends": "../../tsconfig.json", + "extends": "../../common/tsconfig", "compilerOptions": { - "baseUrl": ".", - "declaration": true, - "declarationMap": true, - "outDir": "./dist", - "noErrorTruncation": true, "paths": { "@test": [ "../../test/test-utils.tsx" @@ -14,7 +9,6 @@ }, "include": [ "src", - "stories", - "vite.config.ts" + "stories" ] } diff --git a/packages/core/tsup.config.ts b/packages/core/tsup.config.ts new file mode 100644 index 000000000..2fae0e14c --- /dev/null +++ b/packages/core/tsup.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'tsup'; + +import { tsupConfig } from '../../common/tsup.config'; + +export default defineConfig({ + ...tsupConfig, + entry: ['src/index.ts'], +}); diff --git a/packages/core/vite.config.ts b/packages/core/vite.config.ts deleted file mode 100644 index e31490596..000000000 --- a/packages/core/vite.config.ts +++ /dev/null @@ -1,73 +0,0 @@ -/// <reference types="vitest" /> -import { resolve } from 'path'; -import { defineConfig } from 'vite'; -import react from '@vitejs/plugin-react'; -import tsconfigPaths from 'vite-tsconfig-paths'; -import dts from 'vite-plugin-dts'; - -export default defineConfig({ - build: { - sourcemap: true, - lib: { - entry: resolve(__dirname, 'src/index.ts'), - name: 'index', - fileName: 'index', - formats: ['es', 'cjs'], - }, - rollupOptions: { - external: [ - 'react', - 'react-dom', - 'react-dom/server', - 'react/jsx-runtime', - 'react-window', - 'react-select', - 'react-select/creatable', - '@dnd-kit/core', - '@dnd-kit/utilities', - '@dnd-kit/sortable', - 'react-grid-system', - 'react-popper', - '@popperjs/core', - '@devoinc/genesys-brand-devo', - '@devoinc/genesys-icons', - 'react-dock', - 'styled-components', - 'react-toastify', - 'react-windowed-select', - 'polished', - 'ahooks', - ], - }, - }, - plugins: [ - tsconfigPaths(), - react({ - babel: { - plugins: [ - [ - 'babel-plugin-styled-components', - { - ssr: false, - pure: true, - displayName: true, - fileName: false, - }, - ], - ], - }, - }), - dts({ - entryRoot: './src/', - exclude: ['./src/**/*.test.ts?(x)', './src/**/*.stories.tsx'], - }), - ], - test: { - environment: 'happy-dom', - include: ['{src,stories}/**/*.test.ts?(x)'], - coverage: { - provider: 'v8', - include: ['{src,stories}/**/*'], - }, - }, -}); diff --git a/packages/core/vitest.config.ts b/packages/core/vitest.config.ts new file mode 100644 index 000000000..49cded315 --- /dev/null +++ b/packages/core/vitest.config.ts @@ -0,0 +1,13 @@ +import { defineConfig } from 'vitest/config'; +import { resolve } from 'node:path'; + +import { vitestConfig } from '../../common/vitest.config'; + +export default defineConfig({ + ...vitestConfig, + resolve: { + alias: { + '@test': resolve(__dirname, '../../test/test-utils.tsx'), + }, + }, +}); diff --git a/packages/datetime/LICENSE b/packages/datetime/LICENSE new file mode 100644 index 000000000..267ad2d71 --- /dev/null +++ b/packages/datetime/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2022 Devo, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/packages/datetime/package.json b/packages/datetime/package.json index ea68c5732..47652dba3 100644 --- a/packages/datetime/package.json +++ b/packages/datetime/package.json @@ -4,14 +4,9 @@ "description": "", "type": "module", "scripts": { - "compile": "tsc --project tsconfig.json", - "compile:watch": "npm run compile -- --watch", "test": "vitest", - "build": "vite build", - "build:watch": "vite build --watch", + "build": "tsup", "depcruise": "sh ../../depcruise.sh \"$npm_package_name\"", - "analyzer": "vite-bundle-visualizer -o 'dist/stats.html'", - "stryker": "npx stryker run", "dpdm": "dpdm --exit-code circular:1 ./src/index.ts" }, "main": "./dist/index.cjs", diff --git a/packages/datetime/src/components/DateTimeFloatingPicker/DateTimeFloatingPicker.tsx b/packages/datetime/src/components/DateTimeFloatingPicker/DateTimeFloatingPicker.tsx index aae6f6ff6..e7bd29daf 100644 --- a/packages/datetime/src/components/DateTimeFloatingPicker/DateTimeFloatingPicker.tsx +++ b/packages/datetime/src/components/DateTimeFloatingPicker/DateTimeFloatingPicker.tsx @@ -200,7 +200,7 @@ export const DateTimeFloatingPicker: React.FC<DateTimeFloatingPickerProps> = ({ updateValue(tmpValue); onChange(tmpValue); setOpened(false); - onApply(); + onApply(tmpValue); }} > {i18n.apply} diff --git a/packages/datetime/src/components/DateTimeRangeFloatingPicker/DateTimeRangeFloatingPicker.tsx b/packages/datetime/src/components/DateTimeRangeFloatingPicker/DateTimeRangeFloatingPicker.tsx index 93a610d50..1e9a717c7 100644 --- a/packages/datetime/src/components/DateTimeRangeFloatingPicker/DateTimeRangeFloatingPicker.tsx +++ b/packages/datetime/src/components/DateTimeRangeFloatingPicker/DateTimeRangeFloatingPicker.tsx @@ -47,8 +47,6 @@ export interface DateTimeRangeFloatingPickerProps | 'size' | 'status' | 'helper' - | 'wide' - | 'helper' >, ITime, Required<Pick<IGlobalAttrs, 'id'>>, @@ -179,7 +177,11 @@ export const DateTimeRangeFloatingPicker: React.FC< id={id ? `${id}-datetime-range` : null} onChange={setTmpValue} onChangePreset={onChangePreset} - value={tmpValue} + value={ + typeof tmpValue[0] === 'string' + ? null + : (tmpValue as (number | Date)[]) + } preset={preset} presets={presets} presetsPlaceholder={presetsPlaceholder} diff --git a/packages/datetime/tsconfig.build.json b/packages/datetime/tsconfig.build.json deleted file mode 100644 index 5147ae855..000000000 --- a/packages/datetime/tsconfig.build.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "composite": true, - "declaration": true, - "declarationMap": true, - "declarationDir": "./dist/types", - "emitDeclarationOnly": true, - "incremental": true, - "outDir": "./dist" - }, - "include": ["src"], - "exclude": [ - "src/**/*.test.*", - "src/**/*.stories.tsx", - "src/**/__stories__/*" - ], - "references": [ - { - "path": "../core/tsconfig.build.json" - } - ] -} - diff --git a/packages/datetime/tsconfig.json b/packages/datetime/tsconfig.json index f99ab092c..0fd53ea37 100644 --- a/packages/datetime/tsconfig.json +++ b/packages/datetime/tsconfig.json @@ -1,11 +1,6 @@ { - "extends": "../../tsconfig.json", + "extends": "../../common/tsconfig", "compilerOptions": { - "baseUrl": ".", - "declaration": true, - "declarationMap": true, - "outDir": "./dist", - "noErrorTruncation": true, "paths": { "@test": [ "../../test/test-utils.tsx" @@ -14,7 +9,6 @@ }, "include": [ "src", - "stories", - "vite.config.ts" - ], + "stories" + ] } diff --git a/packages/datetime/tsup.config.ts b/packages/datetime/tsup.config.ts new file mode 100644 index 000000000..2fae0e14c --- /dev/null +++ b/packages/datetime/tsup.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'tsup'; + +import { tsupConfig } from '../../common/tsup.config'; + +export default defineConfig({ + ...tsupConfig, + entry: ['src/index.ts'], +}); diff --git a/packages/datetime/vite.config.ts b/packages/datetime/vite.config.ts deleted file mode 100644 index aad42ad8f..000000000 --- a/packages/datetime/vite.config.ts +++ /dev/null @@ -1,68 +0,0 @@ -/// <reference types="vitest" /> -import { resolve } from 'path'; -import { defineConfig } from 'vite'; -import react from '@vitejs/plugin-react'; -import tsconfigPaths from 'vite-tsconfig-paths'; -import dts from 'vite-plugin-dts'; - -export default defineConfig({ - resolve: { - preserveSymlinks: true, - }, - build: { - sourcemap: true, - lib: { - entry: resolve(__dirname, 'src/index.ts'), - name: 'index', - fileName: 'index', - formats: ['es', 'cjs'], - }, - rollupOptions: { - external: [ - '@devoinc/genesys-ui', - 'react', - 'react-dom', - 'react/jsx-runtime', - 'react-popper', - 'date-fns', - '@devoinc/genesys-icons', - 'styled-components', - ], - }, - }, - plugins: [ - tsconfigPaths(), - react({ - babel: { - plugins: [ - [ - 'babel-plugin-styled-components', - { - ssr: false, - pure: true, - displayName: true, - fileName: false, - }, - ], - ], - }, - }), - dts({ - entryRoot: './src/', - exclude: ['./src/**/*.test.ts?(x)', './src/**/*.stories.tsx'], - }), - ], - test: { - environment: 'happy-dom', - include: ['{src,stories}/**/*.test.ts?(x)'], - coverage: { - provider: 'v8', - include: ['{src,stories}/**/*'], - }, - server: { - deps: { - inline: [/\/@devoinc\/genesys-ui\//], - }, - }, - }, -}); diff --git a/packages/datetime/vitest.config.ts b/packages/datetime/vitest.config.ts new file mode 100644 index 000000000..49cded315 --- /dev/null +++ b/packages/datetime/vitest.config.ts @@ -0,0 +1,13 @@ +import { defineConfig } from 'vitest/config'; +import { resolve } from 'node:path'; + +import { vitestConfig } from '../../common/vitest.config'; + +export default defineConfig({ + ...vitestConfig, + resolve: { + alias: { + '@test': resolve(__dirname, '../../test/test-utils.tsx'), + }, + }, +}); diff --git a/packages/table/package.json b/packages/table/package.json index 5fd5c8640..c436bd779 100644 --- a/packages/table/package.json +++ b/packages/table/package.json @@ -4,14 +4,9 @@ "description": "Genesys composable table", "type": "module", "scripts": { - "compile": "tsc --project tsconfig.json", - "compile:watch": "npm run compile -- --watch", "test": "vitest", - "build": "vite build", - "build:watch": "vite build --watch", + "build": "tsup", "depcruise": "sh ../../depcruise.sh \"$npm_package_name\"", - "analyzer": "vite-bundle-visualizer -o 'dist/stats.html'", - "stryker": "npx stryker run", "dpdm": "dpdm --exit-code circular:1 ./src/index.ts" }, "main": "./dist/index.cjs", diff --git a/packages/table/src/filters/common/AdvancedFilter.tsx b/packages/table/src/filters/common/AdvancedFilter.tsx deleted file mode 100644 index 3bff0c232..000000000 --- a/packages/table/src/filters/common/AdvancedFilter.tsx +++ /dev/null @@ -1,53 +0,0 @@ -import * as React from 'react'; - -import { - Form, - HFlex, - IconButton, - Panel, - Popover, - type PopoverProps, -} from '@devoinc/genesys-ui'; -import { GIFilter } from '@devoinc/genesys-icons'; - -interface AdvancedFilterProps { - children: React.ReactNode; - footer?: React.ReactNode; - header?: React.ReactNode; - id: PopoverProps['id']; -} - -export const AdvancedFilter: React.FC<AdvancedFilterProps> = ({ - children, - footer, - header, - id, -}) => { - return ( - <HFlex.Item flex="0 0 auto"> - <Popover id={id} placement="bottom-start"> - {({ toggle, ref, isOpened }) => ( - <IconButton - aria-controls={id} - aria-expanded={isOpened} - aria-haspopup="true" - icon={<GIFilter />} - onClick={toggle} - ref={ref} - state={isOpened ? 'expanded' : undefined} - size="sm" - colorScheme="quiet" - hasBadge={true} - /> - )} - <Panel maxHeight="34rem" elevation="activated" size="sm" width="28rem"> - <Panel.Header>{header}</Panel.Header> - <Panel.Body> - <Form padding="cmp-sm">{children}</Form> - </Panel.Body> - <Panel.Footer bordered>{footer}</Panel.Footer> - </Panel> - </Popover> - </HFlex.Item> - ); -}; diff --git a/packages/table/src/filters/common/index.ts b/packages/table/src/filters/common/index.ts index bb0f37226..dc934f730 100644 --- a/packages/table/src/filters/common/index.ts +++ b/packages/table/src/filters/common/index.ts @@ -1,4 +1,3 @@ -export * from './AdvancedFilter'; export * from './BasicFilter'; export * from './FilterContainer'; export * from './FilterRule'; diff --git a/packages/table/src/helpers/definitions/data/findDataById.ts b/packages/table/src/helpers/definitions/data/findDataById.ts index 4c2128037..b7e3373fa 100644 --- a/packages/table/src/helpers/definitions/data/findDataById.ts +++ b/packages/table/src/helpers/definitions/data/findDataById.ts @@ -1,4 +1,5 @@ -import { TData } from "packages/table/src/declarations"; +import { TData } from '../../../declarations'; export const findDataById = (data: TData, id: string) => - data?.find((d) => d.id === id); \ No newline at end of file + data?.find((d) => d.id === id); + diff --git a/packages/table/src/helpers/definitions/row/deletePresetRowDef.ts b/packages/table/src/helpers/definitions/row/deletePresetRowDef.ts index 5cb5e12e5..fe5015704 100644 --- a/packages/table/src/helpers/definitions/row/deletePresetRowDef.ts +++ b/packages/table/src/helpers/definitions/row/deletePresetRowDef.ts @@ -1,4 +1,4 @@ -import { TRowDef } from 'packages/table/src/declarations'; +import { TRowDef } from '../../../declarations'; export const deletePresetRowDefs = (rowDefs: TRowDef[], id: string) => { return rowDefs?.map((row) => { diff --git a/packages/table/src/helpers/filterDataByText.ts b/packages/table/src/helpers/filterDataByText.ts index bb18628a7..8fe827e3a 100644 --- a/packages/table/src/helpers/filterDataByText.ts +++ b/packages/table/src/helpers/filterDataByText.ts @@ -31,14 +31,16 @@ export const valueFilter = ( if ( type === 'number' && - numberTextFilter(value, { value: searchText } as TNumberFilterValue) + numberTextFilter(Number(value), { value: searchText } as TNumberFilterValue) ) { return true; } if ( type === 'boolean' && - booleanTextFilter(value, { value: searchText } as TBooleanFilterValue) + booleanTextFilter(Boolean(value), { + value: searchText, + } as TBooleanFilterValue) ) { return true; } @@ -46,7 +48,7 @@ export const valueFilter = ( if ( type === 'options' && optionsTextFilter( - value, + String(value), { value: searchText } as TOptionsFilterValue, colDef, ) diff --git a/packages/table/src/helpers/filters/optionsTextFilter.ts b/packages/table/src/helpers/filters/optionsTextFilter.ts index cbf973b0f..52e8c917e 100644 --- a/packages/table/src/helpers/filters/optionsTextFilter.ts +++ b/packages/table/src/helpers/filters/optionsTextFilter.ts @@ -1,12 +1,16 @@ import type { TOptionsFilterValue } from '../../filters'; -export const optionsTextFilter = (data: string, { value }: TOptionsFilterValue, colDef: TColDef) => +export const optionsTextFilter = ( + data: string, + { value }: TOptionsFilterValue, + colDef: TColDef, +) => value === '' ? true : String(data).toLowerCase().includes(String(value).toLowerCase()) ? true - : (data && colDef?.context?.options[data]) - ? colDef.context.options[data].label.toLowerCase() - .includes(value.toLowerCase()) + : data && colDef?.context?.options[data] + ? colDef.context.options[data].label + .toLowerCase() + .includes(value.toLowerCase()) : false; - diff --git a/packages/table/src/wrapper/CellExpandWrapper/AllTypesColumn.tsx b/packages/table/src/wrapper/CellExpandWrapper/AllTypesColumn.tsx index c9573a90d..a6335aef5 100644 --- a/packages/table/src/wrapper/CellExpandWrapper/AllTypesColumn.tsx +++ b/packages/table/src/wrapper/CellExpandWrapper/AllTypesColumn.tsx @@ -1,6 +1,6 @@ import * as React from 'react'; import { TColDef } from '../../../src'; -import { ROW_HEIGHT_MD } from '../../../src/constants'; +import { ROW_HEIGHT_MD } from '../../constants'; export const AllTypesColumn: TColDef[] = [ { diff --git a/packages/table/tsconfig.build.json b/packages/table/tsconfig.build.json deleted file mode 100644 index 5147ae855..000000000 --- a/packages/table/tsconfig.build.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "composite": true, - "declaration": true, - "declarationMap": true, - "declarationDir": "./dist/types", - "emitDeclarationOnly": true, - "incremental": true, - "outDir": "./dist" - }, - "include": ["src"], - "exclude": [ - "src/**/*.test.*", - "src/**/*.stories.tsx", - "src/**/__stories__/*" - ], - "references": [ - { - "path": "../core/tsconfig.build.json" - } - ] -} - diff --git a/packages/table/tsconfig.json b/packages/table/tsconfig.json index 6d8585cd2..0fd53ea37 100644 --- a/packages/table/tsconfig.json +++ b/packages/table/tsconfig.json @@ -1,13 +1,14 @@ { - "extends": "../../tsconfig.json", + "extends": "../../common/tsconfig", "compilerOptions": { - "declaration": true, - "declarationMap": true, - "outDir": "./dist" + "paths": { + "@test": [ + "../../test/test-utils.tsx" + ] + } }, "include": [ "src", - "stories", - "vite.config.ts" - ], + "stories" + ] } diff --git a/packages/table/tsup.config.ts b/packages/table/tsup.config.ts new file mode 100644 index 000000000..4ed5eda05 --- /dev/null +++ b/packages/table/tsup.config.ts @@ -0,0 +1,9 @@ +import { defineConfig } from 'tsup'; + +import { tsupConfig } from '../../common/tsup.config'; + +export default defineConfig({ + ...tsupConfig, + entry: ['src/index.ts'], + dts: false, +}); diff --git a/packages/table/vite.config.ts b/packages/table/vite.config.ts deleted file mode 100644 index ee5a80153..000000000 --- a/packages/table/vite.config.ts +++ /dev/null @@ -1,74 +0,0 @@ -/// <reference types="vitest" /> -import { resolve } from 'path'; -import { defineConfig } from 'vite'; -import react from '@vitejs/plugin-react'; -import tsconfigPaths from 'vite-tsconfig-paths'; -import dts from 'vite-plugin-dts'; - -export default defineConfig({ - resolve: { - preserveSymlinks: true, - }, - build: { - sourcemap: true, - lib: { - entry: resolve(__dirname, 'src/index.ts'), - name: 'index', - fileName: 'index', - formats: ['es', 'cjs'], - }, - rollupOptions: { - external: [ - '@devoinc/genesys-ui', - '@devoinc/genesys-ui-datetime', - '@devoinc/genesys-icons', - '@tanstack/react-virtual', - 'react', - 'react-dom', - 'react/jsx-runtime', - 'styled-components', - 'date-fns', - '@date-fns/tz', - 'date-fns/locale', - ], - }, - }, - plugins: [ - tsconfigPaths(), - react({ - babel: { - plugins: [ - [ - 'babel-plugin-styled-components', - { - ssr: false, - pure: true, - displayName: true, - fileName: false, - }, - ], - ], - }, - }), - dts({ - entryRoot: './src/', - exclude: ['./src/**/*.test.ts?(x)', './src/**/*.stories.tsx'], - }), - ], - test: { - environment: 'happy-dom', - include: ['{src,stories}/**/*.test.ts?(x)'], - coverage: { - provider: 'v8', - include: ['{src,stories}/**/*'], - }, - server: { - deps: { - inline: [ - /\/@devoinc\/genesys-ui\//, - /\/@devoinc\/genesys-ui-datetime\//, - ], - }, - }, - }, -}); diff --git a/packages/table/vitest.config.ts b/packages/table/vitest.config.ts new file mode 100644 index 000000000..49cded315 --- /dev/null +++ b/packages/table/vitest.config.ts @@ -0,0 +1,13 @@ +import { defineConfig } from 'vitest/config'; +import { resolve } from 'node:path'; + +import { vitestConfig } from '../../common/vitest.config'; + +export default defineConfig({ + ...vitestConfig, + resolve: { + alias: { + '@test': resolve(__dirname, '../../test/test-utils.tsx'), + }, + }, +}); diff --git a/packages/upload/package.json b/packages/upload/package.json index 30bc17b72..84e7ae91b 100644 --- a/packages/upload/package.json +++ b/packages/upload/package.json @@ -4,13 +4,8 @@ "description": "", "type": "module", "scripts": { - "compile": "tsc --project tsconfig.json", - "compile:watch": "npm run compile -- --watch", - "build": "vite build", - "build:watch": "vite build --watch", + "build": "tsup", "depcruise": "sh ../../depcruise.sh \"$npm_package_name\"", - "analyzer": "vite-bundle-visualizer -o 'dist/stats.html'", - "stryker": "npx stryker run", "dpdm": "dpdm --exit-code circular:1 ./src/index.ts" }, "main": "./dist/index.cjs", diff --git a/packages/upload/tsconfig.build.json b/packages/upload/tsconfig.build.json deleted file mode 100644 index 5147ae855..000000000 --- a/packages/upload/tsconfig.build.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "composite": true, - "declaration": true, - "declarationMap": true, - "declarationDir": "./dist/types", - "emitDeclarationOnly": true, - "incremental": true, - "outDir": "./dist" - }, - "include": ["src"], - "exclude": [ - "src/**/*.test.*", - "src/**/*.stories.tsx", - "src/**/__stories__/*" - ], - "references": [ - { - "path": "../core/tsconfig.build.json" - } - ] -} - diff --git a/packages/upload/tsconfig.json b/packages/upload/tsconfig.json index 6d8585cd2..0fd53ea37 100644 --- a/packages/upload/tsconfig.json +++ b/packages/upload/tsconfig.json @@ -1,13 +1,14 @@ { - "extends": "../../tsconfig.json", + "extends": "../../common/tsconfig", "compilerOptions": { - "declaration": true, - "declarationMap": true, - "outDir": "./dist" + "paths": { + "@test": [ + "../../test/test-utils.tsx" + ] + } }, "include": [ "src", - "stories", - "vite.config.ts" - ], + "stories" + ] } diff --git a/packages/upload/tsup.config.ts b/packages/upload/tsup.config.ts new file mode 100644 index 000000000..2fae0e14c --- /dev/null +++ b/packages/upload/tsup.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'tsup'; + +import { tsupConfig } from '../../common/tsup.config'; + +export default defineConfig({ + ...tsupConfig, + entry: ['src/index.ts'], +}); diff --git a/packages/upload/vite.config.ts b/packages/upload/vite.config.ts deleted file mode 100644 index 019970182..000000000 --- a/packages/upload/vite.config.ts +++ /dev/null @@ -1,69 +0,0 @@ -/// <reference types="vitest" /> -import { resolve } from 'path'; -import { defineConfig } from 'vite'; -import react from '@vitejs/plugin-react'; -import tsconfigPaths from 'vite-tsconfig-paths'; -import dts from 'vite-plugin-dts'; - -export default defineConfig({ - resolve: { - preserveSymlinks: true, - }, - build: { - sourcemap: true, - lib: { - entry: resolve(__dirname, 'src/index.ts'), - name: 'index', - fileName: 'index', - formats: ['es', 'cjs'], - }, - rollupOptions: { - external: [ - '@devoinc/genesys-ui', - 'react', - 'react-dom', - 'react/jsx-runtime', - 'styled-components', - 'react-filepond', - 'filepond-plugin-image-preview', - 'filepond-plugin-file-validate-type', - 'filepond-plugin-file-validate-size', - ], - }, - }, - plugins: [ - tsconfigPaths(), - react({ - babel: { - plugins: [ - [ - 'babel-plugin-styled-components', - { - ssr: false, - pure: true, - displayName: true, - fileName: false, - }, - ], - ], - }, - }), - dts({ - entryRoot: './src/', - exclude: ['./src/**/*.test.ts?(x)', './src/**/*.stories.tsx'], - }), - ], - test: { - environment: 'happy-dom', - include: ['{src,stories}/**/*.test.ts?(x)'], - coverage: { - provider: 'v8', - include: ['{src,stories}/**/*'], - }, - server: { - deps: { - inline: [/\/@devoinc\/genesys-ui\//], - }, - }, - }, -}); diff --git a/packages/upload/vitest.config.ts b/packages/upload/vitest.config.ts new file mode 100644 index 000000000..49cded315 --- /dev/null +++ b/packages/upload/vitest.config.ts @@ -0,0 +1,13 @@ +import { defineConfig } from 'vitest/config'; +import { resolve } from 'node:path'; + +import { vitestConfig } from '../../common/vitest.config'; + +export default defineConfig({ + ...vitestConfig, + resolve: { + alias: { + '@test': resolve(__dirname, '../../test/test-utils.tsx'), + }, + }, +}); diff --git a/scripts/post_install.sh b/scripts/post_install.sh deleted file mode 100755 index 6675ce2bf..000000000 --- a/scripts/post_install.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -echo 'Applying fix to Styled-Components types...' - -os=$(uname -s) - -case $os in -Darwin) - sed -i '' 's/^interface IStyledComponentBase/export interface IStyledComponentBase/g' node_modules/styled-components/dist/types.d.ts - ;; -Linux) - sed -i 's/^interface IStyledComponentBase/export interface IStyledComponentBase/g' node_modules/styled-components/dist/types.d.ts - ;; -esac diff --git a/vite.config.ts b/vite.config.ts deleted file mode 100644 index f9c745d4b..000000000 --- a/vite.config.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { defineConfig } from 'vite'; -// Used from @storybook/react-vite dependencies -import react from '@vitejs/plugin-react'; - -/** @type {import('vite').UserConfig} */ -export default defineConfig(({ command }) => ({ - plugins: [ - react({ - babel: { - plugins: [ - [ - 'babel-plugin-styled-components', - { - ssr: false, - pure: true, - displayName: command !== 'build', - fileName: command !== 'build', - }, - ], - ], - }, - }), - ], -}));