From fc1e3a68876b39a832926cc81a232dcc3f663650 Mon Sep 17 00:00:00 2001 From: luoanbing Date: Sun, 31 Mar 2024 20:13:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9EMUI=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 11 +- pnpm-lock.yaml | 316 ++++++++++++++++++ rollup.config.mjs | 7 +- src/AttrBase.ts | 15 +- src/MUI_5/FormItem.tsx | 51 +++ src/MUI_5/index.ts | 133 ++++++++ test/package.json | 7 +- test/pnpm-lock.yaml | 725 +++++++++++++++++++++++++++++++++++++---- test/src/App.tsx | 358 ++------------------ test/src/MUI.tsx | 89 +++++ test/src/NextUI.tsx | 318 ++++++++++++++++++ tsconfig.json | 6 +- 12 files changed, 1639 insertions(+), 397 deletions(-) create mode 100644 src/MUI_5/FormItem.tsx create mode 100644 src/MUI_5/index.ts create mode 100644 test/src/MUI.tsx create mode 100644 test/src/NextUI.tsx diff --git a/package.json b/package.json index 427abd8..291ac5d 100644 --- a/package.json +++ b/package.json @@ -26,10 +26,16 @@ "require": "./dist/Antd_5.cjs.js", "import": "./dist/Antd_5.esm.js", "types": "./dist/Antd_5.d.ts" + }, + "./MUI_5": { + "require": "./dist/MUI_5.cjs.js", + "import": "./dist/MUI_5.esm.js", + "types": "./dist/MUI_5.d.ts" } }, "browser": "dist/index.umd.js", "devDependencies": { + "@mui/material": "^5.15.14", "@changesets/cli": "^2.27.1", "@nextui-org/react": "^2.2.9", "@rollup/plugin-commonjs": "^25.0.7", @@ -66,5 +72,6 @@ }, "author": "luoanbing", "email": "luoanb@163.com", - "license": "MIT" -} \ No newline at end of file + "license": "MIT", + "dependencies": {} +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4159ae4..bc2e0f4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,6 +8,9 @@ devDependencies: '@changesets/cli': specifier: ^2.27.1 version: registry.npmjs.org/@changesets/cli@2.27.1 + '@mui/material': + specifier: ^5.15.14 + version: registry.npmjs.org/@mui/material@5.15.14(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) '@nextui-org/react': specifier: ^2.2.9 version: registry.npmjs.org/@nextui-org/react@2.2.9(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0)(tailwindcss@3.4.1) @@ -396,6 +399,18 @@ packages: engines: {node: '>=10'} dev: true + registry.npmjs.org/@emotion/cache@11.11.0: + resolution: {integrity: sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz} + name: '@emotion/cache' + version: 11.11.0 + dependencies: + '@emotion/memoize': registry.npmjs.org/@emotion/memoize@0.8.1 + '@emotion/sheet': registry.npmjs.org/@emotion/sheet@1.2.2 + '@emotion/utils': registry.npmjs.org/@emotion/utils@1.2.1 + '@emotion/weak-memoize': registry.npmjs.org/@emotion/weak-memoize@0.3.1 + stylis: registry.npmjs.org/stylis@4.2.0 + dev: true + registry.npmjs.org/@emotion/hash@0.8.0: resolution: {integrity: sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz} name: '@emotion/hash' @@ -419,12 +434,73 @@ packages: dev: true optional: true + registry.npmjs.org/@emotion/memoize@0.8.1: + resolution: {integrity: sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz} + name: '@emotion/memoize' + version: 0.8.1 + dev: true + + registry.npmjs.org/@emotion/sheet@1.2.2: + resolution: {integrity: sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz} + name: '@emotion/sheet' + version: 1.2.2 + dev: true + registry.npmjs.org/@emotion/unitless@0.7.5: resolution: {integrity: sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz} name: '@emotion/unitless' version: 0.7.5 dev: true + registry.npmjs.org/@emotion/utils@1.2.1: + resolution: {integrity: sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz} + name: '@emotion/utils' + version: 1.2.1 + dev: true + + registry.npmjs.org/@emotion/weak-memoize@0.3.1: + resolution: {integrity: sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz} + name: '@emotion/weak-memoize' + version: 0.3.1 + dev: true + + registry.npmjs.org/@floating-ui/core@1.6.0: + resolution: {integrity: sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@floating-ui/core/-/core-1.6.0.tgz} + name: '@floating-ui/core' + version: 1.6.0 + dependencies: + '@floating-ui/utils': registry.npmjs.org/@floating-ui/utils@0.2.1 + dev: true + + registry.npmjs.org/@floating-ui/dom@1.6.3: + resolution: {integrity: sha512-RnDthu3mzPlQ31Ss/BTwQ1zjzIhr3lk1gZB1OC56h/1vEtaXkESrOqL5fQVMfXpwGtRwX+YsZBdyHtJMQnkArw==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.3.tgz} + name: '@floating-ui/dom' + version: 1.6.3 + dependencies: + '@floating-ui/core': registry.npmjs.org/@floating-ui/core@1.6.0 + '@floating-ui/utils': registry.npmjs.org/@floating-ui/utils@0.2.1 + dev: true + + registry.npmjs.org/@floating-ui/react-dom@2.0.8(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-HOdqOt3R3OGeTKidaLvJKcgg75S6tibQ3Tif4eyd91QnIJWr0NLvoXFpJA/j8HqkFSL68GDca9AuyWEHlhyClw==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.8.tgz} + id: registry.npmjs.org/@floating-ui/react-dom/2.0.8 + name: '@floating-ui/react-dom' + version: 2.0.8 + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + dependencies: + '@floating-ui/dom': registry.npmjs.org/@floating-ui/dom@1.6.3 + react: registry.npmjs.org/react@18.2.0 + react-dom: registry.npmjs.org/react-dom@18.2.0(react@18.2.0) + dev: true + + registry.npmjs.org/@floating-ui/utils@0.2.1: + resolution: {integrity: sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.1.tgz} + name: '@floating-ui/utils' + version: 0.2.1 + dev: true + registry.npmjs.org/@formatjs/ecma402-abstract@1.18.2: resolution: {integrity: sha512-+QoPW4csYALsQIl8GbN14igZzDbuwzcpWrku9nyMXlaqAlwRBgl5V+p0vWMGFqHOw37czNXaP/lEk4wbLgcmtA==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.18.2.tgz} name: '@formatjs/ecma402-abstract' @@ -595,6 +671,184 @@ packages: version: 0.2.7 dev: true + registry.npmjs.org/@mui/base@5.0.0-beta.40(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-I/lGHztkCzvwlXpjD2+SNmvNQvB4227xBXhISPjEaJUXGImOQ9f3D2Yj/T3KasSI/h0MLWy74X0J6clhPmsRbQ==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.40.tgz} + id: registry.npmjs.org/@mui/base/5.0.0-beta.40 + name: '@mui/base' + version: 5.0.0-beta.40 + engines: {node: '>=12.0.0'} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + react-dom: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmjs.org/@babel/runtime@7.24.0 + '@floating-ui/react-dom': registry.npmjs.org/@floating-ui/react-dom@2.0.8(react-dom@18.2.0)(react@18.2.0) + '@mui/types': registry.npmjs.org/@mui/types@7.2.14(@types/react@18.2.64) + '@mui/utils': registry.npmjs.org/@mui/utils@5.15.14(@types/react@18.2.64)(react@18.2.0) + '@popperjs/core': registry.npmjs.org/@popperjs/core@2.11.8 + '@types/react': registry.npmjs.org/@types/react@18.2.64 + clsx: registry.npmjs.org/clsx@2.1.0 + prop-types: registry.npmjs.org/prop-types@15.8.1 + react: registry.npmjs.org/react@18.2.0 + react-dom: registry.npmjs.org/react-dom@18.2.0(react@18.2.0) + dev: true + + registry.npmjs.org/@mui/core-downloads-tracker@5.15.14: + resolution: {integrity: sha512-on75VMd0XqZfaQW+9pGjSNiqW+ghc5E2ZSLRBXwcXl/C4YzjfyjrLPhrEpKnR9Uym9KXBvxrhoHfPcczYHweyA==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.15.14.tgz} + name: '@mui/core-downloads-tracker' + version: 5.15.14 + dev: true + + registry.npmjs.org/@mui/material@5.15.14(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-kEbRw6fASdQ1SQ7LVdWR5OlWV3y7Y54ZxkLzd6LV5tmz+NpO3MJKZXSfgR0LHMP7meKsPiMm4AuzV0pXDpk/BQ==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@mui/material/-/material-5.15.14.tgz} + id: registry.npmjs.org/@mui/material/5.15.14 + name: '@mui/material' + version: 5.15.14 + engines: {node: '>=12.0.0'} + peerDependencies: + '@emotion/react': ^11.5.0 + '@emotion/styled': ^11.3.0 + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + react-dom: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmjs.org/@babel/runtime@7.24.0 + '@mui/base': registry.npmjs.org/@mui/base@5.0.0-beta.40(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@mui/core-downloads-tracker': registry.npmjs.org/@mui/core-downloads-tracker@5.15.14 + '@mui/system': registry.npmjs.org/@mui/system@5.15.14(@types/react@18.2.64)(react@18.2.0) + '@mui/types': registry.npmjs.org/@mui/types@7.2.14(@types/react@18.2.64) + '@mui/utils': registry.npmjs.org/@mui/utils@5.15.14(@types/react@18.2.64)(react@18.2.0) + '@types/react': registry.npmjs.org/@types/react@18.2.64 + '@types/react-transition-group': registry.npmjs.org/@types/react-transition-group@4.4.10 + clsx: registry.npmjs.org/clsx@2.1.0 + csstype: registry.npmjs.org/csstype@3.1.3 + prop-types: registry.npmjs.org/prop-types@15.8.1 + react: registry.npmjs.org/react@18.2.0 + react-dom: registry.npmjs.org/react-dom@18.2.0(react@18.2.0) + react-is: registry.npmjs.org/react-is@18.2.0 + react-transition-group: registry.npmjs.org/react-transition-group@4.4.5(react-dom@18.2.0)(react@18.2.0) + dev: true + + registry.npmjs.org/@mui/private-theming@5.15.14(@types/react@18.2.64)(react@18.2.0): + resolution: {integrity: sha512-UH0EiZckOWcxiXLX3Jbb0K7rC8mxTr9L9l6QhOZxYc4r8FHUkefltV9VDGLrzCaWh30SQiJvAEd7djX3XXY6Xw==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.15.14.tgz} + id: registry.npmjs.org/@mui/private-theming/5.15.14 + name: '@mui/private-theming' + version: 5.15.14 + engines: {node: '>=12.0.0'} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmjs.org/@babel/runtime@7.24.0 + '@mui/utils': registry.npmjs.org/@mui/utils@5.15.14(@types/react@18.2.64)(react@18.2.0) + '@types/react': registry.npmjs.org/@types/react@18.2.64 + prop-types: registry.npmjs.org/prop-types@15.8.1 + react: registry.npmjs.org/react@18.2.0 + dev: true + + registry.npmjs.org/@mui/styled-engine@5.15.14(react@18.2.0): + resolution: {integrity: sha512-RILkuVD8gY6PvjZjqnWhz8fu68dVkqhM5+jYWfB5yhlSQKg+2rHkmEwm75XIeAqI3qwOndK6zELK5H6Zxn4NHw==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.15.14.tgz} + id: registry.npmjs.org/@mui/styled-engine/5.15.14 + name: '@mui/styled-engine' + version: 5.15.14 + engines: {node: '>=12.0.0'} + peerDependencies: + '@emotion/react': ^11.4.1 + '@emotion/styled': ^11.3.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + dependencies: + '@babel/runtime': registry.npmjs.org/@babel/runtime@7.24.0 + '@emotion/cache': registry.npmjs.org/@emotion/cache@11.11.0 + csstype: registry.npmjs.org/csstype@3.1.3 + prop-types: registry.npmjs.org/prop-types@15.8.1 + react: registry.npmjs.org/react@18.2.0 + dev: true + + registry.npmjs.org/@mui/system@5.15.14(@types/react@18.2.64)(react@18.2.0): + resolution: {integrity: sha512-auXLXzUaCSSOLqJXmsAaq7P96VPRXg2Rrz6OHNV7lr+kB8lobUF+/N84Vd9C4G/wvCXYPs5TYuuGBRhcGbiBGg==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@mui/system/-/system-5.15.14.tgz} + id: registry.npmjs.org/@mui/system/5.15.14 + name: '@mui/system' + version: 5.15.14 + engines: {node: '>=12.0.0'} + peerDependencies: + '@emotion/react': ^11.5.0 + '@emotion/styled': ^11.3.0 + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmjs.org/@babel/runtime@7.24.0 + '@mui/private-theming': registry.npmjs.org/@mui/private-theming@5.15.14(@types/react@18.2.64)(react@18.2.0) + '@mui/styled-engine': registry.npmjs.org/@mui/styled-engine@5.15.14(react@18.2.0) + '@mui/types': registry.npmjs.org/@mui/types@7.2.14(@types/react@18.2.64) + '@mui/utils': registry.npmjs.org/@mui/utils@5.15.14(@types/react@18.2.64)(react@18.2.0) + '@types/react': registry.npmjs.org/@types/react@18.2.64 + clsx: registry.npmjs.org/clsx@2.1.0 + csstype: registry.npmjs.org/csstype@3.1.3 + prop-types: registry.npmjs.org/prop-types@15.8.1 + react: registry.npmjs.org/react@18.2.0 + dev: true + + registry.npmjs.org/@mui/types@7.2.14(@types/react@18.2.64): + resolution: {integrity: sha512-MZsBZ4q4HfzBsywtXgM1Ksj6HDThtiwmOKUXH1pKYISI9gAVXCNHNpo7TlGoGrBaYWZTdNoirIN7JsQcQUjmQQ==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@mui/types/-/types-7.2.14.tgz} + id: registry.npmjs.org/@mui/types/7.2.14 + name: '@mui/types' + version: 7.2.14 + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': registry.npmjs.org/@types/react@18.2.64 + dev: true + + registry.npmjs.org/@mui/utils@5.15.14(@types/react@18.2.64)(react@18.2.0): + resolution: {integrity: sha512-0lF/7Hh/ezDv5X7Pry6enMsbYyGKjADzvHyo3Qrc/SSlTsQ1VkbDMbH0m2t3OR5iIVLwMoxwM7yGd+6FCMtTFA==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@mui/utils/-/utils-5.15.14.tgz} + id: registry.npmjs.org/@mui/utils/5.15.14 + name: '@mui/utils' + version: 5.15.14 + engines: {node: '>=12.0.0'} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmjs.org/@babel/runtime@7.24.0 + '@types/prop-types': registry.npmjs.org/@types/prop-types@15.7.11 + '@types/react': registry.npmjs.org/@types/react@18.2.64 + prop-types: registry.npmjs.org/prop-types@15.8.1 + react: registry.npmjs.org/react@18.2.0 + react-is: registry.npmjs.org/react-is@18.2.0 + dev: true + registry.npmjs.org/@nextui-org/accordion@2.0.28(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.17)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-WzD7sscL+4K0TFyUutTn1AhU0wcS68TqNCTNv7KgON6ODdwieydilMxAyXvwo3RgXeWG+8BbdxJC/6W+/iLBTg==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@nextui-org/accordion/-/accordion-2.0.28.tgz} id: registry.npmjs.org/@nextui-org/accordion/2.0.28 @@ -2115,6 +2369,12 @@ packages: dev: true optional: true + registry.npmjs.org/@popperjs/core@2.11.8: + resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz} + name: '@popperjs/core' + version: 2.11.8 + dev: true + registry.npmjs.org/@rc-component/color-picker@1.5.3(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-+tGGH3nLmYXTalVe0L8hSZNs73VTP5ueSHwUlDC77KKRaN7G4DS4wcpG5DTDzdcV/Yas+rzA6UGgIyzd8fS4cw==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@rc-component/color-picker/-/color-picker-1.5.3.tgz} id: registry.npmjs.org/@rc-component/color-picker/1.5.3 @@ -3597,6 +3857,14 @@ packages: version: 15.7.11 dev: true + registry.npmjs.org/@types/react-transition-group@4.4.10: + resolution: {integrity: sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.10.tgz} + name: '@types/react-transition-group' + version: 4.4.10 + dependencies: + '@types/react': registry.npmjs.org/@types/react@18.2.64 + dev: true + registry.npmjs.org/@types/react@18.2.64: resolution: {integrity: sha512-MlmPvHgjj2p3vZaxbQgFUQFvD8QiZwACfGqEdDSWou5yISWxDQ4/74nCAwsUiX7UFLKZz3BbVSPj+YxeoGGCfg==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@types/react/-/react-18.2.64.tgz} name: '@types/react' @@ -4296,6 +4564,15 @@ packages: version: 1.1.3 dev: true + registry.npmjs.org/dom-helpers@5.2.1: + resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz} + name: dom-helpers + version: 5.2.1 + dependencies: + '@babel/runtime': registry.npmjs.org/@babel/runtime@7.24.0 + csstype: registry.npmjs.org/csstype@3.1.3 + dev: true + registry.npmjs.org/eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz} name: eastasianwidth @@ -5892,6 +6169,16 @@ packages: hasBin: true dev: true + registry.npmjs.org/prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz} + name: prop-types + version: 15.8.1 + dependencies: + loose-envify: registry.npmjs.org/loose-envify@1.4.0 + object-assign: registry.npmjs.org/object-assign@4.1.1 + react-is: registry.npmjs.org/react-is@16.13.1 + dev: true + registry.npmjs.org/pseudomap@1.0.2: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz} name: pseudomap @@ -6557,6 +6844,12 @@ packages: scheduler: registry.npmjs.org/scheduler@0.23.0 dev: true + registry.npmjs.org/react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz} + name: react-is + version: 16.13.1 + dev: true + registry.npmjs.org/react-is@18.2.0: resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz} name: react-is @@ -6641,6 +6934,23 @@ packages: - '@types/react' dev: true + registry.npmjs.org/react-transition-group@4.4.5(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz} + id: registry.npmjs.org/react-transition-group/4.4.5 + name: react-transition-group + version: 4.4.5 + peerDependencies: + react: '>=16.6.0' + react-dom: '>=16.6.0' + dependencies: + '@babel/runtime': registry.npmjs.org/@babel/runtime@7.24.0 + dom-helpers: registry.npmjs.org/dom-helpers@5.2.1 + loose-envify: registry.npmjs.org/loose-envify@1.4.0 + prop-types: registry.npmjs.org/prop-types@15.8.1 + react: registry.npmjs.org/react@18.2.0 + react-dom: registry.npmjs.org/react-dom@18.2.0(react@18.2.0) + dev: true + registry.npmjs.org/react@18.2.0: resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/react/-/react-18.2.0.tgz} name: react @@ -7269,6 +7579,12 @@ packages: min-indent: registry.npmjs.org/min-indent@1.0.1 dev: true + registry.npmjs.org/stylis@4.2.0: + resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz} + name: stylis + version: 4.2.0 + dev: true + registry.npmjs.org/stylis@4.3.1: resolution: {integrity: sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz} name: stylis diff --git a/rollup.config.mjs b/rollup.config.mjs index 134fb77..cdc6dfb 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -27,7 +27,7 @@ const defineLib = ({ input, outputName }) => { // 声明 { input, - external: ['react', '@nextui-org/react', 'antd'], + external: ['react', '@nextui-org/react', 'antd', '@mui/material'], output: [ { file: `dist/${outputName}.d.ts` @@ -54,6 +54,7 @@ export default [ ...(process.env.NODE_ENV === 'development' ? [] : [terser(), uglify()]) ] }, - ...defineLib({ input: 'src/Antd_5/index.tsx', outputName: 'Antd_5', name: 'hookFormReact' }), - ...defineLib({ input: 'src/index.ts', outputName: 'index', name: 'hookFormReact' }) + ...defineLib({ input: 'src/Antd_5/index.tsx', outputName: 'Antd_5' }), + ...defineLib({ input: 'src/MUI_5/index.ts', outputName: 'MUI_5' }), + ...defineLib({ input: 'src/index.ts', outputName: 'index' }) ] diff --git a/src/AttrBase.ts b/src/AttrBase.ts index 0352e21..4f4a098 100644 --- a/src/AttrBase.ts +++ b/src/AttrBase.ts @@ -4,17 +4,30 @@ import { RenderAttrProps } from './useAttr' * 属性绑定基类 */ export class AttrBase { + protected constructor() {} /** * HTML原生Input绑定:value/onChange(e.target.value) * @param props Form表单上下文 * @returns */ - static D_Input = ({ value, setValue }: RenderAttrProps) => { + static D_Input = ({ value, setValue }: RenderAttrProps) => { return { value, onChange: (e: any) => setValue(e.target.value) } } + /** + * HTML.checkbox绑定: checked/onChange(e.target.checked) + * @param props Form表单上下文 + * @returns + */ + static D_Checkbox = ({ value, setValue }: RenderAttrProps) => { + return { + checked: value, + onChange: (e: any) => setValue(e.target.checked) + } + } + /** * 绑定value/onChange(value) * @param props diff --git a/src/MUI_5/FormItem.tsx b/src/MUI_5/FormItem.tsx new file mode 100644 index 0000000..e89a8c4 --- /dev/null +++ b/src/MUI_5/FormItem.tsx @@ -0,0 +1,51 @@ +import * as React from 'react' +import { + FormControl, + FormControlProps, + FormHelperText, + FormHelperTextProps, + InputLabel, + InputLabelProps, + MenuItem, + Select, + TextField +} from '@mui/material' +import { Input } from '@nextui-org/react' + +/** + * @description MUI表单项参数 + */ +export type FormItemProps = FormControlProps & { + helperText?: React.ReactNode + label?: React.ReactNode + error?: boolean + inputLabelProps?: InputLabelProps + formHelperText?: FormHelperTextProps +} + +/** + * MUI FormControl,FormLabel,FormHelperText 轻封装 + * @param props + * @returns + */ +export const FormItem = ({ + children, + helperText, + label, + error, + inputLabelProps = {}, + formHelperText = {}, + ...props +}: FormItemProps) => { + return ( + + + {label} + + {children} + + {helperText} + + + ) +} diff --git a/src/MUI_5/index.ts b/src/MUI_5/index.ts new file mode 100644 index 0000000..af19d0f --- /dev/null +++ b/src/MUI_5/index.ts @@ -0,0 +1,133 @@ +import { AttrBase } from '@/AttrBase' +import { RenderAttrProps } from '@/useAttr' +import { AutocompleteProps, TextFieldProps } from '@mui/material' +import { FormItem, FormItemProps } from './FormItem' + +/** + * MUI.5的快速绑定支持 静态工具类, 无需new,直接使用 + */ +export class MUI_5 extends AttrBase { + private constructor() { + super() + } + + static M_AutoComplete = < + Value, + Multiple extends boolean | undefined, + DisableClearable extends boolean | undefined, + FreeSolo extends boolean | undefined, + ChipComponent extends React.FunctionComponent + >( + props: RenderAttrProps + ) => { + return { + value: props.value, + onChange: (_e: any, v: Value) => { + props.setValue(v) + } + } as unknown as AutocompleteProps + } + + /** + * 绑定错误信息 + * @param props + * @returns + */ + static M_Error = (props: RenderAttrProps) => { + return { + helperText: props.msg, + error: props.isError + } + } + + /** + * 绑定TextField + * @param props + * @returns + */ + static M_TextField = (props: RenderAttrProps) => { + return { + ...this.M_Error(props), + value: props.value, + onChange: (e: any) => { + props.setValue(e.target.value) + } + } as TextFieldProps + } + + /** + * 绑定 Switch + * @param props + * @returns + */ + static M_Switch = (props: RenderAttrProps) => { + return { + ...this.D_Checkbox(props) + } + } + + /** + * 绑定 Checkbox + * @param props + * @returns + */ + static M_Checkbox = (props: RenderAttrProps) => { + return { + ...this.D_Checkbox(props) + } + } + + /** + * Slider + * @param props + * @returns + */ + static M_Slider = (props: RenderAttrProps) => { + return { + value: props.value, + onChange: (_e: unknown, v: number) => { + props.setValue(v) + } + } + } + + /** + * RadioGroup + * @param props + * @returns + */ + static M_RadioGroup = (props: RenderAttrProps) => { + return { + ...this.D_Input(props) + } + } + + /** + * Rating + * @param props + * @returns + */ + static M_Rating = (props: RenderAttrProps) => { + return { + value: props.value, + onChange: (_e: any, v: number) => { + props.setValue(v) + } + } + } + + /** + * Select + * @param props + * @returns + */ + static M_Select = (props: RenderAttrProps) => { + return { + ...this.D_Input(props) + } + } + + static FormItem = FormItem +} + +export type { FormItemProps } diff --git a/test/package.json b/test/package.json index a2b2bcc..21ad79b 100644 --- a/test/package.json +++ b/test/package.json @@ -10,14 +10,17 @@ "preview": "vite preview" }, "dependencies": { + "@emotion/react": "^11.11.4", + "@emotion/styled": "^11.11.5", + "@mui/material": "^5.15.14", "@nextui-org/react": "^2.2.9", "antd": "^5.15.1", "dayjs": "^1.11.10", "framer-motion": "^11.0.8", + "hook-form-react": "file:../", "react": "^18.2.0", "react-dom": "^18.2.0", - "tailwindcss": "^3.4.1", - "hook-form-react": "file:../" + "tailwindcss": "^3.4.1" }, "devDependencies": { "@types/node": "^20.11.25", diff --git a/test/pnpm-lock.yaml b/test/pnpm-lock.yaml index 6ae6734..594714b 100644 --- a/test/pnpm-lock.yaml +++ b/test/pnpm-lock.yaml @@ -5,6 +5,15 @@ settings: excludeLinksFromLockfile: false dependencies: + '@emotion/react': + specifier: ^11.11.4 + version: 11.11.4(@types/react@18.2.64)(react@18.2.0) + '@emotion/styled': + specifier: ^11.11.5 + version: registry.npmmirror.com/@emotion/styled@11.11.5(@emotion/react@11.11.4)(@types/react@18.2.64)(react@18.2.0) + '@mui/material': + specifier: ^5.15.14 + version: 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) '@nextui-org/react': specifier: ^2.2.9 version: 2.2.9(@types/react@18.2.64)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0)(tailwindcss@3.4.1) @@ -156,7 +165,6 @@ packages: dependencies: '@babel/highlight': 7.23.4 chalk: 2.4.2 - dev: true /@babel/compat-data@7.23.5: resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} @@ -275,7 +283,6 @@ packages: /@babel/helper-validator-identifier@7.22.20: resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-validator-option@7.23.5: resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} @@ -300,7 +307,6 @@ packages: '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 - dev: true /@babel/parser@7.24.0: resolution: {integrity: sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==} @@ -378,10 +384,30 @@ packages: engines: {node: '>=10'} dev: false + /@emotion/babel-plugin@11.11.0: + resolution: {integrity: sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==} + dependencies: + '@babel/helper-module-imports': registry.npmmirror.com/@babel/helper-module-imports@7.22.15 + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 + '@emotion/hash': 0.9.1 + '@emotion/memoize': 0.8.1 + '@emotion/serialize': 1.1.4 + babel-plugin-macros: registry.npmmirror.com/babel-plugin-macros@3.1.0 + convert-source-map: registry.npmmirror.com/convert-source-map@1.9.0 + escape-string-regexp: registry.npmmirror.com/escape-string-regexp@4.0.0 + find-root: 1.1.0 + source-map: 0.5.7 + stylis: 4.2.0 + dev: false + /@emotion/hash@0.8.0: resolution: {integrity: sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==} dev: false + /@emotion/hash@0.9.1: + resolution: {integrity: sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==} + dev: false + /@emotion/is-prop-valid@0.8.8: resolution: {integrity: sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==} requiresBuild: true @@ -390,15 +416,64 @@ packages: dev: false optional: true + /@emotion/is-prop-valid@1.2.2: + resolution: {integrity: sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw==} + dependencies: + '@emotion/memoize': 0.8.1 + dev: false + /@emotion/memoize@0.7.4: resolution: {integrity: sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==} dev: false optional: true + /@emotion/memoize@0.8.1: + resolution: {integrity: sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==} + dev: false + + /@emotion/react@11.11.4(@types/react@18.2.64)(react@18.2.0): + resolution: {integrity: sha512-t8AjMlF0gHpvvxk5mAtCqR4vmxiGHCeJBaQO6gncUSdklELOgtwjerNY2yuJNfwnc6vi16U/+uMF+afIawJ9iw==} + peerDependencies: + '@types/react': '*' + react: '>=16.8.0' + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 + '@emotion/babel-plugin': 11.11.0 + '@emotion/cache': registry.npmmirror.com/@emotion/cache@11.11.0 + '@emotion/serialize': 1.1.4 + '@emotion/use-insertion-effect-with-fallbacks': registry.npmmirror.com/@emotion/use-insertion-effect-with-fallbacks@1.0.1(react@18.2.0) + '@emotion/utils': 1.2.1 + '@emotion/weak-memoize': registry.npmmirror.com/@emotion/weak-memoize@0.3.1 + '@types/react': 18.2.64 + hoist-non-react-statics: 3.3.2 + react: 18.2.0 + dev: false + + /@emotion/serialize@1.1.4: + resolution: {integrity: sha512-RIN04MBT8g+FnDwgvIUi8czvr1LU1alUMI05LekWB5DGyTm8cCBMCRpq3GqaiyEDRptEXOyXnvZ58GZYu4kBxQ==} + dependencies: + '@emotion/hash': 0.9.1 + '@emotion/memoize': 0.8.1 + '@emotion/unitless': 0.8.1 + '@emotion/utils': 1.2.1 + csstype: registry.npmmirror.com/csstype@3.1.3 + dev: false + /@emotion/unitless@0.7.5: resolution: {integrity: sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==} dev: false + /@emotion/unitless@0.8.1: + resolution: {integrity: sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==} + dev: false + + /@emotion/utils@1.2.1: + resolution: {integrity: sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==} + dev: false + /@esbuild/aix-ppc64@0.19.12: resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} engines: {node: '>=12'} @@ -643,6 +718,16 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true + /@floating-ui/core@1.6.0: + resolution: {integrity: sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==} + dependencies: + '@floating-ui/utils': 0.2.1 + dev: false + + /@floating-ui/utils@0.2.1: + resolution: {integrity: sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==} + dev: false + /@formatjs/ecma402-abstract@1.18.2: resolution: {integrity: sha512-+QoPW4csYALsQIl8GbN14igZzDbuwzcpWrku9nyMXlaqAlwRBgl5V+p0vWMGFqHOw37czNXaP/lEk4wbLgcmtA==} dependencies: @@ -729,9 +814,9 @@ packages: string-width: 5.1.2 string-width-cjs: /string-width@4.2.3 strip-ansi: 7.1.0 - strip-ansi-cjs: /strip-ansi@6.0.1 + strip-ansi-cjs: registry.npmmirror.com/strip-ansi@6.0.1 wrap-ansi: 8.1.0 - wrap-ansi-cjs: /wrap-ansi@7.0.0 + wrap-ansi-cjs: registry.npmmirror.com/wrap-ansi@7.0.0 dev: false /@jridgewell/gen-mapping@0.3.5: @@ -759,6 +844,167 @@ packages: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 + /@mui/base@5.0.0-beta.40(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-I/lGHztkCzvwlXpjD2+SNmvNQvB4227xBXhISPjEaJUXGImOQ9f3D2Yj/T3KasSI/h0MLWy74X0J6clhPmsRbQ==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + react-dom: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 + '@floating-ui/react-dom': registry.npmmirror.com/@floating-ui/react-dom@2.0.8(react-dom@18.2.0)(react@18.2.0) + '@mui/types': 7.2.14(@types/react@18.2.64) + '@mui/utils': 5.15.14(@types/react@18.2.64)(react@18.2.0) + '@popperjs/core': registry.npmmirror.com/@popperjs/core@2.11.8 + '@types/react': 18.2.64 + clsx: registry.npmmirror.com/clsx@2.1.0 + prop-types: registry.npmmirror.com/prop-types@15.8.1 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@mui/core-downloads-tracker@5.15.14: + resolution: {integrity: sha512-on75VMd0XqZfaQW+9pGjSNiqW+ghc5E2ZSLRBXwcXl/C4YzjfyjrLPhrEpKnR9Uym9KXBvxrhoHfPcczYHweyA==} + dev: false + + /@mui/material@5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-kEbRw6fASdQ1SQ7LVdWR5OlWV3y7Y54ZxkLzd6LV5tmz+NpO3MJKZXSfgR0LHMP7meKsPiMm4AuzV0pXDpk/BQ==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@emotion/react': ^11.5.0 + '@emotion/styled': ^11.3.0 + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + react-dom: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 + '@emotion/react': 11.11.4(@types/react@18.2.64)(react@18.2.0) + '@emotion/styled': registry.npmmirror.com/@emotion/styled@11.11.5(@emotion/react@11.11.4)(@types/react@18.2.64)(react@18.2.0) + '@mui/base': 5.0.0-beta.40(@types/react@18.2.64)(react-dom@18.2.0)(react@18.2.0) + '@mui/core-downloads-tracker': 5.15.14 + '@mui/system': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.64)(react@18.2.0) + '@mui/types': 7.2.14(@types/react@18.2.64) + '@mui/utils': 5.15.14(@types/react@18.2.64)(react@18.2.0) + '@types/react': 18.2.64 + '@types/react-transition-group': 4.4.10 + clsx: registry.npmmirror.com/clsx@2.1.0 + csstype: registry.npmmirror.com/csstype@3.1.3 + prop-types: registry.npmmirror.com/prop-types@15.8.1 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-is: 18.2.0 + react-transition-group: registry.npmmirror.com/react-transition-group@4.4.5(react-dom@18.2.0)(react@18.2.0) + dev: false + + /@mui/private-theming@5.15.14(@types/react@18.2.64)(react@18.2.0): + resolution: {integrity: sha512-UH0EiZckOWcxiXLX3Jbb0K7rC8mxTr9L9l6QhOZxYc4r8FHUkefltV9VDGLrzCaWh30SQiJvAEd7djX3XXY6Xw==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 + '@mui/utils': 5.15.14(@types/react@18.2.64)(react@18.2.0) + '@types/react': 18.2.64 + prop-types: registry.npmmirror.com/prop-types@15.8.1 + react: 18.2.0 + dev: false + + /@mui/styled-engine@5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(react@18.2.0): + resolution: {integrity: sha512-RILkuVD8gY6PvjZjqnWhz8fu68dVkqhM5+jYWfB5yhlSQKg+2rHkmEwm75XIeAqI3qwOndK6zELK5H6Zxn4NHw==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@emotion/react': ^11.4.1 + '@emotion/styled': ^11.3.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 + '@emotion/cache': registry.npmmirror.com/@emotion/cache@11.11.0 + '@emotion/react': 11.11.4(@types/react@18.2.64)(react@18.2.0) + '@emotion/styled': registry.npmmirror.com/@emotion/styled@11.11.5(@emotion/react@11.11.4)(@types/react@18.2.64)(react@18.2.0) + csstype: registry.npmmirror.com/csstype@3.1.3 + prop-types: registry.npmmirror.com/prop-types@15.8.1 + react: 18.2.0 + dev: false + + /@mui/system@5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.64)(react@18.2.0): + resolution: {integrity: sha512-auXLXzUaCSSOLqJXmsAaq7P96VPRXg2Rrz6OHNV7lr+kB8lobUF+/N84Vd9C4G/wvCXYPs5TYuuGBRhcGbiBGg==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@emotion/react': ^11.5.0 + '@emotion/styled': ^11.3.0 + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 + '@emotion/react': 11.11.4(@types/react@18.2.64)(react@18.2.0) + '@emotion/styled': registry.npmmirror.com/@emotion/styled@11.11.5(@emotion/react@11.11.4)(@types/react@18.2.64)(react@18.2.0) + '@mui/private-theming': 5.15.14(@types/react@18.2.64)(react@18.2.0) + '@mui/styled-engine': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(react@18.2.0) + '@mui/types': 7.2.14(@types/react@18.2.64) + '@mui/utils': 5.15.14(@types/react@18.2.64)(react@18.2.0) + '@types/react': 18.2.64 + clsx: registry.npmmirror.com/clsx@2.1.0 + csstype: registry.npmmirror.com/csstype@3.1.3 + prop-types: registry.npmmirror.com/prop-types@15.8.1 + react: 18.2.0 + dev: false + + /@mui/types@7.2.14(@types/react@18.2.64): + resolution: {integrity: sha512-MZsBZ4q4HfzBsywtXgM1Ksj6HDThtiwmOKUXH1pKYISI9gAVXCNHNpo7TlGoGrBaYWZTdNoirIN7JsQcQUjmQQ==} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.64 + dev: false + + /@mui/utils@5.15.14(@types/react@18.2.64)(react@18.2.0): + resolution: {integrity: sha512-0lF/7Hh/ezDv5X7Pry6enMsbYyGKjADzvHyo3Qrc/SSlTsQ1VkbDMbH0m2t3OR5iIVLwMoxwM7yGd+6FCMtTFA==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 + '@types/prop-types': 15.7.11 + '@types/react': 18.2.64 + prop-types: registry.npmmirror.com/prop-types@15.8.1 + react: 18.2.0 + react-is: 18.2.0 + dev: false + /@nextui-org/accordion@2.0.28(@nextui-org/system@2.0.15)(@nextui-org/theme@2.1.17)(framer-motion@11.0.8)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): resolution: {integrity: sha512-WzD7sscL+4K0TFyUutTn1AhU0wcS68TqNCTNv7KgON6ODdwieydilMxAyXvwo3RgXeWG+8BbdxJC/6W+/iLBTg==} peerDependencies: @@ -1697,7 +1943,7 @@ packages: '@nextui-org/theme': 2.1.17(tailwindcss@3.4.1) clsx: 1.2.1 react: 18.2.0 - tailwind-variants: 0.2.0(tailwindcss@3.4.1) + tailwind-variants: registry.npmmirror.com/tailwind-variants@0.2.0(tailwindcss@3.4.1) dev: false /@nextui-org/system@2.0.15(@nextui-org/theme@2.1.17)(react-dom@18.2.0)(react@18.2.0)(tailwind-variants@0.2.0): @@ -2067,13 +2313,6 @@ packages: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 - /@pkgjs/parseargs@0.11.0: - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} - requiresBuild: true - dev: false - optional: true - /@rc-component/color-picker@1.5.2(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-YJXujYzYFAEtlXJXy0yJUhwzUWPTcniBZto+wZ/vnACmFnUTNR7dH+NOeqSwMMsssh74e9H5Jfpr5LAH2PYqUw==} peerDependencies: @@ -2094,7 +2333,7 @@ packages: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: - '@babel/runtime': 7.24.0 + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 rc-util: 5.39.1(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -2104,7 +2343,7 @@ packages: resolution: {integrity: sha512-jS4E7T9Li2GuYwI6PyiVXmxTiM6b07rlD9Ge8uGZSCz3WlzcG5ZK7g5bbuKNeZ9pgUuPK/5guV781ujdVpm4HQ==} engines: {node: '>=8.x'} dependencies: - '@babel/runtime': 7.24.0 + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 dev: false /@rc-component/mutate-observer@1.1.0(react-dom@18.2.0)(react@18.2.0): @@ -2128,7 +2367,7 @@ packages: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: - '@babel/runtime': 7.24.0 + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 classnames: 2.5.1 rc-util: 5.39.1(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 @@ -3172,7 +3411,7 @@ packages: /@swc/helpers@0.4.14: resolution: {integrity: sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw==} dependencies: - tslib: 2.6.2 + tslib: registry.npmmirror.com/tslib@2.6.2 dev: false /@swc/helpers@0.4.36: @@ -3240,6 +3479,12 @@ packages: '@types/react': 18.2.64 dev: true + /@types/react-transition-group@4.4.10: + resolution: {integrity: sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==} + dependencies: + '@types/react': registry.npmmirror.com/@types/react@18.2.64 + dev: false + /@types/react@18.2.64: resolution: {integrity: sha512-MlmPvHgjj2p3vZaxbQgFUQFvD8QiZwACfGqEdDSWou5yISWxDQ4/74nCAwsUiX7UFLKZz3BbVSPj+YxeoGGCfg==} dependencies: @@ -3432,6 +3677,7 @@ packages: /ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} + dev: true /ansi-regex@6.0.1: resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} @@ -3443,7 +3689,6 @@ packages: engines: {node: '>=4'} dependencies: color-convert: 1.9.3 - dev: true /ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} @@ -3605,7 +3850,6 @@ packages: /callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} - dev: true /camelcase-css@2.0.1: resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} @@ -3623,7 +3867,6 @@ packages: ansi-styles: 3.2.1 escape-string-regexp: 1.0.5 supports-color: 5.5.0 - dev: true /chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} @@ -3665,7 +3908,6 @@ packages: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: color-name: 1.1.3 - dev: true /color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} @@ -3675,7 +3917,6 @@ packages: /color-name@1.1.3: resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - dev: true /color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} @@ -3722,6 +3963,17 @@ packages: toggle-selection: 1.0.6 dev: false + /cosmiconfig@7.1.0: + resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} + engines: {node: '>=10'} + dependencies: + '@types/parse-json': registry.npmmirror.com/@types/parse-json@4.0.2 + import-fresh: 3.3.0 + parse-json: 5.2.0 + path-type: registry.npmmirror.com/path-type@4.0.0 + yaml: 1.10.2 + dev: false + /cross-spawn@7.0.3: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} @@ -3790,6 +4042,13 @@ packages: esutils: 2.0.3 dev: true + /dom-helpers@5.2.1: + resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 + csstype: registry.npmmirror.com/csstype@3.1.3 + dev: false + /eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} dev: false @@ -3798,14 +4057,16 @@ packages: resolution: {integrity: sha512-I7q3BbQi6e4tJJN5CRcyvxhK0iJb34TV8eJQcgh+fR2fQ8miMgZcEInckCo1U9exDHbfz7DLDnFn8oqH/VcRKw==} dev: true - /emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - dev: false - /emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} dev: false + /error-ex@1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + dependencies: + is-arrayish: registry.npmmirror.com/is-arrayish@0.2.1 + dev: false + /esbuild@0.19.12: resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} engines: {node: '>=12'} @@ -3845,7 +4106,6 @@ packages: /escape-string-regexp@1.0.5: resolution: {integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=} engines: {node: '>=0.8.0'} - dev: true /escape-string-regexp@4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} @@ -4002,6 +4262,10 @@ packages: dependencies: to-regex-range: 5.0.1 + /find-root@1.1.0: + resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} + dev: false + /find-up@5.0.0: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} @@ -4149,7 +4413,6 @@ packages: /has-flag@3.0.0: resolution: {integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0=} engines: {node: '>=4'} - dev: true /has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} @@ -4163,6 +4426,12 @@ packages: function-bind: 1.1.2 dev: false + /hoist-non-react-statics@3.3.2: + resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} + dependencies: + react-is: 16.13.1 + dev: false + /ignore@5.3.1: resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} engines: {node: '>= 4'} @@ -4178,7 +4447,6 @@ packages: dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 - dev: true /imurmurhash@0.1.4: resolution: {integrity: sha1-khi5srkoojixPcT7a21XbyMUU+o=} @@ -4260,7 +4528,7 @@ packages: dependencies: '@isaacs/cliui': 8.0.2 optionalDependencies: - '@pkgjs/parseargs': 0.11.0 + '@pkgjs/parseargs': registry.npmmirror.com/@pkgjs/parseargs@0.11.0 dev: false /jiti@1.21.0: @@ -4501,7 +4769,16 @@ packages: engines: {node: '>=6'} dependencies: callsites: 3.1.0 - dev: true + + /parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + dependencies: + '@babel/code-frame': 7.23.5 + error-ex: 1.3.2 + json-parse-even-better-errors: registry.npmmirror.com/json-parse-even-better-errors@2.3.1 + lines-and-columns: registry.npmmirror.com/lines-and-columns@1.2.4 + dev: false /path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} @@ -4852,7 +5129,7 @@ packages: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: - '@babel/runtime': 7.24.0 + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 classnames: 2.5.1 rc-resize-observer: 1.4.0(react-dom@18.2.0)(react@18.2.0) rc-util: 5.39.1(react-dom@18.2.0)(react@18.2.0) @@ -5144,7 +5421,7 @@ packages: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: - '@babel/runtime': 7.24.0 + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 classnames: 2.5.1 rc-resize-observer: 1.4.0(react-dom@18.2.0)(react@18.2.0) rc-util: 5.39.1(react-dom@18.2.0)(react@18.2.0) @@ -5162,6 +5439,10 @@ packages: scheduler: 0.23.0 dev: false + /react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + dev: false + /react-is@18.2.0: resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} dev: false @@ -5267,7 +5548,6 @@ packages: /resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} - dev: true /resolve@1.22.8: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} @@ -5388,6 +5668,11 @@ packages: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} engines: {node: '>=0.10.0'} + /source-map@0.5.7: + resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} + engines: {node: '>=0.10.0'} + dev: false + /string-convert@0.2.1: resolution: {integrity: sha1-aYLMMEn7tM2F+LJFaLnZvznu/5c=} dev: false @@ -5396,9 +5681,9 @@ packages: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} dependencies: - emoji-regex: 8.0.0 + emoji-regex: registry.npmmirror.com/emoji-regex@8.0.0 is-fullwidth-code-point: 3.0.0 - strip-ansi: 6.0.1 + strip-ansi: registry.npmmirror.com/strip-ansi@6.0.1 dev: false /string-width@5.1.2: @@ -5415,6 +5700,7 @@ packages: engines: {node: '>=8'} dependencies: ansi-regex: 5.0.1 + dev: true /strip-ansi@7.1.0: resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} @@ -5428,6 +5714,10 @@ packages: engines: {node: '>=8'} dev: true + /stylis@4.2.0: + resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==} + dev: false + /stylis@4.3.1: resolution: {integrity: sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==} dev: false @@ -5451,7 +5741,6 @@ packages: engines: {node: '>=4'} dependencies: has-flag: 3.0.0 - dev: true /supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} @@ -5472,7 +5761,7 @@ packages: /tailwind-merge@2.2.1: resolution: {integrity: sha512-o+2GTLkthfa5YUt4JxPfzMIpQzZ3adD1vLVkvKE1Twl9UAhGsEbIZhHHZVRttyW177S8PDJI3bTQNaebyofK3Q==} dependencies: - '@babel/runtime': 7.24.0 + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 dev: false /tailwind-variants@0.1.20(tailwindcss@3.4.1): @@ -5485,16 +5774,6 @@ packages: tailwindcss: 3.4.1 dev: false - /tailwind-variants@0.2.0(tailwindcss@3.4.1): - resolution: {integrity: sha512-EuW5Sic7c0tzp+p5rJwAgb7398Jb0hi4zkyCstOoZPW0DWwr+EWkNtnZYEo5CjgE1tazHUzyt4oIhss64UXRVA==} - engines: {node: '>=16.x', pnpm: '>=7.x'} - peerDependencies: - tailwindcss: '*' - dependencies: - tailwind-merge: 2.2.1 - tailwindcss: 3.4.1 - dev: false - /tailwindcss@3.4.1: resolution: {integrity: sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==} engines: {node: '>=14.0.0'} @@ -5733,15 +6012,6 @@ packages: dependencies: isexe: 2.0.0 - /wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - dev: false - /wrap-ansi@8.1.0: resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} engines: {node: '>=12'} @@ -5763,6 +6033,11 @@ packages: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} dev: true + /yaml@1.10.2: + resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} + engines: {node: '>= 6'} + dev: false + /yaml@2.4.1: resolution: {integrity: sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==} engines: {node: '>= 14'} @@ -5778,3 +6053,339 @@ packages: resolution: {directory: .., type: directory} name: hook-form-react dev: false + + registry.npmmirror.com/@babel/helper-module-imports@7.22.15: + resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz} + name: '@babel/helper-module-imports' + version: 7.22.15 + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': registry.npmmirror.com/@babel/types@7.24.0 + dev: false + + registry.npmmirror.com/@babel/helper-string-parser@7.23.4: + resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz} + name: '@babel/helper-string-parser' + version: 7.23.4 + engines: {node: '>=6.9.0'} + dev: false + + registry.npmmirror.com/@babel/runtime@7.24.0: + resolution: {integrity: sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@babel/runtime/-/runtime-7.24.0.tgz} + name: '@babel/runtime' + version: 7.24.0 + engines: {node: '>=6.9.0'} + dependencies: + regenerator-runtime: 0.14.1 + dev: false + + registry.npmmirror.com/@babel/types@7.24.0: + resolution: {integrity: sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@babel/types/-/types-7.24.0.tgz} + name: '@babel/types' + version: 7.24.0 + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-string-parser': registry.npmmirror.com/@babel/helper-string-parser@7.23.4 + '@babel/helper-validator-identifier': 7.22.20 + to-fast-properties: registry.npmmirror.com/to-fast-properties@2.0.0 + dev: false + + registry.npmmirror.com/@emotion/cache@11.11.0: + resolution: {integrity: sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@emotion/cache/-/cache-11.11.0.tgz} + name: '@emotion/cache' + version: 11.11.0 + dependencies: + '@emotion/memoize': 0.8.1 + '@emotion/sheet': registry.npmmirror.com/@emotion/sheet@1.2.2 + '@emotion/utils': 1.2.1 + '@emotion/weak-memoize': registry.npmmirror.com/@emotion/weak-memoize@0.3.1 + stylis: 4.2.0 + dev: false + + registry.npmmirror.com/@emotion/sheet@1.2.2: + resolution: {integrity: sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@emotion/sheet/-/sheet-1.2.2.tgz} + name: '@emotion/sheet' + version: 1.2.2 + dev: false + + registry.npmmirror.com/@emotion/styled@11.11.5(@emotion/react@11.11.4)(@types/react@18.2.64)(react@18.2.0): + resolution: {integrity: sha512-/ZjjnaNKvuMPxcIiUkf/9SHoG4Q196DRl1w82hQ3WCsjo1IUR8uaGWrC6a87CrYAW0Kb/pK7hk8BnLgLRi9KoQ==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@emotion/styled/-/styled-11.11.5.tgz} + id: registry.npmmirror.com/@emotion/styled/11.11.5 + name: '@emotion/styled' + version: 11.11.5 + peerDependencies: + '@emotion/react': ^11.0.0-rc.0 + '@types/react': '*' + react: '>=16.8.0' + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 + '@emotion/babel-plugin': 11.11.0 + '@emotion/is-prop-valid': 1.2.2 + '@emotion/react': 11.11.4(@types/react@18.2.64)(react@18.2.0) + '@emotion/serialize': 1.1.4 + '@emotion/use-insertion-effect-with-fallbacks': registry.npmmirror.com/@emotion/use-insertion-effect-with-fallbacks@1.0.1(react@18.2.0) + '@emotion/utils': 1.2.1 + '@types/react': 18.2.64 + react: 18.2.0 + dev: false + + registry.npmmirror.com/@emotion/use-insertion-effect-with-fallbacks@1.0.1(react@18.2.0): + resolution: {integrity: sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz} + id: registry.npmmirror.com/@emotion/use-insertion-effect-with-fallbacks/1.0.1 + name: '@emotion/use-insertion-effect-with-fallbacks' + version: 1.0.1 + peerDependencies: + react: '>=16.8.0' + dependencies: + react: 18.2.0 + dev: false + + registry.npmmirror.com/@emotion/weak-memoize@0.3.1: + resolution: {integrity: sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz} + name: '@emotion/weak-memoize' + version: 0.3.1 + dev: false + + registry.npmmirror.com/@floating-ui/dom@1.6.3: + resolution: {integrity: sha512-RnDthu3mzPlQ31Ss/BTwQ1zjzIhr3lk1gZB1OC56h/1vEtaXkESrOqL5fQVMfXpwGtRwX+YsZBdyHtJMQnkArw==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@floating-ui/dom/-/dom-1.6.3.tgz} + name: '@floating-ui/dom' + version: 1.6.3 + dependencies: + '@floating-ui/core': 1.6.0 + '@floating-ui/utils': 0.2.1 + dev: false + + registry.npmmirror.com/@floating-ui/react-dom@2.0.8(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-HOdqOt3R3OGeTKidaLvJKcgg75S6tibQ3Tif4eyd91QnIJWr0NLvoXFpJA/j8HqkFSL68GDca9AuyWEHlhyClw==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@floating-ui/react-dom/-/react-dom-2.0.8.tgz} + id: registry.npmmirror.com/@floating-ui/react-dom/2.0.8 + name: '@floating-ui/react-dom' + version: 2.0.8 + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + dependencies: + '@floating-ui/dom': registry.npmmirror.com/@floating-ui/dom@1.6.3 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + registry.npmmirror.com/@pkgjs/parseargs@0.11.0: + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz} + name: '@pkgjs/parseargs' + version: 0.11.0 + engines: {node: '>=14'} + requiresBuild: true + dev: false + optional: true + + registry.npmmirror.com/@popperjs/core@2.11.8: + resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@popperjs/core/-/core-2.11.8.tgz} + name: '@popperjs/core' + version: 2.11.8 + dev: false + + registry.npmmirror.com/@types/parse-json@4.0.2: + resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@types/parse-json/-/parse-json-4.0.2.tgz} + name: '@types/parse-json' + version: 4.0.2 + dev: false + + registry.npmmirror.com/@types/react@18.2.64: + resolution: {integrity: sha512-MlmPvHgjj2p3vZaxbQgFUQFvD8QiZwACfGqEdDSWou5yISWxDQ4/74nCAwsUiX7UFLKZz3BbVSPj+YxeoGGCfg==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@types/react/-/react-18.2.64.tgz} + name: '@types/react' + version: 18.2.64 + dependencies: + '@types/prop-types': 15.7.11 + '@types/scheduler': registry.npmmirror.com/@types/scheduler@0.16.8 + csstype: registry.npmmirror.com/csstype@3.1.3 + dev: false + + registry.npmmirror.com/@types/scheduler@0.16.8: + resolution: {integrity: sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/@types/scheduler/-/scheduler-0.16.8.tgz} + name: '@types/scheduler' + version: 0.16.8 + dev: false + + registry.npmmirror.com/ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz} + name: ansi-regex + version: 5.0.1 + engines: {node: '>=8'} + dev: false + + registry.npmmirror.com/babel-plugin-macros@3.1.0: + resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz} + name: babel-plugin-macros + version: 3.1.0 + engines: {node: '>=10', npm: '>=6'} + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 + cosmiconfig: 7.1.0 + resolve: registry.npmmirror.com/resolve@1.22.8 + dev: false + + registry.npmmirror.com/clsx@2.1.0: + resolution: {integrity: sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/clsx/-/clsx-2.1.0.tgz} + name: clsx + version: 2.1.0 + engines: {node: '>=6'} + dev: false + + registry.npmmirror.com/convert-source-map@1.9.0: + resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz} + name: convert-source-map + version: 1.9.0 + dev: false + + registry.npmmirror.com/csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/csstype/-/csstype-3.1.3.tgz} + name: csstype + version: 3.1.3 + dev: false + + registry.npmmirror.com/emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz} + name: emoji-regex + version: 8.0.0 + dev: false + + registry.npmmirror.com/escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz} + name: escape-string-regexp + version: 4.0.0 + engines: {node: '>=10'} + dev: false + + registry.npmmirror.com/is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/is-arrayish/-/is-arrayish-0.2.1.tgz} + name: is-arrayish + version: 0.2.1 + dev: false + + registry.npmmirror.com/js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz} + name: js-tokens + version: 4.0.0 + dev: false + + registry.npmmirror.com/json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz} + name: json-parse-even-better-errors + version: 2.3.1 + dev: false + + registry.npmmirror.com/lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz} + name: lines-and-columns + version: 1.2.4 + dev: false + + registry.npmmirror.com/loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/loose-envify/-/loose-envify-1.4.0.tgz} + name: loose-envify + version: 1.4.0 + hasBin: true + dependencies: + js-tokens: registry.npmmirror.com/js-tokens@4.0.0 + dev: false + + registry.npmmirror.com/path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/path-type/-/path-type-4.0.0.tgz} + name: path-type + version: 4.0.0 + engines: {node: '>=8'} + dev: false + + registry.npmmirror.com/prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/prop-types/-/prop-types-15.8.1.tgz} + name: prop-types + version: 15.8.1 + dependencies: + loose-envify: registry.npmmirror.com/loose-envify@1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + dev: false + + registry.npmmirror.com/react-transition-group@4.4.5(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/react-transition-group/-/react-transition-group-4.4.5.tgz} + id: registry.npmmirror.com/react-transition-group/4.4.5 + name: react-transition-group + version: 4.4.5 + peerDependencies: + react: '>=16.6.0' + react-dom: '>=16.6.0' + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime@7.24.0 + dom-helpers: 5.2.1 + loose-envify: registry.npmmirror.com/loose-envify@1.4.0 + prop-types: registry.npmmirror.com/prop-types@15.8.1 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + registry.npmmirror.com/resolve@1.22.8: + resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/resolve/-/resolve-1.22.8.tgz} + name: resolve + version: 1.22.8 + hasBin: true + dependencies: + is-core-module: 2.13.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: registry.npmmirror.com/supports-preserve-symlinks-flag@1.0.0 + dev: false + + registry.npmmirror.com/strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz} + name: strip-ansi + version: 6.0.1 + engines: {node: '>=8'} + dependencies: + ansi-regex: registry.npmmirror.com/ansi-regex@5.0.1 + dev: false + + registry.npmmirror.com/supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz} + name: supports-preserve-symlinks-flag + version: 1.0.0 + engines: {node: '>= 0.4'} + dev: false + + registry.npmmirror.com/tailwind-variants@0.2.0(tailwindcss@3.4.1): + resolution: {integrity: sha512-EuW5Sic7c0tzp+p5rJwAgb7398Jb0hi4zkyCstOoZPW0DWwr+EWkNtnZYEo5CjgE1tazHUzyt4oIhss64UXRVA==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/tailwind-variants/-/tailwind-variants-0.2.0.tgz} + id: registry.npmmirror.com/tailwind-variants/0.2.0 + name: tailwind-variants + version: 0.2.0 + engines: {node: '>=16.x', pnpm: '>=7.x'} + peerDependencies: + tailwindcss: '*' + dependencies: + tailwind-merge: 2.2.1 + tailwindcss: 3.4.1 + dev: false + + registry.npmmirror.com/to-fast-properties@2.0.0: + resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz} + name: to-fast-properties + version: 2.0.0 + engines: {node: '>=4'} + dev: false + + registry.npmmirror.com/tslib@2.6.2: + resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/tslib/-/tslib-2.6.2.tgz} + name: tslib + version: 2.6.2 + dev: false + + registry.npmmirror.com/wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==, registry: https://mirrors.cloud.tencent.com/npm/, tarball: https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz} + name: wrap-ansi + version: 7.0.0 + engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: registry.npmmirror.com/strip-ansi@6.0.1 + dev: false diff --git a/test/src/App.tsx b/test/src/App.tsx index aec4a45..f8f486c 100644 --- a/test/src/App.tsx +++ b/test/src/App.tsx @@ -1,333 +1,33 @@ -import { useAttr, useFormData, useSubFormData, Verifications } from 'hook-form-react' -import { Antd_5 } from 'hook-form-react/Antd_5' -import { - Button, - Checkbox, - Input, - Radio, - RadioGroup, - Select, - SelectItem, - Slider, - Switch, - Textarea -} from '@nextui-org/react' -import { animals, treeData } from './data' -import { - Input as A_Input, - InputNumber, - DatePicker, - TimePicker, - Select as A_Select, - Switch as A_Switch, - Checkbox as A_Checkbox, - Radio as A_Radio, - TreeSelect -} from 'antd' - -export const Example = () => { - const formData = useFormData( - { - password: '', - username: '', - age: '', - value4: [], - value5: '', - value6: false, - value7: '', - value8: '', - value9: '', - value10: { - name: '小红', - heihei: '小红', - haha: '小红' - }, - antdValue: { - str: '', - num: 0, - arr: [] as string[], - arr2: [] as string[], - arr3: [] as string[], - arr4: [] as string[], - bool: false - } - }, - { - // 支持多个校验 - password: [ - // 自带验证器必填校验 - // 开发者也可以自行在项目中补充其它验证规则,具体请看开发者文档(待补充) - Verifications.required(), - // 自带验证器密码校验 - Verifications.password() - ], - username: [ - // 自带验证器的必填校验 + 自定义提示 - Verifications.required('用户账户不能为空'), - // 自带验证器的用户名校验 - Verifications.username() - ], - age: [Verifications.min(0), Verifications.max(150)], - value4: [Verifications.minLenth(2)], - value5: [Verifications.required('请选择')] - } - ) - - // 使用组件快速绑定hook - const attr = useAttr(formData) - - const submit = async () => { - const valid = await formData.doAllValidateImme() - const validRes = await value10Form.doAllValidateImme() - const validAntd = await antdValueForm.doAllValidate() - console.log('formData', formData.value) - console.log('latestFormData', valid.data) - console.log('submit:isValid: ', valid.isValid, validRes.isValid) - if (valid.isValid && validRes.isValid && validAntd) { - console.log('formValue', formData.value) - } - } - - const value10 = formData.value.value10 - - const value10Form = useSubFormData(formData.formData, 'value10', { - haha: [Verifications.required(), Verifications.email()] - }) - - const antdValueForm = useSubFormData(formData.formData, 'antdValue', { - num: [Verifications.min(1)], - arr: [Verifications.minLenth(1)], - str: [Verifications.required()] - }) - const attrAntd = useAttr(antdValueForm) - - const attrValue10 = useAttr(value10Form) +import { Card, CardBody, Tab, Tabs } from '@nextui-org/react' +import NextUI from './NextUI' +import MUI from './MUI' +export default function App() { return ( -
-
- formData.pushValue('username', e.target.value)} - // isInvalid={formData.errors.username?.isInvalid} - // errorMessage={formData.errors.username?.msg} - - // 替换为快速绑定 - // NextUI.N_Input属于针对[NextUI.Input]的单独适配,其他组件正在补充中 - // 开发者也可以自行在项目中补充第三方组件,具体请看开发者文档(待补充) - {...attr('username', attr.NextUI.N_Input)} - > - { - formData.pushValue('password', e.target.value) - formData.doValidate('password') - }} - // value={formData.value.password} - // isInvalid={formData.errors.password?.isInvalid} - // errorMessage={formData.errors.password?.msg} - // onChange={(e) => formData.pushValue('password', e.target.value)} - > - - -

Selected: {formData.value.value4}

- -

Selected: {formData.value.value5}

- - Subscribe (controlled) - - - Subscribe (controlled) - -

- Selected: {formData.value.value6 ? 'true' : 'false'} -

-
- - Buenos Aires - Sydney - San Francisco - London - Tokyo - -

Selected: {formData.value.value7}

-
-
-