diff --git a/.dockerignore b/.dockerignore index 3f635e83..d317fb80 100644 --- a/.dockerignore +++ b/.dockerignore @@ -9,7 +9,7 @@ photos_path screenshots ui/node_modules/ -ui/dist/ +ui/build/ ui/.cache/ api/photo_cache diff --git a/Dockerfile b/Dockerfile index 0b47835d..f513c8e4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,8 @@ ### Build UI ### FROM --platform=${BUILDPLATFORM:-linux/amd64} node:15 as ui -ARG PHOTOVIEW_API_ENDPOINT -ENV PHOTOVIEW_API_ENDPOINT=${PHOTOVIEW_API_ENDPOINT} +ARG REACT_APP_API_ENDPOINT +ENV REACT_APP_API_ENDPOINT=${REACT_APP_API_ENDPOINT} # Set environment variable UI_PUBLIC_URL from build args, uses "/" as default ARG UI_PUBLIC_URL @@ -10,12 +10,15 @@ ENV UI_PUBLIC_URL=${UI_PUBLIC_URL:-/} ARG VERSION ENV VERSION=${VERSION:-undefined} +ENV REACT_APP_VERSION=${VERSION:-undefined} ARG BUILD_DATE ENV BUILD_DATE=${BUILD_DATE:-undefined} +ENV REACT_APP_BUILD_DATE=${BUILD_DATE:-undefined} ARG COMMIT_SHA ENV COMMIT_SHA=${COMMIT_SHA:-} +ENV REACT_APP_COMMIT_SHA=${COMMIT_SHA:-} RUN mkdir -p /app WORKDIR /app @@ -84,7 +87,7 @@ RUN apt-get purge -y curl gpg \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* -COPY --from=ui /app/dist /ui +COPY --from=ui /app/build /ui COPY --from=api /app/photoview /app/photoview ENV PHOTOVIEW_LISTEN_IP 127.0.0.1 diff --git a/ui/example.env b/ui/example.env index 015b0e05..54d0353a 100644 --- a/ui/example.env +++ b/ui/example.env @@ -1 +1 @@ -VITE_API_ENDPOINT=http://localhost:4001/ \ No newline at end of file +REACT_APP_API_ENDPOINT=http://localhost:4001/ \ No newline at end of file diff --git a/ui/package-lock.json b/ui/package-lock.json index 8ff204a8..f6756297 100644 --- a/ui/package-lock.json +++ b/ui/package-lock.json @@ -15,15 +15,27 @@ "@headlessui/react": "^1.3.0", "@react-aria/focus": "^3.4.0", "@rollup/plugin-babel": "^5.3.0", + "@types/geojson": "^7946.0.8", + "@types/jest": "^26.0.24", + "@types/mapbox-gl": "^2.3.3", + "@types/react": "^17.0.14", + "@types/react-dom": "^17.0.9", + "@types/react-helmet": "^6.1.2", + "@types/react-router-dom": "^5.1.8", + "@types/styled-components": "^5.1.11", + "@types/url-join": "^4.0.1", "autoprefixer": "^9.8.6", "babel-plugin-graphql-tag": "^3.3.0", "classnames": "^2.3.1", "connect-history-api-fallback": "^1.6.0", "copy-to-clipboard": "^3.3.1", + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-jest-dom": "^3.9.0", "fs-extra": "^10.0.0", "i18next": "^20.3.2", "mapbox-gl": "^2.3.1", "postcss": "^7.0.36", + "prettier": "^2.3.2", "prop-types": "^15.7.2", "react": "^17.0.2", "react-dom": "^17.0.2", @@ -46,20 +58,8 @@ "@testing-library/jest-dom": "^5.14.1", "@testing-library/react": "^12.0.0", "@testing-library/user-event": "^13.1.9", - "@types/geojson": "^7946.0.8", - "@types/jest": "^26.0.24", - "@types/mapbox-gl": "^2.3.3", - "@types/react": "^17.0.14", - "@types/react-dom": "^17.0.9", - "@types/react-helmet": "^6.1.2", - "@types/react-router-dom": "^5.1.8", - "@types/styled-components": "^5.1.11", - "@types/url-join": "^4.0.1", - "eslint-config-prettier": "^8.3.0", - "eslint-plugin-jest-dom": "^3.9.0", "husky": "^6.0.0", "lint-staged": "^11.0.1", - "prettier": "^2.3.2", "tsc-files": "^1.1.2" } }, @@ -2677,7 +2677,6 @@ "version": "7.28.1", "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-7.28.1.tgz", "integrity": "sha512-acv3l6kDwZkQif/YqJjstT3ks5aaI33uxGNVIQmdKzbZ2eMKgg3EV2tB84GDdc72k3Kjhl6mO8yUt6StVIdRDg==", - "dev": true, "dependencies": { "@babel/code-frame": "^7.10.4", "@babel/runtime": "^7.12.5", @@ -2696,7 +2695,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -2708,7 +2706,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "dev": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -2721,7 +2718,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "dependencies": { "color-name": "~1.1.4" }, @@ -2732,14 +2728,12 @@ "node_modules/@testing-library/dom/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/@testing-library/dom/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, "engines": { "node": ">=8" } @@ -2748,7 +2742,6 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -3033,8 +3026,7 @@ "node_modules/@types/aria-query": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-4.2.0.tgz", - "integrity": "sha512-iIgQNzCm0v7QMhhe4Jjn9uRh+I6GoPmt03CbEtwx3ao8/EfoQcmgtqH4vQ5Db/lxiIGaWDv6nwvunuh0RyX0+A==", - "dev": true + "integrity": "sha512-iIgQNzCm0v7QMhhe4Jjn9uRh+I6GoPmt03CbEtwx3ao8/EfoQcmgtqH4vQ5Db/lxiIGaWDv6nwvunuh0RyX0+A==" }, "node_modules/@types/babel__core": { "version": "7.1.15", @@ -3095,8 +3087,7 @@ "node_modules/@types/geojson": { "version": "7946.0.8", "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", - "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", - "dev": true + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==" }, "node_modules/@types/glob": { "version": "7.1.4", @@ -3118,14 +3109,12 @@ "node_modules/@types/history": { "version": "4.7.8", "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.8.tgz", - "integrity": "sha512-S78QIYirQcUoo6UJZx9CSP0O2ix9IaeAXwQi26Rhr/+mg7qqPy8TzaxHSUut7eGjL8WmLccT7/MXf304WjqHcA==", - "dev": true + "integrity": "sha512-S78QIYirQcUoo6UJZx9CSP0O2ix9IaeAXwQi26Rhr/+mg7qqPy8TzaxHSUut7eGjL8WmLccT7/MXf304WjqHcA==" }, "node_modules/@types/hoist-non-react-statics": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==", - "dev": true, "dependencies": { "@types/react": "*", "hoist-non-react-statics": "^3.3.0" @@ -3161,7 +3150,6 @@ "version": "26.0.24", "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.24.tgz", "integrity": "sha512-E/X5Vib8BWqZNRlDxj9vYXhsDwPYbPINqKF9BsnSoon4RQ0D9moEuLD8txgyypFLH7J4+Lho9Nr/c8H0Fi+17w==", - "dev": true, "dependencies": { "jest-diff": "^26.0.0", "pretty-format": "^26.0.0" @@ -3176,7 +3164,6 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/@types/mapbox-gl/-/mapbox-gl-2.3.3.tgz", "integrity": "sha512-PN7ejo+l3YSdKDTjvtvPifGX9C86NeyRTSvZEGhWb9qkc0e3/CF7gkDmTWhNmZiou7GdKsCKstSvcaZDs2NXUw==", - "dev": true, "dependencies": { "@types/geojson": "*" } @@ -3220,7 +3207,6 @@ "version": "17.0.14", "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.14.tgz", "integrity": "sha512-0WwKHUbWuQWOce61UexYuWTGuGY/8JvtUe/dtQ6lR4sZ3UiylHotJeWpf3ArP9+DSGUoLY3wbU59VyMrJps5VQ==", - "dev": true, "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -3231,7 +3217,6 @@ "version": "17.0.9", "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.9.tgz", "integrity": "sha512-wIvGxLfgpVDSAMH5utdL9Ngm5Owu0VsGmldro3ORLXV8CShrL8awVj06NuEXFQ5xyaYfdca7Sgbk/50Ri1GdPg==", - "dev": true, "dependencies": { "@types/react": "*" } @@ -3240,7 +3225,6 @@ "version": "6.1.2", "resolved": "https://registry.npmjs.org/@types/react-helmet/-/react-helmet-6.1.2.tgz", "integrity": "sha512-dcfAZNlWb5JYFbO9CGfrPWLJAyFcT6UeR3u35eBbv8liY2Rg4K7fM1G5+HnwVgot+C+kVwXAZ8pLEn2jsMfTDg==", - "dev": true, "dependencies": { "@types/react": "*" } @@ -3249,7 +3233,6 @@ "version": "5.1.13", "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.13.tgz", "integrity": "sha512-ZIuaO9Yrln54X6elg8q2Ivp6iK6p4syPsefEYAhRDAoqNh48C8VYUmB9RkXjKSQAJSJV0mbIFCX7I4vZDcHrjg==", - "dev": true, "dependencies": { "@types/history": "*", "@types/react": "*" @@ -3259,7 +3242,6 @@ "version": "5.1.8", "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.1.8.tgz", "integrity": "sha512-03xHyncBzG0PmDmf8pf3rehtjY0NpUj7TIN46FrT5n1ZWHPZvXz32gUyNboJ+xsL8cpg8bQVLcllptcQHvocrw==", - "dev": true, "dependencies": { "@types/history": "*", "@types/react": "*", @@ -3277,8 +3259,7 @@ "node_modules/@types/scheduler": { "version": "0.16.1", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz", - "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==", - "dev": true + "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==" }, "node_modules/@types/source-list-map": { "version": "0.1.2", @@ -3294,7 +3275,6 @@ "version": "5.1.11", "resolved": "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.11.tgz", "integrity": "sha512-u8g3bSw9KUiZY+S++gh+LlURGraqBe3MC5I5dygrNjGDHWWQfsmZZRTJ9K9oHU2CqWtxChWmJkDI/gp+TZPQMw==", - "dev": true, "dependencies": { "@types/hoist-non-react-statics": "*", "@types/react": "*", @@ -3334,8 +3314,7 @@ "node_modules/@types/url-join": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@types/url-join/-/url-join-4.0.1.tgz", - "integrity": "sha512-wDXw9LEEUHyV+7UWy7U315nrJGJ7p1BzaCxDpEoLr789Dk1WDVMMlf3iBfbG2F8NdWnYyFbtTxUn2ZNbm1Q4LQ==", - "dev": true + "integrity": "sha512-wDXw9LEEUHyV+7UWy7U315nrJGJ7p1BzaCxDpEoLr789Dk1WDVMMlf3iBfbG2F8NdWnYyFbtTxUn2ZNbm1Q4LQ==" }, "node_modules/@types/webpack": { "version": "4.41.30", @@ -6522,8 +6501,7 @@ "node_modules/csstype": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.4.tgz", - "integrity": "sha512-xc8DUsCLmjvCfoD7LTGE0ou2MIWLx0K9RCZwSHMOdynqRsP4MtUcLeqh1HcQ2dInwDTqn+3CE0/FZh1et+p4jA==", - "dev": true + "integrity": "sha512-xc8DUsCLmjvCfoD7LTGE0ou2MIWLx0K9RCZwSHMOdynqRsP4MtUcLeqh1HcQ2dInwDTqn+3CE0/FZh1et+p4jA==" }, "node_modules/cyclist": { "version": "1.0.1", @@ -7014,8 +6992,7 @@ "node_modules/dom-accessibility-api": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.6.tgz", - "integrity": "sha512-DplGLZd8L1lN64jlT27N9TVSESFR5STaEJvX+thCby7fuCHonfPpAlodYc3vuUYbDuDec5w8AMP7oCM5TWFsqw==", - "dev": true + "integrity": "sha512-DplGLZd8L1lN64jlT27N9TVSESFR5STaEJvX+thCby7fuCHonfPpAlodYc3vuUYbDuDec5w8AMP7oCM5TWFsqw==" }, "node_modules/dom-converter": { "version": "0.2.0", @@ -7494,7 +7471,6 @@ "version": "8.3.0", "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz", "integrity": "sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==", - "dev": true, "bin": { "eslint-config-prettier": "bin/cli.js" }, @@ -7800,7 +7776,6 @@ "version": "3.9.0", "resolved": "https://registry.npmjs.org/eslint-plugin-jest-dom/-/eslint-plugin-jest-dom-3.9.0.tgz", "integrity": "sha512-Ou3cuAAY9s6pYZv+KKPa9XquSzUAWW2CgE5al7cQ0yew25w/kp5kNsUJgESb3Pj00Y6pzvznepppL2sk7UOQKg==", - "dev": true, "dependencies": { "@babel/runtime": "^7.9.6", "@testing-library/dom": "^7.28.1", @@ -12186,7 +12161,6 @@ "version": "1.4.4", "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz", "integrity": "sha1-wNjq82BZ9wV5bh40SBHPTEmNOiY=", - "dev": true, "bin": { "lz-string": "bin/bin.js" } @@ -15082,7 +15056,6 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.3.2.tgz", "integrity": "sha512-lnJzDfJ66zkMy58OL5/NY5zp70S7Nz6KqcKkXYzn2tMVrNxvbqaBpg7H3qHaLxCJ5lNMsGuM8+ohS7cZrthdLQ==", - "dev": true, "bin": { "prettier": "bin-prettier.js" }, @@ -17647,7 +17620,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/requireindex/-/requireindex-1.2.0.tgz", "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==", - "dev": true, "engines": { "node": ">=0.10.5" } @@ -24553,7 +24525,6 @@ "version": "7.28.1", "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-7.28.1.tgz", "integrity": "sha512-acv3l6kDwZkQif/YqJjstT3ks5aaI33uxGNVIQmdKzbZ2eMKgg3EV2tB84GDdc72k3Kjhl6mO8yUt6StVIdRDg==", - "dev": true, "requires": { "@babel/code-frame": "^7.10.4", "@babel/runtime": "^7.12.5", @@ -24569,7 +24540,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "requires": { "color-convert": "^2.0.1" } @@ -24578,7 +24548,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "dev": true, "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -24588,7 +24557,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "requires": { "color-name": "~1.1.4" } @@ -24596,20 +24564,17 @@ "color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, "requires": { "has-flag": "^4.0.0" } @@ -24826,8 +24791,7 @@ "@types/aria-query": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-4.2.0.tgz", - "integrity": "sha512-iIgQNzCm0v7QMhhe4Jjn9uRh+I6GoPmt03CbEtwx3ao8/EfoQcmgtqH4vQ5Db/lxiIGaWDv6nwvunuh0RyX0+A==", - "dev": true + "integrity": "sha512-iIgQNzCm0v7QMhhe4Jjn9uRh+I6GoPmt03CbEtwx3ao8/EfoQcmgtqH4vQ5Db/lxiIGaWDv6nwvunuh0RyX0+A==" }, "@types/babel__core": { "version": "7.1.15", @@ -24888,8 +24852,7 @@ "@types/geojson": { "version": "7946.0.8", "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", - "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", - "dev": true + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==" }, "@types/glob": { "version": "7.1.4", @@ -24911,14 +24874,12 @@ "@types/history": { "version": "4.7.8", "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.8.tgz", - "integrity": "sha512-S78QIYirQcUoo6UJZx9CSP0O2ix9IaeAXwQi26Rhr/+mg7qqPy8TzaxHSUut7eGjL8WmLccT7/MXf304WjqHcA==", - "dev": true + "integrity": "sha512-S78QIYirQcUoo6UJZx9CSP0O2ix9IaeAXwQi26Rhr/+mg7qqPy8TzaxHSUut7eGjL8WmLccT7/MXf304WjqHcA==" }, "@types/hoist-non-react-statics": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==", - "dev": true, "requires": { "@types/react": "*", "hoist-non-react-statics": "^3.3.0" @@ -24954,7 +24915,6 @@ "version": "26.0.24", "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.24.tgz", "integrity": "sha512-E/X5Vib8BWqZNRlDxj9vYXhsDwPYbPINqKF9BsnSoon4RQ0D9moEuLD8txgyypFLH7J4+Lho9Nr/c8H0Fi+17w==", - "dev": true, "requires": { "jest-diff": "^26.0.0", "pretty-format": "^26.0.0" @@ -24969,7 +24929,6 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/@types/mapbox-gl/-/mapbox-gl-2.3.3.tgz", "integrity": "sha512-PN7ejo+l3YSdKDTjvtvPifGX9C86NeyRTSvZEGhWb9qkc0e3/CF7gkDmTWhNmZiou7GdKsCKstSvcaZDs2NXUw==", - "dev": true, "requires": { "@types/geojson": "*" } @@ -25013,7 +24972,6 @@ "version": "17.0.14", "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.14.tgz", "integrity": "sha512-0WwKHUbWuQWOce61UexYuWTGuGY/8JvtUe/dtQ6lR4sZ3UiylHotJeWpf3ArP9+DSGUoLY3wbU59VyMrJps5VQ==", - "dev": true, "requires": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -25024,7 +24982,6 @@ "version": "17.0.9", "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.9.tgz", "integrity": "sha512-wIvGxLfgpVDSAMH5utdL9Ngm5Owu0VsGmldro3ORLXV8CShrL8awVj06NuEXFQ5xyaYfdca7Sgbk/50Ri1GdPg==", - "dev": true, "requires": { "@types/react": "*" } @@ -25033,7 +24990,6 @@ "version": "6.1.2", "resolved": "https://registry.npmjs.org/@types/react-helmet/-/react-helmet-6.1.2.tgz", "integrity": "sha512-dcfAZNlWb5JYFbO9CGfrPWLJAyFcT6UeR3u35eBbv8liY2Rg4K7fM1G5+HnwVgot+C+kVwXAZ8pLEn2jsMfTDg==", - "dev": true, "requires": { "@types/react": "*" } @@ -25042,7 +24998,6 @@ "version": "5.1.13", "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.13.tgz", "integrity": "sha512-ZIuaO9Yrln54X6elg8q2Ivp6iK6p4syPsefEYAhRDAoqNh48C8VYUmB9RkXjKSQAJSJV0mbIFCX7I4vZDcHrjg==", - "dev": true, "requires": { "@types/history": "*", "@types/react": "*" @@ -25052,7 +25007,6 @@ "version": "5.1.8", "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.1.8.tgz", "integrity": "sha512-03xHyncBzG0PmDmf8pf3rehtjY0NpUj7TIN46FrT5n1ZWHPZvXz32gUyNboJ+xsL8cpg8bQVLcllptcQHvocrw==", - "dev": true, "requires": { "@types/history": "*", "@types/react": "*", @@ -25070,8 +25024,7 @@ "@types/scheduler": { "version": "0.16.1", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz", - "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==", - "dev": true + "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==" }, "@types/source-list-map": { "version": "0.1.2", @@ -25087,7 +25040,6 @@ "version": "5.1.11", "resolved": "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.11.tgz", "integrity": "sha512-u8g3bSw9KUiZY+S++gh+LlURGraqBe3MC5I5dygrNjGDHWWQfsmZZRTJ9K9oHU2CqWtxChWmJkDI/gp+TZPQMw==", - "dev": true, "requires": { "@types/hoist-non-react-statics": "*", "@types/react": "*", @@ -25126,8 +25078,7 @@ "@types/url-join": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@types/url-join/-/url-join-4.0.1.tgz", - "integrity": "sha512-wDXw9LEEUHyV+7UWy7U315nrJGJ7p1BzaCxDpEoLr789Dk1WDVMMlf3iBfbG2F8NdWnYyFbtTxUn2ZNbm1Q4LQ==", - "dev": true + "integrity": "sha512-wDXw9LEEUHyV+7UWy7U315nrJGJ7p1BzaCxDpEoLr789Dk1WDVMMlf3iBfbG2F8NdWnYyFbtTxUn2ZNbm1Q4LQ==" }, "@types/webpack": { "version": "4.41.30", @@ -27686,8 +27637,7 @@ "csstype": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.4.tgz", - "integrity": "sha512-xc8DUsCLmjvCfoD7LTGE0ou2MIWLx0K9RCZwSHMOdynqRsP4MtUcLeqh1HcQ2dInwDTqn+3CE0/FZh1et+p4jA==", - "dev": true + "integrity": "sha512-xc8DUsCLmjvCfoD7LTGE0ou2MIWLx0K9RCZwSHMOdynqRsP4MtUcLeqh1HcQ2dInwDTqn+3CE0/FZh1et+p4jA==" }, "cyclist": { "version": "1.0.1", @@ -28077,8 +28027,7 @@ "dom-accessibility-api": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.6.tgz", - "integrity": "sha512-DplGLZd8L1lN64jlT27N9TVSESFR5STaEJvX+thCby7fuCHonfPpAlodYc3vuUYbDuDec5w8AMP7oCM5TWFsqw==", - "dev": true + "integrity": "sha512-DplGLZd8L1lN64jlT27N9TVSESFR5STaEJvX+thCby7fuCHonfPpAlodYc3vuUYbDuDec5w8AMP7oCM5TWFsqw==" }, "dom-converter": { "version": "0.2.0", @@ -28569,7 +28518,6 @@ "version": "8.3.0", "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz", "integrity": "sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==", - "dev": true, "requires": {} }, "eslint-config-react-app": { @@ -28783,7 +28731,6 @@ "version": "3.9.0", "resolved": "https://registry.npmjs.org/eslint-plugin-jest-dom/-/eslint-plugin-jest-dom-3.9.0.tgz", "integrity": "sha512-Ou3cuAAY9s6pYZv+KKPa9XquSzUAWW2CgE5al7cQ0yew25w/kp5kNsUJgESb3Pj00Y6pzvznepppL2sk7UOQKg==", - "dev": true, "requires": { "@babel/runtime": "^7.9.6", "@testing-library/dom": "^7.28.1", @@ -32000,8 +31947,7 @@ "lz-string": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz", - "integrity": "sha1-wNjq82BZ9wV5bh40SBHPTEmNOiY=", - "dev": true + "integrity": "sha1-wNjq82BZ9wV5bh40SBHPTEmNOiY=" }, "magic-string": { "version": "0.25.7", @@ -34313,8 +34259,7 @@ "prettier": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.3.2.tgz", - "integrity": "sha512-lnJzDfJ66zkMy58OL5/NY5zp70S7Nz6KqcKkXYzn2tMVrNxvbqaBpg7H3qHaLxCJ5lNMsGuM8+ohS7cZrthdLQ==", - "dev": true + "integrity": "sha512-lnJzDfJ66zkMy58OL5/NY5zp70S7Nz6KqcKkXYzn2tMVrNxvbqaBpg7H3qHaLxCJ5lNMsGuM8+ohS7cZrthdLQ==" }, "pretty-bytes": { "version": "5.6.0", @@ -36342,8 +36287,7 @@ "requireindex": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/requireindex/-/requireindex-1.2.0.tgz", - "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==", - "dev": true + "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==" }, "requires-port": { "version": "1.0.0", diff --git a/ui/package.json b/ui/package.json index 69972f65..91a90629 100644 --- a/ui/package.json +++ b/ui/package.json @@ -15,15 +15,27 @@ "@headlessui/react": "^1.3.0", "@react-aria/focus": "^3.4.0", "@rollup/plugin-babel": "^5.3.0", + "@types/geojson": "^7946.0.8", + "@types/jest": "^26.0.24", + "@types/mapbox-gl": "^2.3.3", + "@types/react": "^17.0.14", + "@types/react-dom": "^17.0.9", + "@types/react-helmet": "^6.1.2", + "@types/react-router-dom": "^5.1.8", + "@types/styled-components": "^5.1.11", + "@types/url-join": "^4.0.1", "autoprefixer": "^9.8.6", "babel-plugin-graphql-tag": "^3.3.0", "classnames": "^2.3.1", "connect-history-api-fallback": "^1.6.0", "copy-to-clipboard": "^3.3.1", + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-jest-dom": "^3.9.0", "fs-extra": "^10.0.0", "i18next": "^20.3.2", "mapbox-gl": "^2.3.1", "postcss": "^7.0.36", + "prettier": "^2.3.2", "prop-types": "^15.7.2", "react": "^17.0.2", "react-dom": "^17.0.2", @@ -59,20 +71,8 @@ "@testing-library/jest-dom": "^5.14.1", "@testing-library/react": "^12.0.0", "@testing-library/user-event": "^13.1.9", - "@types/geojson": "^7946.0.8", - "@types/jest": "^26.0.24", - "@types/mapbox-gl": "^2.3.3", - "@types/react": "^17.0.14", - "@types/react-dom": "^17.0.9", - "@types/react-helmet": "^6.1.2", - "@types/react-router-dom": "^5.1.8", - "@types/styled-components": "^5.1.11", - "@types/url-join": "^4.0.1", - "eslint-config-prettier": "^8.3.0", - "eslint-plugin-jest-dom": "^3.9.0", "husky": "^6.0.0", "lint-staged": "^11.0.1", - "prettier": "^2.3.2", "tsc-files": "^1.1.2" }, "prettier": { diff --git a/ui/tsconfig.json b/ui/tsconfig.json index 30c0955d..39d19cd3 100644 --- a/ui/tsconfig.json +++ b/ui/tsconfig.json @@ -17,5 +17,5 @@ "jsx": "react-jsx" }, "include": ["src"], - "exclude": ["./node_modules", "./dist"] + "exclude": ["./node_modules", "./build"] }