From 8444c28bed76e6f79408a99a99548931b692e4d1 Mon Sep 17 00:00:00 2001 From: Deluan Date: Wed, 8 Sep 2021 22:48:29 -0400 Subject: [PATCH] Upgrade react-admin to 3.18.1 This makes the sidebar fixed when users scroll vertically. This supersedes #1024, even though it also hides the hamburger menu... --- ui/package-lock.json | 451 +++++++++++++++++++++++------------------- ui/package.json | 8 +- ui/src/layout/Menu.js | 22 ++- 3 files changed, 273 insertions(+), 208 deletions(-) diff --git a/ui/package-lock.json b/ui/package-lock.json index a84750456..a6e9d597b 100644 --- a/ui/package-lock.json +++ b/ui/package-lock.json @@ -22,10 +22,10 @@ "lodash.pick": "^4.4.0", "lodash.throttle": "^4.1.1", "prop-types": "^15.7.2", - "ra-data-json-server": "^3.17.2", - "ra-i18n-polyglot": "^3.17.2", + "ra-data-json-server": "^3.18.0", + "ra-i18n-polyglot": "^3.18.0", "react": "^17.0.2", - "react-admin": "^3.17.2", + "react-admin": "^3.18.1", "react-dom": "^17.0.2", "react-drag-listview": "^0.1.8", "react-ga": "^3.3.0", @@ -48,7 +48,7 @@ "@testing-library/user-event": "^13.2.1", "css-mediaquery": "^0.1.2", "prettier": "2.3.2", - "ra-test": "^3.17.2" + "ra-test": "^3.18.0" } }, "node_modules/@babel/code-frame": { @@ -3565,6 +3565,25 @@ "node": ">= 0.4" } }, + "node_modules/array.prototype.foreach": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array.prototype.foreach/-/array.prototype.foreach-1.0.1.tgz", + "integrity": "sha512-5/+XXc6Sq/X0nKTqrnYfckvE4tIAMEJDSkGsdBl0OC6/Kvr38PHgT6amItyCKP2Fng1Ifi3mI+1r01f0opJQdQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.5", + "es-array-method-boxes-properly": "^1.0.0", + "get-intrinsic": "^1.1.1", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/arrify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", @@ -6536,46 +6555,40 @@ } }, "node_modules/es-abstract": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", - "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", + "version": "1.18.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.6.tgz", + "integrity": "sha512-kAeIT4cku5eNLNuUKhlmtuk1/TRZvQoYccn6TO0cSVdf1kzB0T7+dYuVK9MWM7l+/53W2Q8M7N2c6MQvhXFcUQ==", "dependencies": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "get-intrinsic": "^1.1.1", + "get-symbol-description": "^1.0.0", "has": "^1.0.3", "has-symbols": "^1.0.2", - "is-callable": "^1.2.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.4", "is-negative-zero": "^2.0.1", - "is-regex": "^1.1.2", - "is-string": "^1.0.5", - "object-inspect": "^1.9.0", + "is-regex": "^1.1.4", + "is-string": "^1.0.7", + "object-inspect": "^1.11.0", "object-keys": "^1.1.1", "object.assign": "^4.1.2", "string.prototype.trimend": "^1.0.4", "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.0" + "unbox-primitive": "^1.0.1" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-abstract/node_modules/has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-abstract/node_modules/is-callable": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", - "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", - "engines": { - "node": ">= 0.4" - } + "node_modules/es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==" }, "node_modules/es-to-primitive": { "version": "1.2.1", @@ -8045,14 +8058,6 @@ "node": ">=4.0" } }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dependencies": { - "is-callable": "^1.1.3" - } - }, "node_modules/for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -8477,6 +8482,21 @@ "node": ">=6" } }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", @@ -8618,11 +8638,28 @@ } }, "node_modules/has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-value": { @@ -9498,11 +9535,14 @@ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, "node_modules/is-callable": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-ci": { @@ -9752,23 +9792,18 @@ "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" }, "node_modules/is-regex": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", - "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dependencies": { "call-bind": "^1.0.2", - "has-symbols": "^1.0.2" + "has-tostringtag": "^1.0.0" }, "engines": { "node": ">= 0.4" - } - }, - "node_modules/is-regex/node_modules/has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", - "engines": { - "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-regexp": { @@ -9801,11 +9836,17 @@ } }, "node_modules/is-string": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-symbol": { @@ -12201,13 +12242,14 @@ } }, "node_modules/node-polyglot": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/node-polyglot/-/node-polyglot-2.4.0.tgz", - "integrity": "sha512-KRzKwzMWm3wSAjOSop7/WwNyzaMkCe9ddkwXTQsIZEJmvEnqy/bCqLpAVw6xBszKfy4iLdYVA0d83L+cIkYPbA==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/node-polyglot/-/node-polyglot-2.4.2.tgz", + "integrity": "sha512-AgTVpQ32BQ5XPI+tFHJ9bCYxWwSLvtmEodX8ooftFhEuyCgBG6ijWulIVb7pH3THigtgvc9uLiPn0IO51KHpkg==", "dependencies": { - "for-each": "^0.3.3", + "array.prototype.foreach": "^1.0.0", "has": "^1.0.3", - "string.prototype.trim": "^1.1.2", + "object.entries": "^1.1.4", + "string.prototype.trim": "^1.2.4", "warning": "^4.0.3" } }, @@ -12350,9 +12392,12 @@ } }, "node_modules/object-inspect": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", - "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==" + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", + "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/object-is": { "version": "1.1.5", @@ -12400,14 +12445,13 @@ } }, "node_modules/object.entries": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz", - "integrity": "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", + "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", "dependencies": { - "call-bind": "^1.0.0", + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "has": "^1.0.3" + "es-abstract": "^1.18.2" }, "engines": { "node": ">= 0.4" @@ -14556,9 +14600,9 @@ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" }, "node_modules/ra-core": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/ra-core/-/ra-core-3.17.2.tgz", - "integrity": "sha512-TOVIqB/AnwP73HMqiev0ySs93B8GZZqq9mCB2tPYNms81wbD670SIISzwrkYQggMrjDulSj5IhUfpX1FYeFJ0A==", + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/ra-core/-/ra-core-3.18.0.tgz", + "integrity": "sha512-h4Pb4aosaG4ME/z8foVl40fAWrg+UiijWhSVPqjRSiaX/8eP0o8HfS0r6jviFOXfhB/ecXDUmPXCcSfp4fsjsQ==", "dependencies": { "classnames": "~2.2.5", "date-fns": "^1.29.0", @@ -14591,35 +14635,35 @@ ] }, "node_modules/ra-data-json-server": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/ra-data-json-server/-/ra-data-json-server-3.17.2.tgz", - "integrity": "sha512-P1g+lpm/TuXwZy+7NdgOC2yQdp6JX69gjwDR3OU3sgHJe9ukyUTvoPsgAl/KrpF/0VmwAZxgL/ZlQajW1rD/uQ==", + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/ra-data-json-server/-/ra-data-json-server-3.18.0.tgz", + "integrity": "sha512-fD6yiG0tcAJAj+HUVby9GIMCRSovdMhCi9FkLtsFfDUvSix48mje+8zVguVDAfD7ChM1mtUWwdbKwmOlLKSQNQ==", "dependencies": { "query-string": "^5.1.1", - "ra-core": "^3.17.2" + "ra-core": "^3.18.0" } }, "node_modules/ra-i18n-polyglot": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/ra-i18n-polyglot/-/ra-i18n-polyglot-3.17.2.tgz", - "integrity": "sha512-fHABleAxMnCDiLPvksL8JXdXi5fus+ZtWGWeQllxd2UE1cBnrn6Jf3aIBSQWoshWBSmRfB9gvA/6sMofl3uSLQ==", + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/ra-i18n-polyglot/-/ra-i18n-polyglot-3.18.0.tgz", + "integrity": "sha512-siKcAP92+Najag/q222EUpr28NCRJihjTVm+XbvIPYxbjGVNBnZbQ+2GIzolQ8ruGTZ+M30AMIx/Agph3nf1hQ==", "dependencies": { "node-polyglot": "^2.2.2", - "ra-core": "^3.17.2" + "ra-core": "^3.18.0" } }, "node_modules/ra-language-english": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/ra-language-english/-/ra-language-english-3.17.2.tgz", - "integrity": "sha512-WLsNk95K+HudFT4OWwnyiSmgjThzOXK/lKA03o9Q7KsIVh3jVUjwOoA02uyBdora2f4jRNQHTP/rhnJqWZiUew==", + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/ra-language-english/-/ra-language-english-3.18.0.tgz", + "integrity": "sha512-DEFsa/XDF3khkHO1VBd14oyKwsL44aZa1h2yWhslSZy1V3bJ6ePLs+YpamC2uAleWeHgOzmRvbQxdo4sqMuxUw==", "dependencies": { - "ra-core": "^3.17.2" + "ra-core": "^3.18.0" } }, "node_modules/ra-test": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/ra-test/-/ra-test-3.17.2.tgz", - "integrity": "sha512-UY2R+OZmolWexzLrVC9MDB/wkQzCKqi0YKg+CR/bm3Y5x1A95glpqiXjrr/xhIwhfuPDMd6WCRuw9wEbG0TE+g==", + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/ra-test/-/ra-test-3.18.0.tgz", + "integrity": "sha512-kIdTlDnuczev/2ROpFeMVt41xuFxZTDBDfidM3O3ov2MPY97EZufM0/1be6Z7XqUKE2/Ofr/MjE8vFWtYSQU7w==", "dev": true, "dependencies": { "@testing-library/react": "^11.2.3", @@ -14689,9 +14733,9 @@ } }, "node_modules/ra-ui-materialui": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/ra-ui-materialui/-/ra-ui-materialui-3.17.2.tgz", - "integrity": "sha512-UDO09OVWHo65wOvLI7iwSM3FlnvO7He/a12YEskQKv3qj4GcGRhOtSVgBWuYRoVW/AlrnZdpF/ToRTHONxH54A==", + "version": "3.18.1", + "resolved": "https://registry.npmjs.org/ra-ui-materialui/-/ra-ui-materialui-3.18.1.tgz", + "integrity": "sha512-GbvF9VAoscCfEbHQfhQj5BxVOGBwfDBTgjFa3/jazRojDniKsfZRs3mOb+YzzsdaV8ST/chEj/9UQjUzErrHCA==", "dependencies": { "autosuggest-highlight": "^3.1.1", "classnames": "~2.2.5", @@ -14880,9 +14924,9 @@ } }, "node_modules/react-admin": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/react-admin/-/react-admin-3.17.2.tgz", - "integrity": "sha512-fx+bWhVF2/H9qCjWIfmXmtN5lW+lAvwplS3RwAxAltqszv1Dz7MZWfI7GcRFt0rFqMwvaue/NuI7yvnFIOtzyQ==", + "version": "3.18.1", + "resolved": "https://registry.npmjs.org/react-admin/-/react-admin-3.18.1.tgz", + "integrity": "sha512-/4J7MdK/d9lnOp/CKGBSN46TITuXhlhD+wMQHnfjL9z/pkGTDrwJxoWM4+q9n6ZrFiBwUCpqMU6k84IhnEoZ7w==", "dependencies": { "@material-ui/core": "^4.11.2", "@material-ui/icons": "^4.11.2", @@ -14890,10 +14934,10 @@ "connected-react-router": "^6.5.2", "final-form": "^4.20.2", "final-form-arrays": "^3.0.2", - "ra-core": "^3.17.2", - "ra-i18n-polyglot": "^3.17.2", - "ra-language-english": "^3.17.2", - "ra-ui-materialui": "^3.17.2", + "ra-core": "^3.18.0", + "ra-i18n-polyglot": "^3.18.0", + "ra-language-english": "^3.18.0", + "ra-ui-materialui": "^3.18.1", "react-final-form": "^6.5.2", "react-final-form-arrays": "^3.1.3", "react-redux": "^7.1.0", @@ -17304,6 +17348,9 @@ }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/string.prototype.trimend": { @@ -18157,14 +18204,6 @@ "which-boxed-primitive": "^1.0.2" } }, - "node_modules/unbox-primitive/node_modules/has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", - "engines": { - "node": ">= 0.4" - } - }, "node_modules/unicode-canonical-property-names-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", @@ -23472,6 +23511,19 @@ "function-bind": "^1.1.1" } }, + "array.prototype.foreach": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array.prototype.foreach/-/array.prototype.foreach-1.0.1.tgz", + "integrity": "sha512-5/+XXc6Sq/X0nKTqrnYfckvE4tIAMEJDSkGsdBl0OC6/Kvr38PHgT6amItyCKP2Fng1Ifi3mI+1r01f0opJQdQ==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.5", + "es-array-method-boxes-properly": "^1.0.0", + "get-intrinsic": "^1.1.1", + "is-string": "^1.0.7" + } + }, "arrify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", @@ -26048,40 +26100,35 @@ } }, "es-abstract": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", - "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", + "version": "1.18.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.6.tgz", + "integrity": "sha512-kAeIT4cku5eNLNuUKhlmtuk1/TRZvQoYccn6TO0cSVdf1kzB0T7+dYuVK9MWM7l+/53W2Q8M7N2c6MQvhXFcUQ==", "requires": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "get-intrinsic": "^1.1.1", + "get-symbol-description": "^1.0.0", "has": "^1.0.3", "has-symbols": "^1.0.2", - "is-callable": "^1.2.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.4", "is-negative-zero": "^2.0.1", - "is-regex": "^1.1.2", - "is-string": "^1.0.5", - "object-inspect": "^1.9.0", + "is-regex": "^1.1.4", + "is-string": "^1.0.7", + "object-inspect": "^1.11.0", "object-keys": "^1.1.1", "object.assign": "^4.1.2", "string.prototype.trimend": "^1.0.4", "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.0" - }, - "dependencies": { - "has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" - }, - "is-callable": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", - "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==" - } + "unbox-primitive": "^1.0.1" } }, + "es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==" + }, "es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", @@ -27292,14 +27339,6 @@ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==" }, - "for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "requires": { - "is-callable": "^1.1.3" - } - }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -27654,6 +27693,15 @@ "pump": "^3.0.0" } }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", @@ -27765,9 +27813,17 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "requires": { + "has-symbols": "^1.0.2" + } }, "has-value": { "version": "1.0.0", @@ -28497,9 +28553,9 @@ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, "is-callable": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==" + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==" }, "is-ci": { "version": "2.0.0", @@ -28683,19 +28739,12 @@ "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" }, "is-regex": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", - "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "requires": { "call-bind": "^1.0.2", - "has-symbols": "^1.0.2" - }, - "dependencies": { - "has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" - } + "has-tostringtag": "^1.0.0" } }, "is-regexp": { @@ -28719,9 +28768,12 @@ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" }, "is-string": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==" + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "requires": { + "has-tostringtag": "^1.0.0" + } }, "is-symbol": { "version": "1.0.3", @@ -30725,13 +30777,14 @@ } }, "node-polyglot": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/node-polyglot/-/node-polyglot-2.4.0.tgz", - "integrity": "sha512-KRzKwzMWm3wSAjOSop7/WwNyzaMkCe9ddkwXTQsIZEJmvEnqy/bCqLpAVw6xBszKfy4iLdYVA0d83L+cIkYPbA==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/node-polyglot/-/node-polyglot-2.4.2.tgz", + "integrity": "sha512-AgTVpQ32BQ5XPI+tFHJ9bCYxWwSLvtmEodX8ooftFhEuyCgBG6ijWulIVb7pH3THigtgvc9uLiPn0IO51KHpkg==", "requires": { - "for-each": "^0.3.3", + "array.prototype.foreach": "^1.0.0", "has": "^1.0.3", - "string.prototype.trim": "^1.1.2", + "object.entries": "^1.1.4", + "string.prototype.trim": "^1.2.4", "warning": "^4.0.3" } }, @@ -30850,9 +30903,9 @@ } }, "object-inspect": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", - "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==" + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", + "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==" }, "object-is": { "version": "1.1.5", @@ -30888,14 +30941,13 @@ } }, "object.entries": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz", - "integrity": "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", + "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", "requires": { - "call-bind": "^1.0.0", + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "has": "^1.0.3" + "es-abstract": "^1.18.2" } }, "object.fromentries": { @@ -32666,9 +32718,9 @@ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" }, "ra-core": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/ra-core/-/ra-core-3.17.2.tgz", - "integrity": "sha512-TOVIqB/AnwP73HMqiev0ySs93B8GZZqq9mCB2tPYNms81wbD670SIISzwrkYQggMrjDulSj5IhUfpX1FYeFJ0A==", + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/ra-core/-/ra-core-3.18.0.tgz", + "integrity": "sha512-h4Pb4aosaG4ME/z8foVl40fAWrg+UiijWhSVPqjRSiaX/8eP0o8HfS0r6jviFOXfhB/ecXDUmPXCcSfp4fsjsQ==", "requires": { "classnames": "~2.2.5", "date-fns": "^1.29.0", @@ -32688,35 +32740,35 @@ } }, "ra-data-json-server": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/ra-data-json-server/-/ra-data-json-server-3.17.2.tgz", - "integrity": "sha512-P1g+lpm/TuXwZy+7NdgOC2yQdp6JX69gjwDR3OU3sgHJe9ukyUTvoPsgAl/KrpF/0VmwAZxgL/ZlQajW1rD/uQ==", + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/ra-data-json-server/-/ra-data-json-server-3.18.0.tgz", + "integrity": "sha512-fD6yiG0tcAJAj+HUVby9GIMCRSovdMhCi9FkLtsFfDUvSix48mje+8zVguVDAfD7ChM1mtUWwdbKwmOlLKSQNQ==", "requires": { "query-string": "^5.1.1", - "ra-core": "^3.17.2" + "ra-core": "^3.18.0" } }, "ra-i18n-polyglot": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/ra-i18n-polyglot/-/ra-i18n-polyglot-3.17.2.tgz", - "integrity": "sha512-fHABleAxMnCDiLPvksL8JXdXi5fus+ZtWGWeQllxd2UE1cBnrn6Jf3aIBSQWoshWBSmRfB9gvA/6sMofl3uSLQ==", + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/ra-i18n-polyglot/-/ra-i18n-polyglot-3.18.0.tgz", + "integrity": "sha512-siKcAP92+Najag/q222EUpr28NCRJihjTVm+XbvIPYxbjGVNBnZbQ+2GIzolQ8ruGTZ+M30AMIx/Agph3nf1hQ==", "requires": { "node-polyglot": "^2.2.2", - "ra-core": "^3.17.2" + "ra-core": "^3.18.0" } }, "ra-language-english": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/ra-language-english/-/ra-language-english-3.17.2.tgz", - "integrity": "sha512-WLsNk95K+HudFT4OWwnyiSmgjThzOXK/lKA03o9Q7KsIVh3jVUjwOoA02uyBdora2f4jRNQHTP/rhnJqWZiUew==", + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/ra-language-english/-/ra-language-english-3.18.0.tgz", + "integrity": "sha512-DEFsa/XDF3khkHO1VBd14oyKwsL44aZa1h2yWhslSZy1V3bJ6ePLs+YpamC2uAleWeHgOzmRvbQxdo4sqMuxUw==", "requires": { - "ra-core": "^3.17.2" + "ra-core": "^3.18.0" } }, "ra-test": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/ra-test/-/ra-test-3.17.2.tgz", - "integrity": "sha512-UY2R+OZmolWexzLrVC9MDB/wkQzCKqi0YKg+CR/bm3Y5x1A95glpqiXjrr/xhIwhfuPDMd6WCRuw9wEbG0TE+g==", + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/ra-test/-/ra-test-3.18.0.tgz", + "integrity": "sha512-kIdTlDnuczev/2ROpFeMVt41xuFxZTDBDfidM3O3ov2MPY97EZufM0/1be6Z7XqUKE2/Ofr/MjE8vFWtYSQU7w==", "dev": true, "requires": { "@testing-library/react": "^11.2.3", @@ -32763,9 +32815,9 @@ } }, "ra-ui-materialui": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/ra-ui-materialui/-/ra-ui-materialui-3.17.2.tgz", - "integrity": "sha512-UDO09OVWHo65wOvLI7iwSM3FlnvO7He/a12YEskQKv3qj4GcGRhOtSVgBWuYRoVW/AlrnZdpF/ToRTHONxH54A==", + "version": "3.18.1", + "resolved": "https://registry.npmjs.org/ra-ui-materialui/-/ra-ui-materialui-3.18.1.tgz", + "integrity": "sha512-GbvF9VAoscCfEbHQfhQj5BxVOGBwfDBTgjFa3/jazRojDniKsfZRs3mOb+YzzsdaV8ST/chEj/9UQjUzErrHCA==", "requires": { "autosuggest-highlight": "^3.1.1", "classnames": "~2.2.5", @@ -32921,9 +32973,9 @@ } }, "react-admin": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/react-admin/-/react-admin-3.17.2.tgz", - "integrity": "sha512-fx+bWhVF2/H9qCjWIfmXmtN5lW+lAvwplS3RwAxAltqszv1Dz7MZWfI7GcRFt0rFqMwvaue/NuI7yvnFIOtzyQ==", + "version": "3.18.1", + "resolved": "https://registry.npmjs.org/react-admin/-/react-admin-3.18.1.tgz", + "integrity": "sha512-/4J7MdK/d9lnOp/CKGBSN46TITuXhlhD+wMQHnfjL9z/pkGTDrwJxoWM4+q9n6ZrFiBwUCpqMU6k84IhnEoZ7w==", "requires": { "@material-ui/core": "^4.11.2", "@material-ui/icons": "^4.11.2", @@ -32931,10 +32983,10 @@ "connected-react-router": "^6.5.2", "final-form": "^4.20.2", "final-form-arrays": "^3.0.2", - "ra-core": "^3.17.2", - "ra-i18n-polyglot": "^3.17.2", - "ra-language-english": "^3.17.2", - "ra-ui-materialui": "^3.17.2", + "ra-core": "^3.18.0", + "ra-i18n-polyglot": "^3.18.0", + "ra-language-english": "^3.18.0", + "ra-ui-materialui": "^3.18.1", "react-final-form": "^6.5.2", "react-final-form-arrays": "^3.1.3", "react-redux": "^7.1.0", @@ -35684,13 +35736,6 @@ "has-bigints": "^1.0.1", "has-symbols": "^1.0.2", "which-boxed-primitive": "^1.0.2" - }, - "dependencies": { - "has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" - } } }, "unicode-canonical-property-names-ecmascript": { diff --git a/ui/package.json b/ui/package.json index ffc939cc9..b1eea443d 100644 --- a/ui/package.json +++ b/ui/package.json @@ -17,10 +17,10 @@ "lodash.pick": "^4.4.0", "lodash.throttle": "^4.1.1", "prop-types": "^15.7.2", - "ra-data-json-server": "^3.17.2", - "ra-i18n-polyglot": "^3.17.2", + "ra-data-json-server": "^3.18.0", + "ra-i18n-polyglot": "^3.18.0", "react": "^17.0.2", - "react-admin": "^3.17.2", + "react-admin": "^3.18.1", "react-dom": "^17.0.2", "react-drag-listview": "^0.1.8", "react-ga": "^3.3.0", @@ -43,7 +43,7 @@ "@testing-library/user-event": "^13.2.1", "css-mediaquery": "^0.1.2", "prettier": "2.3.2", - "ra-test": "^3.17.2" + "ra-test": "^3.18.0" }, "scripts": { "start": "react-scripts start", diff --git a/ui/src/layout/Menu.js b/ui/src/layout/Menu.js index 7a4d0fe4b..899e634c9 100644 --- a/ui/src/layout/Menu.js +++ b/ui/src/layout/Menu.js @@ -1,6 +1,7 @@ import React, { useState } from 'react' import { useSelector } from 'react-redux' import { makeStyles } from '@material-ui/core' +import clsx from 'clsx' import { useTranslate, MenuItemLink, getResources } from 'react-admin' import { withRouter } from 'react-router-dom' import ViewListIcon from '@material-ui/icons/ViewList' @@ -11,6 +12,20 @@ import albumLists from '../album/albumLists' import { HelpDialog } from '../dialogs' const useStyles = makeStyles((theme) => ({ + root: { + marginTop: theme.spacing(1), + marginBottom: theme.spacing(1), + transition: theme.transitions.create('width', { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.leavingScreen, + }), + }, + open: { + width: 200, + }, + closed: { + width: 55, + }, active: { color: theme.palette.text.primary, fontWeight: 'bold', @@ -90,7 +105,12 @@ const Menu = ({ onMenuClick, dense }) => { resource.hasList && resource.options && resource.options.subMenu === subMenu return ( -
+
handleToggle('menuAlbumList')} isOpen={state.menuAlbumList}