From 8409503ee6228943891ff2a9ea3323f988557da0 Mon Sep 17 00:00:00 2001 From: Peter Hoppe Date: Tue, 7 Mar 2023 16:14:45 +0100 Subject: [PATCH] gallery --- .env.hope-fly | 1 + package-lock.json | 1463 +++++++++++++++++++++++++++++-- package.json | 15 +- public/.htaccess | 4 + public/favicon.ico | Bin 0 -> 171686 bytes public/manifest.json | 10 - src/App.tsx | 11 +- src/components/AppBar.tsx | 45 + src/components/ImageGallery.tsx | 49 ++ src/gallery.json | 43 + src/state.ts | 5 + 11 files changed, 1569 insertions(+), 77 deletions(-) create mode 100644 .env.hope-fly create mode 100644 public/.htaccess create mode 100644 public/favicon.ico create mode 100644 src/components/AppBar.tsx create mode 100644 src/components/ImageGallery.tsx create mode 100644 src/gallery.json create mode 100644 src/state.ts diff --git a/.env.hope-fly b/.env.hope-fly new file mode 100644 index 0000000..060fe60 --- /dev/null +++ b/.env.hope-fly @@ -0,0 +1 @@ +REACT_APP_WWW_ROOT = "https://hope-fly.de/gallery/" diff --git a/package-lock.json b/package-lock.json index 4e9726d..c2a0de6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,17 +8,26 @@ "name": "gallery", "version": "0.1.0", "dependencies": { + "@emotion/react": "^11.10.6", + "@emotion/styled": "^11.10.6", + "@material-ui/core": "^4.12.4", + "@material-ui/icons": "^4.11.3", + "@mui/icons-material": "^5.11.11", + "@mui/material": "^5.11.12", "@types/jest": "^27.5.2", "@types/node": "^16.18.14", "@types/react": "^18.0.28", "@types/react-dom": "^18.0.11", + "env-cmd": "^10.1.0", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-image-gallery": "^1.2.11", "react-scripts": "5.0.1", "typescript": "^4.9.5", "web-vitals": "^2.1.4" }, "devDependencies": { + "@types/react-image-gallery": "^1.2.0", "tailwindcss": "^3.2.7" } }, @@ -2130,6 +2139,158 @@ "postcss-selector-parser": "^6.0.10" } }, + "node_modules/@emotion/babel-plugin": { + "version": "11.10.6", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.10.6.tgz", + "integrity": "sha512-p2dAqtVrkhSa7xz1u/m9eHYdLi+en8NowrmXeF/dKtJpU8lCWli8RUAati7NcSl0afsBott48pdnANuD0wh9QQ==", + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/runtime": "^7.18.3", + "@emotion/hash": "^0.9.0", + "@emotion/memoize": "^0.8.0", + "@emotion/serialize": "^1.1.1", + "babel-plugin-macros": "^3.1.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "4.1.3" + } + }, + "node_modules/@emotion/babel-plugin/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@emotion/babel-plugin/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@emotion/cache": { + "version": "11.10.5", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.10.5.tgz", + "integrity": "sha512-dGYHWyzTdmK+f2+EnIGBpkz1lKc4Zbj2KHd4cX3Wi8/OWr5pKslNjc3yABKH4adRGCvSX4VDC0i04mrrq0aiRA==", + "dependencies": { + "@emotion/memoize": "^0.8.0", + "@emotion/sheet": "^1.2.1", + "@emotion/utils": "^1.2.0", + "@emotion/weak-memoize": "^0.3.0", + "stylis": "4.1.3" + } + }, + "node_modules/@emotion/hash": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.0.tgz", + "integrity": "sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ==" + }, + "node_modules/@emotion/is-prop-valid": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.0.tgz", + "integrity": "sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg==", + "dependencies": { + "@emotion/memoize": "^0.8.0" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.0.tgz", + "integrity": "sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==" + }, + "node_modules/@emotion/react": { + "version": "11.10.6", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.10.6.tgz", + "integrity": "sha512-6HT8jBmcSkfzO7mc+N1L9uwvOnlcGoix8Zn7srt+9ga0MjREo6lRpuVX0kzo6Jp6oTqDhREOFsygN6Ew4fEQbw==", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.10.6", + "@emotion/cache": "^11.10.5", + "@emotion/serialize": "^1.1.1", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.0", + "@emotion/utils": "^1.2.0", + "@emotion/weak-memoize": "^0.3.0", + "hoist-non-react-statics": "^3.3.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/serialize": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.1.tgz", + "integrity": "sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA==", + "dependencies": { + "@emotion/hash": "^0.9.0", + "@emotion/memoize": "^0.8.0", + "@emotion/unitless": "^0.8.0", + "@emotion/utils": "^1.2.0", + "csstype": "^3.0.2" + } + }, + "node_modules/@emotion/sheet": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.1.tgz", + "integrity": "sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA==" + }, + "node_modules/@emotion/styled": { + "version": "11.10.6", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.10.6.tgz", + "integrity": "sha512-OXtBzOmDSJo5Q0AFemHCfl+bUueT8BIcPSxu0EGTpGk6DmI5dnhSzQANm1e1ze0YZL7TDyAyy6s/b/zmGOS3Og==", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.10.6", + "@emotion/is-prop-valid": "^1.2.0", + "@emotion/serialize": "^1.1.1", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.0", + "@emotion/utils": "^1.2.0" + }, + "peerDependencies": { + "@emotion/react": "^11.0.0-rc.0", + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/unitless": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.0.tgz", + "integrity": "sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==" + }, + "node_modules/@emotion/use-insertion-effect-with-fallbacks": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.0.tgz", + "integrity": "sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A==", + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/@emotion/utils": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.0.tgz", + "integrity": "sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw==" + }, + "node_modules/@emotion/weak-memoize": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.0.tgz", + "integrity": "sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==" + }, "node_modules/@eslint/eslintrc": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.0.tgz", @@ -2963,6 +3124,435 @@ "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" }, + "node_modules/@material-ui/core": { + "version": "4.12.4", + "resolved": "https://registry.npmjs.org/@material-ui/core/-/core-4.12.4.tgz", + "integrity": "sha512-tr7xekNlM9LjA6pagJmL8QCgZXaubWUwkJnoYcMKd4gw/t4XiyvnTkjdGrUVicyB2BsdaAv1tvow45bPM4sSwQ==", + "deprecated": "Material UI v4 doesn't receive active development since September 2021. See the guide https://mui.com/material-ui/migration/migration-v4/ to upgrade to v5.", + "dependencies": { + "@babel/runtime": "^7.4.4", + "@material-ui/styles": "^4.11.5", + "@material-ui/system": "^4.12.2", + "@material-ui/types": "5.1.0", + "@material-ui/utils": "^4.11.3", + "@types/react-transition-group": "^4.2.0", + "clsx": "^1.0.4", + "hoist-non-react-statics": "^3.3.2", + "popper.js": "1.16.1-lts", + "prop-types": "^15.7.2", + "react-is": "^16.8.0 || ^17.0.0", + "react-transition-group": "^4.4.0" + }, + "engines": { + "node": ">=8.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/material-ui" + }, + "peerDependencies": { + "@types/react": "^16.8.6 || ^17.0.0", + "react": "^16.8.0 || ^17.0.0", + "react-dom": "^16.8.0 || ^17.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@material-ui/icons": { + "version": "4.11.3", + "resolved": "https://registry.npmjs.org/@material-ui/icons/-/icons-4.11.3.tgz", + "integrity": "sha512-IKHlyx6LDh8n19vzwH5RtHIOHl9Tu90aAAxcbWME6kp4dmvODM3UvOHJeMIDzUbd4muuJKHmlNoBN+mDY4XkBA==", + "dependencies": { + "@babel/runtime": "^7.4.4" + }, + "engines": { + "node": ">=8.0.0" + }, + "peerDependencies": { + "@material-ui/core": "^4.0.0", + "@types/react": "^16.8.6 || ^17.0.0", + "react": "^16.8.0 || ^17.0.0", + "react-dom": "^16.8.0 || ^17.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@material-ui/styles": { + "version": "4.11.5", + "resolved": "https://registry.npmjs.org/@material-ui/styles/-/styles-4.11.5.tgz", + "integrity": "sha512-o/41ot5JJiUsIETME9wVLAJrmIWL3j0R0Bj2kCOLbSfqEkKf0fmaPt+5vtblUh5eXr2S+J/8J3DaCb10+CzPGA==", + "deprecated": "Material UI v4 doesn't receive active development since September 2021. See the guide https://mui.com/material-ui/migration/migration-v4/ to upgrade to v5.", + "dependencies": { + "@babel/runtime": "^7.4.4", + "@emotion/hash": "^0.8.0", + "@material-ui/types": "5.1.0", + "@material-ui/utils": "^4.11.3", + "clsx": "^1.0.4", + "csstype": "^2.5.2", + "hoist-non-react-statics": "^3.3.2", + "jss": "^10.5.1", + "jss-plugin-camel-case": "^10.5.1", + "jss-plugin-default-unit": "^10.5.1", + "jss-plugin-global": "^10.5.1", + "jss-plugin-nested": "^10.5.1", + "jss-plugin-props-sort": "^10.5.1", + "jss-plugin-rule-value-function": "^10.5.1", + "jss-plugin-vendor-prefixer": "^10.5.1", + "prop-types": "^15.7.2" + }, + "engines": { + "node": ">=8.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/material-ui" + }, + "peerDependencies": { + "@types/react": "^16.8.6 || ^17.0.0", + "react": "^16.8.0 || ^17.0.0", + "react-dom": "^16.8.0 || ^17.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@material-ui/styles/node_modules/@emotion/hash": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", + "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==" + }, + "node_modules/@material-ui/styles/node_modules/csstype": { + "version": "2.6.21", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.21.tgz", + "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==" + }, + "node_modules/@material-ui/system": { + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@material-ui/system/-/system-4.12.2.tgz", + "integrity": "sha512-6CSKu2MtmiJgcCGf6nBQpM8fLkuB9F55EKfbdTC80NND5wpTmKzwdhLYLH3zL4cLlK0gVaaltW7/wMuyTnN0Lw==", + "dependencies": { + "@babel/runtime": "^7.4.4", + "@material-ui/utils": "^4.11.3", + "csstype": "^2.5.2", + "prop-types": "^15.7.2" + }, + "engines": { + "node": ">=8.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/material-ui" + }, + "peerDependencies": { + "@types/react": "^16.8.6 || ^17.0.0", + "react": "^16.8.0 || ^17.0.0", + "react-dom": "^16.8.0 || ^17.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@material-ui/system/node_modules/csstype": { + "version": "2.6.21", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.21.tgz", + "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==" + }, + "node_modules/@material-ui/types": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@material-ui/types/-/types-5.1.0.tgz", + "integrity": "sha512-7cqRjrY50b8QzRSYyhSpx4WRw2YuO0KKIGQEVk5J8uoz2BanawykgZGoWEqKm7pVIbzFDN0SpPcVV4IhOFkl8A==", + "peerDependencies": { + "@types/react": "*" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@material-ui/utils": { + "version": "4.11.3", + "resolved": "https://registry.npmjs.org/@material-ui/utils/-/utils-4.11.3.tgz", + "integrity": "sha512-ZuQPV4rBK/V1j2dIkSSEcH5uT6AaHuKWFfotADHsC0wVL1NLd2WkFCm4ZZbX33iO4ydl6V0GPngKm8HZQ2oujg==", + "dependencies": { + "@babel/runtime": "^7.4.4", + "prop-types": "^15.7.2", + "react-is": "^16.8.0 || ^17.0.0" + }, + "engines": { + "node": ">=8.0.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0", + "react-dom": "^16.8.0 || ^17.0.0" + } + }, + "node_modules/@mui/base": { + "version": "5.0.0-alpha.119", + "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.119.tgz", + "integrity": "sha512-XA5zhlYfXi67u613eIF0xRmktkatx6ERy3h+PwrMN5IcWFbgiL1guz8VpdXON+GWb8+G7B8t5oqTFIaCqaSAeA==", + "dependencies": { + "@babel/runtime": "^7.21.0", + "@emotion/is-prop-valid": "^1.2.0", + "@mui/types": "^7.2.3", + "@mui/utils": "^5.11.11", + "@popperjs/core": "^2.11.6", + "clsx": "^1.2.1", + "prop-types": "^15.8.1", + "react-is": "^18.2.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/base/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/@mui/core-downloads-tracker": { + "version": "5.11.12", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.11.12.tgz", + "integrity": "sha512-LHh8HZQ5nPVcW5QnyLwkAZ40txc/S2bzKMQ3bTO+5mjuwAJ2AzQrjZINLVy1geY7ei1pHXVqO1hcWHg/QdT44w==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + } + }, + "node_modules/@mui/icons-material": { + "version": "5.11.11", + "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.11.11.tgz", + "integrity": "sha512-Eell3ADmQVE8HOpt/LZ3zIma8JSvPh3XgnhwZLT0k5HRqZcd6F/QDHc7xsWtgz09t+UEFvOYJXjtrwKmLdwwpw==", + "dependencies": { + "@babel/runtime": "^7.21.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@mui/material": "^5.0.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/material": { + "version": "5.11.12", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.11.12.tgz", + "integrity": "sha512-M6BiIeJjySeEzWeiFJQ9pIjJy6mx5mHPWeMT99wjQdAmA2GxCQhE9A0fh6jQP4jMmYzxhOIhjsGcp0vSdpseXg==", + "dependencies": { + "@babel/runtime": "^7.21.0", + "@mui/base": "5.0.0-alpha.119", + "@mui/core-downloads-tracker": "^5.11.12", + "@mui/system": "^5.11.12", + "@mui/types": "^7.2.3", + "@mui/utils": "^5.11.12", + "@types/react-transition-group": "^4.4.5", + "clsx": "^1.2.1", + "csstype": "^3.1.1", + "prop-types": "^15.8.1", + "react-is": "^18.2.0", + "react-transition-group": "^4.4.5" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/material/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/@mui/private-theming": { + "version": "5.11.12", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.11.12.tgz", + "integrity": "sha512-hnJ0svNI1TPeWZ18E6DvES8PB4NyMLwal6EyXf69rTrYqT6wZPLjB+HiCYfSOCqU/fwArhupSqIIkQpDs8CkAw==", + "dependencies": { + "@babel/runtime": "^7.21.0", + "@mui/utils": "^5.11.12", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/styled-engine": { + "version": "5.11.11", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.11.11.tgz", + "integrity": "sha512-wV0UgW4lN5FkDBXefN8eTYeuE9sjyQdg5h94vtwZCUamGQEzmCOtir4AakgmbWMy0x8OLjdEUESn9wnf5J9MOg==", + "dependencies": { + "@babel/runtime": "^7.21.0", + "@emotion/cache": "^11.10.5", + "csstype": "^3.1.1", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@emotion/react": "^11.4.1", + "@emotion/styled": "^11.3.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + } + } + }, + "node_modules/@mui/system": { + "version": "5.11.12", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.11.12.tgz", + "integrity": "sha512-sYjsXkiwKpZDC3aS6O/6KTjji0jGINLQcrD5EJ5NTkIDiLf19I4HJhnufgKqlTWNfoDBlRohuTf3TzfM06c4ug==", + "dependencies": { + "@babel/runtime": "^7.21.0", + "@mui/private-theming": "^5.11.12", + "@mui/styled-engine": "^5.11.11", + "@mui/types": "^7.2.3", + "@mui/utils": "^5.11.12", + "clsx": "^1.2.1", + "csstype": "^3.1.1", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/types": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.3.tgz", + "integrity": "sha512-tZ+CQggbe9Ol7e/Fs5RcKwg/woU+o8DCtOnccX6KmbBc7YrfqMYEYuaIcXHuhpT880QwNkZZ3wQwvtlDFA2yOw==", + "peerDependencies": { + "@types/react": "*" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/utils": { + "version": "5.11.12", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.11.12.tgz", + "integrity": "sha512-5vH9B/v8pzkpEPO2HvGM54ToXV6cFdAn8UrvdN8TMEEwpn/ycW0jLiyBcgUlPsQ+xha7hqXCPQYHaYFDIcwaiw==", + "dependencies": { + "@babel/runtime": "^7.21.0", + "@types/prop-types": "^15.7.5", + "@types/react-is": "^16.7.1 || ^17.0.0", + "prop-types": "^15.8.1", + "react-is": "^18.2.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "react": "^17.0.0 || ^18.0.0" + } + }, + "node_modules/@mui/utils/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { "version": "5.1.1-v1", "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", @@ -3072,6 +3662,15 @@ } } }, + "node_modules/@popperjs/core": { + "version": "2.11.6", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", + "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "node_modules/@rollup/plugin-babel": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", @@ -3640,6 +4239,31 @@ "@types/react": "*" } }, + "node_modules/@types/react-image-gallery": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@types/react-image-gallery/-/react-image-gallery-1.2.0.tgz", + "integrity": "sha512-y5OEficUWcnGEc6KvflRXgvhtaMSsDH6JGT3/SJs0FV/RgtKuIgrUpGbDw5MdzyUwe/D8sJTo+aw8NOkaX0nIA==", + "dev": true, + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/react-is": { + "version": "17.0.3", + "resolved": "https://registry.npmjs.org/@types/react-is/-/react-is-17.0.3.tgz", + "integrity": "sha512-aBTIWg1emtu95bLTLx0cpkxwGW3ueZv71nE2YFBpL8k/z5czEW8yYpOo8Dp+UUAFAtKwNaOsh/ioSeQnWlZcfw==", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==", + "dependencies": { + "@types/react": "*" + } + }, "node_modules/@types/resolve": { "version": "1.17.1", "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", @@ -5201,6 +5825,14 @@ "wrap-ansi": "^7.0.0" } }, + "node_modules/clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", + "engines": { + "node": ">=6" + } + }, "node_modules/co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", @@ -5680,6 +6312,15 @@ "node": ">=0.10.0" } }, + "node_modules/css-vendor": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/css-vendor/-/css-vendor-2.0.8.tgz", + "integrity": "sha512-x9Aq0XTInxrkuFeHKbYC7zWY8ai7qJ04Kxd9MnvbC1uO5DagxoHQjm4JvG+vCdXOoFtCjbL2XSZfxmoYa9uQVQ==", + "dependencies": { + "@babel/runtime": "^7.8.3", + "is-in-browser": "^1.0.2" + } + }, "node_modules/css-what": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", @@ -6119,6 +6760,15 @@ "utila": "~0.4" } }, + "node_modules/dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "dependencies": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, "node_modules/dom-serializer": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", @@ -6292,6 +6942,29 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, + "node_modules/env-cmd": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/env-cmd/-/env-cmd-10.1.0.tgz", + "integrity": "sha512-mMdWTT9XKN7yNth/6N6g2GuKuJTsKMDHlQFUDacb/heQRRWOTIZ42t1rMHnQu4jYxU1ajdTeJM+9eEETlqToMA==", + "dependencies": { + "commander": "^4.0.0", + "cross-spawn": "^7.0.0" + }, + "bin": { + "env-cmd": "bin/env-cmd.js" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/env-cmd/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "engines": { + "node": ">= 6" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -7517,6 +8190,11 @@ "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" + }, "node_modules/find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", @@ -8145,6 +8823,19 @@ "he": "bin/he" } }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/hoist-non-react-statics/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, "node_modules/hoopy": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz", @@ -8371,6 +9062,11 @@ "node": ">=10.17.0" } }, + "node_modules/hyphenate-style-name": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz", + "integrity": "sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==" + }, "node_modules/iconv-lite": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", @@ -8670,6 +9366,11 @@ "node": ">=0.10.0" } }, + "node_modules/is-in-browser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-in-browser/-/is-in-browser-1.1.3.tgz", + "integrity": "sha512-FeXIBgG/CPGd/WUxuEyvgGTEfwiG9Z4EKGxjNMRqviiIIfsmgrpnHLffEDdwUHqNva1VEW91o3xBT/m8Elgl9g==" + }, "node_modules/is-map": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", @@ -11098,6 +11799,88 @@ "node": ">=0.10.0" } }, + "node_modules/jss": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss/-/jss-10.10.0.tgz", + "integrity": "sha512-cqsOTS7jqPsPMjtKYDUpdFC0AbhYFLTcuGRqymgmdJIeQ8cH7+AgX7YSgQy79wXloZq2VvATYxUOUQEvS1V/Zw==", + "dependencies": { + "@babel/runtime": "^7.3.1", + "csstype": "^3.0.2", + "is-in-browser": "^1.1.3", + "tiny-warning": "^1.0.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/jss" + } + }, + "node_modules/jss-plugin-camel-case": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-camel-case/-/jss-plugin-camel-case-10.10.0.tgz", + "integrity": "sha512-z+HETfj5IYgFxh1wJnUAU8jByI48ED+v0fuTuhKrPR+pRBYS2EDwbusU8aFOpCdYhtRc9zhN+PJ7iNE8pAWyPw==", + "dependencies": { + "@babel/runtime": "^7.3.1", + "hyphenate-style-name": "^1.0.3", + "jss": "10.10.0" + } + }, + "node_modules/jss-plugin-default-unit": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-default-unit/-/jss-plugin-default-unit-10.10.0.tgz", + "integrity": "sha512-SvpajxIECi4JDUbGLefvNckmI+c2VWmP43qnEy/0eiwzRUsafg5DVSIWSzZe4d2vFX1u9nRDP46WCFV/PXVBGQ==", + "dependencies": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0" + } + }, + "node_modules/jss-plugin-global": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-global/-/jss-plugin-global-10.10.0.tgz", + "integrity": "sha512-icXEYbMufiNuWfuazLeN+BNJO16Ge88OcXU5ZDC2vLqElmMybA31Wi7lZ3lf+vgufRocvPj8443irhYRgWxP+A==", + "dependencies": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0" + } + }, + "node_modules/jss-plugin-nested": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-nested/-/jss-plugin-nested-10.10.0.tgz", + "integrity": "sha512-9R4JHxxGgiZhurDo3q7LdIiDEgtA1bTGzAbhSPyIOWb7ZubrjQe8acwhEQ6OEKydzpl8XHMtTnEwHXCARLYqYA==", + "dependencies": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0", + "tiny-warning": "^1.0.2" + } + }, + "node_modules/jss-plugin-props-sort": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-props-sort/-/jss-plugin-props-sort-10.10.0.tgz", + "integrity": "sha512-5VNJvQJbnq/vRfje6uZLe/FyaOpzP/IH1LP+0fr88QamVrGJa0hpRRyAa0ea4U/3LcorJfBFVyC4yN2QC73lJg==", + "dependencies": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0" + } + }, + "node_modules/jss-plugin-rule-value-function": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.10.0.tgz", + "integrity": "sha512-uEFJFgaCtkXeIPgki8ICw3Y7VMkL9GEan6SqmT9tqpwM+/t+hxfMUdU4wQ0MtOiMNWhwnckBV0IebrKcZM9C0g==", + "dependencies": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0", + "tiny-warning": "^1.0.2" + } + }, + "node_modules/jss-plugin-vendor-prefixer": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.10.0.tgz", + "integrity": "sha512-UY/41WumgjW8r1qMCO8l1ARg7NHnfRVWRhZ2E2m0DMYsr2DD91qIXLyNhiX83hHswR7Wm4D+oDYNC1zWCJWtqg==", + "dependencies": { + "@babel/runtime": "^7.3.1", + "css-vendor": "^2.0.8", + "jss": "10.10.0" + } + }, "node_modules/jsx-ast-utils": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", @@ -12172,6 +12955,11 @@ "node": ">=4" } }, + "node_modules/popper.js": { + "version": "1.16.1-lts", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1-lts.tgz", + "integrity": "sha512-Kjw8nKRl1m+VrSFCoVGPph93W/qrSO7ZkqPpTf7F4bk/sqcfWK019dWBUpE/fBOsOQY1dks/Bmcbfn1heM/IsA==" + }, "node_modules/postcss": { "version": "8.4.21", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", @@ -13740,6 +14528,14 @@ "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz", "integrity": "sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==" }, + "node_modules/react-image-gallery": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/react-image-gallery/-/react-image-gallery-1.2.11.tgz", + "integrity": "sha512-YLMCdNSCf3YPhRmnjEOdEZGEXghTMx4o3dlAqd0rz0nAyebUvTz/xJnIHPActbPSHCvVJgt5A09EPHYbGqw++w==", + "peerDependencies": { + "react": "^16.0.0 || ^17.0.0 || ^18.0.0" + } + }, "node_modules/react-is": { "version": "17.0.2", "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", @@ -13825,6 +14621,21 @@ } } }, + "node_modules/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", + "dependencies": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": ">=16.6.0", + "react-dom": ">=16.6.0" + } + }, "node_modules/read-cache": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", @@ -14920,6 +15731,11 @@ "postcss": "^8.2.15" } }, + "node_modules/stylis": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.1.3.tgz", + "integrity": "sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==" + }, "node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -15250,6 +16066,11 @@ "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" }, + "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==" + }, "node_modules/tmpl": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", @@ -17952,14 +18773,137 @@ "@csstools/postcss-unset-value": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", - "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", - "requires": {} + "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==" }, "@csstools/selector-specificity": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.1.1.tgz", - "integrity": "sha512-jwx+WCqszn53YHOfvFMJJRd/B2GqkCBt+1MJSG6o5/s8+ytHMvDZXsJgUEWLk12UnLd7HYKac4BYU5i/Ron1Cw==", - "requires": {} + "integrity": "sha512-jwx+WCqszn53YHOfvFMJJRd/B2GqkCBt+1MJSG6o5/s8+ytHMvDZXsJgUEWLk12UnLd7HYKac4BYU5i/Ron1Cw==" + }, + "@emotion/babel-plugin": { + "version": "11.10.6", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.10.6.tgz", + "integrity": "sha512-p2dAqtVrkhSa7xz1u/m9eHYdLi+en8NowrmXeF/dKtJpU8lCWli8RUAati7NcSl0afsBott48pdnANuD0wh9QQ==", + "requires": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/runtime": "^7.18.3", + "@emotion/hash": "^0.9.0", + "@emotion/memoize": "^0.8.0", + "@emotion/serialize": "^1.1.1", + "babel-plugin-macros": "^3.1.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "4.1.3" + }, + "dependencies": { + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" + } + } + }, + "@emotion/cache": { + "version": "11.10.5", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.10.5.tgz", + "integrity": "sha512-dGYHWyzTdmK+f2+EnIGBpkz1lKc4Zbj2KHd4cX3Wi8/OWr5pKslNjc3yABKH4adRGCvSX4VDC0i04mrrq0aiRA==", + "requires": { + "@emotion/memoize": "^0.8.0", + "@emotion/sheet": "^1.2.1", + "@emotion/utils": "^1.2.0", + "@emotion/weak-memoize": "^0.3.0", + "stylis": "4.1.3" + } + }, + "@emotion/hash": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.0.tgz", + "integrity": "sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ==" + }, + "@emotion/is-prop-valid": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.0.tgz", + "integrity": "sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg==", + "requires": { + "@emotion/memoize": "^0.8.0" + } + }, + "@emotion/memoize": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.0.tgz", + "integrity": "sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==" + }, + "@emotion/react": { + "version": "11.10.6", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.10.6.tgz", + "integrity": "sha512-6HT8jBmcSkfzO7mc+N1L9uwvOnlcGoix8Zn7srt+9ga0MjREo6lRpuVX0kzo6Jp6oTqDhREOFsygN6Ew4fEQbw==", + "requires": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.10.6", + "@emotion/cache": "^11.10.5", + "@emotion/serialize": "^1.1.1", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.0", + "@emotion/utils": "^1.2.0", + "@emotion/weak-memoize": "^0.3.0", + "hoist-non-react-statics": "^3.3.1" + } + }, + "@emotion/serialize": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.1.tgz", + "integrity": "sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA==", + "requires": { + "@emotion/hash": "^0.9.0", + "@emotion/memoize": "^0.8.0", + "@emotion/unitless": "^0.8.0", + "@emotion/utils": "^1.2.0", + "csstype": "^3.0.2" + } + }, + "@emotion/sheet": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.1.tgz", + "integrity": "sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA==" + }, + "@emotion/styled": { + "version": "11.10.6", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.10.6.tgz", + "integrity": "sha512-OXtBzOmDSJo5Q0AFemHCfl+bUueT8BIcPSxu0EGTpGk6DmI5dnhSzQANm1e1ze0YZL7TDyAyy6s/b/zmGOS3Og==", + "requires": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.10.6", + "@emotion/is-prop-valid": "^1.2.0", + "@emotion/serialize": "^1.1.1", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.0", + "@emotion/utils": "^1.2.0" + } + }, + "@emotion/unitless": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.0.tgz", + "integrity": "sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==" + }, + "@emotion/use-insertion-effect-with-fallbacks": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.0.tgz", + "integrity": "sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A==" + }, + "@emotion/utils": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.0.tgz", + "integrity": "sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw==" + }, + "@emotion/weak-memoize": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.0.tgz", + "integrity": "sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==" }, "@eslint/eslintrc": { "version": "2.0.0", @@ -18576,6 +19520,222 @@ "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" }, + "@material-ui/core": { + "version": "4.12.4", + "resolved": "https://registry.npmjs.org/@material-ui/core/-/core-4.12.4.tgz", + "integrity": "sha512-tr7xekNlM9LjA6pagJmL8QCgZXaubWUwkJnoYcMKd4gw/t4XiyvnTkjdGrUVicyB2BsdaAv1tvow45bPM4sSwQ==", + "requires": { + "@babel/runtime": "^7.4.4", + "@material-ui/styles": "^4.11.5", + "@material-ui/system": "^4.12.2", + "@material-ui/types": "5.1.0", + "@material-ui/utils": "^4.11.3", + "@types/react-transition-group": "^4.2.0", + "clsx": "^1.0.4", + "hoist-non-react-statics": "^3.3.2", + "popper.js": "1.16.1-lts", + "prop-types": "^15.7.2", + "react-is": "^16.8.0 || ^17.0.0", + "react-transition-group": "^4.4.0" + } + }, + "@material-ui/icons": { + "version": "4.11.3", + "resolved": "https://registry.npmjs.org/@material-ui/icons/-/icons-4.11.3.tgz", + "integrity": "sha512-IKHlyx6LDh8n19vzwH5RtHIOHl9Tu90aAAxcbWME6kp4dmvODM3UvOHJeMIDzUbd4muuJKHmlNoBN+mDY4XkBA==", + "requires": { + "@babel/runtime": "^7.4.4" + } + }, + "@material-ui/styles": { + "version": "4.11.5", + "resolved": "https://registry.npmjs.org/@material-ui/styles/-/styles-4.11.5.tgz", + "integrity": "sha512-o/41ot5JJiUsIETME9wVLAJrmIWL3j0R0Bj2kCOLbSfqEkKf0fmaPt+5vtblUh5eXr2S+J/8J3DaCb10+CzPGA==", + "requires": { + "@babel/runtime": "^7.4.4", + "@emotion/hash": "^0.8.0", + "@material-ui/types": "5.1.0", + "@material-ui/utils": "^4.11.3", + "clsx": "^1.0.4", + "csstype": "^2.5.2", + "hoist-non-react-statics": "^3.3.2", + "jss": "^10.5.1", + "jss-plugin-camel-case": "^10.5.1", + "jss-plugin-default-unit": "^10.5.1", + "jss-plugin-global": "^10.5.1", + "jss-plugin-nested": "^10.5.1", + "jss-plugin-props-sort": "^10.5.1", + "jss-plugin-rule-value-function": "^10.5.1", + "jss-plugin-vendor-prefixer": "^10.5.1", + "prop-types": "^15.7.2" + }, + "dependencies": { + "@emotion/hash": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", + "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==" + }, + "csstype": { + "version": "2.6.21", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.21.tgz", + "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==" + } + } + }, + "@material-ui/system": { + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@material-ui/system/-/system-4.12.2.tgz", + "integrity": "sha512-6CSKu2MtmiJgcCGf6nBQpM8fLkuB9F55EKfbdTC80NND5wpTmKzwdhLYLH3zL4cLlK0gVaaltW7/wMuyTnN0Lw==", + "requires": { + "@babel/runtime": "^7.4.4", + "@material-ui/utils": "^4.11.3", + "csstype": "^2.5.2", + "prop-types": "^15.7.2" + }, + "dependencies": { + "csstype": { + "version": "2.6.21", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.21.tgz", + "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==" + } + } + }, + "@material-ui/types": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@material-ui/types/-/types-5.1.0.tgz", + "integrity": "sha512-7cqRjrY50b8QzRSYyhSpx4WRw2YuO0KKIGQEVk5J8uoz2BanawykgZGoWEqKm7pVIbzFDN0SpPcVV4IhOFkl8A==" + }, + "@material-ui/utils": { + "version": "4.11.3", + "resolved": "https://registry.npmjs.org/@material-ui/utils/-/utils-4.11.3.tgz", + "integrity": "sha512-ZuQPV4rBK/V1j2dIkSSEcH5uT6AaHuKWFfotADHsC0wVL1NLd2WkFCm4ZZbX33iO4ydl6V0GPngKm8HZQ2oujg==", + "requires": { + "@babel/runtime": "^7.4.4", + "prop-types": "^15.7.2", + "react-is": "^16.8.0 || ^17.0.0" + } + }, + "@mui/base": { + "version": "5.0.0-alpha.119", + "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.119.tgz", + "integrity": "sha512-XA5zhlYfXi67u613eIF0xRmktkatx6ERy3h+PwrMN5IcWFbgiL1guz8VpdXON+GWb8+G7B8t5oqTFIaCqaSAeA==", + "requires": { + "@babel/runtime": "^7.21.0", + "@emotion/is-prop-valid": "^1.2.0", + "@mui/types": "^7.2.3", + "@mui/utils": "^5.11.11", + "@popperjs/core": "^2.11.6", + "clsx": "^1.2.1", + "prop-types": "^15.8.1", + "react-is": "^18.2.0" + }, + "dependencies": { + "react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + } + } + }, + "@mui/core-downloads-tracker": { + "version": "5.11.12", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.11.12.tgz", + "integrity": "sha512-LHh8HZQ5nPVcW5QnyLwkAZ40txc/S2bzKMQ3bTO+5mjuwAJ2AzQrjZINLVy1geY7ei1pHXVqO1hcWHg/QdT44w==" + }, + "@mui/icons-material": { + "version": "5.11.11", + "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.11.11.tgz", + "integrity": "sha512-Eell3ADmQVE8HOpt/LZ3zIma8JSvPh3XgnhwZLT0k5HRqZcd6F/QDHc7xsWtgz09t+UEFvOYJXjtrwKmLdwwpw==", + "requires": { + "@babel/runtime": "^7.21.0" + } + }, + "@mui/material": { + "version": "5.11.12", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.11.12.tgz", + "integrity": "sha512-M6BiIeJjySeEzWeiFJQ9pIjJy6mx5mHPWeMT99wjQdAmA2GxCQhE9A0fh6jQP4jMmYzxhOIhjsGcp0vSdpseXg==", + "requires": { + "@babel/runtime": "^7.21.0", + "@mui/base": "5.0.0-alpha.119", + "@mui/core-downloads-tracker": "^5.11.12", + "@mui/system": "^5.11.12", + "@mui/types": "^7.2.3", + "@mui/utils": "^5.11.12", + "@types/react-transition-group": "^4.4.5", + "clsx": "^1.2.1", + "csstype": "^3.1.1", + "prop-types": "^15.8.1", + "react-is": "^18.2.0", + "react-transition-group": "^4.4.5" + }, + "dependencies": { + "react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + } + } + }, + "@mui/private-theming": { + "version": "5.11.12", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.11.12.tgz", + "integrity": "sha512-hnJ0svNI1TPeWZ18E6DvES8PB4NyMLwal6EyXf69rTrYqT6wZPLjB+HiCYfSOCqU/fwArhupSqIIkQpDs8CkAw==", + "requires": { + "@babel/runtime": "^7.21.0", + "@mui/utils": "^5.11.12", + "prop-types": "^15.8.1" + } + }, + "@mui/styled-engine": { + "version": "5.11.11", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.11.11.tgz", + "integrity": "sha512-wV0UgW4lN5FkDBXefN8eTYeuE9sjyQdg5h94vtwZCUamGQEzmCOtir4AakgmbWMy0x8OLjdEUESn9wnf5J9MOg==", + "requires": { + "@babel/runtime": "^7.21.0", + "@emotion/cache": "^11.10.5", + "csstype": "^3.1.1", + "prop-types": "^15.8.1" + } + }, + "@mui/system": { + "version": "5.11.12", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.11.12.tgz", + "integrity": "sha512-sYjsXkiwKpZDC3aS6O/6KTjji0jGINLQcrD5EJ5NTkIDiLf19I4HJhnufgKqlTWNfoDBlRohuTf3TzfM06c4ug==", + "requires": { + "@babel/runtime": "^7.21.0", + "@mui/private-theming": "^5.11.12", + "@mui/styled-engine": "^5.11.11", + "@mui/types": "^7.2.3", + "@mui/utils": "^5.11.12", + "clsx": "^1.2.1", + "csstype": "^3.1.1", + "prop-types": "^15.8.1" + } + }, + "@mui/types": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.3.tgz", + "integrity": "sha512-tZ+CQggbe9Ol7e/Fs5RcKwg/woU+o8DCtOnccX6KmbBc7YrfqMYEYuaIcXHuhpT880QwNkZZ3wQwvtlDFA2yOw==" + }, + "@mui/utils": { + "version": "5.11.12", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.11.12.tgz", + "integrity": "sha512-5vH9B/v8pzkpEPO2HvGM54ToXV6cFdAn8UrvdN8TMEEwpn/ycW0jLiyBcgUlPsQ+xha7hqXCPQYHaYFDIcwaiw==", + "requires": { + "@babel/runtime": "^7.21.0", + "@types/prop-types": "^15.7.5", + "@types/react-is": "^16.7.1 || ^17.0.0", + "prop-types": "^15.8.1", + "react-is": "^18.2.0" + }, + "dependencies": { + "react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + } + } + }, "@nicolo-ribaudo/eslint-scope-5-internals": { "version": "5.1.1-v1", "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", @@ -18639,6 +19799,11 @@ "source-map": "^0.7.3" } }, + "@popperjs/core": { + "version": "2.11.6", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", + "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==" + }, "@rollup/plugin-babel": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", @@ -19077,6 +20242,31 @@ "@types/react": "*" } }, + "@types/react-image-gallery": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@types/react-image-gallery/-/react-image-gallery-1.2.0.tgz", + "integrity": "sha512-y5OEficUWcnGEc6KvflRXgvhtaMSsDH6JGT3/SJs0FV/RgtKuIgrUpGbDw5MdzyUwe/D8sJTo+aw8NOkaX0nIA==", + "dev": true, + "requires": { + "@types/react": "*" + } + }, + "@types/react-is": { + "version": "17.0.3", + "resolved": "https://registry.npmjs.org/@types/react-is/-/react-is-17.0.3.tgz", + "integrity": "sha512-aBTIWg1emtu95bLTLx0cpkxwGW3ueZv71nE2YFBpL8k/z5czEW8yYpOo8Dp+UUAFAtKwNaOsh/ioSeQnWlZcfw==", + "requires": { + "@types/react": "*" + } + }, + "@types/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==", + "requires": { + "@types/react": "*" + } + }, "@types/resolve": { "version": "1.17.1", "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", @@ -19450,14 +20640,12 @@ "acorn-import-assertions": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "requires": {} + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==" }, "acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "requires": {} + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==" }, "acorn-node": { "version": "1.8.2", @@ -19543,8 +20731,7 @@ "ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "requires": {} + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==" }, "ansi-escapes": { "version": "4.3.2", @@ -19845,8 +21032,7 @@ "babel-plugin-named-asset-import": { "version": "0.3.8", "resolved": "https://registry.npmjs.org/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.8.tgz", - "integrity": "sha512-WXiAc++qo7XcJ1ZnTYGtLxmBCVbddAml3CEXgWaBzNzLNoxtQ8AiGEFDMOhot9XjTCQbvP5E77Fj9Gk924f00Q==", - "requires": {} + "integrity": "sha512-WXiAc++qo7XcJ1ZnTYGtLxmBCVbddAml3CEXgWaBzNzLNoxtQ8AiGEFDMOhot9XjTCQbvP5E77Fj9Gk924f00Q==" }, "babel-plugin-polyfill-corejs2": { "version": "0.3.3", @@ -20232,6 +21418,11 @@ "wrap-ansi": "^7.0.0" } }, + "clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==" + }, "co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", @@ -20449,8 +21640,7 @@ "css-declaration-sorter": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", - "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", - "requires": {} + "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==" }, "css-has-pseudo": { "version": "3.0.4", @@ -20533,8 +21723,7 @@ "css-prefers-color-scheme": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", - "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", - "requires": {} + "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==" }, "css-select": { "version": "4.3.0", @@ -20569,6 +21758,15 @@ } } }, + "css-vendor": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/css-vendor/-/css-vendor-2.0.8.tgz", + "integrity": "sha512-x9Aq0XTInxrkuFeHKbYC7zWY8ai7qJ04Kxd9MnvbC1uO5DagxoHQjm4JvG+vCdXOoFtCjbL2XSZfxmoYa9uQVQ==", + "requires": { + "@babel/runtime": "^7.8.3", + "is-in-browser": "^1.0.2" + } + }, "css-what": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", @@ -20633,8 +21831,7 @@ "cssnano-utils": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", - "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", - "requires": {} + "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==" }, "csso": { "version": "4.2.0", @@ -20895,6 +22092,15 @@ "utila": "~0.4" } }, + "dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "requires": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, "dom-serializer": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", @@ -21019,6 +22225,22 @@ "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" }, + "env-cmd": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/env-cmd/-/env-cmd-10.1.0.tgz", + "integrity": "sha512-mMdWTT9XKN7yNth/6N6g2GuKuJTsKMDHlQFUDacb/heQRRWOTIZ42t1rMHnQu4jYxU1ajdTeJM+9eEETlqToMA==", + "requires": { + "commander": "^4.0.0", + "cross-spawn": "^7.0.0" + }, + "dependencies": { + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==" + } + } + }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -21523,8 +22745,7 @@ "eslint-plugin-react-hooks": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", - "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", - "requires": {} + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==" }, "eslint-plugin-testing-library": { "version": "5.10.2", @@ -21942,6 +23163,11 @@ "pkg-dir": "^4.1.0" } }, + "find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" + }, "find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", @@ -22362,6 +23588,21 @@ "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" }, + "hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "requires": { + "react-is": "^16.7.0" + }, + "dependencies": { + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + } + } + }, "hoopy": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz", @@ -22535,6 +23776,11 @@ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==" }, + "hyphenate-style-name": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz", + "integrity": "sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==" + }, "iconv-lite": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", @@ -22546,8 +23792,7 @@ "icss-utils": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "requires": {} + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==" }, "idb": { "version": "7.1.1", @@ -22734,6 +23979,11 @@ "is-extglob": "^2.1.1" } }, + "is-in-browser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-in-browser/-/is-in-browser-1.1.3.tgz", + "integrity": "sha512-FeXIBgG/CPGd/WUxuEyvgGTEfwiG9Z4EKGxjNMRqviiIIfsmgrpnHLffEDdwUHqNva1VEW91o3xBT/m8Elgl9g==" + }, "is-map": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", @@ -23634,8 +24884,7 @@ "jest-pnp-resolver": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "requires": {} + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==" }, "jest-regex-util": { "version": "27.5.1", @@ -24491,6 +25740,84 @@ "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz", "integrity": "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==" }, + "jss": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss/-/jss-10.10.0.tgz", + "integrity": "sha512-cqsOTS7jqPsPMjtKYDUpdFC0AbhYFLTcuGRqymgmdJIeQ8cH7+AgX7YSgQy79wXloZq2VvATYxUOUQEvS1V/Zw==", + "requires": { + "@babel/runtime": "^7.3.1", + "csstype": "^3.0.2", + "is-in-browser": "^1.1.3", + "tiny-warning": "^1.0.2" + } + }, + "jss-plugin-camel-case": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-camel-case/-/jss-plugin-camel-case-10.10.0.tgz", + "integrity": "sha512-z+HETfj5IYgFxh1wJnUAU8jByI48ED+v0fuTuhKrPR+pRBYS2EDwbusU8aFOpCdYhtRc9zhN+PJ7iNE8pAWyPw==", + "requires": { + "@babel/runtime": "^7.3.1", + "hyphenate-style-name": "^1.0.3", + "jss": "10.10.0" + } + }, + "jss-plugin-default-unit": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-default-unit/-/jss-plugin-default-unit-10.10.0.tgz", + "integrity": "sha512-SvpajxIECi4JDUbGLefvNckmI+c2VWmP43qnEy/0eiwzRUsafg5DVSIWSzZe4d2vFX1u9nRDP46WCFV/PXVBGQ==", + "requires": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0" + } + }, + "jss-plugin-global": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-global/-/jss-plugin-global-10.10.0.tgz", + "integrity": "sha512-icXEYbMufiNuWfuazLeN+BNJO16Ge88OcXU5ZDC2vLqElmMybA31Wi7lZ3lf+vgufRocvPj8443irhYRgWxP+A==", + "requires": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0" + } + }, + "jss-plugin-nested": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-nested/-/jss-plugin-nested-10.10.0.tgz", + "integrity": "sha512-9R4JHxxGgiZhurDo3q7LdIiDEgtA1bTGzAbhSPyIOWb7ZubrjQe8acwhEQ6OEKydzpl8XHMtTnEwHXCARLYqYA==", + "requires": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0", + "tiny-warning": "^1.0.2" + } + }, + "jss-plugin-props-sort": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-props-sort/-/jss-plugin-props-sort-10.10.0.tgz", + "integrity": "sha512-5VNJvQJbnq/vRfje6uZLe/FyaOpzP/IH1LP+0fr88QamVrGJa0hpRRyAa0ea4U/3LcorJfBFVyC4yN2QC73lJg==", + "requires": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0" + } + }, + "jss-plugin-rule-value-function": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.10.0.tgz", + "integrity": "sha512-uEFJFgaCtkXeIPgki8ICw3Y7VMkL9GEan6SqmT9tqpwM+/t+hxfMUdU4wQ0MtOiMNWhwnckBV0IebrKcZM9C0g==", + "requires": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0", + "tiny-warning": "^1.0.2" + } + }, + "jss-plugin-vendor-prefixer": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.10.0.tgz", + "integrity": "sha512-UY/41WumgjW8r1qMCO8l1ARg7NHnfRVWRhZ2E2m0DMYsr2DD91qIXLyNhiX83hHswR7Wm4D+oDYNC1zWCJWtqg==", + "requires": { + "@babel/runtime": "^7.3.1", + "css-vendor": "^2.0.8", + "jss": "10.10.0" + } + }, "jsx-ast-utils": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", @@ -25270,6 +26597,11 @@ } } }, + "popper.js": { + "version": "1.16.1-lts", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1-lts.tgz", + "integrity": "sha512-Kjw8nKRl1m+VrSFCoVGPph93W/qrSO7ZkqPpTf7F4bk/sqcfWK019dWBUpE/fBOsOQY1dks/Bmcbfn1heM/IsA==" + }, "postcss": { "version": "8.4.21", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", @@ -25291,8 +26623,7 @@ "postcss-browser-comments": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/postcss-browser-comments/-/postcss-browser-comments-4.0.0.tgz", - "integrity": "sha512-X9X9/WN3KIvY9+hNERUqX9gncsgBA25XaeR+jshHz2j8+sYyHktHw1JdKuMjeLpGktXidqDhA7b/qm1mrBDmgg==", - "requires": {} + "integrity": "sha512-X9X9/WN3KIvY9+hNERUqX9gncsgBA25XaeR+jshHz2j8+sYyHktHw1JdKuMjeLpGktXidqDhA7b/qm1mrBDmgg==" }, "postcss-calc": { "version": "8.2.4", @@ -25390,26 +26721,22 @@ "postcss-discard-comments": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", - "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", - "requires": {} + "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==" }, "postcss-discard-duplicates": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", - "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", - "requires": {} + "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==" }, "postcss-discard-empty": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", - "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", - "requires": {} + "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==" }, "postcss-discard-overridden": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", - "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", - "requires": {} + "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==" }, "postcss-double-position-gradients": { "version": "3.1.2", @@ -25431,8 +26758,7 @@ "postcss-flexbugs-fixes": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-5.0.2.tgz", - "integrity": "sha512-18f9voByak7bTktR2QgDveglpn9DTbBWPUzSOe9g0N4WR/2eSt6Vrcbf0hmspvMI6YWGywz6B9f7jzpFNJJgnQ==", - "requires": {} + "integrity": "sha512-18f9voByak7bTktR2QgDveglpn9DTbBWPUzSOe9g0N4WR/2eSt6Vrcbf0hmspvMI6YWGywz6B9f7jzpFNJJgnQ==" }, "postcss-focus-visible": { "version": "6.0.4", @@ -25453,14 +26779,12 @@ "postcss-font-variant": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", - "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", - "requires": {} + "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==" }, "postcss-gap-properties": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", - "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", - "requires": {} + "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==" }, "postcss-image-set-function": { "version": "4.0.7", @@ -25483,8 +26807,7 @@ "postcss-initial": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", - "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", - "requires": {} + "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==" }, "postcss-js": { "version": "4.0.1", @@ -25525,14 +26848,12 @@ "postcss-logical": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", - "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", - "requires": {} + "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==" }, "postcss-media-minmax": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", - "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", - "requires": {} + "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==" }, "postcss-merge-longhand": { "version": "5.1.7", @@ -25593,8 +26914,7 @@ "postcss-modules-extract-imports": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "requires": {} + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==" }, "postcss-modules-local-by-default": { "version": "4.0.0", @@ -25652,8 +26972,7 @@ "postcss-normalize-charset": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", - "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", - "requires": {} + "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==" }, "postcss-normalize-display-values": { "version": "5.1.0", @@ -25724,8 +27043,7 @@ "postcss-opacity-percentage": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.3.tgz", - "integrity": "sha512-An6Ba4pHBiDtyVpSLymUUERMo2cU7s+Obz6BTrS+gxkbnSBNKSuD0AVUc+CpBMrpVPKKfoVz0WQCX+Tnst0i4A==", - "requires": {} + "integrity": "sha512-An6Ba4pHBiDtyVpSLymUUERMo2cU7s+Obz6BTrS+gxkbnSBNKSuD0AVUc+CpBMrpVPKKfoVz0WQCX+Tnst0i4A==" }, "postcss-ordered-values": { "version": "5.1.3", @@ -25747,8 +27065,7 @@ "postcss-page-break": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", - "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", - "requires": {} + "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==" }, "postcss-place": { "version": "7.0.5", @@ -25842,8 +27159,7 @@ "postcss-replace-overflow-wrap": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", - "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", - "requires": {} + "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==" }, "postcss-selector-not": { "version": "6.0.1", @@ -26221,6 +27537,11 @@ "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz", "integrity": "sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==" }, + "react-image-gallery": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/react-image-gallery/-/react-image-gallery-1.2.11.tgz", + "integrity": "sha512-YLMCdNSCf3YPhRmnjEOdEZGEXghTMx4o3dlAqd0rz0nAyebUvTz/xJnIHPActbPSHCvVJgt5A09EPHYbGqw++w==" + }, "react-is": { "version": "17.0.2", "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", @@ -26286,6 +27607,17 @@ "workbox-webpack-plugin": "^6.4.1" } }, + "react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", + "requires": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + } + }, "read-cache": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", @@ -27074,8 +28406,7 @@ "style-loader": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.1.tgz", - "integrity": "sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==", - "requires": {} + "integrity": "sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==" }, "stylehacks": { "version": "5.1.1", @@ -27086,6 +28417,11 @@ "postcss-selector-parser": "^6.0.4" } }, + "stylis": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.1.3.tgz", + "integrity": "sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==" + }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -27333,6 +28669,11 @@ "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" }, + "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==" + }, "tmpl": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", @@ -27844,8 +29185,7 @@ "ws": { "version": "8.12.1", "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", - "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", - "requires": {} + "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==" } } }, @@ -28303,8 +29643,7 @@ "ws": { "version": "7.5.9", "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "requires": {} + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==" }, "xml-name-validator": { "version": "3.0.0", diff --git a/package.json b/package.json index ce1fe37..50d9b45 100644 --- a/package.json +++ b/package.json @@ -3,12 +3,20 @@ "version": "0.1.0", "private": true, "dependencies": { + "@emotion/react": "^11.10.6", + "@emotion/styled": "^11.10.6", + "@material-ui/core": "^4.12.4", + "@material-ui/icons": "^4.11.3", + "@mui/icons-material": "^5.11.11", + "@mui/material": "^5.11.12", "@types/jest": "^27.5.2", "@types/node": "^16.18.14", "@types/react": "^18.0.28", "@types/react-dom": "^18.0.11", + "env-cmd": "^10.1.0", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-image-gallery": "^1.2.11", "react-scripts": "5.0.1", "typescript": "^4.9.5", "web-vitals": "^2.1.4" @@ -17,7 +25,10 @@ "start": "react-scripts start", "build": "react-scripts build", "test": "react-scripts test", - "eject": "react-scripts eject" + "eject": "react-scripts eject", + "build:local": "env-cmd -f .env.local npm run build", + "build:hope-fly": "env-cmd -f .env.hope-fly npm run build", + "postbuild:local": "cp -vrRT ./build/. /opt/lampp/htdocs/gallery/" }, "eslintConfig": { "extends": [ @@ -37,7 +48,9 @@ "last 1 safari version" ] }, + "homepage": "./", "devDependencies": { + "@types/react-image-gallery": "^1.2.0", "tailwindcss": "^3.2.7" } } diff --git a/public/.htaccess b/public/.htaccess new file mode 100644 index 0000000..1cccaa1 --- /dev/null +++ b/public/.htaccess @@ -0,0 +1,4 @@ +Options -MultiViews + RewriteEngine On + RewriteCond %{REQUEST_FILENAME} !-f + RewriteRule ^ index.html [QSA,L] \ No newline at end of file diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..3082da14b797c529f2ca49cc3e425760a16b3db1 GIT binary patch literal 171686 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

ki)OnDGGs zjDRH6OkQJb9@`a3hkhW^*4^i)we`0XTPMo)PlG_BQl@0EHuve?VRw;b3J!FLSepK0 zPI(^yMnGzXtcuMJ*VP3;IeYsWXdIs$Pih|mp!HG-5oS@matnc75p1x(%SI~E$>kEf z?*xI=-0E9Wv-({ne_35bm!4S|D zxeAooay2$ZKO)lJ8uFX<%P`Xx0AOzHYq4TAzMih^1F-!cCZ4~l zap1OSN2tHaOb{61+MaF$AXw2tUu_Ejw)IX{D>S#bO|<|>iogIsu)@`i1Gh!lZ`f~2 zzMjB70L0c~rv)oVK~>b)tnC)ueDoa1vB~K5Fku8J5N+rCl^Yr!)><+R?&9Z zPEH>|v~}yY{Cz`!1OOn-b~}&L&;HLJvdQjph@!u>v(ai|7>1?@g1BlZ4zK`*=NS~6 zSuS8rNstu9T5NWw%hw$A**Mn3P$UU(bufGgfaL5}6JfRrjD`#Y0HiEMGpv~xo&H9j z({6LvcoRv{)YWhf9}WSEvsoF+ccW-cNoqyY5Fn%}005L|w^^(XpU-76^P<(lnN7^4 zpDsR}1xU`yQIzYZ*t4F_7fZ4%%jK=h8I4>H0L*r$&BBRJr_*5<1wjxv_A=YTzL1Xq z0HDmAi3G|k_DYgeEXlde)o`Y)>AH?E0DziE5fp7=IYG2p1ku~t>a&^{nx-zNWB9-a z5TwaO0|3RFora<7MpY>m@`Y4nZY8ZEj4@yX^r}LTBu&v2W473Ac2}UQyOAd^;~a6o zG)OZf0RRL=F#rG*8RNMq``E;zXy{=k>arPMc^kU#f+~ zd!aA@5bybSf*@(L6@matCY{Mb~&9MpU)|9yv54W zBuQQZgQx{SF$4fXkRLlF!36>Ux|B>8O2y=6JXDJ3S7o&DGfG zvT_{9nHZY7*yExW0K*ahKpsBB(>80HVQ6Yu%BM4#Oe&SkNfiwtgaI%hS&2~;&GHtT z)8%%#JYJ8@Ow(Joa3MkL1He%l0721*n(mgTK*-Rws#Ynb)?;Z&%B8Y$Ro8R_8-@lz zkQBw3Obq923VKD0-Q%*b3{79eMRqL!vuLVdAgH6ncqB=071F9jNmk@sGMSSksVGTu zxuOF$3{U_7XsgY_@ivdwDO#+eRkR4^3s!!*4}gu84T2z#71x-}UI4u!%aSA&3b}MT zQ zodm!(1!DKBRk@hUWfHMuUMdv|rHX-&fncXPjpD5~r_1N}xvYX{6FG_`&uMkJ4}e3U zfS{PVWWh`(M+-nHohe9#R4iRo6j>^%6-_q)01Qdm1TZ^2c8k^NZ?N-b!7A{qiT>Y_HpUGtMMY*ghYGv!#in_T8!0=9&-D0&nT~3G1!kamc z{hSnP|CY%jm`I9d>g<~c*5ot{U8`2)LM~q_W+F?`qJa^{7z1FvSX!qjlZoZ54!bDW z8avxvEJ1E%-_G7U>;vFv3J8qfQSYr`f&dBtV{90@W@vJ1GoFHBi(Hzflg3a!7xtunuXmi-kv}Cgu07iy^fjm+qcxoY}t5QB+l(Mmncu^^rishP1 z?+A)A33j_E+Pne3OW=evi=BuQys^G+!T^9PQa+c@CnC!mIi;#;I@(%XVgLewpar|b zZg&OSTU~<5#LyH;)OTHVt^l?uU;`mTuPXUiBoa%c^RlYx$S^R*001OOkrc(4EuKJg zu)*uFawdu*w>ex10J}2Ol3bSa@%3b0mW%n4qG`Iecg&L&1i@nSHZ?eS-f9y1Tq2Q?6jd(oUH?Il3}>;5R?#Zj-9C@Vn|a~ndB_V10009x~NpP z_a}fLfFvoJqFIZ>>GApe4L%#snvNOAUT6S&LWWi@6^n&TES@ULQZ6gi9snju#%!^O zqSMphb671l*D+$JO9Eg=dN!4jxdqlDv&$8a(Z*KWMo{GLy`*@fbBlmY=8`{S}99~Qd!PKBXLPpWO?gcST!C_AM&D=s{jB1fFx-SFfuSg z)v}b&BqK}9n -

Gallery

- +
+ + +
); } -export default App; \ No newline at end of file +export default App; diff --git a/src/components/AppBar.tsx b/src/components/AppBar.tsx new file mode 100644 index 0000000..1fdc6a1 --- /dev/null +++ b/src/components/AppBar.tsx @@ -0,0 +1,45 @@ +import React from 'react'; +import { createStyles, makeStyles, Theme } from '@material-ui/core/styles'; +import AppBar from '@material-ui/core/AppBar'; +import Toolbar from '@material-ui/core/Toolbar'; +import Typography from '@material-ui/core/Typography'; +import IconButton from '@material-ui/core/IconButton'; +import MenuIcon from '@material-ui/icons/Menu'; + +const useStyles = makeStyles((theme: Theme) => + createStyles({ + root: { + flexGrow: 1 + }, + menuButton: { + marginRight: theme.spacing(2) + }, + title: { + flexGrow: 1 + } + }) +); + +export default function ButtonAppBar() { + const classes = useStyles(); + + return ( +
+ + + + + + + Gallery + + + +
+ ); +} diff --git a/src/components/ImageGallery.tsx b/src/components/ImageGallery.tsx new file mode 100644 index 0000000..a148819 --- /dev/null +++ b/src/components/ImageGallery.tsx @@ -0,0 +1,49 @@ +import React, { useCallback, useMemo } from "react"; +import { createStyles, makeStyles, Theme } from "@material-ui/core/styles"; +import ImageGallery, { ReactImageGalleryItem } from "react-image-gallery"; +import "react-image-gallery/styles/css/image-gallery.css"; +import { imageGalleryItems } from "../state"; + +const useStyles = makeStyles((theme: Theme) => + createStyles({ + root: { + flexGrow: 1 + }, + thubmnail: { + backgroundColor: "red", + '&.image-gallery-thumbnail.active': { + borderColor: 'green', + }, + '&.image-gallery-thumbnail:hover': { + borderColor: 'lightgreen', + }, + } + }) +); + +export default function ImageGalleryX() +{ + const classes = useStyles(); + + const root: string = process.env.REACT_APP_WWW_ROOT!; + const uploads: string = root + 'uploads/'; + + const items = useMemo(() => { + return imageGalleryItems.map((item: ReactImageGalleryItem) => { + const newItem = { ...item }; + newItem.original = uploads + newItem.original; + newItem.thumbnailClass = classes.thubmnail; + return newItem; + }); + }, [classes.thubmnail]); + + return ( +
+ +
+ ); +} diff --git a/src/gallery.json b/src/gallery.json new file mode 100644 index 0000000..f5d4fc9 --- /dev/null +++ b/src/gallery.json @@ -0,0 +1,43 @@ +[ + { + "original": "IMG_20230217_161150_331.jpg", + "thumbnail": "" + }, + { + "original": "IMG_20230218_182608_079.jpg", + "thumbnail": "" + }, + { + "original": "IMG_20230218_182625_867.jpg", + "thumbnail": "" + }, + { + "original": "IMG_20230218_184359_940.jpg", + "thumbnail": "" + }, + { + "original": "IMG_20230218_184429_386.jpg", + "thumbnail": "" + }, + { + "original": "IMG_20230305_164907_552.jpg", + "thumbnail": "" + }, + { + "original": "IMG_20230305_164913_285.jpg", + "thumbnail": "" + }, + { + "original": "IMG_20230305_164919_797.jpg", + "thumbnail": "" + }, + { + "original": "IMG_20230305_164921_376.jpg", + "thumbnail": "" + }, + { + "original": "IMG_20230305_164923_912.jpg", + "thumbnail": "" + } +] + \ No newline at end of file diff --git a/src/state.ts b/src/state.ts new file mode 100644 index 0000000..2df6ffa --- /dev/null +++ b/src/state.ts @@ -0,0 +1,5 @@ +import { ReactImageGalleryItem } from 'react-image-gallery'; +import data from './gallery.json'; + + +export const imageGalleryItems: ReactImageGalleryItem[] = data;