From d299614578c62dcb1fc18ea117693eb445eff0d6 Mon Sep 17 00:00:00 2001 From: TkymHrt <23.h.takayama.nutfes@gmail.com> Date: Tue, 13 Jan 2026 17:15:58 +0900 Subject: [PATCH 1/7] refactor: remove chakra-ui --- view/next-project/.eslintrc.json | 3 +- view/next-project/package.json | 5 - view/next-project/pnpm-lock.yaml | 468 ------------------ view/next-project/src/assets/theme.js | 57 --- .../components/common/Input/Input.module.css | 4 - .../common/Select/Select.module.css | 30 -- view/next-project/src/pages/_app.tsx | 6 +- 7 files changed, 4 insertions(+), 569 deletions(-) delete mode 100644 view/next-project/src/assets/theme.js delete mode 100644 view/next-project/src/components/common/Input/Input.module.css delete mode 100644 view/next-project/src/components/common/Select/Select.module.css diff --git a/view/next-project/.eslintrc.json b/view/next-project/.eslintrc.json index db39a9e68..18ff7a50a 100644 --- a/view/next-project/.eslintrc.json +++ b/view/next-project/.eslintrc.json @@ -8,10 +8,9 @@ "plugin:import/typescript", "plugin:react-hooks/recommended", "plugin:storybook/recommended", - "plugin:tailwindcss/recommended", "prettier" ], - "plugins": ["@typescript-eslint", "unused-imports", "import", "react-hooks", "tailwindcss"], + "plugins": ["@typescript-eslint", "unused-imports", "import", "react-hooks"], "parser": "@typescript-eslint/parser", "env": { "node": true, diff --git a/view/next-project/package.json b/view/next-project/package.json index b85793191..f9ac74e91 100644 --- a/view/next-project/package.json +++ b/view/next-project/package.json @@ -15,10 +15,6 @@ "type-check": "tsc --noEmit" }, "dependencies": { - "@chakra-ui/icons": "^2.0.12", - "@chakra-ui/react": "^2.0.0", - "@emotion/react": "^11.6.0", - "@emotion/styled": "^11.6.0", "@fontsource/noto-sans-jp": "^4.5.2", "@pdf-lib/fontkit": "^1.1.1", "@react-pdf/renderer": "^3.4.0", @@ -29,7 +25,6 @@ "date-fns": "^2.30.0", "file-saver": "^2.0.5", "formidable": "^3.5.1", - "framer-motion": "^5.3.0", "fs": "^0.0.1-security", "lorem-ipsum": "^2.0.4", "minio": "^7.1.3", diff --git a/view/next-project/pnpm-lock.yaml b/view/next-project/pnpm-lock.yaml index defc47aed..178153fe5 100644 --- a/view/next-project/pnpm-lock.yaml +++ b/view/next-project/pnpm-lock.yaml @@ -8,18 +8,6 @@ importers: .: dependencies: - '@chakra-ui/icons': - specifier: ^2.0.12 - version: 2.2.4(@chakra-ui/react@2.10.9(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(framer-motion@5.6.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) - '@chakra-ui/react': - specifier: ^2.0.0 - version: 2.10.9(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(framer-motion@5.6.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@emotion/react': - specifier: ^11.6.0 - version: 11.14.0(@types/react@18.3.27)(react@18.3.1) - '@emotion/styled': - specifier: ^11.6.0 - version: 11.14.1(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(react@18.3.1) '@fontsource/noto-sans-jp': specifier: ^4.5.2 version: 4.5.12 @@ -50,9 +38,6 @@ importers: formidable: specifier: ^3.5.1 version: 3.5.4 - framer-motion: - specifier: ^5.3.0 - version: 5.6.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) fs: specifier: ^0.0.1-security version: 0.0.1-security @@ -783,47 +768,6 @@ packages: resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==} engines: {node: '>=6.9.0'} - '@chakra-ui/anatomy@2.3.6': - resolution: {integrity: sha512-TjmjyQouIZzha/l8JxdBZN1pKZTj7sLpJ0YkFnQFyqHcbfWggW9jKWzY1E0VBnhtFz/xF3KC6UAVuZVSJx+y0g==} - - '@chakra-ui/hooks@2.4.5': - resolution: {integrity: sha512-601fWfHE2i7UjaxK/9lDLlOni6vk/I+04YDbM0BrelJy+eqxdlOmoN8Z6MZ3PzFh7ofERUASor+vL+/HaCaZ7w==} - peerDependencies: - react: '>=18' - - '@chakra-ui/icons@2.2.4': - resolution: {integrity: sha512-l5QdBgwrAg3Sc2BRqtNkJpfuLw/pWRDwwT58J6c4PqQT6wzXxyNa8Q0PForu1ltB5qEiFb1kxr/F/HO1EwNa6g==} - peerDependencies: - '@chakra-ui/react': '>=2.0.0' - react: '>=18' - - '@chakra-ui/react@2.10.9': - resolution: {integrity: sha512-lhdcgoocOiURwBNR3L8OioCNIaGCZqRfuKioLyaQLjOanl4jr0PQclsGb+w0cmito252vEWpsz2xRqF7y+Flrw==} - peerDependencies: - '@emotion/react': '>=11' - '@emotion/styled': '>=11' - framer-motion: '>=4.0.0' - react: '>=18' - react-dom: '>=18' - - '@chakra-ui/styled-system@2.12.4': - resolution: {integrity: sha512-oa07UG7Lic5hHSQtGRiMEnYjuhIa8lszyuVhZjZqR2Ap3VMF688y1MVPJ1pK+8OwY5uhXBgVd5c0+rI8aBZlwg==} - - '@chakra-ui/theme-tools@2.2.9': - resolution: {integrity: sha512-PcbYL19lrVvEc7Oydy//jsy/MO/rZz1DvLyO6AoI+bI/+Kwz9WfOKsspbulEhRg5COayE0R/IZPsskXZ7Mp4bA==} - peerDependencies: - '@chakra-ui/styled-system': '>=2.0.0' - - '@chakra-ui/theme@3.4.9': - resolution: {integrity: sha512-GAom2SjSdRWTcX76/2yJOFJsOWHQeBgaynCUNBsHq62OafzvELrsSHDUw0bBqBb1c2ww0CclIvGilPup8kXBFA==} - peerDependencies: - '@chakra-ui/styled-system': '>=2.8.0' - - '@chakra-ui/utils@2.2.5': - resolution: {integrity: sha512-KTBCK+M5KtXH6p54XS39ImQUMVtAx65BoZDoEms3LuObyTo1+civ1sMm4h3nRT320U6H5H7D35WnABVQjqU/4g==} - peerDependencies: - react: '>=16.8.0' - '@chromatic-com/storybook@1.9.0': resolution: {integrity: sha512-vYQ+TcfktEE3GHnLZXHCzXF/sN9dw+KivH8a5cmPyd9YtQs7fZtHrEgsIjWpYycXiweKMo1Lm1RZsjxk8DH3rA==} engines: {node: '>=16.0.0', yarn: '>=1.22.18'} @@ -851,15 +795,6 @@ packages: '@emotion/hash@0.9.2': resolution: {integrity: sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==} - '@emotion/is-prop-valid@0.8.8': - resolution: {integrity: sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==} - - '@emotion/is-prop-valid@1.4.0': - resolution: {integrity: sha512-QgD4fyscGcbbKwJmqNvUMSE02OsHUa+lAWKdEUIJKgqe5IwRSKd7+KhibEWdaKwgjLj0DRSHA9biAIqGBk05lw==} - - '@emotion/memoize@0.7.4': - resolution: {integrity: sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==} - '@emotion/memoize@0.9.0': resolution: {integrity: sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==} @@ -878,16 +813,6 @@ packages: '@emotion/sheet@1.4.0': resolution: {integrity: sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==} - '@emotion/styled@11.14.1': - resolution: {integrity: sha512-qEEJt42DuToa3gurlH4Qqc1kVpNq8wO8cJtDzU46TjlzWjDlsVyevtYCRijVq3SrHsROS+gVQ8Fnea108GnKzw==} - peerDependencies: - '@emotion/react': ^11.0.0-rc.0 - '@types/react': '*' - react: '>=16.8.0' - peerDependenciesMeta: - '@types/react': - optional: true - '@emotion/unitless@0.10.0': resolution: {integrity: sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==} @@ -1422,9 +1347,6 @@ packages: webpack-plugin-serve: optional: true - '@popperjs/core@2.11.8': - resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} - '@react-pdf/fns@2.2.1': resolution: {integrity: sha512-s78aDg0vDYaijU5lLOCsUD+qinQbfOvcNeaoX9AiE7+kZzzCo6B/nX+l48cmt9OosJmvZvE9DWR9cLhrhOi2pA==} @@ -1968,12 +1890,6 @@ packages: '@types/json5@0.0.29': resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} - '@types/lodash.mergewith@4.6.9': - resolution: {integrity: sha512-fgkoCAOF47K7sxrQ7Mlud2TH023itugZs2bUg8h/KzT+BnZNrR2jAOmaokbLunHNnobXVWOezAeNn/lZqwxkcw==} - - '@types/lodash@4.17.23': - resolution: {integrity: sha512-RDvF6wTulMPjrNdCoYRC8gNR880JNGT8uB+REUpC2Ns4pRqQJhGz90wh7rgdXDPpCczF3VGktDuFGVnz8zP7HA==} - '@types/mdx@2.0.13': resolution: {integrity: sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==} @@ -2265,15 +2181,6 @@ packages: '@xtuc/long@4.2.2': resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} - '@zag-js/dom-query@0.31.1': - resolution: {integrity: sha512-oiuohEXAXhBxpzzNm9k2VHGEOLC1SXlXSbRPcfBZ9so5NRQUA++zCE7cyQJqGLTZR0t3itFLlZqDbYEXRrefwg==} - - '@zag-js/element-size@0.31.1': - resolution: {integrity: sha512-4T3yvn5NqqAjhlP326Fv+w9RqMIBbNN9H72g5q2ohwzhSgSfZzrKtjL4rs9axY/cw9UfMfXjRjEE98e5CMq7WQ==} - - '@zag-js/focus-visible@0.31.1': - resolution: {integrity: sha512-dbLksz7FEwyFoANbpIlNnd3bVm0clQSUsnP8yUVQucStZPsuWjCrhL2jlAbGNrTrahX96ntUMXHb/sM68TibFg==} - '@zxing/text-encoding@0.9.0': resolution: {integrity: sha512-U/4aVJ2mxI0aDNI8Uq0wEhMgY+u4CNtEb0om3+y3+niDAsoTCOB33UF0sxpzqzdqXLqmvc+vZyAt4O8pPdfkwA==} @@ -2382,10 +2289,6 @@ packages: argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - aria-hidden@1.2.6: - resolution: {integrity: sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==} - engines: {node: '>=10'} - aria-query@5.3.0: resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} @@ -2731,9 +2634,6 @@ packages: color-string@1.9.1: resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} - color2k@2.0.3: - resolution: {integrity: sha512-zW190nQTIoXcGCaU08DvVNFTmQhUpnJfVuAKfWqUQkflXKpaDdpaYoM0iluLS9lgJNHyBF58KKA2FBEwkD7wog==} - color@4.2.3: resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} engines: {node: '>=12.5.0'} @@ -2780,9 +2680,6 @@ packages: convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - copy-to-clipboard@3.3.3: - resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==} - core-js-compat@3.47.0: resolution: {integrity: sha512-IGfuznZ/n7Kp9+nypamBhvwdwLsW6KC8IOaURw2doAK5e98AG3acVLdh0woOnEqCfUtS+Vu882JE4k/DAm3ItQ==} @@ -2951,9 +2848,6 @@ packages: resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} engines: {node: '>=8'} - detect-node-es@1.1.0: - resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} - dezalgo@1.0.4: resolution: {integrity: sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==} @@ -3411,10 +3305,6 @@ packages: flatted@3.3.3: resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} - focus-lock@1.3.6: - resolution: {integrity: sha512-Ik/6OCk9RQQ0T5Xw+hKNLWrjSMtv51dD4GRmJjbD5a58TIEpI5a5iXagKVl3Z5UuyslMCA8Xwnu76jQob62Yhg==} - engines: {node: '>=10'} - fontkit@2.0.4: resolution: {integrity: sha512-syetQadaUEDNdxdugga9CpEYVaQIxOwk7GlwZWWZ19//qW4zE5bknOKeMBDYAASwnpaSHKJITRLMF9m1fp3s6g==} @@ -3441,25 +3331,6 @@ packages: resolution: {integrity: sha512-YikH+7CUTOtP44ZTnUhR7Ic2UASBPOqmaRkRKxRbywPTe5VxF7RRCck4af9wutiZ/QKM5nME9Bie2fFaPz5Gug==} engines: {node: '>=14.0.0'} - framer-motion@5.6.0: - resolution: {integrity: sha512-Y4FtwUU+LUWLKSzoT6Sq538qluvhpe6izdQK8/xZeVjQZ/ORKGfZzyhzcUxNfscqnfEa3dUOA47s+dwrSipdGA==} - peerDependencies: - '@react-three/fiber': '*' - react: '>=16.8 || ^17.0.0' - react-dom: '>=16.8 || ^17.0.0' - three: ^0.135.0 - peerDependenciesMeta: - '@react-three/fiber': - optional: true - three: - optional: true - - framesync@6.0.1: - resolution: {integrity: sha512-fUY88kXvGiIItgNC7wcTOl0SNRCVXMKSWW2Yzfmn7EKNc+MpCzcz9DhdHcdjbrtN3c6R4H5dTY2jiCpPdysEjA==} - - framesync@6.1.2: - resolution: {integrity: sha512-jBTqhX6KaQVDyus8muwZbBeGGP0XgujBRbQ7gM7BRdS3CadCZIHiawyzYLnafYcvZIh5j8WE7cxZKFn7dXhu9g==} - fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} @@ -3511,10 +3382,6 @@ packages: resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} engines: {node: '>= 0.4'} - get-nonce@1.0.1: - resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} - engines: {node: '>=6'} - get-proto@1.0.1: resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} engines: {node: '>= 0.4'} @@ -3617,9 +3484,6 @@ packages: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true - hey-listen@1.0.8: - resolution: {integrity: sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==} - hmac-drbg@1.0.1: resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} @@ -4091,9 +3955,6 @@ packages: lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - lodash.mergewith@4.6.2: - resolution: {integrity: sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==} - lodash.omitby@4.6.0: resolution: {integrity: sha512-5OrRcIVR75M288p4nbI2WLAf3ndw2GD9fyNv3Bc15+WCxJDdZ4lYndSxGd7hnG6PVjiJTeJE2dHEGhIuKGicIQ==} @@ -4617,9 +4478,6 @@ packages: resolution: {integrity: sha512-PxkIc/2ZpLiEzQXu5YRDOUgBlfGYBY8156HY5ZcRAwwonMk5W/MrJP2LLkG/hF7GEQzaHo2aS7ho6ZLCOvf+6g==} engines: {node: '>=12.0.0'} - popmotion@11.0.3: - resolution: {integrity: sha512-Y55FLdj3UxkR7Vl3s7Qr4e9m0onSnP8W7d/xQLsoJM40vs6UKHFdygs6SWryasTZYqugMjm3BepCF4CWXDiHgA==} - possible-typed-array-names@1.1.0: resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} engines: {node: '>= 0.4'} @@ -4811,11 +4669,6 @@ packages: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true - react-clientside-effect@1.2.8: - resolution: {integrity: sha512-ma2FePH0z3px2+WOu6h+YycZcEvFmmxIlAb62cF52bG86eMySciO/EQZeQMXd07kPCYB0a1dWDT5J+KE9mCDUw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc - react-confetti@6.4.0: resolution: {integrity: sha512-5MdGUcqxrTU26I2EU7ltkWPwxvucQTuqMm8dUz72z2YMqTD6s9vMcDUysk7n9jnC+lXuCPeJJ7Knf98VEYE9Rg==} engines: {node: '>=16'} @@ -4842,18 +4695,6 @@ packages: peerDependencies: react: '>= 16.8 || 18.0.0' - react-fast-compare@3.2.2: - resolution: {integrity: sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==} - - react-focus-lock@2.13.7: - resolution: {integrity: sha512-20lpZHEQrXPb+pp1tzd4ULL6DyO5D2KnR0G69tTDdydrmNhU7pdFmbQUYVyHUgp+xN29IuFR0PVuhOmvaZL9Og==} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc - peerDependenciesMeta: - '@types/react': - optional: true - react-hook-form@7.71.0: resolution: {integrity: sha512-oFDt/iIFMV9ZfV52waONXzg4xuSlbwKUPvXVH2jumL1me5qFhBMc4knZxuXiZ2+j6h546sYe3ZKJcg/900/iHw==} engines: {node: '>=18.0.0'} @@ -4871,9 +4712,6 @@ packages: react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - react-merge-refs@1.1.0: - resolution: {integrity: sha512-alTKsjEL0dKH/ru1Iyn7vliS2QRcBp9zZPGoWxUOvRGWPUYgjo+V01is7p04It6KhgrzhJGnIj9GgX8W4bZoCQ==} - react-pdf@9.2.1: resolution: {integrity: sha512-AJt0lAIkItWEZRA5d/mO+Om4nPCuTiQ0saA+qItO967DTjmGjnhmF+Bi2tL286mOTfBlF5CyLzJ35KTMaDoH+A==} peerDependencies: @@ -4888,26 +4726,6 @@ packages: resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} engines: {node: '>=0.10.0'} - react-remove-scroll-bar@2.3.8: - resolution: {integrity: sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - react-remove-scroll@2.7.2: - resolution: {integrity: sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc - peerDependenciesMeta: - '@types/react': - optional: true - react-router-dom@6.30.3: resolution: {integrity: sha512-pxPcv1AczD4vso7G4Z3TKcvlxK7g7TNt3/FNGMhfqyntocvYKj+GCatfigGDjbLozC4baguJ0ReCigoDJXb0ag==} engines: {node: '>=14.0.0'} @@ -4927,31 +4745,12 @@ packages: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - react-style-singleton@2.2.3: - resolution: {integrity: sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc - peerDependenciesMeta: - '@types/react': - optional: true - react-transition-group@4.4.5: resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==} peerDependencies: react: '>=16.6.0' react-dom: '>=16.6.0' - react-use-measure@2.1.7: - resolution: {integrity: sha512-KrvcAo13I/60HpwGO5jpW7E9DfusKyLPLvuHlUyP5zqnmAPhNc6qTRjUQrdTADl0lpPpDVU2/Gg51UlOGHXbdg==} - peerDependencies: - react: '>=16.13' - react-dom: '>=16.13' - peerDependenciesMeta: - react-dom: - optional: true - react@18.3.1: resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} engines: {node: '>=0.10.0'} @@ -5379,9 +5178,6 @@ packages: peerDependencies: webpack: ^5.0.0 - style-value-types@5.0.0: - resolution: {integrity: sha512-08yq36Ikn4kx4YU6RD7jWEv27v4V+PUsOGa4n/as8Et3CuODMJQ00ENeAVXAeydX4Z2j1XHZF1K2sX4mGl18fA==} - styled-jsx@5.1.1: resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} engines: {node: '>= 12.0.0'} @@ -5506,9 +5302,6 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} - toggle-selection@1.0.6: - resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==} - tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} @@ -5555,9 +5348,6 @@ packages: tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - tslib@2.4.0: - resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} - tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} @@ -5687,16 +5477,6 @@ packages: resolution: {integrity: sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==} engines: {node: '>= 0.4'} - use-callback-ref@1.3.3: - resolution: {integrity: sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc - peerDependenciesMeta: - '@types/react': - optional: true - use-isomorphic-layout-effect@1.2.1: resolution: {integrity: sha512-tpZZ+EX0gaghDAiFR37hj5MgY6ZN55kLiPkJsKxBMZ6GZdOSPJXiOzPM984oPYZ5AnehYx5WQp1+ME8I/P/pRA==} peerDependencies: @@ -5706,16 +5486,6 @@ packages: '@types/react': optional: true - use-sidecar@1.1.3: - resolution: {integrity: sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc - peerDependenciesMeta: - '@types/react': - optional: true - use-sync-external-store@1.6.0: resolution: {integrity: sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==} peerDependencies: @@ -6689,72 +6459,6 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.28.5 - '@chakra-ui/anatomy@2.3.6': {} - - '@chakra-ui/hooks@2.4.5(react@18.3.1)': - dependencies: - '@chakra-ui/utils': 2.2.5(react@18.3.1) - '@zag-js/element-size': 0.31.1 - copy-to-clipboard: 3.3.3 - framesync: 6.1.2 - react: 18.3.1 - - '@chakra-ui/icons@2.2.4(@chakra-ui/react@2.10.9(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(framer-motion@5.6.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': - dependencies: - '@chakra-ui/react': 2.10.9(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(framer-motion@5.6.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - react: 18.3.1 - - '@chakra-ui/react@2.10.9(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(framer-motion@5.6.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@chakra-ui/hooks': 2.4.5(react@18.3.1) - '@chakra-ui/styled-system': 2.12.4(react@18.3.1) - '@chakra-ui/theme': 3.4.9(@chakra-ui/styled-system@2.12.4(react@18.3.1))(react@18.3.1) - '@chakra-ui/utils': 2.2.5(react@18.3.1) - '@emotion/react': 11.14.0(@types/react@18.3.27)(react@18.3.1) - '@emotion/styled': 11.14.1(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(react@18.3.1) - '@popperjs/core': 2.11.8 - '@zag-js/focus-visible': 0.31.1 - aria-hidden: 1.2.6 - framer-motion: 5.6.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-fast-compare: 3.2.2 - react-focus-lock: 2.13.7(@types/react@18.3.27)(react@18.3.1) - react-remove-scroll: 2.7.2(@types/react@18.3.27)(react@18.3.1) - transitivePeerDependencies: - - '@types/react' - - '@chakra-ui/styled-system@2.12.4(react@18.3.1)': - dependencies: - '@chakra-ui/utils': 2.2.5(react@18.3.1) - csstype: 3.2.3 - transitivePeerDependencies: - - react - - '@chakra-ui/theme-tools@2.2.9(@chakra-ui/styled-system@2.12.4(react@18.3.1))(react@18.3.1)': - dependencies: - '@chakra-ui/anatomy': 2.3.6 - '@chakra-ui/styled-system': 2.12.4(react@18.3.1) - '@chakra-ui/utils': 2.2.5(react@18.3.1) - color2k: 2.0.3 - transitivePeerDependencies: - - react - - '@chakra-ui/theme@3.4.9(@chakra-ui/styled-system@2.12.4(react@18.3.1))(react@18.3.1)': - dependencies: - '@chakra-ui/anatomy': 2.3.6 - '@chakra-ui/styled-system': 2.12.4(react@18.3.1) - '@chakra-ui/theme-tools': 2.2.9(@chakra-ui/styled-system@2.12.4(react@18.3.1))(react@18.3.1) - '@chakra-ui/utils': 2.2.5(react@18.3.1) - transitivePeerDependencies: - - react - - '@chakra-ui/utils@2.2.5(react@18.3.1)': - dependencies: - '@types/lodash.mergewith': 4.6.9 - lodash.mergewith: 4.6.2 - react: 18.3.1 - '@chromatic-com/storybook@1.9.0(react@18.3.1)': dependencies: chromatic: 11.29.0 @@ -6813,18 +6517,6 @@ snapshots: '@emotion/hash@0.9.2': {} - '@emotion/is-prop-valid@0.8.8': - dependencies: - '@emotion/memoize': 0.7.4 - optional: true - - '@emotion/is-prop-valid@1.4.0': - dependencies: - '@emotion/memoize': 0.9.0 - - '@emotion/memoize@0.7.4': - optional: true - '@emotion/memoize@0.9.0': {} '@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1)': @@ -6853,21 +6545,6 @@ snapshots: '@emotion/sheet@1.4.0': {} - '@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.27)(react@18.3.1))(@types/react@18.3.27)(react@18.3.1)': - dependencies: - '@babel/runtime': 7.28.4 - '@emotion/babel-plugin': 11.13.5 - '@emotion/is-prop-valid': 1.4.0 - '@emotion/react': 11.14.0(@types/react@18.3.27)(react@18.3.1) - '@emotion/serialize': 1.3.3 - '@emotion/use-insertion-effect-with-fallbacks': 1.2.0(react@18.3.1) - '@emotion/utils': 1.4.2 - react: 18.3.1 - optionalDependencies: - '@types/react': 18.3.27 - transitivePeerDependencies: - - supports-color - '@emotion/unitless@0.10.0': {} '@emotion/use-insertion-effect-with-fallbacks@1.2.0(react@18.3.1)': @@ -7372,8 +7049,6 @@ snapshots: type-fest: 2.19.0 webpack-hot-middleware: 2.26.1 - '@popperjs/core@2.11.8': {} - '@react-pdf/fns@2.2.1': dependencies: '@babel/runtime': 7.28.4 @@ -8246,12 +7921,6 @@ snapshots: '@types/json5@0.0.29': {} - '@types/lodash.mergewith@4.6.9': - dependencies: - '@types/lodash': 4.17.23 - - '@types/lodash@4.17.23': {} - '@types/mdx@2.0.13': {} '@types/node@20.19.28': @@ -8587,14 +8256,6 @@ snapshots: '@xtuc/long@4.2.2': {} - '@zag-js/dom-query@0.31.1': {} - - '@zag-js/element-size@0.31.1': {} - - '@zag-js/focus-visible@0.31.1': - dependencies: - '@zag-js/dom-query': 0.31.1 - '@zxing/text-encoding@0.9.0': optional: true @@ -8679,10 +8340,6 @@ snapshots: argparse@2.0.1: {} - aria-hidden@1.2.6: - dependencies: - tslib: 2.8.1 - aria-query@5.3.0: dependencies: dequal: 2.0.3 @@ -9086,8 +8743,6 @@ snapshots: color-name: 1.1.4 simple-swizzle: 0.2.4 - color2k@2.0.3: {} - color@4.2.3: dependencies: color-convert: 2.0.1 @@ -9120,10 +8775,6 @@ snapshots: convert-source-map@2.0.0: {} - copy-to-clipboard@3.3.3: - dependencies: - toggle-selection: 1.0.6 - core-js-compat@3.47.0: dependencies: browserslist: 4.28.1 @@ -9306,8 +8957,6 @@ snapshots: detect-libc@2.1.2: {} - detect-node-es@1.1.0: {} - dezalgo@1.0.4: dependencies: asap: 2.0.6 @@ -9954,10 +9603,6 @@ snapshots: flatted@3.3.3: {} - focus-lock@1.3.6: - dependencies: - tslib: 2.8.1 - fontkit@2.0.4: dependencies: '@swc/helpers': 0.5.18 @@ -10006,28 +9651,6 @@ snapshots: dezalgo: 1.0.4 once: 1.4.0 - framer-motion@5.6.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - framesync: 6.0.1 - hey-listen: 1.0.8 - popmotion: 11.0.3 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-merge-refs: 1.1.0 - react-use-measure: 2.1.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - style-value-types: 5.0.0 - tslib: 2.8.1 - optionalDependencies: - '@emotion/is-prop-valid': 0.8.8 - - framesync@6.0.1: - dependencies: - tslib: 2.8.1 - - framesync@6.1.2: - dependencies: - tslib: 2.4.0 - fs-constants@1.0.0: optional: true @@ -10084,8 +9707,6 @@ snapshots: hasown: 2.0.2 math-intrinsics: 1.1.0 - get-nonce@1.0.1: {} - get-proto@1.0.1: dependencies: dunder-proto: 1.0.1 @@ -10198,8 +9819,6 @@ snapshots: he@1.2.0: {} - hey-listen@1.0.8: {} - hmac-drbg@1.0.1: dependencies: hash.js: 1.1.7 @@ -10631,8 +10250,6 @@ snapshots: lodash.merge@4.6.2: {} - lodash.mergewith@4.6.2: {} - lodash.omitby@4.6.0: {} lodash.topath@4.5.2: {} @@ -11213,13 +10830,6 @@ snapshots: pony-cause@1.1.1: {} - popmotion@11.0.3: - dependencies: - framesync: 6.0.1 - hey-listen: 1.0.8 - style-value-types: 5.0.0 - tslib: 2.8.1 - possible-typed-array-names@1.1.0: {} postcss-loader@8.2.0(postcss@8.5.6)(typescript@5.9.3)(webpack@5.104.1(esbuild@0.25.12)): @@ -11377,11 +10987,6 @@ snapshots: strip-json-comments: 2.0.1 optional: true - react-clientside-effect@1.2.8(react@18.3.1): - dependencies: - '@babel/runtime': 7.28.4 - react: 18.3.1 - react-confetti@6.4.0(react@18.3.1): dependencies: react: 18.3.1 @@ -11419,20 +11024,6 @@ snapshots: prop-types: 15.8.1 react: 18.3.1 - react-fast-compare@3.2.2: {} - - react-focus-lock@2.13.7(@types/react@18.3.27)(react@18.3.1): - dependencies: - '@babel/runtime': 7.28.4 - focus-lock: 1.3.6 - prop-types: 15.8.1 - react: 18.3.1 - react-clientside-effect: 1.2.8(react@18.3.1) - use-callback-ref: 1.3.3(@types/react@18.3.27)(react@18.3.1) - use-sidecar: 1.1.3(@types/react@18.3.27)(react@18.3.1) - optionalDependencies: - '@types/react': 18.3.27 - react-hook-form@7.71.0(react@18.3.1): dependencies: react: 18.3.1 @@ -11445,8 +11036,6 @@ snapshots: react-is@17.0.2: {} - react-merge-refs@1.1.0: {} - react-pdf@9.2.1(@types/react@18.3.27)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: clsx: 2.1.1 @@ -11464,25 +11053,6 @@ snapshots: react-refresh@0.14.2: {} - react-remove-scroll-bar@2.3.8(@types/react@18.3.27)(react@18.3.1): - dependencies: - react: 18.3.1 - react-style-singleton: 2.2.3(@types/react@18.3.27)(react@18.3.1) - tslib: 2.8.1 - optionalDependencies: - '@types/react': 18.3.27 - - react-remove-scroll@2.7.2(@types/react@18.3.27)(react@18.3.1): - dependencies: - react: 18.3.1 - react-remove-scroll-bar: 2.3.8(@types/react@18.3.27)(react@18.3.1) - react-style-singleton: 2.2.3(@types/react@18.3.27)(react@18.3.1) - tslib: 2.8.1 - use-callback-ref: 1.3.3(@types/react@18.3.27)(react@18.3.1) - use-sidecar: 1.1.3(@types/react@18.3.27)(react@18.3.1) - optionalDependencies: - '@types/react': 18.3.27 - react-router-dom@6.30.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@remix-run/router': 1.23.2 @@ -11512,14 +11082,6 @@ snapshots: - '@types/react' - supports-color - react-style-singleton@2.2.3(@types/react@18.3.27)(react@18.3.1): - dependencies: - get-nonce: 1.0.1 - react: 18.3.1 - tslib: 2.8.1 - optionalDependencies: - '@types/react': 18.3.27 - react-transition-group@4.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@babel/runtime': 7.28.4 @@ -11529,12 +11091,6 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-use-measure@2.1.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - react: 18.3.1 - optionalDependencies: - react-dom: 18.3.1(react@18.3.1) - react@18.3.1: dependencies: loose-envify: 1.4.0 @@ -12045,11 +11601,6 @@ snapshots: dependencies: webpack: 5.104.1(esbuild@0.25.12) - style-value-types@5.0.0: - dependencies: - hey-listen: 1.0.8 - tslib: 2.8.1 - styled-jsx@5.1.1(@babel/core@7.28.5)(react@18.3.1): dependencies: client-only: 0.0.1 @@ -12172,8 +11723,6 @@ snapshots: dependencies: is-number: 7.0.0 - toggle-selection@1.0.6: {} - tr46@0.0.3: {} ts-api-utils@2.4.0(typescript@5.9.3): @@ -12212,8 +11761,6 @@ snapshots: tslib@1.14.1: {} - tslib@2.4.0: {} - tslib@2.8.1: {} tsutils@3.21.0(typescript@5.9.3): @@ -12370,27 +11917,12 @@ snapshots: punycode: 1.4.1 qs: 6.14.1 - use-callback-ref@1.3.3(@types/react@18.3.27)(react@18.3.1): - dependencies: - react: 18.3.1 - tslib: 2.8.1 - optionalDependencies: - '@types/react': 18.3.27 - use-isomorphic-layout-effect@1.2.1(@types/react@18.3.27)(react@18.3.1): dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.27 - use-sidecar@1.1.3(@types/react@18.3.27)(react@18.3.1): - dependencies: - detect-node-es: 1.1.0 - react: 18.3.1 - tslib: 2.8.1 - optionalDependencies: - '@types/react': 18.3.27 - use-sync-external-store@1.6.0(react@18.3.1): dependencies: react: 18.3.1 diff --git a/view/next-project/src/assets/theme.js b/view/next-project/src/assets/theme.js deleted file mode 100644 index d0ab1a085..000000000 --- a/view/next-project/src/assets/theme.js +++ /dev/null @@ -1,57 +0,0 @@ -import { extendTheme } from '@chakra-ui/react'; -import '@fontsource/noto-sans-jp'; -// import { StepsStyleConfig as Steps } from 'chakra-ui-steps'; -const theme = extendTheme({ - // components: { - // Steps, - // }, - styles: { - global: { - body: { - fontFamily: 'Noto Sans JP', - fontSize: '14px', - lineHeight: '1.5', - fontWeight: '500', - }, - }, - }, - colors: { - transparent: 'transparent', - black: { - 0: '#000', - 300: '#333', - 600: '#666', - 900: '#999', - }, - white: { - 0: '#fff', - 100: '#f2f2f2', - }, - gray: { - 50: '#f7fafc', - 900: '#171923', - }, - base: { - 1: '#2E373F', - 2: '#FFFFFF', - }, - primary: { - 1: '#56DAFF', - 2: '#1DBCC5', - 3: '#E2E8F0', - 4: '#023859', - 5: '#04668C', - }, - accent: { - 1: '#E4434E', - 2: '#FF5B6C', - }, - affairs: '#3CA249', - relation: '#4F6FAC', - information: '#E35874', - finance: '#EB6100', - planning: '#603085', - production: '#B2AC0F', - }, -}); -export default theme; diff --git a/view/next-project/src/components/common/Input/Input.module.css b/view/next-project/src/components/common/Input/Input.module.css deleted file mode 100644 index c72d0c595..000000000 --- a/view/next-project/src/components/common/Input/Input.module.css +++ /dev/null @@ -1,4 +0,0 @@ -.input:focus { - border-color: #48b2cf; - outline: 1.5px #48b2cf solid; -} diff --git a/view/next-project/src/components/common/Select/Select.module.css b/view/next-project/src/components/common/Select/Select.module.css deleted file mode 100644 index a5788b61a..000000000 --- a/view/next-project/src/components/common/Select/Select.module.css +++ /dev/null @@ -1,30 +0,0 @@ -.select:focus { - border-color: #48b2cf; - outline: 1.5px #48b2cf solid; -} - -.customSelect { - position: relative; - width: 100%; -} - -.customSelect select { - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; -} - -/* 下向きの矢印 */ -.customSelect::after { - content: ''; - background: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/1697571/chevron-down.svg) no-repeat - center; - display: block; - height: 1rem; - position: absolute; - right: 1rem; - top: 50%; - transform: translatey(-50%); - width: 1rem; - pointer-events: none; -} diff --git a/view/next-project/src/pages/_app.tsx b/view/next-project/src/pages/_app.tsx index 0b570f337..e0fac74d8 100644 --- a/view/next-project/src/pages/_app.tsx +++ b/view/next-project/src/pages/_app.tsx @@ -1,8 +1,8 @@ -import { ChakraProvider } from '@chakra-ui/react'; import localFont from 'next/font/local'; import Head from 'next/head'; import { NuqsAdapter } from 'nuqs/adapters/next/pages'; +import { ToastProvider } from '@/hooks/useToast'; import Layout from '@components/layout/Layout'; import { ManagedUIContext } from '@components/ui/context'; @@ -17,7 +17,7 @@ export const notoSansJP = localFont({ function MyApp({ Component, pageProps }: AppProps) { return ( - + @@ -28,7 +28,7 @@ function MyApp({ Component, pageProps }: AppProps) { - + ); } From 4a95307ae1928dd178ec9a788f1b9362eefe86ac Mon Sep 17 00:00:00 2001 From: TkymHrt <23.h.takayama.nutfes@gmail.com> Date: Tue, 13 Jan 2026 17:33:13 +0900 Subject: [PATCH 2/7] Refactor components to use common form elements and improve styling - Updated FileUploadField, FormField, and FundInformationForm components to use common form elements from '@/components/common'. - Replaced Chakra UI components with standard HTML elements where appropriate for consistency. - Enhanced styling for various components to improve UI consistency and responsiveness. - Introduced a new Toast context and hook for better toast notification management. - Updated various pages to utilize the new toast notifications and improved layout structure. - Refactored radio button implementations in AddModal and EditModal components for better readability and maintainability. --- .../budget_managements/BudgetManagement.tsx | 2 +- .../components/common/ChakraUIDropdown.tsx | 82 +++++---- .../src/components/common/DownloadButton.tsx | 7 +- .../common/FormControl/FormControl.tsx | 39 +++++ .../components/common/FormControl/index.ts | 1 + .../FormErrorMessage/FormErrorMessage.tsx | 17 ++ .../common/FormErrorMessage/index.ts | 1 + .../components/common/FormLabel/FormLabel.tsx | 26 +++ .../src/components/common/FormLabel/index.ts | 1 + .../src/components/common/Input/Input.tsx | 9 +- .../src/components/common/Label/Label.tsx | 60 +++---- .../src/components/common/Loading/Loading.tsx | 19 +-- .../src/components/common/LoadingButton.tsx | 27 ++- .../src/components/common/OpenModalButton.tsx | 14 +- .../src/components/common/PulldownButton.tsx | 13 +- .../src/components/common/Radio/Radio.tsx | 42 +++-- .../common/RadioGroup/RadioGroup.tsx | 31 ++++ .../src/components/common/RadioGroup/index.ts | 1 + .../src/components/common/RegistButton.tsx | 22 +-- .../src/components/common/RegistModal.tsx | 161 +++++++----------- .../src/components/common/Select/Select.tsx | 43 +++-- .../src/components/common/Spinner/Spinner.tsx | 55 ++++++ .../src/components/common/Spinner/index.ts | 1 + .../src/components/common/Tooltip/Tooltip.tsx | 10 +- .../src/components/common/index.ts | 27 +-- .../FileUploadField.tsx | 42 +++-- .../create_purchase_report/FormField.tsx | 3 +- .../fund_information/FundInformationForm.tsx | 63 +++---- .../fund_information/FundInformationTable.tsx | 2 +- .../src/components/layout/Layout/Layout.tsx | 2 +- .../AddBlankInvoiceModal.tsx | 2 +- .../sponsoractivities/EditModal.tsx | 44 ++--- .../SponsorActivitiesAddModal.tsx | 59 ++++--- .../src/components/teacher/AddModal.tsx | 44 +++-- .../src/components/teacher/EditModal.tsx | 42 ++--- view/next-project/src/hooks/useToast.tsx | 120 +++++++++++++ .../pages/create_purchase_report/index.tsx | 72 ++++---- .../src/pages/fund_informations/[id]/edit.tsx | 76 ++++----- .../pages/fund_informations/create/index.tsx | 10 +- 39 files changed, 770 insertions(+), 522 deletions(-) create mode 100644 view/next-project/src/components/common/FormControl/FormControl.tsx create mode 100644 view/next-project/src/components/common/FormControl/index.ts create mode 100644 view/next-project/src/components/common/FormErrorMessage/FormErrorMessage.tsx create mode 100644 view/next-project/src/components/common/FormErrorMessage/index.ts create mode 100644 view/next-project/src/components/common/FormLabel/FormLabel.tsx create mode 100644 view/next-project/src/components/common/FormLabel/index.ts create mode 100644 view/next-project/src/components/common/RadioGroup/RadioGroup.tsx create mode 100644 view/next-project/src/components/common/RadioGroup/index.ts create mode 100644 view/next-project/src/components/common/Spinner/Spinner.tsx create mode 100644 view/next-project/src/components/common/Spinner/index.ts create mode 100644 view/next-project/src/hooks/useToast.tsx diff --git a/view/next-project/src/components/budget_managements/BudgetManagement.tsx b/view/next-project/src/components/budget_managements/BudgetManagement.tsx index c95822f9a..686ccc88b 100644 --- a/view/next-project/src/components/budget_managements/BudgetManagement.tsx +++ b/view/next-project/src/components/budget_managements/BudgetManagement.tsx @@ -7,9 +7,9 @@ import PrimaryButton from '@/components/common/OutlinePrimaryButton/OutlinePrima import { useGetDivisions, useGetFestivalItems, useGetFinancialRecords } from '@/generated/hooks'; import { Year } from '@/type/common'; -import formatNumber from '../common/Formatter'; import OpenDeleteModalButton from './OpenDeleteModalButton'; import OpenEditModalButton from './OpenEditModalButton'; +import formatNumber from '../common/Formatter'; import type { Division, diff --git a/view/next-project/src/components/common/ChakraUIDropdown.tsx b/view/next-project/src/components/common/ChakraUIDropdown.tsx index 570ab4b6b..ca0fada59 100644 --- a/view/next-project/src/components/common/ChakraUIDropdown.tsx +++ b/view/next-project/src/components/common/ChakraUIDropdown.tsx @@ -1,54 +1,64 @@ -import { Button, Menu, MenuButton, MenuItem, MenuList } from '@chakra-ui/react'; -import React from 'react'; +import { ReactNode, useEffect, useRef, useState } from 'react'; import { RiArrowDropDownLine } from 'react-icons/ri'; -import { useUserStore } from '@/store'; - interface Props { title: string; onClick?: () => void; - children: React.ReactNode; + children: ReactNode; } const Dropdown = (props: Props) => { - const user = useUserStore((state) => state.user); + const [isOpen, setIsOpen] = useState(false); + const dropdownRef = useRef(null); + + useEffect(() => { + const handleOutsideClick = (e: MouseEvent) => { + if (dropdownRef.current && !dropdownRef.current.contains(e.target as Node)) { + setIsOpen(false); + } + }; + + document.addEventListener('mousedown', handleOutsideClick); + return () => { + document.removeEventListener('mousedown', handleOutsideClick); + }; + }, []); return ( - - } - color='white' - borderColor='white' - bg='transparent' - _hover={{ color: '#023859', bgColor: '#fff' }} - _active={{ color: '#023859', bgColor: '#fff' }} +
+ + + {isOpen && ( +
+ {props.title} +
- - - - {props.title} - - { - props.onClick && props.onClick(); - }} - > -

ログアウト

-
-
-
+ )} + ); }; diff --git a/view/next-project/src/components/common/DownloadButton.tsx b/view/next-project/src/components/common/DownloadButton.tsx index 91afed59f..867193be0 100644 --- a/view/next-project/src/components/common/DownloadButton.tsx +++ b/view/next-project/src/components/common/DownloadButton.tsx @@ -1,7 +1,8 @@ -import { Tooltip } from '@chakra-ui/react'; -import React, { useMemo } from 'react'; +import { useMemo } from 'react'; import { IoMdDownload } from 'react-icons/io'; +import { Tooltip } from '@/components/common'; + interface Props { onClick?: () => void; isDisabled?: boolean; @@ -20,7 +21,7 @@ const DownloadButton = (props: Props) => { }, [isDisabled]); return ( - + - + ); } diff --git a/view/next-project/src/components/common/OpenModalButton.tsx b/view/next-project/src/components/common/OpenModalButton.tsx index ab1986d03..9b504e984 100644 --- a/view/next-project/src/components/common/OpenModalButton.tsx +++ b/view/next-project/src/components/common/OpenModalButton.tsx @@ -1,9 +1,6 @@ -import { ChakraProvider, Button } from '@chakra-ui/react'; import * as React from 'react'; import { useState } from 'react'; -import theme from '@assets/theme'; - import RegistModal from './RegistModal'; interface Props { @@ -18,17 +15,16 @@ const OpenModalButton: React.FC = ({ children, width, height }) => { setShowModal(true); }; return ( - - + - + ); }; diff --git a/view/next-project/src/components/common/PulldownButton.tsx b/view/next-project/src/components/common/PulldownButton.tsx index cd5301ad3..6c37e7ed1 100644 --- a/view/next-project/src/components/common/PulldownButton.tsx +++ b/view/next-project/src/components/common/PulldownButton.tsx @@ -1,17 +1,12 @@ -import { ChevronDownIcon } from '@chakra-ui/icons'; -import { ChakraProvider, Button } from '@chakra-ui/react'; import * as React from 'react'; - -import theme from '@assets/theme'; +import { RiArrowDropDownLine } from 'react-icons/ri'; class PulldownButton extends React.Component { render() { return ( - - - + ); } } diff --git a/view/next-project/src/components/common/Radio/Radio.tsx b/view/next-project/src/components/common/Radio/Radio.tsx index 4a487db38..7eae1c92b 100644 --- a/view/next-project/src/components/common/Radio/Radio.tsx +++ b/view/next-project/src/components/common/Radio/Radio.tsx @@ -1,29 +1,37 @@ import clsx from 'clsx'; -import React, { MouseEventHandler } from 'react'; - interface Props { className?: string; - value?: string | number; + value: string; checked?: boolean; - onClick?: MouseEventHandler; - onChange?: () => void; + onChange?: (value: string) => void; + onClick?: (e: React.MouseEvent) => void; children?: React.ReactNode; + name?: string; } function Radio(props: Props): JSX.Element { - const className = '' + (props.className ? ` ${props.className}` : ''); + const { className, value, checked, onChange, onClick, children, name } = props; + return ( - - {props.children} - +