mirror of
https://github.com/aaronpo97/the-biergarten-app.git
synced 2026-02-16 10:42:08 +00:00
548
package-lock.json
generated
548
package-lock.json
generated
@@ -22,6 +22,7 @@
|
|||||||
"@react-email/tailwind": "^0.0.12",
|
"@react-email/tailwind": "^0.0.12",
|
||||||
"@vercel/analytics": "^1.1.0",
|
"@vercel/analytics": "^1.1.0",
|
||||||
"argon2": "^0.31.1",
|
"argon2": "^0.31.1",
|
||||||
|
"classnames": "^2.5.1",
|
||||||
"cloudinary": "^1.41.0",
|
"cloudinary": "^1.41.0",
|
||||||
"cookie": "^0.5.0",
|
"cookie": "^0.5.0",
|
||||||
"date-fns": "^2.30.0",
|
"date-fns": "^2.30.0",
|
||||||
@@ -37,7 +38,7 @@
|
|||||||
"passport-local": "^1.0.0",
|
"passport-local": "^1.0.0",
|
||||||
"pino": "^8.14.1",
|
"pino": "^8.14.1",
|
||||||
"react": "^18.2.0",
|
"react": "^18.2.0",
|
||||||
"react-daisyui": "^4.1.2",
|
"react-daisyui": "^5.0.0",
|
||||||
"react-dom": "^18.2.0",
|
"react-dom": "^18.2.0",
|
||||||
"react-email": "^1.9.5",
|
"react-email": "^1.9.5",
|
||||||
"react-hook-form": "^7.45.2",
|
"react-hook-form": "^7.45.2",
|
||||||
@@ -45,7 +46,6 @@
|
|||||||
"react-icons": "^4.10.1",
|
"react-icons": "^4.10.1",
|
||||||
"react-intersection-observer": "^9.5.2",
|
"react-intersection-observer": "^9.5.2",
|
||||||
"react-map-gl": "^7.1.2",
|
"react-map-gl": "^7.1.2",
|
||||||
"react-page-scroller": "^3.0.1",
|
|
||||||
"react-responsive-carousel": "^3.2.23",
|
"react-responsive-carousel": "^3.2.23",
|
||||||
"swr": "^2.2.0",
|
"swr": "^2.2.0",
|
||||||
"theme-change": "^2.5.0",
|
"theme-change": "^2.5.0",
|
||||||
@@ -63,10 +63,9 @@
|
|||||||
"@types/passport-local": "^1.0.35",
|
"@types/passport-local": "^1.0.35",
|
||||||
"@types/react": "^18.2.15",
|
"@types/react": "^18.2.15",
|
||||||
"@types/react-dom": "^18.2.7",
|
"@types/react-dom": "^18.2.7",
|
||||||
"@types/sparkpost": "^2.1.5",
|
|
||||||
"@vercel/fetch": "^7.0.0",
|
"@vercel/fetch": "^7.0.0",
|
||||||
"autoprefixer": "^10.4.14",
|
"autoprefixer": "^10.4.14",
|
||||||
"daisyui": "^3.9.2",
|
"daisyui": "^4.7.2",
|
||||||
"dotenv-cli": "^7.2.1",
|
"dotenv-cli": "^7.2.1",
|
||||||
"eslint": "^8.51.0",
|
"eslint": "^8.51.0",
|
||||||
"eslint-config-airbnb-base": "15.0.0",
|
"eslint-config-airbnb-base": "15.0.0",
|
||||||
@@ -81,8 +80,8 @@
|
|||||||
"prettier-plugin-jsdoc": "^1.0.2",
|
"prettier-plugin-jsdoc": "^1.0.2",
|
||||||
"prettier-plugin-tailwindcss": "^0.5.7",
|
"prettier-plugin-tailwindcss": "^0.5.7",
|
||||||
"prisma": "^5.7.0",
|
"prisma": "^5.7.0",
|
||||||
"tailwindcss": "^3.3.3",
|
"tailwindcss": "^3.4.1",
|
||||||
"tailwindcss-animate": "^1.0.6",
|
"tailwindcss-animated": "^1.0.1",
|
||||||
"ts-node": "^10.9.1",
|
"ts-node": "^10.9.1",
|
||||||
"typescript": "^5.3.2"
|
"typescript": "^5.3.2"
|
||||||
}
|
}
|
||||||
@@ -2109,12 +2108,6 @@
|
|||||||
"@types/responselike": "^1.0.0"
|
"@types/responselike": "^1.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@types/caseless": {
|
|
||||||
"version": "0.12.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/caseless/-/caseless-0.12.3.tgz",
|
|
||||||
"integrity": "sha512-ZD/NsIJYq/2RH+hY7lXmstfp/v9djGt9ah+xRQ3pcgR79qiKsG4pLl25AI7IcXxVO8dH9GiBE5rAknC0ePntlw==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"node_modules/@types/connect": {
|
"node_modules/@types/connect": {
|
||||||
"version": "3.4.36",
|
"version": "3.4.36",
|
||||||
"resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.36.tgz",
|
"resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.36.tgz",
|
||||||
@@ -2376,32 +2369,6 @@
|
|||||||
"@types/react": "*"
|
"@types/react": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@types/request": {
|
|
||||||
"version": "2.48.9",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/request/-/request-2.48.9.tgz",
|
|
||||||
"integrity": "sha512-4mi2hYsvPAhe8RXjk5DKB09sAUzbK68T2XjORehHdWyxFoX2zUnfi1VQ5wU4Md28H/5+uB4DkxY9BS4B87N/0A==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"@types/caseless": "*",
|
|
||||||
"@types/node": "*",
|
|
||||||
"@types/tough-cookie": "*",
|
|
||||||
"form-data": "^2.5.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@types/request/node_modules/form-data": {
|
|
||||||
"version": "2.5.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz",
|
|
||||||
"integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"asynckit": "^0.4.0",
|
|
||||||
"combined-stream": "^1.0.6",
|
|
||||||
"mime-types": "^2.1.12"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">= 0.12"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@types/responselike": {
|
"node_modules/@types/responselike": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.1.tgz",
|
||||||
@@ -2449,22 +2416,6 @@
|
|||||||
"@types/node": "*"
|
"@types/node": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@types/sparkpost": {
|
|
||||||
"version": "2.1.6",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/sparkpost/-/sparkpost-2.1.6.tgz",
|
|
||||||
"integrity": "sha512-lqimYaHi52iIJBge6XZBvLFGBjlZgSlsvUsARALgaYLpsUriPhayYKc8fyP5dgHmjJ6ClumP3BQHYT5Vbci6ew==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"@types/node": "*",
|
|
||||||
"@types/request": "*"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@types/tough-cookie": {
|
|
||||||
"version": "4.0.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.3.tgz",
|
|
||||||
"integrity": "sha512-THo502dA5PzG/sfQH+42Lw3fvmYkceefOspdCwpHRul8ik2Jv1K8I5OZz1AT3/rs46kwgMCe9bSBmDLYkkOMGg==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"node_modules/@types/unist": {
|
"node_modules/@types/unist": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz",
|
||||||
@@ -3206,49 +3157,6 @@
|
|||||||
"dequal": "^2.0.3"
|
"dequal": "^2.0.3"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/babel-polyfill": {
|
|
||||||
"version": "6.26.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz",
|
|
||||||
"integrity": "sha512-F2rZGQnAdaHWQ8YAoeRbukc7HS9QgdgeyJ0rQDd485v9opwuPvjpPFcOOT/WmkKTdgy9ESgSPXDcTNpzrGr6iQ==",
|
|
||||||
"dependencies": {
|
|
||||||
"babel-runtime": "^6.26.0",
|
|
||||||
"core-js": "^2.5.0",
|
|
||||||
"regenerator-runtime": "^0.10.5"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/babel-polyfill/node_modules/core-js": {
|
|
||||||
"version": "2.6.12",
|
|
||||||
"resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz",
|
|
||||||
"integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==",
|
|
||||||
"deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.",
|
|
||||||
"hasInstallScript": true
|
|
||||||
},
|
|
||||||
"node_modules/babel-polyfill/node_modules/regenerator-runtime": {
|
|
||||||
"version": "0.10.5",
|
|
||||||
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz",
|
|
||||||
"integrity": "sha512-02YopEIhAgiBHWeoTiA8aitHDt8z6w+rQqNuIftlM+ZtvSl/brTouaU7DW6GO/cHtvxJvS4Hwv2ibKdxIRi24w=="
|
|
||||||
},
|
|
||||||
"node_modules/babel-runtime": {
|
|
||||||
"version": "6.26.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
|
|
||||||
"integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==",
|
|
||||||
"dependencies": {
|
|
||||||
"core-js": "^2.4.0",
|
|
||||||
"regenerator-runtime": "^0.11.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/babel-runtime/node_modules/core-js": {
|
|
||||||
"version": "2.6.12",
|
|
||||||
"resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz",
|
|
||||||
"integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==",
|
|
||||||
"deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.",
|
|
||||||
"hasInstallScript": true
|
|
||||||
},
|
|
||||||
"node_modules/babel-runtime/node_modules/regenerator-runtime": {
|
|
||||||
"version": "0.11.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
|
|
||||||
"integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="
|
|
||||||
},
|
|
||||||
"node_modules/balanced-match": {
|
"node_modules/balanced-match": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
|
||||||
@@ -3662,9 +3570,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/classnames": {
|
"node_modules/classnames": {
|
||||||
"version": "2.3.2",
|
"version": "2.5.1",
|
||||||
"resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz",
|
"resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz",
|
||||||
"integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw=="
|
"integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow=="
|
||||||
},
|
},
|
||||||
"node_modules/cli-cursor": {
|
"node_modules/cli-cursor": {
|
||||||
"version": "3.1.0",
|
"version": "3.1.0",
|
||||||
@@ -3758,11 +3666,6 @@
|
|||||||
"color-support": "bin.js"
|
"color-support": "bin.js"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/colord": {
|
|
||||||
"version": "2.9.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz",
|
|
||||||
"integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw=="
|
|
||||||
},
|
|
||||||
"node_modules/combined-stream": {
|
"node_modules/combined-stream": {
|
||||||
"version": "1.0.8",
|
"version": "1.0.8",
|
||||||
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
||||||
@@ -3926,16 +3829,23 @@
|
|||||||
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
|
||||||
"integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
|
"integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
|
||||||
},
|
},
|
||||||
|
"node_modules/culori": {
|
||||||
|
"version": "3.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/culori/-/culori-3.3.0.tgz",
|
||||||
|
"integrity": "sha512-pHJg+jbuFsCjz9iclQBqyL3B2HLCBF71BwVNujUYEvCeQMvV97R59MNK3R2+jgJ3a1fcZgI9B3vYgz8lzr/BFQ==",
|
||||||
|
"engines": {
|
||||||
|
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/daisyui": {
|
"node_modules/daisyui": {
|
||||||
"version": "3.9.4",
|
"version": "4.7.2",
|
||||||
"resolved": "https://registry.npmjs.org/daisyui/-/daisyui-3.9.4.tgz",
|
"resolved": "https://registry.npmjs.org/daisyui/-/daisyui-4.7.2.tgz",
|
||||||
"integrity": "sha512-fvi2RGH4YV617/6DntOVGcOugOPym9jTGWW2XySb5ZpvdWO4L7bEG77VHirrnbRUEWvIEVXkBpxUz2KFj0rVnA==",
|
"integrity": "sha512-9UCss12Zmyk/22u+JbkVrHHxOzFOyY17HuqP5LeswI4hclbj6qbjJTovdj2zRy8cCH6/n6Wh0lTLjriGnyGh0g==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"colord": "^2.9",
|
|
||||||
"css-selector-tokenizer": "^0.8",
|
"css-selector-tokenizer": "^0.8",
|
||||||
"postcss": "^8",
|
"culori": "^3",
|
||||||
"postcss-js": "^4",
|
"picocolors": "^1",
|
||||||
"tailwindcss": "^3.1"
|
"postcss-js": "^4"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=16.9.0"
|
"node": ">=16.9.0"
|
||||||
@@ -5788,26 +5698,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
|
||||||
"integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ=="
|
"integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ=="
|
||||||
},
|
},
|
||||||
"node_modules/history": {
|
|
||||||
"version": "4.10.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz",
|
|
||||||
"integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==",
|
|
||||||
"peer": true,
|
|
||||||
"dependencies": {
|
|
||||||
"@babel/runtime": "^7.1.2",
|
|
||||||
"loose-envify": "^1.2.0",
|
|
||||||
"resolve-pathname": "^3.0.0",
|
|
||||||
"tiny-invariant": "^1.0.2",
|
|
||||||
"tiny-warning": "^1.0.0",
|
|
||||||
"value-equal": "^1.0.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/hoist-non-react-statics": {
|
|
||||||
"version": "2.5.5",
|
|
||||||
"resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz",
|
|
||||||
"integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==",
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/hosted-git-info": {
|
"node_modules/hosted-git-info": {
|
||||||
"version": "4.1.0",
|
"version": "4.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
|
||||||
@@ -6015,15 +5905,6 @@
|
|||||||
"node": ">= 0.10"
|
"node": ">= 0.10"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/invariant": {
|
|
||||||
"version": "2.2.4",
|
|
||||||
"resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
|
|
||||||
"integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
|
|
||||||
"peer": true,
|
|
||||||
"dependencies": {
|
|
||||||
"loose-envify": "^1.0.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/is-array-buffer": {
|
"node_modules/is-array-buffer": {
|
||||||
"version": "3.0.2",
|
"version": "3.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz",
|
||||||
@@ -8201,21 +8082,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
|
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
|
||||||
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
|
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
|
||||||
},
|
},
|
||||||
"node_modules/path-to-regexp": {
|
|
||||||
"version": "1.8.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz",
|
|
||||||
"integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==",
|
|
||||||
"peer": true,
|
|
||||||
"dependencies": {
|
|
||||||
"isarray": "0.0.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/path-to-regexp/node_modules/isarray": {
|
|
||||||
"version": "0.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
|
|
||||||
"integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==",
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/path-type": {
|
"node_modules/path-type": {
|
||||||
"version": "4.0.0",
|
"version": "4.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
|
||||||
@@ -8782,11 +8648,11 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/react-daisyui": {
|
"node_modules/react-daisyui": {
|
||||||
"version": "4.1.2",
|
"version": "5.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/react-daisyui/-/react-daisyui-4.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/react-daisyui/-/react-daisyui-5.0.0.tgz",
|
||||||
"integrity": "sha512-Sx8ziaxKDe/59bw+UxTFOoDSJEuA8iGhgmMbzSAtnhaaZPP20kluHG+1/wY5mBSxfcAuk6oI8fqKcJRp55WzPQ==",
|
"integrity": "sha512-j1cugAxALmIbihycGBh7P9H3UXrfsvqu84qM6O55l7nOKST43IjUkZjmNav/7s0ZaUpa9Y+52mFchUb2zvon1A==",
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"daisyui": "^3.0.22",
|
"daisyui": "^4.4.6",
|
||||||
"react": ">=16",
|
"react": ">=16",
|
||||||
"react-dom": ">=16",
|
"react-dom": ">=16",
|
||||||
"tailwindcss": ">=3.2.7"
|
"tailwindcss": ">=3.2.7"
|
||||||
@@ -8985,21 +8851,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/react-page-scroller": {
|
|
||||||
"version": "3.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/react-page-scroller/-/react-page-scroller-3.0.1.tgz",
|
|
||||||
"integrity": "sha512-1OTlUHOSFCG8wmYzy3wo4dUIugXORzgZZ/Pj4BbkxN3n+Nv5tynfo7kygUiLYgE0QhDJslzZ4lntpCONAlv/vA==",
|
|
||||||
"dependencies": {
|
|
||||||
"babel-polyfill": "^6.26.0"
|
|
||||||
},
|
|
||||||
"peerDependencies": {
|
|
||||||
"babel-polyfill": "^6.26.0",
|
|
||||||
"prop-types": "^15.6.2",
|
|
||||||
"react": "^18.2.0",
|
|
||||||
"react-dom": "^18.2.0",
|
|
||||||
"react-router-dom": "^4.3.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/react-responsive-carousel": {
|
"node_modules/react-responsive-carousel": {
|
||||||
"version": "3.2.23",
|
"version": "3.2.23",
|
||||||
"resolved": "https://registry.npmjs.org/react-responsive-carousel/-/react-responsive-carousel-3.2.23.tgz",
|
"resolved": "https://registry.npmjs.org/react-responsive-carousel/-/react-responsive-carousel-3.2.23.tgz",
|
||||||
@@ -9010,41 +8861,6 @@
|
|||||||
"react-easy-swipe": "^0.0.21"
|
"react-easy-swipe": "^0.0.21"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/react-router": {
|
|
||||||
"version": "4.3.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/react-router/-/react-router-4.3.1.tgz",
|
|
||||||
"integrity": "sha512-yrvL8AogDh2X42Dt9iknk4wF4V8bWREPirFfS9gLU1huk6qK41sg7Z/1S81jjTrGHxa3B8R3J6xIkDAA6CVarg==",
|
|
||||||
"peer": true,
|
|
||||||
"dependencies": {
|
|
||||||
"history": "^4.7.2",
|
|
||||||
"hoist-non-react-statics": "^2.5.0",
|
|
||||||
"invariant": "^2.2.4",
|
|
||||||
"loose-envify": "^1.3.1",
|
|
||||||
"path-to-regexp": "^1.7.0",
|
|
||||||
"prop-types": "^15.6.1",
|
|
||||||
"warning": "^4.0.1"
|
|
||||||
},
|
|
||||||
"peerDependencies": {
|
|
||||||
"react": ">=15"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/react-router-dom": {
|
|
||||||
"version": "4.3.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-4.3.1.tgz",
|
|
||||||
"integrity": "sha512-c/MlywfxDdCp7EnB7YfPMOfMD3tOtIjrQlj/CKfNMBxdmpJP8xcz5P/UAFn3JbnQCNUxsHyVVqllF9LhgVyFCA==",
|
|
||||||
"peer": true,
|
|
||||||
"dependencies": {
|
|
||||||
"history": "^4.7.2",
|
|
||||||
"invariant": "^2.2.4",
|
|
||||||
"loose-envify": "^1.3.1",
|
|
||||||
"prop-types": "^15.6.1",
|
|
||||||
"react-router": "^4.3.1",
|
|
||||||
"warning": "^4.0.1"
|
|
||||||
},
|
|
||||||
"peerDependencies": {
|
|
||||||
"react": ">=15"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/read-cache": {
|
"node_modules/read-cache": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
|
||||||
@@ -9354,12 +9170,6 @@
|
|||||||
"node": ">=4"
|
"node": ">=4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/resolve-pathname": {
|
|
||||||
"version": "3.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz",
|
|
||||||
"integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==",
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/resolve-pkg-maps": {
|
"node_modules/resolve-pkg-maps": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
|
||||||
@@ -10113,19 +9923,19 @@
|
|||||||
"integrity": "sha512-QD9qKY3StfbZqWOPLp0++pOrAVb/HbUi5xCc8cUo4XjP19808oaMiDzn0leBY5mCespIBM0CIZePzZjgzR83kA=="
|
"integrity": "sha512-QD9qKY3StfbZqWOPLp0++pOrAVb/HbUi5xCc8cUo4XjP19808oaMiDzn0leBY5mCespIBM0CIZePzZjgzR83kA=="
|
||||||
},
|
},
|
||||||
"node_modules/tailwindcss": {
|
"node_modules/tailwindcss": {
|
||||||
"version": "3.3.3",
|
"version": "3.4.1",
|
||||||
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.3.tgz",
|
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.1.tgz",
|
||||||
"integrity": "sha512-A0KgSkef7eE4Mf+nKJ83i75TMyq8HqY3qmFIJSWy8bNt0v1lG7jUcpGpoTFxAwYcWOphcTBLPPJg+bDfhDf52w==",
|
"integrity": "sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@alloc/quick-lru": "^5.2.0",
|
"@alloc/quick-lru": "^5.2.0",
|
||||||
"arg": "^5.0.2",
|
"arg": "^5.0.2",
|
||||||
"chokidar": "^3.5.3",
|
"chokidar": "^3.5.3",
|
||||||
"didyoumean": "^1.2.2",
|
"didyoumean": "^1.2.2",
|
||||||
"dlv": "^1.1.3",
|
"dlv": "^1.1.3",
|
||||||
"fast-glob": "^3.2.12",
|
"fast-glob": "^3.3.0",
|
||||||
"glob-parent": "^6.0.2",
|
"glob-parent": "^6.0.2",
|
||||||
"is-glob": "^4.0.3",
|
"is-glob": "^4.0.3",
|
||||||
"jiti": "^1.18.2",
|
"jiti": "^1.19.1",
|
||||||
"lilconfig": "^2.1.0",
|
"lilconfig": "^2.1.0",
|
||||||
"micromatch": "^4.0.5",
|
"micromatch": "^4.0.5",
|
||||||
"normalize-path": "^3.0.0",
|
"normalize-path": "^3.0.0",
|
||||||
@@ -10148,13 +9958,13 @@
|
|||||||
"node": ">=14.0.0"
|
"node": ">=14.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/tailwindcss-animate": {
|
"node_modules/tailwindcss-animated": {
|
||||||
"version": "1.0.7",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/tailwindcss-animate/-/tailwindcss-animate-1.0.7.tgz",
|
"resolved": "https://registry.npmjs.org/tailwindcss-animated/-/tailwindcss-animated-1.0.1.tgz",
|
||||||
"integrity": "sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==",
|
"integrity": "sha512-u5wusj89ZwP8I+s8WZlaAd7aZTWBN/XEG6QgMKpkIKmAf3xP1A6WYf7oYIKmGaB10UAQaSqWopi/i1ozzZEs8Q==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"tailwindcss": ">=3.0.0 || insiders"
|
"tailwindcss": ">=3.1.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/tailwindcss/node_modules/arg": {
|
"node_modules/tailwindcss/node_modules/arg": {
|
||||||
@@ -10241,18 +10051,6 @@
|
|||||||
"real-require": "^0.2.0"
|
"real-require": "^0.2.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/tiny-invariant": {
|
|
||||||
"version": "1.3.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz",
|
|
||||||
"integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==",
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/tiny-warning": {
|
|
||||||
"version": "1.0.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz",
|
|
||||||
"integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==",
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/tinyqueue": {
|
"node_modules/tinyqueue": {
|
||||||
"version": "2.0.3",
|
"version": "2.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-2.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-2.0.3.tgz",
|
||||||
@@ -10740,12 +10538,6 @@
|
|||||||
"spdx-expression-parse": "^3.0.0"
|
"spdx-expression-parse": "^3.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/value-equal": {
|
|
||||||
"version": "1.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz",
|
|
||||||
"integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==",
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/vt-pbf": {
|
"node_modules/vt-pbf": {
|
||||||
"version": "3.1.3",
|
"version": "3.1.3",
|
||||||
"resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.3.tgz",
|
"resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.3.tgz",
|
||||||
@@ -10756,15 +10548,6 @@
|
|||||||
"pbf": "^3.2.1"
|
"pbf": "^3.2.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/warning": {
|
|
||||||
"version": "4.0.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz",
|
|
||||||
"integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==",
|
|
||||||
"peer": true,
|
|
||||||
"dependencies": {
|
|
||||||
"loose-envify": "^1.0.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/watchpack": {
|
"node_modules/watchpack": {
|
||||||
"version": "2.4.0",
|
"version": "2.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
|
||||||
@@ -12392,12 +12175,6 @@
|
|||||||
"@types/responselike": "^1.0.0"
|
"@types/responselike": "^1.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@types/caseless": {
|
|
||||||
"version": "0.12.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/caseless/-/caseless-0.12.3.tgz",
|
|
||||||
"integrity": "sha512-ZD/NsIJYq/2RH+hY7lXmstfp/v9djGt9ah+xRQ3pcgR79qiKsG4pLl25AI7IcXxVO8dH9GiBE5rAknC0ePntlw==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"@types/connect": {
|
"@types/connect": {
|
||||||
"version": "3.4.36",
|
"version": "3.4.36",
|
||||||
"resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.36.tgz",
|
"resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.36.tgz",
|
||||||
@@ -12658,31 +12435,6 @@
|
|||||||
"@types/react": "*"
|
"@types/react": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@types/request": {
|
|
||||||
"version": "2.48.9",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/request/-/request-2.48.9.tgz",
|
|
||||||
"integrity": "sha512-4mi2hYsvPAhe8RXjk5DKB09sAUzbK68T2XjORehHdWyxFoX2zUnfi1VQ5wU4Md28H/5+uB4DkxY9BS4B87N/0A==",
|
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
|
||||||
"@types/caseless": "*",
|
|
||||||
"@types/node": "*",
|
|
||||||
"@types/tough-cookie": "*",
|
|
||||||
"form-data": "^2.5.0"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"form-data": {
|
|
||||||
"version": "2.5.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz",
|
|
||||||
"integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==",
|
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
|
||||||
"asynckit": "^0.4.0",
|
|
||||||
"combined-stream": "^1.0.6",
|
|
||||||
"mime-types": "^2.1.12"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"@types/responselike": {
|
"@types/responselike": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.1.tgz",
|
||||||
@@ -12730,22 +12482,6 @@
|
|||||||
"@types/node": "*"
|
"@types/node": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@types/sparkpost": {
|
|
||||||
"version": "2.1.6",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/sparkpost/-/sparkpost-2.1.6.tgz",
|
|
||||||
"integrity": "sha512-lqimYaHi52iIJBge6XZBvLFGBjlZgSlsvUsARALgaYLpsUriPhayYKc8fyP5dgHmjJ6ClumP3BQHYT5Vbci6ew==",
|
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
|
||||||
"@types/node": "*",
|
|
||||||
"@types/request": "*"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"@types/tough-cookie": {
|
|
||||||
"version": "4.0.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.3.tgz",
|
|
||||||
"integrity": "sha512-THo502dA5PzG/sfQH+42Lw3fvmYkceefOspdCwpHRul8ik2Jv1K8I5OZz1AT3/rs46kwgMCe9bSBmDLYkkOMGg==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"@types/unist": {
|
"@types/unist": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz",
|
||||||
@@ -13263,49 +12999,6 @@
|
|||||||
"dequal": "^2.0.3"
|
"dequal": "^2.0.3"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"babel-polyfill": {
|
|
||||||
"version": "6.26.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz",
|
|
||||||
"integrity": "sha512-F2rZGQnAdaHWQ8YAoeRbukc7HS9QgdgeyJ0rQDd485v9opwuPvjpPFcOOT/WmkKTdgy9ESgSPXDcTNpzrGr6iQ==",
|
|
||||||
"requires": {
|
|
||||||
"babel-runtime": "^6.26.0",
|
|
||||||
"core-js": "^2.5.0",
|
|
||||||
"regenerator-runtime": "^0.10.5"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"core-js": {
|
|
||||||
"version": "2.6.12",
|
|
||||||
"resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz",
|
|
||||||
"integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ=="
|
|
||||||
},
|
|
||||||
"regenerator-runtime": {
|
|
||||||
"version": "0.10.5",
|
|
||||||
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz",
|
|
||||||
"integrity": "sha512-02YopEIhAgiBHWeoTiA8aitHDt8z6w+rQqNuIftlM+ZtvSl/brTouaU7DW6GO/cHtvxJvS4Hwv2ibKdxIRi24w=="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"babel-runtime": {
|
|
||||||
"version": "6.26.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
|
|
||||||
"integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==",
|
|
||||||
"requires": {
|
|
||||||
"core-js": "^2.4.0",
|
|
||||||
"regenerator-runtime": "^0.11.0"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"core-js": {
|
|
||||||
"version": "2.6.12",
|
|
||||||
"resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz",
|
|
||||||
"integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ=="
|
|
||||||
},
|
|
||||||
"regenerator-runtime": {
|
|
||||||
"version": "0.11.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
|
|
||||||
"integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"balanced-match": {
|
"balanced-match": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
|
||||||
@@ -13582,9 +13275,9 @@
|
|||||||
"integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="
|
"integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="
|
||||||
},
|
},
|
||||||
"classnames": {
|
"classnames": {
|
||||||
"version": "2.3.2",
|
"version": "2.5.1",
|
||||||
"resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz",
|
"resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz",
|
||||||
"integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw=="
|
"integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow=="
|
||||||
},
|
},
|
||||||
"cli-cursor": {
|
"cli-cursor": {
|
||||||
"version": "3.1.0",
|
"version": "3.1.0",
|
||||||
@@ -13652,11 +13345,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
|
"resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
|
||||||
"integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg=="
|
"integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg=="
|
||||||
},
|
},
|
||||||
"colord": {
|
|
||||||
"version": "2.9.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz",
|
|
||||||
"integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw=="
|
|
||||||
},
|
|
||||||
"combined-stream": {
|
"combined-stream": {
|
||||||
"version": "1.0.8",
|
"version": "1.0.8",
|
||||||
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
||||||
@@ -13787,16 +13475,20 @@
|
|||||||
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
|
||||||
"integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
|
"integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
|
||||||
},
|
},
|
||||||
|
"culori": {
|
||||||
|
"version": "3.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/culori/-/culori-3.3.0.tgz",
|
||||||
|
"integrity": "sha512-pHJg+jbuFsCjz9iclQBqyL3B2HLCBF71BwVNujUYEvCeQMvV97R59MNK3R2+jgJ3a1fcZgI9B3vYgz8lzr/BFQ=="
|
||||||
|
},
|
||||||
"daisyui": {
|
"daisyui": {
|
||||||
"version": "3.9.4",
|
"version": "4.7.2",
|
||||||
"resolved": "https://registry.npmjs.org/daisyui/-/daisyui-3.9.4.tgz",
|
"resolved": "https://registry.npmjs.org/daisyui/-/daisyui-4.7.2.tgz",
|
||||||
"integrity": "sha512-fvi2RGH4YV617/6DntOVGcOugOPym9jTGWW2XySb5ZpvdWO4L7bEG77VHirrnbRUEWvIEVXkBpxUz2KFj0rVnA==",
|
"integrity": "sha512-9UCss12Zmyk/22u+JbkVrHHxOzFOyY17HuqP5LeswI4hclbj6qbjJTovdj2zRy8cCH6/n6Wh0lTLjriGnyGh0g==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"colord": "^2.9",
|
|
||||||
"css-selector-tokenizer": "^0.8",
|
"css-selector-tokenizer": "^0.8",
|
||||||
"postcss": "^8",
|
"culori": "^3",
|
||||||
"postcss-js": "^4",
|
"picocolors": "^1",
|
||||||
"tailwindcss": "^3.1"
|
"postcss-js": "^4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"damerau-levenshtein": {
|
"damerau-levenshtein": {
|
||||||
@@ -15171,26 +14863,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
|
||||||
"integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ=="
|
"integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ=="
|
||||||
},
|
},
|
||||||
"history": {
|
|
||||||
"version": "4.10.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz",
|
|
||||||
"integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==",
|
|
||||||
"peer": true,
|
|
||||||
"requires": {
|
|
||||||
"@babel/runtime": "^7.1.2",
|
|
||||||
"loose-envify": "^1.2.0",
|
|
||||||
"resolve-pathname": "^3.0.0",
|
|
||||||
"tiny-invariant": "^1.0.2",
|
|
||||||
"tiny-warning": "^1.0.0",
|
|
||||||
"value-equal": "^1.0.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"hoist-non-react-statics": {
|
|
||||||
"version": "2.5.5",
|
|
||||||
"resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz",
|
|
||||||
"integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==",
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"hosted-git-info": {
|
"hosted-git-info": {
|
||||||
"version": "4.1.0",
|
"version": "4.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
|
||||||
@@ -15340,15 +15012,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz",
|
||||||
"integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA=="
|
"integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA=="
|
||||||
},
|
},
|
||||||
"invariant": {
|
|
||||||
"version": "2.2.4",
|
|
||||||
"resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
|
|
||||||
"integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
|
|
||||||
"peer": true,
|
|
||||||
"requires": {
|
|
||||||
"loose-envify": "^1.0.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"is-array-buffer": {
|
"is-array-buffer": {
|
||||||
"version": "3.0.2",
|
"version": "3.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz",
|
||||||
@@ -16835,23 +16498,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
|
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
|
||||||
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
|
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
|
||||||
},
|
},
|
||||||
"path-to-regexp": {
|
|
||||||
"version": "1.8.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz",
|
|
||||||
"integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==",
|
|
||||||
"peer": true,
|
|
||||||
"requires": {
|
|
||||||
"isarray": "0.0.1"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"isarray": {
|
|
||||||
"version": "0.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
|
|
||||||
"integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==",
|
|
||||||
"peer": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"path-type": {
|
"path-type": {
|
||||||
"version": "4.0.0",
|
"version": "4.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
|
||||||
@@ -17178,9 +16824,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"react-daisyui": {
|
"react-daisyui": {
|
||||||
"version": "4.1.2",
|
"version": "5.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/react-daisyui/-/react-daisyui-4.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/react-daisyui/-/react-daisyui-5.0.0.tgz",
|
||||||
"integrity": "sha512-Sx8ziaxKDe/59bw+UxTFOoDSJEuA8iGhgmMbzSAtnhaaZPP20kluHG+1/wY5mBSxfcAuk6oI8fqKcJRp55WzPQ==",
|
"integrity": "sha512-j1cugAxALmIbihycGBh7P9H3UXrfsvqu84qM6O55l7nOKST43IjUkZjmNav/7s0ZaUpa9Y+52mFchUb2zvon1A==",
|
||||||
"requires": {}
|
"requires": {}
|
||||||
},
|
},
|
||||||
"react-dom": {
|
"react-dom": {
|
||||||
@@ -17315,14 +16961,6 @@
|
|||||||
"@types/mapbox-gl": ">=1.0.0"
|
"@types/mapbox-gl": ">=1.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"react-page-scroller": {
|
|
||||||
"version": "3.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/react-page-scroller/-/react-page-scroller-3.0.1.tgz",
|
|
||||||
"integrity": "sha512-1OTlUHOSFCG8wmYzy3wo4dUIugXORzgZZ/Pj4BbkxN3n+Nv5tynfo7kygUiLYgE0QhDJslzZ4lntpCONAlv/vA==",
|
|
||||||
"requires": {
|
|
||||||
"babel-polyfill": "^6.26.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"react-responsive-carousel": {
|
"react-responsive-carousel": {
|
||||||
"version": "3.2.23",
|
"version": "3.2.23",
|
||||||
"resolved": "https://registry.npmjs.org/react-responsive-carousel/-/react-responsive-carousel-3.2.23.tgz",
|
"resolved": "https://registry.npmjs.org/react-responsive-carousel/-/react-responsive-carousel-3.2.23.tgz",
|
||||||
@@ -17333,35 +16971,6 @@
|
|||||||
"react-easy-swipe": "^0.0.21"
|
"react-easy-swipe": "^0.0.21"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"react-router": {
|
|
||||||
"version": "4.3.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/react-router/-/react-router-4.3.1.tgz",
|
|
||||||
"integrity": "sha512-yrvL8AogDh2X42Dt9iknk4wF4V8bWREPirFfS9gLU1huk6qK41sg7Z/1S81jjTrGHxa3B8R3J6xIkDAA6CVarg==",
|
|
||||||
"peer": true,
|
|
||||||
"requires": {
|
|
||||||
"history": "^4.7.2",
|
|
||||||
"hoist-non-react-statics": "^2.5.0",
|
|
||||||
"invariant": "^2.2.4",
|
|
||||||
"loose-envify": "^1.3.1",
|
|
||||||
"path-to-regexp": "^1.7.0",
|
|
||||||
"prop-types": "^15.6.1",
|
|
||||||
"warning": "^4.0.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"react-router-dom": {
|
|
||||||
"version": "4.3.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-4.3.1.tgz",
|
|
||||||
"integrity": "sha512-c/MlywfxDdCp7EnB7YfPMOfMD3tOtIjrQlj/CKfNMBxdmpJP8xcz5P/UAFn3JbnQCNUxsHyVVqllF9LhgVyFCA==",
|
|
||||||
"peer": true,
|
|
||||||
"requires": {
|
|
||||||
"history": "^4.7.2",
|
|
||||||
"invariant": "^2.2.4",
|
|
||||||
"loose-envify": "^1.3.1",
|
|
||||||
"prop-types": "^15.6.1",
|
|
||||||
"react-router": "^4.3.1",
|
|
||||||
"warning": "^4.0.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"read-cache": {
|
"read-cache": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
|
||||||
@@ -17603,12 +17212,6 @@
|
|||||||
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
|
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"resolve-pathname": {
|
|
||||||
"version": "3.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz",
|
|
||||||
"integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==",
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"resolve-pkg-maps": {
|
"resolve-pkg-maps": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
|
||||||
@@ -18164,19 +17767,19 @@
|
|||||||
"integrity": "sha512-QD9qKY3StfbZqWOPLp0++pOrAVb/HbUi5xCc8cUo4XjP19808oaMiDzn0leBY5mCespIBM0CIZePzZjgzR83kA=="
|
"integrity": "sha512-QD9qKY3StfbZqWOPLp0++pOrAVb/HbUi5xCc8cUo4XjP19808oaMiDzn0leBY5mCespIBM0CIZePzZjgzR83kA=="
|
||||||
},
|
},
|
||||||
"tailwindcss": {
|
"tailwindcss": {
|
||||||
"version": "3.3.3",
|
"version": "3.4.1",
|
||||||
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.3.tgz",
|
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.1.tgz",
|
||||||
"integrity": "sha512-A0KgSkef7eE4Mf+nKJ83i75TMyq8HqY3qmFIJSWy8bNt0v1lG7jUcpGpoTFxAwYcWOphcTBLPPJg+bDfhDf52w==",
|
"integrity": "sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@alloc/quick-lru": "^5.2.0",
|
"@alloc/quick-lru": "^5.2.0",
|
||||||
"arg": "^5.0.2",
|
"arg": "^5.0.2",
|
||||||
"chokidar": "^3.5.3",
|
"chokidar": "^3.5.3",
|
||||||
"didyoumean": "^1.2.2",
|
"didyoumean": "^1.2.2",
|
||||||
"dlv": "^1.1.3",
|
"dlv": "^1.1.3",
|
||||||
"fast-glob": "^3.2.12",
|
"fast-glob": "^3.3.0",
|
||||||
"glob-parent": "^6.0.2",
|
"glob-parent": "^6.0.2",
|
||||||
"is-glob": "^4.0.3",
|
"is-glob": "^4.0.3",
|
||||||
"jiti": "^1.18.2",
|
"jiti": "^1.19.1",
|
||||||
"lilconfig": "^2.1.0",
|
"lilconfig": "^2.1.0",
|
||||||
"micromatch": "^4.0.5",
|
"micromatch": "^4.0.5",
|
||||||
"normalize-path": "^3.0.0",
|
"normalize-path": "^3.0.0",
|
||||||
@@ -18199,10 +17802,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tailwindcss-animate": {
|
"tailwindcss-animated": {
|
||||||
"version": "1.0.7",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/tailwindcss-animate/-/tailwindcss-animate-1.0.7.tgz",
|
"resolved": "https://registry.npmjs.org/tailwindcss-animated/-/tailwindcss-animated-1.0.1.tgz",
|
||||||
"integrity": "sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==",
|
"integrity": "sha512-u5wusj89ZwP8I+s8WZlaAd7aZTWBN/XEG6QgMKpkIKmAf3xP1A6WYf7oYIKmGaB10UAQaSqWopi/i1ozzZEs8Q==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {}
|
||||||
},
|
},
|
||||||
@@ -18272,18 +17875,6 @@
|
|||||||
"real-require": "^0.2.0"
|
"real-require": "^0.2.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tiny-invariant": {
|
|
||||||
"version": "1.3.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz",
|
|
||||||
"integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==",
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"tiny-warning": {
|
|
||||||
"version": "1.0.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz",
|
|
||||||
"integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==",
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"tinyqueue": {
|
"tinyqueue": {
|
||||||
"version": "2.0.3",
|
"version": "2.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-2.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-2.0.3.tgz",
|
||||||
@@ -18641,12 +18232,6 @@
|
|||||||
"spdx-expression-parse": "^3.0.0"
|
"spdx-expression-parse": "^3.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"value-equal": {
|
|
||||||
"version": "1.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz",
|
|
||||||
"integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==",
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"vt-pbf": {
|
"vt-pbf": {
|
||||||
"version": "3.1.3",
|
"version": "3.1.3",
|
||||||
"resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.3.tgz",
|
"resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.3.tgz",
|
||||||
@@ -18657,15 +18242,6 @@
|
|||||||
"pbf": "^3.2.1"
|
"pbf": "^3.2.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"warning": {
|
|
||||||
"version": "4.0.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz",
|
|
||||||
"integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==",
|
|
||||||
"peer": true,
|
|
||||||
"requires": {
|
|
||||||
"loose-envify": "^1.0.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"watchpack": {
|
"watchpack": {
|
||||||
"version": "2.4.0",
|
"version": "2.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
|
||||||
|
|||||||
10
package.json
10
package.json
@@ -28,6 +28,7 @@
|
|||||||
"@react-email/tailwind": "^0.0.12",
|
"@react-email/tailwind": "^0.0.12",
|
||||||
"@vercel/analytics": "^1.1.0",
|
"@vercel/analytics": "^1.1.0",
|
||||||
"argon2": "^0.31.1",
|
"argon2": "^0.31.1",
|
||||||
|
"classnames": "^2.5.1",
|
||||||
"cloudinary": "^1.41.0",
|
"cloudinary": "^1.41.0",
|
||||||
"cookie": "^0.5.0",
|
"cookie": "^0.5.0",
|
||||||
"date-fns": "^2.30.0",
|
"date-fns": "^2.30.0",
|
||||||
@@ -43,7 +44,7 @@
|
|||||||
"passport-local": "^1.0.0",
|
"passport-local": "^1.0.0",
|
||||||
"pino": "^8.14.1",
|
"pino": "^8.14.1",
|
||||||
"react": "^18.2.0",
|
"react": "^18.2.0",
|
||||||
"react-daisyui": "^4.1.2",
|
"react-daisyui": "^5.0.0",
|
||||||
"react-dom": "^18.2.0",
|
"react-dom": "^18.2.0",
|
||||||
"react-email": "^1.9.5",
|
"react-email": "^1.9.5",
|
||||||
"react-hook-form": "^7.45.2",
|
"react-hook-form": "^7.45.2",
|
||||||
@@ -51,7 +52,6 @@
|
|||||||
"react-icons": "^4.10.1",
|
"react-icons": "^4.10.1",
|
||||||
"react-intersection-observer": "^9.5.2",
|
"react-intersection-observer": "^9.5.2",
|
||||||
"react-map-gl": "^7.1.2",
|
"react-map-gl": "^7.1.2",
|
||||||
"react-page-scroller": "^3.0.1",
|
|
||||||
"react-responsive-carousel": "^3.2.23",
|
"react-responsive-carousel": "^3.2.23",
|
||||||
"swr": "^2.2.0",
|
"swr": "^2.2.0",
|
||||||
"theme-change": "^2.5.0",
|
"theme-change": "^2.5.0",
|
||||||
@@ -71,7 +71,7 @@
|
|||||||
"@types/react-dom": "^18.2.7",
|
"@types/react-dom": "^18.2.7",
|
||||||
"@vercel/fetch": "^7.0.0",
|
"@vercel/fetch": "^7.0.0",
|
||||||
"autoprefixer": "^10.4.14",
|
"autoprefixer": "^10.4.14",
|
||||||
"daisyui": "^3.9.2",
|
"daisyui": "^4.7.2",
|
||||||
"dotenv-cli": "^7.2.1",
|
"dotenv-cli": "^7.2.1",
|
||||||
"eslint": "^8.51.0",
|
"eslint": "^8.51.0",
|
||||||
"eslint-config-airbnb-base": "15.0.0",
|
"eslint-config-airbnb-base": "15.0.0",
|
||||||
@@ -86,8 +86,8 @@
|
|||||||
"prettier-plugin-jsdoc": "^1.0.2",
|
"prettier-plugin-jsdoc": "^1.0.2",
|
||||||
"prettier-plugin-tailwindcss": "^0.5.7",
|
"prettier-plugin-tailwindcss": "^0.5.7",
|
||||||
"prisma": "^5.7.0",
|
"prisma": "^5.7.0",
|
||||||
"tailwindcss": "^3.3.3",
|
"tailwindcss": "^3.4.1",
|
||||||
"tailwindcss-animate": "^1.0.6",
|
"tailwindcss-animated": "^1.0.1",
|
||||||
"ts-node": "^10.9.1",
|
"ts-node": "^10.9.1",
|
||||||
"typescript": "^5.3.2"
|
"typescript": "^5.3.2"
|
||||||
},
|
},
|
||||||
|
|||||||
BIN
public/background.jpg
Normal file
BIN
public/background.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 203 KiB |
@@ -5,7 +5,7 @@ import { FaArrowRight } from 'react-icons/fa';
|
|||||||
|
|
||||||
const UpdateProfileLink: React.FC = () => {
|
const UpdateProfileLink: React.FC = () => {
|
||||||
return (
|
return (
|
||||||
<div className="card mt-8">
|
<div className="card">
|
||||||
<div className="card-body flex flex-col space-y-3">
|
<div className="card-body flex flex-col space-y-3">
|
||||||
<div className="flex w-full items-center justify-between space-x-5">
|
<div className="flex w-full items-center justify-between space-x-5">
|
||||||
<div className="">
|
<div className="">
|
||||||
|
|||||||
@@ -8,11 +8,9 @@ const UserPosts: FC = () => {
|
|||||||
<div className="mt-4">
|
<div className="mt-4">
|
||||||
<div>
|
<div>
|
||||||
<Tab.Group>
|
<Tab.Group>
|
||||||
<Tab.List className="tabs-boxed tabs items-center justify-center rounded-2xl">
|
<Tab.List className="tabs-boxed tabs grid grid-cols-2">
|
||||||
<Tab className="tab-xl tab w-1/2 uppercase ui-selected:tab-active">Beers</Tab>
|
<Tab className="tab uppercase ui-selected:tab-active">Beers</Tab>
|
||||||
<Tab className="tab-xl tab w-1/2 uppercase ui-selected:tab-active">
|
<Tab className="tab uppercase ui-selected:tab-active">Breweries</Tab>
|
||||||
Breweries
|
|
||||||
</Tab>
|
|
||||||
</Tab.List>
|
</Tab.List>
|
||||||
<Tab.Panels>
|
<Tab.Panels>
|
||||||
<Tab.Panel>
|
<Tab.Panel>
|
||||||
|
|||||||
@@ -1,10 +1,11 @@
|
|||||||
import Link from 'next/link';
|
import Link from 'next/link';
|
||||||
import { FC, MutableRefObject, useRef } from 'react';
|
import { FC } from 'react';
|
||||||
import { useInView } from 'react-intersection-observer';
|
import { useInView } from 'react-intersection-observer';
|
||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
import useBeerRecommendations from '@/hooks/data-fetching/beer-posts/useBeerRecommendations';
|
import useBeerRecommendations from '@/hooks/data-fetching/beer-posts/useBeerRecommendations';
|
||||||
import BeerPostQueryResult from '@/services/posts/beer-post/schema/BeerPostQueryResult';
|
import BeerPostQueryResult from '@/services/posts/beer-post/schema/BeerPostQueryResult';
|
||||||
import debounce from 'lodash/debounce';
|
import debounce from 'lodash/debounce';
|
||||||
|
|
||||||
import BeerRecommendationLoadingComponent from './BeerRecommendationLoadingComponent';
|
import BeerRecommendationLoadingComponent from './BeerRecommendationLoadingComponent';
|
||||||
|
|
||||||
const BeerRecommendationsSection: FC<{
|
const BeerRecommendationsSection: FC<{
|
||||||
@@ -28,10 +29,8 @@ const BeerRecommendationsSection: FC<{
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
const beerRecommendationsRef: MutableRefObject<HTMLDivElement | null> = useRef(null);
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="card h-full" ref={beerRecommendationsRef}>
|
<div className="card h-full">
|
||||||
<div className="card-body">
|
<div className="card-body">
|
||||||
<>
|
<>
|
||||||
<div className="my-2 flex flex-row items-center justify-between">
|
<div className="my-2 flex flex-row items-center justify-between">
|
||||||
@@ -54,6 +53,7 @@ const BeerRecommendationsSection: FC<{
|
|||||||
<div
|
<div
|
||||||
ref={isPenultimateBeerPost ? penultimateBeerPostRef : undefined}
|
ref={isPenultimateBeerPost ? penultimateBeerPostRef : undefined}
|
||||||
key={post.id}
|
key={post.id}
|
||||||
|
className="animate-fade"
|
||||||
>
|
>
|
||||||
<div className="flex flex-col">
|
<div className="flex flex-col">
|
||||||
<Link className="link-hover link" href={`/beers/${post.id}`}>
|
<Link className="link-hover link" href={`/beers/${post.id}`}>
|
||||||
|
|||||||
@@ -250,13 +250,9 @@ const CreateBreweryPostForm: FC<{
|
|||||||
autoComplete="off"
|
autoComplete="off"
|
||||||
>
|
>
|
||||||
<Tab.Group as={Fragment}>
|
<Tab.Group as={Fragment}>
|
||||||
<Tab.List className="tabs-boxed tabs items-center justify-center rounded-2xl">
|
<Tab.List className="tabs-boxed tabs grid grid-cols-2">
|
||||||
<Tab className="tab tab-md w-1/2 uppercase ui-selected:tab-active">
|
<Tab className="tab uppercase ui-selected:tab-active">Information</Tab>
|
||||||
Information
|
<Tab className="tab uppercase ui-selected:tab-active">Location</Tab>
|
||||||
</Tab>
|
|
||||||
<Tab className="tab tab-md w-1/2 uppercase ui-selected:tab-active">
|
|
||||||
Location
|
|
||||||
</Tab>
|
|
||||||
</Tab.List>
|
</Tab.List>
|
||||||
<Tab.Panels className="mt-4">
|
<Tab.Panels className="mt-4">
|
||||||
<Tab.Panel>
|
<Tab.Panel>
|
||||||
|
|||||||
@@ -7,6 +7,8 @@ import Link from 'next/link';
|
|||||||
import CommentQueryResult from '@/services/schema/CommentSchema/CommentQueryResult';
|
import CommentQueryResult from '@/services/schema/CommentSchema/CommentQueryResult';
|
||||||
|
|
||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
|
import { useInView } from 'react-intersection-observer';
|
||||||
|
import classNames from 'classnames';
|
||||||
import CommentCardDropdown from './CommentCardDropdown';
|
import CommentCardDropdown from './CommentCardDropdown';
|
||||||
|
|
||||||
interface CommentContentBodyProps {
|
interface CommentContentBodyProps {
|
||||||
@@ -17,9 +19,16 @@ interface CommentContentBodyProps {
|
|||||||
const CommentContentBody: FC<CommentContentBodyProps> = ({ comment, setInEditMode }) => {
|
const CommentContentBody: FC<CommentContentBodyProps> = ({ comment, setInEditMode }) => {
|
||||||
const { user } = useContext(UserContext);
|
const { user } = useContext(UserContext);
|
||||||
const timeDistance = useTimeDistance(new Date(comment.createdAt));
|
const timeDistance = useTimeDistance(new Date(comment.createdAt));
|
||||||
|
const [ref, inView] = useInView({ triggerOnce: true });
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="space-y-1 py-4 pr-3 animate-in fade-in-10">
|
<div
|
||||||
|
className={classNames('space-y-1 py-4 pr-3 fade-in-10', {
|
||||||
|
'opacity-0': !inView,
|
||||||
|
'animate-fade': inView,
|
||||||
|
})}
|
||||||
|
ref={ref}
|
||||||
|
>
|
||||||
<div className="space-y-2">
|
<div className="space-y-2">
|
||||||
<div className="flex flex-row justify-between">
|
<div className="flex flex-row justify-between">
|
||||||
<div>
|
<div>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
const CommentLoadingCardBody = () => {
|
const CommentLoadingCardBody = () => {
|
||||||
return (
|
return (
|
||||||
<div className="animate card-body h-52 fade-in-10">
|
<div className="card-body h-52 fade-in-10">
|
||||||
<div className="flex animate-pulse space-x-4 slide-in-from-top">
|
<div className="flex animate-pulse space-x-4 slide-in-from-top">
|
||||||
<div className="flex-1 space-y-4 py-1">
|
<div className="flex-1 space-y-4 py-1">
|
||||||
<div className="h-4 w-3/4 rounded bg-base-100" />
|
<div className="h-4 w-3/4 rounded bg-base-100" />
|
||||||
|
|||||||
@@ -15,6 +15,8 @@ import FormLabel from '../ui/forms/FormLabel';
|
|||||||
import FormSegment from '../ui/forms/FormSegment';
|
import FormSegment from '../ui/forms/FormSegment';
|
||||||
import FormTextArea from '../ui/forms/FormTextArea';
|
import FormTextArea from '../ui/forms/FormTextArea';
|
||||||
import { HandleDeleteCommentRequest, HandleEditCommentRequest } from './types';
|
import { HandleDeleteCommentRequest, HandleEditCommentRequest } from './types';
|
||||||
|
import { useInView } from 'react-intersection-observer';
|
||||||
|
import classNames from 'classnames';
|
||||||
|
|
||||||
interface EditCommentBodyProps {
|
interface EditCommentBodyProps {
|
||||||
comment: z.infer<typeof CommentQueryResult>;
|
comment: z.infer<typeof CommentQueryResult>;
|
||||||
@@ -80,8 +82,16 @@ const EditCommentBody: FC<EditCommentBodyProps> = ({
|
|||||||
|
|
||||||
const disableForm = isSubmitting || isDeleting;
|
const disableForm = isSubmitting || isDeleting;
|
||||||
|
|
||||||
|
const [ref, inView] = useInView({ triggerOnce: true });
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="py-4 pr-3 animate-in fade-in-10">
|
<div
|
||||||
|
className={classNames('py-4 pr-3 animate-in fade-in-10', {
|
||||||
|
'opacity-0': !inView,
|
||||||
|
'animate-fade': inView,
|
||||||
|
})}
|
||||||
|
ref={ref}
|
||||||
|
>
|
||||||
<form onSubmit={handleSubmit(onEdit)} className="space-y-3">
|
<form onSubmit={handleSubmit(onEdit)} className="space-y-3">
|
||||||
<div>
|
<div>
|
||||||
<FormInfo>
|
<FormInfo>
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ const LoginForm = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<form className="form-control w-full space-y-5" onSubmit={handleSubmit(onSubmit)}>
|
<form className="form-control space-y-5" onSubmit={handleSubmit(onSubmit)}>
|
||||||
<div>
|
<div>
|
||||||
<FormInfo>
|
<FormInfo>
|
||||||
<FormLabel htmlFor="username">username</FormLabel>
|
<FormLabel htmlFor="username">username</FormLabel>
|
||||||
|
|||||||
@@ -44,13 +44,9 @@ const RegisterUserForm: FC = () => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
return (
|
return (
|
||||||
<form
|
<form className="form-control w-full" noValidate onSubmit={handleSubmit(onSubmit)}>
|
||||||
className="form-control w-full space-y-5"
|
<div className="space-y-5">
|
||||||
noValidate
|
<div className="flex flex-col lg:flex-row lg:space-x-5">
|
||||||
onSubmit={handleSubmit(onSubmit)}
|
|
||||||
>
|
|
||||||
<div>
|
|
||||||
<div className="flex flex-col lg:flex-row lg:space-x-3">
|
|
||||||
<div className="lg:w-[50%]">
|
<div className="lg:w-[50%]">
|
||||||
<FormInfo>
|
<FormInfo>
|
||||||
<FormLabel htmlFor="firstName">First name</FormLabel>
|
<FormLabel htmlFor="firstName">First name</FormLabel>
|
||||||
@@ -63,7 +59,7 @@ const RegisterUserForm: FC = () => {
|
|||||||
type="text"
|
type="text"
|
||||||
formValidationSchema={register('firstName')}
|
formValidationSchema={register('firstName')}
|
||||||
error={!!errors.firstName}
|
error={!!errors.firstName}
|
||||||
placeholder="first name"
|
placeholder="John"
|
||||||
/>
|
/>
|
||||||
</FormSegment>
|
</FormSegment>
|
||||||
</div>
|
</div>
|
||||||
@@ -80,13 +76,13 @@ const RegisterUserForm: FC = () => {
|
|||||||
type="text"
|
type="text"
|
||||||
formValidationSchema={register('lastName')}
|
formValidationSchema={register('lastName')}
|
||||||
error={!!errors.lastName}
|
error={!!errors.lastName}
|
||||||
placeholder="last name"
|
placeholder="Doe"
|
||||||
/>
|
/>
|
||||||
</FormSegment>
|
</FormSegment>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="flex flex-col lg:flex-row lg:space-x-3">
|
<div className="flex flex-col lg:flex-row lg:space-x-5">
|
||||||
<div className="lg:w-[50%]">
|
<div className="lg:w-[50%]">
|
||||||
<FormInfo>
|
<FormInfo>
|
||||||
<FormLabel htmlFor="email">email</FormLabel>
|
<FormLabel htmlFor="email">email</FormLabel>
|
||||||
@@ -99,7 +95,7 @@ const RegisterUserForm: FC = () => {
|
|||||||
type="email"
|
type="email"
|
||||||
formValidationSchema={register('email')}
|
formValidationSchema={register('email')}
|
||||||
error={!!errors.email}
|
error={!!errors.email}
|
||||||
placeholder="email"
|
placeholder="john.doe@example.com"
|
||||||
/>
|
/>
|
||||||
</FormSegment>
|
</FormSegment>
|
||||||
</div>
|
</div>
|
||||||
@@ -115,13 +111,13 @@ const RegisterUserForm: FC = () => {
|
|||||||
type="text"
|
type="text"
|
||||||
formValidationSchema={register('username')}
|
formValidationSchema={register('username')}
|
||||||
error={!!errors.username}
|
error={!!errors.username}
|
||||||
placeholder="username"
|
placeholder="johndoe"
|
||||||
/>
|
/>
|
||||||
</FormSegment>
|
</FormSegment>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="flex flex-col lg:flex-row lg:space-x-3">
|
<div className="flex flex-col lg:flex-row lg:space-x-5">
|
||||||
<div className="lg:w-[50%]">
|
<div className="lg:w-[50%]">
|
||||||
<FormInfo>
|
<FormInfo>
|
||||||
<FormLabel htmlFor="password">password</FormLabel>
|
<FormLabel htmlFor="password">password</FormLabel>
|
||||||
@@ -155,26 +151,28 @@ const RegisterUserForm: FC = () => {
|
|||||||
</FormSegment>
|
</FormSegment>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<FormInfo>
|
<div>
|
||||||
<FormLabel htmlFor="dateOfBirth">Date of birth</FormLabel>
|
<FormInfo>
|
||||||
<FormError>{errors.dateOfBirth?.message}</FormError>
|
<FormLabel htmlFor="dateOfBirth">Date of birth</FormLabel>
|
||||||
</FormInfo>
|
<FormError>{errors.dateOfBirth?.message}</FormError>
|
||||||
<FormSegment>
|
</FormInfo>
|
||||||
<FormTextInput
|
<FormSegment>
|
||||||
id="dateOfBirth"
|
<FormTextInput
|
||||||
disabled={formState.isSubmitting}
|
id="dateOfBirth"
|
||||||
type="date"
|
disabled={formState.isSubmitting}
|
||||||
formValidationSchema={register('dateOfBirth')}
|
type="date"
|
||||||
error={!!errors.dateOfBirth}
|
formValidationSchema={register('dateOfBirth')}
|
||||||
placeholder="date of birth"
|
error={!!errors.dateOfBirth}
|
||||||
/>
|
placeholder="date of birth"
|
||||||
</FormSegment>
|
/>
|
||||||
<div className="mt-6 w-full">
|
</FormSegment>
|
||||||
<Button type="submit" isSubmitting={formState.isSubmitting}>
|
|
||||||
Register User
|
|
||||||
</Button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div className="mt-10">
|
||||||
|
<Button type="submit" isSubmitting={formState.isSubmitting}>
|
||||||
|
Register User
|
||||||
|
</Button>
|
||||||
|
</div>
|
||||||
</form>
|
</form>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -3,13 +3,10 @@ import Navbar from './Navbar';
|
|||||||
|
|
||||||
const Layout: FC<{ children: ReactNode }> = ({ children }) => {
|
const Layout: FC<{ children: ReactNode }> = ({ children }) => {
|
||||||
return (
|
return (
|
||||||
<div className="flex h-screen flex-col">
|
<div className="flex h-full flex-col" id="app">
|
||||||
<Navbar />
|
<Navbar />
|
||||||
<div className="top-0 h-full w-screen flex-1 overflow-x-auto animate-in fade-in">
|
{children}
|
||||||
{children}
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export default Layout;
|
export default Layout;
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
import useMediaQuery from '@/hooks/utilities/useMediaQuery';
|
import useMediaQuery from '@/hooks/utilities/useMediaQuery';
|
||||||
import useNavbar from '@/hooks/utilities/useNavbar';
|
import useNavbar from '@/hooks/utilities/useNavbar';
|
||||||
import useTheme from '@/hooks/utilities/useTheme';
|
// import useTheme from '@/hooks/utilities/useTheme';
|
||||||
|
|
||||||
import Link from 'next/link';
|
import Link from 'next/link';
|
||||||
import { FC } from 'react';
|
import { FC, useRef } from 'react';
|
||||||
import { MdDarkMode, MdLightMode } from 'react-icons/md';
|
// import { MdDarkMode, MdLightMode } from 'react-icons/md';
|
||||||
import { GiHamburgerMenu } from 'react-icons/gi';
|
|
||||||
|
import { FaBars } from 'react-icons/fa';
|
||||||
|
import classNames from 'classnames';
|
||||||
|
|
||||||
const DesktopLinks: FC = () => {
|
const DesktopLinks: FC = () => {
|
||||||
const { pages, currentURL } = useNavbar();
|
const { pages, currentURL } = useNavbar();
|
||||||
@@ -19,8 +21,8 @@ const DesktopLinks: FC = () => {
|
|||||||
<Link tabIndex={0} href={page.slug} className="hover:bg-primary-focus">
|
<Link tabIndex={0} href={page.slug} className="hover:bg-primary-focus">
|
||||||
<span
|
<span
|
||||||
className={`text-lg uppercase ${
|
className={`text-lg uppercase ${
|
||||||
currentURL === page.slug ? 'font-black' : 'font-medium'
|
currentURL === page.slug ? 'font-extrabold' : 'font-bold'
|
||||||
} text-primary-content`}
|
} text-base-content`}
|
||||||
>
|
>
|
||||||
{page.name}
|
{page.name}
|
||||||
</span>
|
</span>
|
||||||
@@ -35,24 +37,44 @@ const DesktopLinks: FC = () => {
|
|||||||
|
|
||||||
const MobileLinks: FC = () => {
|
const MobileLinks: FC = () => {
|
||||||
const { pages } = useNavbar();
|
const { pages } = useNavbar();
|
||||||
|
|
||||||
|
const drawerRef = useRef<HTMLInputElement>(null);
|
||||||
return (
|
return (
|
||||||
<div className="flex-none lg:hidden">
|
<div className="flex-none lg:hidden">
|
||||||
<div className="dropdown-end dropdown">
|
<div className="drawer drawer-end">
|
||||||
<label tabIndex={0} className="btn btn-circle btn-ghost">
|
<input id="my-drawer" type="checkbox" className="drawer-toggle" ref={drawerRef} />
|
||||||
<GiHamburgerMenu />
|
<div className="drawer-content">
|
||||||
</label>
|
<label htmlFor="my-drawer" className="btn btn-ghost drawer-button">
|
||||||
<ul
|
<FaBars />
|
||||||
tabIndex={0}
|
</label>
|
||||||
className="menu-compact menu dropdown-content rounded-box mt-3 w-48 bg-base-100 p-2 shadow"
|
</div>
|
||||||
>
|
<div className="drawer-side">
|
||||||
{pages.map((page) => (
|
<label
|
||||||
<li key={page.slug}>
|
htmlFor="my-drawer"
|
||||||
<Link href={page.slug}>
|
aria-label="close sidebar"
|
||||||
<span className="select-none text-primary-content">{page.name}</span>
|
className="drawer-overlay"
|
||||||
</Link>
|
/>
|
||||||
</li>
|
<ul className="menu min-h-full bg-primary pr-16 text-base-content">
|
||||||
))}
|
{pages.map((page) => {
|
||||||
</ul>
|
return (
|
||||||
|
<li key={page.slug}>
|
||||||
|
<Link
|
||||||
|
href={page.slug}
|
||||||
|
tabIndex={0}
|
||||||
|
rel={page.slug === '/resume/main.pdf' ? 'noopener noreferrer' : ''}
|
||||||
|
target={page.slug === '/resume/main.pdf' ? '_blank' : ''}
|
||||||
|
onClick={() => {
|
||||||
|
if (!drawerRef.current) return;
|
||||||
|
drawerRef.current.checked = false;
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<span className="text-lg font-bold uppercase">{page.name}</span>
|
||||||
|
</Link>
|
||||||
|
</li>
|
||||||
|
);
|
||||||
|
})}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
@@ -61,17 +83,30 @@ const MobileLinks: FC = () => {
|
|||||||
const Navbar = () => {
|
const Navbar = () => {
|
||||||
const isDesktopView = useMediaQuery('(min-width: 1024px)');
|
const isDesktopView = useMediaQuery('(min-width: 1024px)');
|
||||||
|
|
||||||
const { theme, setTheme } = useTheme();
|
const { currentURL } = useNavbar();
|
||||||
|
|
||||||
|
const backgroundIsTransparent =
|
||||||
|
currentURL === '/' || currentURL === '/login' || currentURL === '/register';
|
||||||
|
|
||||||
|
const isOnHomePage = currentURL === '/';
|
||||||
|
|
||||||
|
// const { theme, setTheme } = useTheme();
|
||||||
return (
|
return (
|
||||||
<div className="navbar sticky top-0 z-50 bg-primary text-primary-content">
|
<div
|
||||||
|
className={classNames('navbar fixed top-0 z-20 h-10 min-h-10 text-base-content', {
|
||||||
|
'bg-transparent': backgroundIsTransparent,
|
||||||
|
'bg-base-100': !backgroundIsTransparent,
|
||||||
|
})}
|
||||||
|
>
|
||||||
<div className="flex-1">
|
<div className="flex-1">
|
||||||
<Link className="btn btn-ghost normal-case" href="/">
|
{isOnHomePage ? null : (
|
||||||
<span className="cursor-pointer text-lg font-bold">The Biergarten App</span>
|
<Link className="btn btn-ghost btn-sm" href="/">
|
||||||
</Link>
|
<span className="cursor-pointer text-lg font-bold">The Biergarten App</span>
|
||||||
|
</Link>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div
|
{/* <div
|
||||||
className="tooltip tooltip-left"
|
className="tooltip tooltip-left"
|
||||||
data-tip={theme === 'light' ? 'Switch to dark mode' : 'Switch to light mode'}
|
data-tip={theme === 'light' ? 'Switch to dark mode' : 'Switch to light mode'}
|
||||||
>
|
>
|
||||||
@@ -96,7 +131,7 @@ const Navbar = () => {
|
|||||||
</button>
|
</button>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div> */}
|
||||||
<div>{isDesktopView ? <DesktopLinks /> : <MobileLinks />}</div>
|
<div>{isDesktopView ? <DesktopLinks /> : <MobileLinks />}</div>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ const NotFound: NextPage = () => {
|
|||||||
<title>404 Page Not Found</title>
|
<title>404 Page Not Found</title>
|
||||||
<meta name="description" content="404 Page Not Found" />
|
<meta name="description" content="404 Page Not Found" />
|
||||||
</Head>
|
</Head>
|
||||||
<div className="mx-2 flex h-full flex-col items-center justify-center text-center lg:mx-0">
|
<div className="mx-2 flex h-dvh flex-col items-center justify-center text-center lg:mx-0">
|
||||||
<h1 className="text-3xl font-bold lg:text-5xl">404: Not Found</h1>
|
<h1 className="text-3xl font-bold lg:text-5xl">404: Not Found</h1>
|
||||||
<h2 className="text-lg font-bold">
|
<h2 className="text-lg font-bold">
|
||||||
Sorry, the page you are looking for does not exist.
|
Sorry, the page you are looking for does not exist.
|
||||||
|
|||||||
@@ -74,13 +74,9 @@ const BeerByIdPage: NextPage<BeerPageProps> = ({ beerPost }) => {
|
|||||||
</div>
|
</div>
|
||||||
) : (
|
) : (
|
||||||
<Tab.Group>
|
<Tab.Group>
|
||||||
<Tab.List className="tabs-boxed tabs items-center justify-center rounded-2xl">
|
<Tab.List className="tabs-boxed tabs grid grid-cols-2">
|
||||||
<Tab className="tab tab-md w-1/2 uppercase ui-selected:tab-active">
|
<Tab className="tab uppercase ui-selected:tab-active">Comments</Tab>
|
||||||
Comments
|
<Tab className="tab uppercase ui-selected:tab-active">Other Beers</Tab>
|
||||||
</Tab>
|
|
||||||
<Tab className="tab tab-md w-1/2 uppercase ui-selected:tab-active">
|
|
||||||
Other Beers
|
|
||||||
</Tab>
|
|
||||||
</Tab.List>
|
</Tab.List>
|
||||||
<Tab.Panels className="mt-2">
|
<Tab.Panels className="mt-2">
|
||||||
<Tab.Panel>
|
<Tab.Panel>
|
||||||
|
|||||||
@@ -41,11 +41,9 @@ const BeerStyleByIdPage: NextPage<BeerStylePageProps> = ({ beerStyle }) => {
|
|||||||
</div>
|
</div>
|
||||||
) : (
|
) : (
|
||||||
<Tab.Group>
|
<Tab.Group>
|
||||||
<Tab.List className="tabs-boxed tabs items-center justify-center rounded-2xl">
|
<Tab.List className="tabs-boxed tabs grid grid-cols-2">
|
||||||
<Tab className="tab tab-md w-1/2 uppercase ui-selected:tab-active">
|
<Tab className="tab uppercase ui-selected:tab-active">Comments</Tab>
|
||||||
Comments
|
<Tab className="tab uppercase ui-selected:tab-active">
|
||||||
</Tab>
|
|
||||||
<Tab className="tab tab-md w-1/2 uppercase ui-selected:tab-active">
|
|
||||||
Beers in this Style
|
Beers in this Style
|
||||||
</Tab>
|
</Tab>
|
||||||
</Tab.List>
|
</Tab.List>
|
||||||
|
|||||||
@@ -85,11 +85,11 @@ const BreweryByIdPage: NextPage<BreweryPageProps> = ({ breweryPost, mapboxToken
|
|||||||
token={mapboxToken}
|
token={mapboxToken}
|
||||||
/>
|
/>
|
||||||
<Tab.Group>
|
<Tab.Group>
|
||||||
<Tab.List className="tabs-boxed tabs items-center justify-center rounded-2xl">
|
<Tab.List className="tabs-boxed tabs grid grid-cols-2">
|
||||||
<Tab className="tab tab-md w-1/2 uppercase ui-selected:tab-active">
|
<Tab className="tab-md tab w-1/2 uppercase ui-selected:tab-active">
|
||||||
Comments
|
Comments
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab className="tab tab-md w-1/2 uppercase ui-selected:tab-active">
|
<Tab className="tab-md tab w-1/2 uppercase ui-selected:tab-active">
|
||||||
Beers
|
Beers
|
||||||
</Tab>
|
</Tab>
|
||||||
</Tab.List>
|
</Tab.List>
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import { NextPage } from 'next';
|
import { NextPage } from 'next';
|
||||||
|
import { CldImage } from 'next-cloudinary';
|
||||||
import Head from 'next/head';
|
import Head from 'next/head';
|
||||||
|
|
||||||
const keywords = [
|
const keywords = [
|
||||||
@@ -29,7 +30,7 @@ const keywords = [
|
|||||||
'beer recipes',
|
'beer recipes',
|
||||||
];
|
];
|
||||||
|
|
||||||
const description = `The Biergarten App is an app for beer lovers to share their favourite brews and breweries with like-minded people online.`;
|
const description = `An app for beer lovers to share their favourite brews and breweries with like-minded people online.`;
|
||||||
|
|
||||||
const Home: NextPage = () => {
|
const Home: NextPage = () => {
|
||||||
return (
|
return (
|
||||||
@@ -39,13 +40,17 @@ const Home: NextPage = () => {
|
|||||||
<meta name="description" content={description} />
|
<meta name="description" content={description} />
|
||||||
<meta name="keywords" content={keywords.join(', ')} />
|
<meta name="keywords" content={keywords.join(', ')} />
|
||||||
</Head>
|
</Head>
|
||||||
|
<div className="relative flex h-dvh w-full flex-col items-center justify-center bg-base-300">
|
||||||
<div className="flex h-full w-full items-center justify-center bg-primary">
|
<CldImage
|
||||||
<div className="w-9/12 text-center lg:w-8/12">
|
src="https://res.cloudinary.com/dxie9b7na/image/upload/v1701056793/cloudinary-images/pexels-elevate-1267700_jrno3s.jpg"
|
||||||
<h1 className="text-3xl font-bold md:text-4xl lg:text-5xl xl:text-8xl">
|
alt="Login Image"
|
||||||
The Biergarten App
|
width={5000}
|
||||||
</h1>
|
height={5000}
|
||||||
<p className="mt-4 text-lg lg:text-2xl">{description}</p>
|
className="pointer-events-none absolute h-full w-full object-cover mix-blend-overlay"
|
||||||
|
/>
|
||||||
|
<div className="relative flex w-9/12 flex-col space-y-3 text-base-content">
|
||||||
|
<h1 className="text-5xl font-extrabold lg:text-8xl">The Biergarten App</h1>
|
||||||
|
<p className="font-bold lg:text-3xl">{description}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</>
|
</>
|
||||||
|
|||||||
@@ -18,34 +18,32 @@ const LoginPage: NextPage = () => {
|
|||||||
<meta name="description" content="Login to your account" />
|
<meta name="description" content="Login to your account" />
|
||||||
</Head>
|
</Head>
|
||||||
|
|
||||||
<div className="flex h-full flex-row">
|
<div className="relative flex h-dvh w-full flex-col items-center justify-center bg-base-300">
|
||||||
<div className="hidden h-full flex-col items-center justify-center bg-base-100 lg:flex lg:w-[55%]">
|
<CldImage
|
||||||
<CldImage
|
src="https://res.cloudinary.com/dxie9b7na/image/upload/v1701056793/cloudinary-images/pexels-elevate-1267700_jrno3s.jpg"
|
||||||
src="https://res.cloudinary.com/dxie9b7na/image/upload/v1701056793/cloudinary-images/pexels-elevate-1267700_jrno3s.jpg"
|
alt="Login Image"
|
||||||
alt="Login Image"
|
width={5000}
|
||||||
width={5000}
|
height={5000}
|
||||||
height={5000}
|
className="pointer-events-none absolute h-full w-full object-cover mix-blend-overlay"
|
||||||
className="h-full w-full object-cover"
|
/>
|
||||||
/>
|
|
||||||
</div>
|
<div className="relative flex w-9/12 flex-col items-center text-center text-base-content lg:w-6/12">
|
||||||
<div className="flex h-full w-full flex-col items-center justify-center bg-base-300 lg:w-[45%]">
|
<div className="mb-8 flex w-full flex-col items-center space-y-2 text-center">
|
||||||
<div className="w-10/12 space-y-5 sm:w-9/12">
|
<FaUserCircle className="text-6xl text-primary-content" />
|
||||||
<div className=" flex flex-col items-center space-y-2">
|
<h1 className="text-6xl font-extrabold">Login</h1>
|
||||||
<FaUserCircle className="text-3xl" />
|
</div>
|
||||||
<h1 className="text-4xl font-bold">Login</h1>
|
<div className="w-full">
|
||||||
</div>
|
|
||||||
<LoginForm />
|
<LoginForm />
|
||||||
<div className="mt-3 flex flex-col items-center space-y-1">
|
</div>
|
||||||
<Link href="/register" className="text-primary-500 link-hover link italic">
|
|
||||||
Don't have an account?
|
<div className="mt-5 flex w-full flex-col space-y-1 text-center font-bold italic">
|
||||||
</Link>
|
<Link className="link-hover link text-lg" href="/register">
|
||||||
<Link
|
Don't have an account?
|
||||||
href="/users/forgot-password"
|
</Link>
|
||||||
className="text-primary-500 link-hover link italic"
|
|
||||||
>
|
<Link className="link-hover link text-lg" href="/users/forgot-password">
|
||||||
Forgot password?
|
Forgot your password?{' '}
|
||||||
</Link>
|
</Link>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,10 +1,11 @@
|
|||||||
import RegisterUserForm from '@/components/RegisterUserForm';
|
import RegisterUserForm from '@/components/RegisterUserForm';
|
||||||
import FormPageLayout from '@/components/ui/forms/FormPageLayout';
|
|
||||||
|
|
||||||
import useRedirectWhenLoggedIn from '@/hooks/auth/useRedirectIfLoggedIn';
|
import useRedirectWhenLoggedIn from '@/hooks/auth/useRedirectIfLoggedIn';
|
||||||
import { NextPage } from 'next';
|
import { NextPage } from 'next';
|
||||||
|
import { CldImage } from 'next-cloudinary';
|
||||||
import Head from 'next/head';
|
import Head from 'next/head';
|
||||||
import { BiUser } from 'react-icons/bi';
|
|
||||||
|
import { FaUserCircle } from 'react-icons/fa';
|
||||||
|
|
||||||
const RegisterUserPage: NextPage = () => {
|
const RegisterUserPage: NextPage = () => {
|
||||||
useRedirectWhenLoggedIn();
|
useRedirectWhenLoggedIn();
|
||||||
@@ -15,14 +16,26 @@ const RegisterUserPage: NextPage = () => {
|
|||||||
<title>Register User</title>
|
<title>Register User</title>
|
||||||
<meta name="description" content="Register a new user" />
|
<meta name="description" content="Register a new user" />
|
||||||
</Head>
|
</Head>
|
||||||
<FormPageLayout
|
|
||||||
headingText="Register User"
|
<div className="relative flex min-h-dvh w-full flex-col items-center justify-center bg-base-300">
|
||||||
headingIcon={BiUser}
|
<CldImage
|
||||||
backLink="/"
|
src="https://res.cloudinary.com/dxie9b7na/image/upload/v1701056793/cloudinary-images/pexels-elevate-1267700_jrno3s.jpg"
|
||||||
backLinkText="Back to home"
|
alt="Login Image"
|
||||||
>
|
width={5000}
|
||||||
<RegisterUserForm />
|
height={5000}
|
||||||
</FormPageLayout>
|
className="pointer-events-none absolute h-full w-full object-cover mix-blend-overlay"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<div className="relative flex w-10/12 flex-col items-center pb-20 text-center text-base-content lg:w-6/12">
|
||||||
|
<div className="mb-8 mt-20 flex w-full flex-col items-center space-y-2 text-center">
|
||||||
|
<FaUserCircle className="text-6xl text-primary-content" />
|
||||||
|
<h1 className="text-6xl font-extrabold">Register</h1>
|
||||||
|
</div>
|
||||||
|
<div className="w-full">
|
||||||
|
<RegisterUserForm />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ const UserInfoPage: FC<UserInfoPageProps> = ({ user }) => {
|
|||||||
<meta name="description" content="User information" />
|
<meta name="description" content="User information" />
|
||||||
</Head>
|
</Head>
|
||||||
<>
|
<>
|
||||||
<main className="mb-12 mt-10 flex w-full flex-col items-center justify-center">
|
<main className="mb-12 mt-16 flex w-full flex-col items-center justify-center">
|
||||||
<div className="w-11/12 space-y-3 xl:w-9/12 2xl:w-8/12">
|
<div className="w-11/12 space-y-3 xl:w-9/12 2xl:w-8/12">
|
||||||
<UserHeader user={user} />
|
<UserHeader user={user} />
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ const AccountPage: NextPage = () => {
|
|||||||
content="Your account page. Here you can view your account information, change your settings, and view your posts."
|
content="Your account page. Here you can view your account information, change your settings, and view your posts."
|
||||||
/>
|
/>
|
||||||
</Head>
|
</Head>
|
||||||
<div className="flex flex-col items-center">
|
<div className="mt-10 flex min-h-dvh flex-col items-center">
|
||||||
<div className="m-12 flex w-11/12 flex-col items-center justify-center space-y-3 lg:w-8/12">
|
<div className="m-12 flex w-11/12 flex-col items-center justify-center space-y-3 lg:w-8/12">
|
||||||
<div className="flex flex-col items-center space-y-3">
|
<div className="flex flex-col items-center space-y-3">
|
||||||
<div className="mb-1 h-28 w-28">
|
<div className="mb-1 h-28 w-28">
|
||||||
@@ -48,22 +48,18 @@ const AccountPage: NextPage = () => {
|
|||||||
|
|
||||||
<div className="h-full w-full">
|
<div className="h-full w-full">
|
||||||
<Tab.Group>
|
<Tab.Group>
|
||||||
<Tab.List className="tabs-boxed tabs items-center justify-center rounded-2xl">
|
<Tab.List className="tabs-boxed tabs grid grid-cols-2">
|
||||||
<Tab className="tab tab-md w-1/2 uppercase ui-selected:tab-active">
|
<Tab className="tab uppercase ui-selected:tab-active">Account</Tab>
|
||||||
Account
|
<Tab className="tab uppercase ui-selected:tab-active">Your Posts</Tab>
|
||||||
</Tab>
|
|
||||||
<Tab className="tab tab-md w-1/2 uppercase ui-selected:tab-active">
|
|
||||||
Your Posts
|
|
||||||
</Tab>
|
|
||||||
</Tab.List>
|
</Tab.List>
|
||||||
<Tab.Panels>
|
<Tab.Panels>
|
||||||
<Tab.Panel className="h-full space-y-5">
|
<Tab.Panel className="mt-3 h-full space-y-3">
|
||||||
<UpdateProfileLink />
|
<UpdateProfileLink />
|
||||||
<AccountInfo pageState={pageState} dispatch={dispatch} />
|
<AccountInfo pageState={pageState} dispatch={dispatch} />
|
||||||
<Security pageState={pageState} dispatch={dispatch} />
|
<Security pageState={pageState} dispatch={dispatch} />
|
||||||
<DeleteAccount pageState={pageState} dispatch={dispatch} />
|
<DeleteAccount pageState={pageState} dispatch={dispatch} />
|
||||||
</Tab.Panel>
|
</Tab.Panel>
|
||||||
<Tab.Panel className="h-full space-y-5">
|
<Tab.Panel className="h-full">
|
||||||
<UserPosts />
|
<UserPosts />
|
||||||
</Tab.Panel>
|
</Tab.Panel>
|
||||||
</Tab.Panels>
|
</Tab.Panels>
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ const ProtectedPage: NextPage = () => {
|
|||||||
<Head>
|
<Head>
|
||||||
<title>Hello! | The Biergarten App</title>
|
<title>Hello! | The Biergarten App</title>
|
||||||
</Head>
|
</Head>
|
||||||
<div className="flex h-full flex-col items-center justify-center space-y-3 bg-primary text-center">
|
<div className="h-dvh flex flex-col items-center justify-center space-y-3 bg-base-100 text-center">
|
||||||
{isLoading && <Spinner size={isDesktop ? 'xl' : 'md'} />}
|
{isLoading && <Spinner size={isDesktop ? 'xl' : 'md'} />}
|
||||||
{user && !isLoading && (
|
{user && !isLoading && (
|
||||||
<>
|
<>
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
const myThemes = {
|
const myThemes = {
|
||||||
dark: {
|
dark: {
|
||||||
primary: 'hsl(227, 25%, 25%)',
|
primary: 'hsl(227, 10%, 25%)',
|
||||||
secondary: 'hsl(255, 9%, 69%)',
|
secondary: 'hsl(255, 9%, 69%)',
|
||||||
error: 'hsl(9, 52%, 57%)',
|
error: 'hsl(9, 52%, 57%)',
|
||||||
accent: 'hsl(316, 96%, 60%)',
|
accent: 'hsl(316, 96%, 60%)',
|
||||||
@@ -12,24 +12,10 @@ const myThemes = {
|
|||||||
warning: 'hsl(50, 98%, 50%)',
|
warning: 'hsl(50, 98%, 50%)',
|
||||||
'primary-content': 'hsl(0, 0%, 98%)',
|
'primary-content': 'hsl(0, 0%, 98%)',
|
||||||
'error-content': 'hsl(0, 0%, 98%)',
|
'error-content': 'hsl(0, 0%, 98%)',
|
||||||
'base-100': 'hsl(227, 20%, 20%)',
|
'base-content': 'hsl(227, 0%, 60%)',
|
||||||
'base-200': 'hsl(227, 20%, 13%)',
|
'base-100': 'hsl(227, 10%, 20%)',
|
||||||
'base-300': 'hsl(227, 20%, 10%)',
|
'base-200': 'hsl(227, 10%, 10%)',
|
||||||
},
|
'base-300': 'hsl(227, 10%, 8%)',
|
||||||
light: {
|
|
||||||
primary: 'hsl(180, 20%, 70%)',
|
|
||||||
secondary: 'hsl(120, 10%, 70%)',
|
|
||||||
error: 'hsl(4, 87%, 74%)',
|
|
||||||
accent: 'hsl(93, 27%, 73%)',
|
|
||||||
neutral: 'hsl(38, 31%, 91%)',
|
|
||||||
info: 'hsl(163, 40%, 79%)',
|
|
||||||
success: 'hsl(93, 27%, 73%)',
|
|
||||||
warning: 'hsl(40, 76%, 73%)',
|
|
||||||
'primary-content': 'hsl(0, 0%, 0%)',
|
|
||||||
'error-content': 'hsl(0, 0%, 0%)',
|
|
||||||
'base-300': 'hsl(180, 10%, 88%)',
|
|
||||||
'base-200': 'hsl(180, 10%, 92%)',
|
|
||||||
'base-100': 'hsl(180, 10%, 95%)',
|
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -46,10 +32,9 @@ module.exports = {
|
|||||||
plugins: [
|
plugins: [
|
||||||
require('@headlessui/tailwindcss'),
|
require('@headlessui/tailwindcss'),
|
||||||
require('daisyui'),
|
require('daisyui'),
|
||||||
require('tailwindcss-animate'),
|
require('tailwindcss-animated'),
|
||||||
require('autoprefixer'),
|
require('autoprefixer'),
|
||||||
],
|
],
|
||||||
|
|
||||||
daisyui: {
|
daisyui: {
|
||||||
logs: false,
|
logs: false,
|
||||||
themes: [myThemes],
|
themes: [myThemes],
|
||||||
|
|||||||
Reference in New Issue
Block a user