Showing
8 changed files
with
823 additions
and
133 deletions
... | @@ -5,6 +5,7 @@ | ... | @@ -5,6 +5,7 @@ |
5 | "requires": true, | 5 | "requires": true, |
6 | "packages": { | 6 | "packages": { |
7 | "": { | 7 | "": { |
8 | + "name": "web", | ||
8 | "version": "0.1.0", | 9 | "version": "0.1.0", |
9 | "dependencies": { | 10 | "dependencies": { |
10 | "@testing-library/jest-dom": "^5.11.4", | 11 | "@testing-library/jest-dom": "^5.11.4", |
... | @@ -18,10 +19,12 @@ | ... | @@ -18,10 +19,12 @@ |
18 | "highcharts": "^9.2.0", | 19 | "highcharts": "^9.2.0", |
19 | "highcharts-react-official": "^3.0.0", | 20 | "highcharts-react-official": "^3.0.0", |
20 | "moment": "^2.29.1", | 21 | "moment": "^2.29.1", |
22 | + "qrcode": "^1.4.4", | ||
21 | "react": "^17.0.2", | 23 | "react": "^17.0.2", |
22 | "react-dom": "^17.0.2", | 24 | "react-dom": "^17.0.2", |
23 | "react-router-dom": "^5.2.0", | 25 | "react-router-dom": "^5.2.0", |
24 | "react-scripts": "4.0.3", | 26 | "react-scripts": "4.0.3", |
27 | + "react-spinners": "^0.11.0", | ||
25 | "recoil": "^0.4.0", | 28 | "recoil": "^0.4.0", |
26 | "recoil-persist": "^3.0.0", | 29 | "recoil-persist": "^3.0.0", |
27 | "styled-components": "^5.3.0", | 30 | "styled-components": "^5.3.0", |
... | @@ -31,6 +34,7 @@ | ... | @@ -31,6 +34,7 @@ |
31 | "web-vitals": "^1.0.1" | 34 | "web-vitals": "^1.0.1" |
32 | }, | 35 | }, |
33 | "devDependencies": { | 36 | "devDependencies": { |
37 | + "@types/qrcode": "^1.4.1", | ||
34 | "@types/react-router-dom": "^5.1.8", | 38 | "@types/react-router-dom": "^5.1.8", |
35 | "@types/styled-components": "^5.1.12", | 39 | "@types/styled-components": "^5.1.12", |
36 | "@types/validator": "^13.6.3", | 40 | "@types/validator": "^13.6.3", |
... | @@ -1247,11 +1251,14 @@ | ... | @@ -1247,11 +1251,14 @@ |
1247 | } | 1251 | } |
1248 | }, | 1252 | }, |
1249 | "node_modules/@babel/runtime": { | 1253 | "node_modules/@babel/runtime": { |
1250 | - "version": "7.12.18", | 1254 | + "version": "7.15.4", |
1251 | - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.12.18.tgz", | 1255 | + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.4.tgz", |
1252 | - "integrity": "sha512-BogPQ7ciE6SYAUPtlm9tWbgI9+2AgqSam6QivMgXgAT+fKbgppaj4ZX15MHeLC1PVF5sNk70huBu20XxWOs8Cg==", | 1256 | + "integrity": "sha512-99catp6bHCaxr4sJ/DbTGgHS4+Rs2RVd2g7iOap6SLGPDknRK9ztKNsE/Fg6QhSeh1FGE5f6gHGQmvvn3I3xhw==", |
1253 | "dependencies": { | 1257 | "dependencies": { |
1254 | "regenerator-runtime": "^0.13.4" | 1258 | "regenerator-runtime": "^0.13.4" |
1259 | + }, | ||
1260 | + "engines": { | ||
1261 | + "node": ">=6.9.0" | ||
1255 | } | 1262 | } |
1256 | }, | 1263 | }, |
1257 | "node_modules/@babel/runtime-corejs3": { | 1264 | "node_modules/@babel/runtime-corejs3": { |
... | @@ -1332,6 +1339,23 @@ | ... | @@ -1332,6 +1339,23 @@ |
1332 | "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-10.1.0.tgz", | 1339 | "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-10.1.0.tgz", |
1333 | "integrity": "sha512-ij4wRiunFfaJxjB0BdrYHIH8FxBJpOwNPhhAcunlmPdXudL1WQV1qoP9un6JsEBAgQH+7UXyyjh0g7jTxXK6tg==" | 1340 | "integrity": "sha512-ij4wRiunFfaJxjB0BdrYHIH8FxBJpOwNPhhAcunlmPdXudL1WQV1qoP9un6JsEBAgQH+7UXyyjh0g7jTxXK6tg==" |
1334 | }, | 1341 | }, |
1342 | + "node_modules/@emotion/cache": { | ||
1343 | + "version": "11.4.0", | ||
1344 | + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.4.0.tgz", | ||
1345 | + "integrity": "sha512-Zx70bjE7LErRO9OaZrhf22Qye1y4F7iDl+ITjet0J+i+B88PrAOBkKvaAWhxsZf72tDLajwCgfCjJ2dvH77C3g==", | ||
1346 | + "dependencies": { | ||
1347 | + "@emotion/memoize": "^0.7.4", | ||
1348 | + "@emotion/sheet": "^1.0.0", | ||
1349 | + "@emotion/utils": "^1.0.0", | ||
1350 | + "@emotion/weak-memoize": "^0.2.5", | ||
1351 | + "stylis": "^4.0.3" | ||
1352 | + } | ||
1353 | + }, | ||
1354 | + "node_modules/@emotion/hash": { | ||
1355 | + "version": "0.8.0", | ||
1356 | + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", | ||
1357 | + "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==" | ||
1358 | + }, | ||
1335 | "node_modules/@emotion/is-prop-valid": { | 1359 | "node_modules/@emotion/is-prop-valid": { |
1336 | "version": "0.8.8", | 1360 | "version": "0.8.8", |
1337 | "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", | 1361 | "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", |
... | @@ -1345,6 +1369,49 @@ | ... | @@ -1345,6 +1369,49 @@ |
1345 | "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", | 1369 | "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", |
1346 | "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==" | 1370 | "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==" |
1347 | }, | 1371 | }, |
1372 | + "node_modules/@emotion/react": { | ||
1373 | + "version": "11.4.1", | ||
1374 | + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.4.1.tgz", | ||
1375 | + "integrity": "sha512-pRegcsuGYj4FCdZN6j5vqCALkNytdrKw3TZMekTzNXixRg4wkLsU5QEaBG5LC6l01Vppxlp7FE3aTHpIG5phLg==", | ||
1376 | + "dependencies": { | ||
1377 | + "@babel/runtime": "^7.13.10", | ||
1378 | + "@emotion/cache": "^11.4.0", | ||
1379 | + "@emotion/serialize": "^1.0.2", | ||
1380 | + "@emotion/sheet": "^1.0.2", | ||
1381 | + "@emotion/utils": "^1.0.0", | ||
1382 | + "@emotion/weak-memoize": "^0.2.5", | ||
1383 | + "hoist-non-react-statics": "^3.3.1" | ||
1384 | + }, | ||
1385 | + "peerDependencies": { | ||
1386 | + "@babel/core": "^7.0.0", | ||
1387 | + "react": ">=16.8.0" | ||
1388 | + }, | ||
1389 | + "peerDependenciesMeta": { | ||
1390 | + "@babel/core": { | ||
1391 | + "optional": true | ||
1392 | + }, | ||
1393 | + "@types/react": { | ||
1394 | + "optional": true | ||
1395 | + } | ||
1396 | + } | ||
1397 | + }, | ||
1398 | + "node_modules/@emotion/serialize": { | ||
1399 | + "version": "1.0.2", | ||
1400 | + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.0.2.tgz", | ||
1401 | + "integrity": "sha512-95MgNJ9+/ajxU7QIAruiOAdYNjxZX7G2mhgrtDWswA21VviYIRP1R5QilZ/bDY42xiKsaktP4egJb3QdYQZi1A==", | ||
1402 | + "dependencies": { | ||
1403 | + "@emotion/hash": "^0.8.0", | ||
1404 | + "@emotion/memoize": "^0.7.4", | ||
1405 | + "@emotion/unitless": "^0.7.5", | ||
1406 | + "@emotion/utils": "^1.0.0", | ||
1407 | + "csstype": "^3.0.2" | ||
1408 | + } | ||
1409 | + }, | ||
1410 | + "node_modules/@emotion/sheet": { | ||
1411 | + "version": "1.0.2", | ||
1412 | + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.0.2.tgz", | ||
1413 | + "integrity": "sha512-QQPB1B70JEVUHuNtzjHftMGv6eC3Y9wqavyarj4x4lg47RACkeSfNo5pxIOKizwS9AEFLohsqoaxGQj4p0vSIw==" | ||
1414 | + }, | ||
1348 | "node_modules/@emotion/stylis": { | 1415 | "node_modules/@emotion/stylis": { |
1349 | "version": "0.8.5", | 1416 | "version": "0.8.5", |
1350 | "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", | 1417 | "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", |
... | @@ -1355,6 +1422,16 @@ | ... | @@ -1355,6 +1422,16 @@ |
1355 | "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", | 1422 | "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", |
1356 | "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" | 1423 | "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" |
1357 | }, | 1424 | }, |
1425 | + "node_modules/@emotion/utils": { | ||
1426 | + "version": "1.0.0", | ||
1427 | + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.0.0.tgz", | ||
1428 | + "integrity": "sha512-mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA==" | ||
1429 | + }, | ||
1430 | + "node_modules/@emotion/weak-memoize": { | ||
1431 | + "version": "0.2.5", | ||
1432 | + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz", | ||
1433 | + "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==" | ||
1434 | + }, | ||
1358 | "node_modules/@eslint/eslintrc": { | 1435 | "node_modules/@eslint/eslintrc": { |
1359 | "version": "0.4.3", | 1436 | "version": "0.4.3", |
1360 | "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", | 1437 | "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", |
... | @@ -2229,17 +2306,6 @@ | ... | @@ -2229,17 +2306,6 @@ |
2229 | "node": ">=10" | 2306 | "node": ">=10" |
2230 | } | 2307 | } |
2231 | }, | 2308 | }, |
2232 | - "node_modules/@testing-library/dom/node_modules/@babel/runtime": { | ||
2233 | - "version": "7.14.8", | ||
2234 | - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz", | ||
2235 | - "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==", | ||
2236 | - "dependencies": { | ||
2237 | - "regenerator-runtime": "^0.13.4" | ||
2238 | - }, | ||
2239 | - "engines": { | ||
2240 | - "node": ">=6.9.0" | ||
2241 | - } | ||
2242 | - }, | ||
2243 | "node_modules/@testing-library/dom/node_modules/chalk": { | 2309 | "node_modules/@testing-library/dom/node_modules/chalk": { |
2244 | "version": "4.1.2", | 2310 | "version": "4.1.2", |
2245 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", | 2311 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", |
... | @@ -2276,17 +2342,6 @@ | ... | @@ -2276,17 +2342,6 @@ |
2276 | "yarn": ">=1" | 2342 | "yarn": ">=1" |
2277 | } | 2343 | } |
2278 | }, | 2344 | }, |
2279 | - "node_modules/@testing-library/jest-dom/node_modules/@babel/runtime": { | ||
2280 | - "version": "7.14.8", | ||
2281 | - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz", | ||
2282 | - "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==", | ||
2283 | - "dependencies": { | ||
2284 | - "regenerator-runtime": "^0.13.4" | ||
2285 | - }, | ||
2286 | - "engines": { | ||
2287 | - "node": ">=6.9.0" | ||
2288 | - } | ||
2289 | - }, | ||
2290 | "node_modules/@testing-library/jest-dom/node_modules/chalk": { | 2345 | "node_modules/@testing-library/jest-dom/node_modules/chalk": { |
2291 | "version": "3.0.0", | 2346 | "version": "3.0.0", |
2292 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", | 2347 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", |
... | @@ -2315,17 +2370,6 @@ | ... | @@ -2315,17 +2370,6 @@ |
2315 | "react-dom": "*" | 2370 | "react-dom": "*" |
2316 | } | 2371 | } |
2317 | }, | 2372 | }, |
2318 | - "node_modules/@testing-library/react/node_modules/@babel/runtime": { | ||
2319 | - "version": "7.14.8", | ||
2320 | - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz", | ||
2321 | - "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==", | ||
2322 | - "dependencies": { | ||
2323 | - "regenerator-runtime": "^0.13.4" | ||
2324 | - }, | ||
2325 | - "engines": { | ||
2326 | - "node": ">=6.9.0" | ||
2327 | - } | ||
2328 | - }, | ||
2329 | "node_modules/@testing-library/user-event": { | 2373 | "node_modules/@testing-library/user-event": { |
2330 | "version": "12.8.3", | 2374 | "version": "12.8.3", |
2331 | "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-12.8.3.tgz", | 2375 | "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-12.8.3.tgz", |
... | @@ -2341,17 +2385,6 @@ | ... | @@ -2341,17 +2385,6 @@ |
2341 | "@testing-library/dom": ">=7.21.4" | 2385 | "@testing-library/dom": ">=7.21.4" |
2342 | } | 2386 | } |
2343 | }, | 2387 | }, |
2344 | - "node_modules/@testing-library/user-event/node_modules/@babel/runtime": { | ||
2345 | - "version": "7.14.8", | ||
2346 | - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz", | ||
2347 | - "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==", | ||
2348 | - "dependencies": { | ||
2349 | - "regenerator-runtime": "^0.13.4" | ||
2350 | - }, | ||
2351 | - "engines": { | ||
2352 | - "node": ">=6.9.0" | ||
2353 | - } | ||
2354 | - }, | ||
2355 | "node_modules/@types/anymatch": { | 2388 | "node_modules/@types/anymatch": { |
2356 | "version": "1.3.1", | 2389 | "version": "1.3.1", |
2357 | "resolved": "https://registry.npmjs.org/@types/anymatch/-/anymatch-1.3.1.tgz", | 2390 | "resolved": "https://registry.npmjs.org/@types/anymatch/-/anymatch-1.3.1.tgz", |
... | @@ -2536,6 +2569,15 @@ | ... | @@ -2536,6 +2569,15 @@ |
2536 | "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz", | 2569 | "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz", |
2537 | "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==" | 2570 | "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==" |
2538 | }, | 2571 | }, |
2572 | + "node_modules/@types/qrcode": { | ||
2573 | + "version": "1.4.1", | ||
2574 | + "resolved": "https://registry.npmjs.org/@types/qrcode/-/qrcode-1.4.1.tgz", | ||
2575 | + "integrity": "sha512-vxMyr7JM7tYPxu8vUE83NiosWX5DZieCyYeJRoOIg0pAkyofCBzknJ2ycUZkPGDFis2RS8GN/BeJLnRnAPxeCA==", | ||
2576 | + "dev": true, | ||
2577 | + "dependencies": { | ||
2578 | + "@types/node": "*" | ||
2579 | + } | ||
2580 | + }, | ||
2539 | "node_modules/@types/react": { | 2581 | "node_modules/@types/react": { |
2540 | "version": "17.0.16", | 2582 | "version": "17.0.16", |
2541 | "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.16.tgz", | 2583 | "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.16.tgz", |
... | @@ -4813,6 +4855,25 @@ | ... | @@ -4813,6 +4855,25 @@ |
4813 | "isarray": "^1.0.0" | 4855 | "isarray": "^1.0.0" |
4814 | } | 4856 | } |
4815 | }, | 4857 | }, |
4858 | + "node_modules/buffer-alloc": { | ||
4859 | + "version": "1.2.0", | ||
4860 | + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", | ||
4861 | + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", | ||
4862 | + "dependencies": { | ||
4863 | + "buffer-alloc-unsafe": "^1.1.0", | ||
4864 | + "buffer-fill": "^1.0.0" | ||
4865 | + } | ||
4866 | + }, | ||
4867 | + "node_modules/buffer-alloc-unsafe": { | ||
4868 | + "version": "1.1.0", | ||
4869 | + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", | ||
4870 | + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" | ||
4871 | + }, | ||
4872 | + "node_modules/buffer-fill": { | ||
4873 | + "version": "1.0.0", | ||
4874 | + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", | ||
4875 | + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" | ||
4876 | + }, | ||
4816 | "node_modules/buffer-from": { | 4877 | "node_modules/buffer-from": { |
4817 | "version": "1.1.1", | 4878 | "version": "1.1.1", |
4818 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", | 4879 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", |
... | @@ -6483,6 +6544,11 @@ | ... | @@ -6483,6 +6544,11 @@ |
6483 | "randombytes": "^2.0.0" | 6544 | "randombytes": "^2.0.0" |
6484 | } | 6545 | } |
6485 | }, | 6546 | }, |
6547 | + "node_modules/dijkstrajs": { | ||
6548 | + "version": "1.0.2", | ||
6549 | + "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.2.tgz", | ||
6550 | + "integrity": "sha512-QV6PMaHTCNmKSeP6QoXhVTw9snc9VD8MulTT0Bd99Pacp4SS1cjcrYPgBPmibqKVtMJJfqC6XvOXgPMEEPH/fg==" | ||
6551 | + }, | ||
6486 | "node_modules/dir-glob": { | 6552 | "node_modules/dir-glob": { |
6487 | "version": "3.0.1", | 6553 | "version": "3.0.1", |
6488 | "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", | 6554 | "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", |
... | @@ -12762,6 +12828,14 @@ | ... | @@ -12762,6 +12828,14 @@ |
12762 | "node": ">=6" | 12828 | "node": ">=6" |
12763 | } | 12829 | } |
12764 | }, | 12830 | }, |
12831 | + "node_modules/pngjs": { | ||
12832 | + "version": "3.4.0", | ||
12833 | + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", | ||
12834 | + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", | ||
12835 | + "engines": { | ||
12836 | + "node": ">=4.0.0" | ||
12837 | + } | ||
12838 | + }, | ||
12765 | "node_modules/pnp-webpack-plugin": { | 12839 | "node_modules/pnp-webpack-plugin": { |
12766 | "version": "1.6.4", | 12840 | "version": "1.6.4", |
12767 | "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz", | 12841 | "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz", |
... | @@ -14095,6 +14169,193 @@ | ... | @@ -14095,6 +14169,193 @@ |
14095 | "teleport": ">=0.2.0" | 14169 | "teleport": ">=0.2.0" |
14096 | } | 14170 | } |
14097 | }, | 14171 | }, |
14172 | + "node_modules/qrcode": { | ||
14173 | + "version": "1.4.4", | ||
14174 | + "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.4.4.tgz", | ||
14175 | + "integrity": "sha512-oLzEC5+NKFou9P0bMj5+v6Z40evexeE29Z9cummZXZ9QXyMr3lphkURzxjXgPJC5azpxcshoDWV1xE46z+/c3Q==", | ||
14176 | + "dependencies": { | ||
14177 | + "buffer": "^5.4.3", | ||
14178 | + "buffer-alloc": "^1.2.0", | ||
14179 | + "buffer-from": "^1.1.1", | ||
14180 | + "dijkstrajs": "^1.0.1", | ||
14181 | + "isarray": "^2.0.1", | ||
14182 | + "pngjs": "^3.3.0", | ||
14183 | + "yargs": "^13.2.4" | ||
14184 | + }, | ||
14185 | + "bin": { | ||
14186 | + "qrcode": "bin/qrcode" | ||
14187 | + }, | ||
14188 | + "engines": { | ||
14189 | + "node": ">=4" | ||
14190 | + } | ||
14191 | + }, | ||
14192 | + "node_modules/qrcode/node_modules/ansi-regex": { | ||
14193 | + "version": "4.1.0", | ||
14194 | + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", | ||
14195 | + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", | ||
14196 | + "engines": { | ||
14197 | + "node": ">=6" | ||
14198 | + } | ||
14199 | + }, | ||
14200 | + "node_modules/qrcode/node_modules/ansi-styles": { | ||
14201 | + "version": "3.2.1", | ||
14202 | + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", | ||
14203 | + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", | ||
14204 | + "dependencies": { | ||
14205 | + "color-convert": "^1.9.0" | ||
14206 | + }, | ||
14207 | + "engines": { | ||
14208 | + "node": ">=4" | ||
14209 | + } | ||
14210 | + }, | ||
14211 | + "node_modules/qrcode/node_modules/buffer": { | ||
14212 | + "version": "5.7.1", | ||
14213 | + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", | ||
14214 | + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", | ||
14215 | + "funding": [ | ||
14216 | + { | ||
14217 | + "type": "github", | ||
14218 | + "url": "https://github.com/sponsors/feross" | ||
14219 | + }, | ||
14220 | + { | ||
14221 | + "type": "patreon", | ||
14222 | + "url": "https://www.patreon.com/feross" | ||
14223 | + }, | ||
14224 | + { | ||
14225 | + "type": "consulting", | ||
14226 | + "url": "https://feross.org/support" | ||
14227 | + } | ||
14228 | + ], | ||
14229 | + "dependencies": { | ||
14230 | + "base64-js": "^1.3.1", | ||
14231 | + "ieee754": "^1.1.13" | ||
14232 | + } | ||
14233 | + }, | ||
14234 | + "node_modules/qrcode/node_modules/cliui": { | ||
14235 | + "version": "5.0.0", | ||
14236 | + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", | ||
14237 | + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", | ||
14238 | + "dependencies": { | ||
14239 | + "string-width": "^3.1.0", | ||
14240 | + "strip-ansi": "^5.2.0", | ||
14241 | + "wrap-ansi": "^5.1.0" | ||
14242 | + } | ||
14243 | + }, | ||
14244 | + "node_modules/qrcode/node_modules/emoji-regex": { | ||
14245 | + "version": "7.0.3", | ||
14246 | + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", | ||
14247 | + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" | ||
14248 | + }, | ||
14249 | + "node_modules/qrcode/node_modules/find-up": { | ||
14250 | + "version": "3.0.0", | ||
14251 | + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", | ||
14252 | + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", | ||
14253 | + "dependencies": { | ||
14254 | + "locate-path": "^3.0.0" | ||
14255 | + }, | ||
14256 | + "engines": { | ||
14257 | + "node": ">=6" | ||
14258 | + } | ||
14259 | + }, | ||
14260 | + "node_modules/qrcode/node_modules/is-fullwidth-code-point": { | ||
14261 | + "version": "2.0.0", | ||
14262 | + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", | ||
14263 | + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", | ||
14264 | + "engines": { | ||
14265 | + "node": ">=4" | ||
14266 | + } | ||
14267 | + }, | ||
14268 | + "node_modules/qrcode/node_modules/isarray": { | ||
14269 | + "version": "2.0.5", | ||
14270 | + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", | ||
14271 | + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" | ||
14272 | + }, | ||
14273 | + "node_modules/qrcode/node_modules/locate-path": { | ||
14274 | + "version": "3.0.0", | ||
14275 | + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", | ||
14276 | + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", | ||
14277 | + "dependencies": { | ||
14278 | + "p-locate": "^3.0.0", | ||
14279 | + "path-exists": "^3.0.0" | ||
14280 | + }, | ||
14281 | + "engines": { | ||
14282 | + "node": ">=6" | ||
14283 | + } | ||
14284 | + }, | ||
14285 | + "node_modules/qrcode/node_modules/p-locate": { | ||
14286 | + "version": "3.0.0", | ||
14287 | + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", | ||
14288 | + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", | ||
14289 | + "dependencies": { | ||
14290 | + "p-limit": "^2.0.0" | ||
14291 | + }, | ||
14292 | + "engines": { | ||
14293 | + "node": ">=6" | ||
14294 | + } | ||
14295 | + }, | ||
14296 | + "node_modules/qrcode/node_modules/string-width": { | ||
14297 | + "version": "3.1.0", | ||
14298 | + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", | ||
14299 | + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", | ||
14300 | + "dependencies": { | ||
14301 | + "emoji-regex": "^7.0.1", | ||
14302 | + "is-fullwidth-code-point": "^2.0.0", | ||
14303 | + "strip-ansi": "^5.1.0" | ||
14304 | + }, | ||
14305 | + "engines": { | ||
14306 | + "node": ">=6" | ||
14307 | + } | ||
14308 | + }, | ||
14309 | + "node_modules/qrcode/node_modules/strip-ansi": { | ||
14310 | + "version": "5.2.0", | ||
14311 | + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", | ||
14312 | + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", | ||
14313 | + "dependencies": { | ||
14314 | + "ansi-regex": "^4.1.0" | ||
14315 | + }, | ||
14316 | + "engines": { | ||
14317 | + "node": ">=6" | ||
14318 | + } | ||
14319 | + }, | ||
14320 | + "node_modules/qrcode/node_modules/wrap-ansi": { | ||
14321 | + "version": "5.1.0", | ||
14322 | + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", | ||
14323 | + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", | ||
14324 | + "dependencies": { | ||
14325 | + "ansi-styles": "^3.2.0", | ||
14326 | + "string-width": "^3.0.0", | ||
14327 | + "strip-ansi": "^5.0.0" | ||
14328 | + }, | ||
14329 | + "engines": { | ||
14330 | + "node": ">=6" | ||
14331 | + } | ||
14332 | + }, | ||
14333 | + "node_modules/qrcode/node_modules/yargs": { | ||
14334 | + "version": "13.3.2", | ||
14335 | + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", | ||
14336 | + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", | ||
14337 | + "dependencies": { | ||
14338 | + "cliui": "^5.0.0", | ||
14339 | + "find-up": "^3.0.0", | ||
14340 | + "get-caller-file": "^2.0.1", | ||
14341 | + "require-directory": "^2.1.1", | ||
14342 | + "require-main-filename": "^2.0.0", | ||
14343 | + "set-blocking": "^2.0.0", | ||
14344 | + "string-width": "^3.0.0", | ||
14345 | + "which-module": "^2.0.0", | ||
14346 | + "y18n": "^4.0.0", | ||
14347 | + "yargs-parser": "^13.1.2" | ||
14348 | + } | ||
14349 | + }, | ||
14350 | + "node_modules/qrcode/node_modules/yargs-parser": { | ||
14351 | + "version": "13.1.2", | ||
14352 | + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", | ||
14353 | + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", | ||
14354 | + "dependencies": { | ||
14355 | + "camelcase": "^5.0.0", | ||
14356 | + "decamelize": "^1.2.0" | ||
14357 | + } | ||
14358 | + }, | ||
14098 | "node_modules/qs": { | 14359 | "node_modules/qs": { |
14099 | "version": "6.7.0", | 14360 | "version": "6.7.0", |
14100 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", | 14361 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", |
... | @@ -14737,6 +14998,18 @@ | ... | @@ -14737,6 +14998,18 @@ |
14737 | "node": ">=0.10.0" | 14998 | "node": ">=0.10.0" |
14738 | } | 14999 | } |
14739 | }, | 15000 | }, |
15001 | + "node_modules/react-spinners": { | ||
15002 | + "version": "0.11.0", | ||
15003 | + "resolved": "https://registry.npmjs.org/react-spinners/-/react-spinners-0.11.0.tgz", | ||
15004 | + "integrity": "sha512-rDZc0ABWn/M1OryboGsWVmIPg8uYWl0L35jPUhr40+Yg+syVPjeHwvnB7XWaRpaKus3M0cG9BiJA+ZB0dAwWyw==", | ||
15005 | + "dependencies": { | ||
15006 | + "@emotion/react": "^11.1.4" | ||
15007 | + }, | ||
15008 | + "peerDependencies": { | ||
15009 | + "react": "^16.0.0 || ^17.0.0", | ||
15010 | + "react-dom": "^16.0.0 || ^17.0.0" | ||
15011 | + } | ||
15012 | + }, | ||
14740 | "node_modules/read-pkg": { | 15013 | "node_modules/read-pkg": { |
14741 | "version": "5.2.0", | 15014 | "version": "5.2.0", |
14742 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", | 15015 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", |
... | @@ -16776,6 +17049,11 @@ | ... | @@ -16776,6 +17049,11 @@ |
16776 | "node": ">=8" | 17049 | "node": ">=8" |
16777 | } | 17050 | } |
16778 | }, | 17051 | }, |
17052 | + "node_modules/stylis": { | ||
17053 | + "version": "4.0.10", | ||
17054 | + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.10.tgz", | ||
17055 | + "integrity": "sha512-m3k+dk7QeJw660eIKRRn3xPF6uuvHs/FFzjX3HQ5ove0qYsiygoAhwn5a3IYKaZPo5LrYD0rfVmtv1gNY1uYwg==" | ||
17056 | + }, | ||
16779 | "node_modules/supports-color": { | 17057 | "node_modules/supports-color": { |
16780 | "version": "7.2.0", | 17058 | "version": "7.2.0", |
16781 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", | 17059 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", |
... | @@ -20048,9 +20326,9 @@ | ... | @@ -20048,9 +20326,9 @@ |
20048 | } | 20326 | } |
20049 | }, | 20327 | }, |
20050 | "@babel/runtime": { | 20328 | "@babel/runtime": { |
20051 | - "version": "7.12.18", | 20329 | + "version": "7.15.4", |
20052 | - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.12.18.tgz", | 20330 | + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.4.tgz", |
20053 | - "integrity": "sha512-BogPQ7ciE6SYAUPtlm9tWbgI9+2AgqSam6QivMgXgAT+fKbgppaj4ZX15MHeLC1PVF5sNk70huBu20XxWOs8Cg==", | 20331 | + "integrity": "sha512-99catp6bHCaxr4sJ/DbTGgHS4+Rs2RVd2g7iOap6SLGPDknRK9ztKNsE/Fg6QhSeh1FGE5f6gHGQmvvn3I3xhw==", |
20054 | "requires": { | 20332 | "requires": { |
20055 | "regenerator-runtime": "^0.13.4" | 20333 | "regenerator-runtime": "^0.13.4" |
20056 | } | 20334 | } |
... | @@ -20124,6 +20402,23 @@ | ... | @@ -20124,6 +20402,23 @@ |
20124 | "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-10.1.0.tgz", | 20402 | "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-10.1.0.tgz", |
20125 | "integrity": "sha512-ij4wRiunFfaJxjB0BdrYHIH8FxBJpOwNPhhAcunlmPdXudL1WQV1qoP9un6JsEBAgQH+7UXyyjh0g7jTxXK6tg==" | 20403 | "integrity": "sha512-ij4wRiunFfaJxjB0BdrYHIH8FxBJpOwNPhhAcunlmPdXudL1WQV1qoP9un6JsEBAgQH+7UXyyjh0g7jTxXK6tg==" |
20126 | }, | 20404 | }, |
20405 | + "@emotion/cache": { | ||
20406 | + "version": "11.4.0", | ||
20407 | + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.4.0.tgz", | ||
20408 | + "integrity": "sha512-Zx70bjE7LErRO9OaZrhf22Qye1y4F7iDl+ITjet0J+i+B88PrAOBkKvaAWhxsZf72tDLajwCgfCjJ2dvH77C3g==", | ||
20409 | + "requires": { | ||
20410 | + "@emotion/memoize": "^0.7.4", | ||
20411 | + "@emotion/sheet": "^1.0.0", | ||
20412 | + "@emotion/utils": "^1.0.0", | ||
20413 | + "@emotion/weak-memoize": "^0.2.5", | ||
20414 | + "stylis": "^4.0.3" | ||
20415 | + } | ||
20416 | + }, | ||
20417 | + "@emotion/hash": { | ||
20418 | + "version": "0.8.0", | ||
20419 | + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", | ||
20420 | + "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==" | ||
20421 | + }, | ||
20127 | "@emotion/is-prop-valid": { | 20422 | "@emotion/is-prop-valid": { |
20128 | "version": "0.8.8", | 20423 | "version": "0.8.8", |
20129 | "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", | 20424 | "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", |
... | @@ -20137,6 +20432,37 @@ | ... | @@ -20137,6 +20432,37 @@ |
20137 | "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", | 20432 | "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", |
20138 | "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==" | 20433 | "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==" |
20139 | }, | 20434 | }, |
20435 | + "@emotion/react": { | ||
20436 | + "version": "11.4.1", | ||
20437 | + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.4.1.tgz", | ||
20438 | + "integrity": "sha512-pRegcsuGYj4FCdZN6j5vqCALkNytdrKw3TZMekTzNXixRg4wkLsU5QEaBG5LC6l01Vppxlp7FE3aTHpIG5phLg==", | ||
20439 | + "requires": { | ||
20440 | + "@babel/runtime": "^7.13.10", | ||
20441 | + "@emotion/cache": "^11.4.0", | ||
20442 | + "@emotion/serialize": "^1.0.2", | ||
20443 | + "@emotion/sheet": "^1.0.2", | ||
20444 | + "@emotion/utils": "^1.0.0", | ||
20445 | + "@emotion/weak-memoize": "^0.2.5", | ||
20446 | + "hoist-non-react-statics": "^3.3.1" | ||
20447 | + } | ||
20448 | + }, | ||
20449 | + "@emotion/serialize": { | ||
20450 | + "version": "1.0.2", | ||
20451 | + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.0.2.tgz", | ||
20452 | + "integrity": "sha512-95MgNJ9+/ajxU7QIAruiOAdYNjxZX7G2mhgrtDWswA21VviYIRP1R5QilZ/bDY42xiKsaktP4egJb3QdYQZi1A==", | ||
20453 | + "requires": { | ||
20454 | + "@emotion/hash": "^0.8.0", | ||
20455 | + "@emotion/memoize": "^0.7.4", | ||
20456 | + "@emotion/unitless": "^0.7.5", | ||
20457 | + "@emotion/utils": "^1.0.0", | ||
20458 | + "csstype": "^3.0.2" | ||
20459 | + } | ||
20460 | + }, | ||
20461 | + "@emotion/sheet": { | ||
20462 | + "version": "1.0.2", | ||
20463 | + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.0.2.tgz", | ||
20464 | + "integrity": "sha512-QQPB1B70JEVUHuNtzjHftMGv6eC3Y9wqavyarj4x4lg47RACkeSfNo5pxIOKizwS9AEFLohsqoaxGQj4p0vSIw==" | ||
20465 | + }, | ||
20140 | "@emotion/stylis": { | 20466 | "@emotion/stylis": { |
20141 | "version": "0.8.5", | 20467 | "version": "0.8.5", |
20142 | "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", | 20468 | "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", |
... | @@ -20147,6 +20473,16 @@ | ... | @@ -20147,6 +20473,16 @@ |
20147 | "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", | 20473 | "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", |
20148 | "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" | 20474 | "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" |
20149 | }, | 20475 | }, |
20476 | + "@emotion/utils": { | ||
20477 | + "version": "1.0.0", | ||
20478 | + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.0.0.tgz", | ||
20479 | + "integrity": "sha512-mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA==" | ||
20480 | + }, | ||
20481 | + "@emotion/weak-memoize": { | ||
20482 | + "version": "0.2.5", | ||
20483 | + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz", | ||
20484 | + "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==" | ||
20485 | + }, | ||
20150 | "@eslint/eslintrc": { | 20486 | "@eslint/eslintrc": { |
20151 | "version": "0.4.3", | 20487 | "version": "0.4.3", |
20152 | "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", | 20488 | "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", |
... | @@ -20777,14 +21113,6 @@ | ... | @@ -20777,14 +21113,6 @@ |
20777 | "pretty-format": "^26.6.2" | 21113 | "pretty-format": "^26.6.2" |
20778 | }, | 21114 | }, |
20779 | "dependencies": { | 21115 | "dependencies": { |
20780 | - "@babel/runtime": { | ||
20781 | - "version": "7.14.8", | ||
20782 | - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz", | ||
20783 | - "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==", | ||
20784 | - "requires": { | ||
20785 | - "regenerator-runtime": "^0.13.4" | ||
20786 | - } | ||
20787 | - }, | ||
20788 | "chalk": { | 21116 | "chalk": { |
20789 | "version": "4.1.2", | 21117 | "version": "4.1.2", |
20790 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", | 21118 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", |
... | @@ -20812,14 +21140,6 @@ | ... | @@ -20812,14 +21140,6 @@ |
20812 | "redent": "^3.0.0" | 21140 | "redent": "^3.0.0" |
20813 | }, | 21141 | }, |
20814 | "dependencies": { | 21142 | "dependencies": { |
20815 | - "@babel/runtime": { | ||
20816 | - "version": "7.14.8", | ||
20817 | - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz", | ||
20818 | - "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==", | ||
20819 | - "requires": { | ||
20820 | - "regenerator-runtime": "^0.13.4" | ||
20821 | - } | ||
20822 | - }, | ||
20823 | "chalk": { | 21143 | "chalk": { |
20824 | "version": "3.0.0", | 21144 | "version": "3.0.0", |
20825 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", | 21145 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", |
... | @@ -20838,16 +21158,6 @@ | ... | @@ -20838,16 +21158,6 @@ |
20838 | "requires": { | 21158 | "requires": { |
20839 | "@babel/runtime": "^7.12.5", | 21159 | "@babel/runtime": "^7.12.5", |
20840 | "@testing-library/dom": "^7.28.1" | 21160 | "@testing-library/dom": "^7.28.1" |
20841 | - }, | ||
20842 | - "dependencies": { | ||
20843 | - "@babel/runtime": { | ||
20844 | - "version": "7.14.8", | ||
20845 | - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz", | ||
20846 | - "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==", | ||
20847 | - "requires": { | ||
20848 | - "regenerator-runtime": "^0.13.4" | ||
20849 | - } | ||
20850 | - } | ||
20851 | } | 21161 | } |
20852 | }, | 21162 | }, |
20853 | "@testing-library/user-event": { | 21163 | "@testing-library/user-event": { |
... | @@ -20856,16 +21166,6 @@ | ... | @@ -20856,16 +21166,6 @@ |
20856 | "integrity": "sha512-IR0iWbFkgd56Bu5ZI/ej8yQwrkCv8Qydx6RzwbKz9faXazR/+5tvYKsZQgyXJiwgpcva127YO6JcWy7YlCfofQ==", | 21166 | "integrity": "sha512-IR0iWbFkgd56Bu5ZI/ej8yQwrkCv8Qydx6RzwbKz9faXazR/+5tvYKsZQgyXJiwgpcva127YO6JcWy7YlCfofQ==", |
20857 | "requires": { | 21167 | "requires": { |
20858 | "@babel/runtime": "^7.12.5" | 21168 | "@babel/runtime": "^7.12.5" |
20859 | - }, | ||
20860 | - "dependencies": { | ||
20861 | - "@babel/runtime": { | ||
20862 | - "version": "7.14.8", | ||
20863 | - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz", | ||
20864 | - "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==", | ||
20865 | - "requires": { | ||
20866 | - "regenerator-runtime": "^0.13.4" | ||
20867 | - } | ||
20868 | - } | ||
20869 | } | 21169 | } |
20870 | }, | 21170 | }, |
20871 | "@types/anymatch": { | 21171 | "@types/anymatch": { |
... | @@ -21056,6 +21356,15 @@ | ... | @@ -21056,6 +21356,15 @@ |
21056 | "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz", | 21356 | "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz", |
21057 | "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==" | 21357 | "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==" |
21058 | }, | 21358 | }, |
21359 | + "@types/qrcode": { | ||
21360 | + "version": "1.4.1", | ||
21361 | + "resolved": "https://registry.npmjs.org/@types/qrcode/-/qrcode-1.4.1.tgz", | ||
21362 | + "integrity": "sha512-vxMyr7JM7tYPxu8vUE83NiosWX5DZieCyYeJRoOIg0pAkyofCBzknJ2ycUZkPGDFis2RS8GN/BeJLnRnAPxeCA==", | ||
21363 | + "dev": true, | ||
21364 | + "requires": { | ||
21365 | + "@types/node": "*" | ||
21366 | + } | ||
21367 | + }, | ||
21059 | "@types/react": { | 21368 | "@types/react": { |
21060 | "version": "17.0.16", | 21369 | "version": "17.0.16", |
21061 | "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.16.tgz", | 21370 | "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.16.tgz", |
... | @@ -22917,6 +23226,25 @@ | ... | @@ -22917,6 +23226,25 @@ |
22917 | "isarray": "^1.0.0" | 23226 | "isarray": "^1.0.0" |
22918 | } | 23227 | } |
22919 | }, | 23228 | }, |
23229 | + "buffer-alloc": { | ||
23230 | + "version": "1.2.0", | ||
23231 | + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", | ||
23232 | + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", | ||
23233 | + "requires": { | ||
23234 | + "buffer-alloc-unsafe": "^1.1.0", | ||
23235 | + "buffer-fill": "^1.0.0" | ||
23236 | + } | ||
23237 | + }, | ||
23238 | + "buffer-alloc-unsafe": { | ||
23239 | + "version": "1.1.0", | ||
23240 | + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", | ||
23241 | + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" | ||
23242 | + }, | ||
23243 | + "buffer-fill": { | ||
23244 | + "version": "1.0.0", | ||
23245 | + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", | ||
23246 | + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" | ||
23247 | + }, | ||
22920 | "buffer-from": { | 23248 | "buffer-from": { |
22921 | "version": "1.1.1", | 23249 | "version": "1.1.1", |
22922 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", | 23250 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", |
... | @@ -24256,6 +24584,11 @@ | ... | @@ -24256,6 +24584,11 @@ |
24256 | "randombytes": "^2.0.0" | 24584 | "randombytes": "^2.0.0" |
24257 | } | 24585 | } |
24258 | }, | 24586 | }, |
24587 | + "dijkstrajs": { | ||
24588 | + "version": "1.0.2", | ||
24589 | + "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.2.tgz", | ||
24590 | + "integrity": "sha512-QV6PMaHTCNmKSeP6QoXhVTw9snc9VD8MulTT0Bd99Pacp4SS1cjcrYPgBPmibqKVtMJJfqC6XvOXgPMEEPH/fg==" | ||
24591 | + }, | ||
24259 | "dir-glob": { | 24592 | "dir-glob": { |
24260 | "version": "3.0.1", | 24593 | "version": "3.0.1", |
24261 | "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", | 24594 | "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", |
... | @@ -29110,6 +29443,11 @@ | ... | @@ -29110,6 +29443,11 @@ |
29110 | } | 29443 | } |
29111 | } | 29444 | } |
29112 | }, | 29445 | }, |
29446 | + "pngjs": { | ||
29447 | + "version": "3.4.0", | ||
29448 | + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", | ||
29449 | + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==" | ||
29450 | + }, | ||
29113 | "pnp-webpack-plugin": { | 29451 | "pnp-webpack-plugin": { |
29114 | "version": "1.6.4", | 29452 | "version": "1.6.4", |
29115 | "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz", | 29453 | "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz", |
... | @@ -30180,6 +30518,148 @@ | ... | @@ -30180,6 +30518,148 @@ |
30180 | "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", | 30518 | "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", |
30181 | "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=" | 30519 | "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=" |
30182 | }, | 30520 | }, |
30521 | + "qrcode": { | ||
30522 | + "version": "1.4.4", | ||
30523 | + "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.4.4.tgz", | ||
30524 | + "integrity": "sha512-oLzEC5+NKFou9P0bMj5+v6Z40evexeE29Z9cummZXZ9QXyMr3lphkURzxjXgPJC5azpxcshoDWV1xE46z+/c3Q==", | ||
30525 | + "requires": { | ||
30526 | + "buffer": "^5.4.3", | ||
30527 | + "buffer-alloc": "^1.2.0", | ||
30528 | + "buffer-from": "^1.1.1", | ||
30529 | + "dijkstrajs": "^1.0.1", | ||
30530 | + "isarray": "^2.0.1", | ||
30531 | + "pngjs": "^3.3.0", | ||
30532 | + "yargs": "^13.2.4" | ||
30533 | + }, | ||
30534 | + "dependencies": { | ||
30535 | + "ansi-regex": { | ||
30536 | + "version": "4.1.0", | ||
30537 | + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", | ||
30538 | + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" | ||
30539 | + }, | ||
30540 | + "ansi-styles": { | ||
30541 | + "version": "3.2.1", | ||
30542 | + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", | ||
30543 | + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", | ||
30544 | + "requires": { | ||
30545 | + "color-convert": "^1.9.0" | ||
30546 | + } | ||
30547 | + }, | ||
30548 | + "buffer": { | ||
30549 | + "version": "5.7.1", | ||
30550 | + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", | ||
30551 | + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", | ||
30552 | + "requires": { | ||
30553 | + "base64-js": "^1.3.1", | ||
30554 | + "ieee754": "^1.1.13" | ||
30555 | + } | ||
30556 | + }, | ||
30557 | + "cliui": { | ||
30558 | + "version": "5.0.0", | ||
30559 | + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", | ||
30560 | + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", | ||
30561 | + "requires": { | ||
30562 | + "string-width": "^3.1.0", | ||
30563 | + "strip-ansi": "^5.2.0", | ||
30564 | + "wrap-ansi": "^5.1.0" | ||
30565 | + } | ||
30566 | + }, | ||
30567 | + "emoji-regex": { | ||
30568 | + "version": "7.0.3", | ||
30569 | + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", | ||
30570 | + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" | ||
30571 | + }, | ||
30572 | + "find-up": { | ||
30573 | + "version": "3.0.0", | ||
30574 | + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", | ||
30575 | + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", | ||
30576 | + "requires": { | ||
30577 | + "locate-path": "^3.0.0" | ||
30578 | + } | ||
30579 | + }, | ||
30580 | + "is-fullwidth-code-point": { | ||
30581 | + "version": "2.0.0", | ||
30582 | + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", | ||
30583 | + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" | ||
30584 | + }, | ||
30585 | + "isarray": { | ||
30586 | + "version": "2.0.5", | ||
30587 | + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", | ||
30588 | + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" | ||
30589 | + }, | ||
30590 | + "locate-path": { | ||
30591 | + "version": "3.0.0", | ||
30592 | + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", | ||
30593 | + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", | ||
30594 | + "requires": { | ||
30595 | + "p-locate": "^3.0.0", | ||
30596 | + "path-exists": "^3.0.0" | ||
30597 | + } | ||
30598 | + }, | ||
30599 | + "p-locate": { | ||
30600 | + "version": "3.0.0", | ||
30601 | + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", | ||
30602 | + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", | ||
30603 | + "requires": { | ||
30604 | + "p-limit": "^2.0.0" | ||
30605 | + } | ||
30606 | + }, | ||
30607 | + "string-width": { | ||
30608 | + "version": "3.1.0", | ||
30609 | + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", | ||
30610 | + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", | ||
30611 | + "requires": { | ||
30612 | + "emoji-regex": "^7.0.1", | ||
30613 | + "is-fullwidth-code-point": "^2.0.0", | ||
30614 | + "strip-ansi": "^5.1.0" | ||
30615 | + } | ||
30616 | + }, | ||
30617 | + "strip-ansi": { | ||
30618 | + "version": "5.2.0", | ||
30619 | + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", | ||
30620 | + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", | ||
30621 | + "requires": { | ||
30622 | + "ansi-regex": "^4.1.0" | ||
30623 | + } | ||
30624 | + }, | ||
30625 | + "wrap-ansi": { | ||
30626 | + "version": "5.1.0", | ||
30627 | + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", | ||
30628 | + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", | ||
30629 | + "requires": { | ||
30630 | + "ansi-styles": "^3.2.0", | ||
30631 | + "string-width": "^3.0.0", | ||
30632 | + "strip-ansi": "^5.0.0" | ||
30633 | + } | ||
30634 | + }, | ||
30635 | + "yargs": { | ||
30636 | + "version": "13.3.2", | ||
30637 | + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", | ||
30638 | + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", | ||
30639 | + "requires": { | ||
30640 | + "cliui": "^5.0.0", | ||
30641 | + "find-up": "^3.0.0", | ||
30642 | + "get-caller-file": "^2.0.1", | ||
30643 | + "require-directory": "^2.1.1", | ||
30644 | + "require-main-filename": "^2.0.0", | ||
30645 | + "set-blocking": "^2.0.0", | ||
30646 | + "string-width": "^3.0.0", | ||
30647 | + "which-module": "^2.0.0", | ||
30648 | + "y18n": "^4.0.0", | ||
30649 | + "yargs-parser": "^13.1.2" | ||
30650 | + } | ||
30651 | + }, | ||
30652 | + "yargs-parser": { | ||
30653 | + "version": "13.1.2", | ||
30654 | + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", | ||
30655 | + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", | ||
30656 | + "requires": { | ||
30657 | + "camelcase": "^5.0.0", | ||
30658 | + "decamelize": "^1.2.0" | ||
30659 | + } | ||
30660 | + } | ||
30661 | + } | ||
30662 | + }, | ||
30183 | "qs": { | 30663 | "qs": { |
30184 | "version": "6.7.0", | 30664 | "version": "6.7.0", |
30185 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", | 30665 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", |
... | @@ -30669,6 +31149,14 @@ | ... | @@ -30669,6 +31149,14 @@ |
30669 | } | 31149 | } |
30670 | } | 31150 | } |
30671 | }, | 31151 | }, |
31152 | + "react-spinners": { | ||
31153 | + "version": "0.11.0", | ||
31154 | + "resolved": "https://registry.npmjs.org/react-spinners/-/react-spinners-0.11.0.tgz", | ||
31155 | + "integrity": "sha512-rDZc0ABWn/M1OryboGsWVmIPg8uYWl0L35jPUhr40+Yg+syVPjeHwvnB7XWaRpaKus3M0cG9BiJA+ZB0dAwWyw==", | ||
31156 | + "requires": { | ||
31157 | + "@emotion/react": "^11.1.4" | ||
31158 | + } | ||
31159 | + }, | ||
30672 | "read-pkg": { | 31160 | "read-pkg": { |
30673 | "version": "5.2.0", | 31161 | "version": "5.2.0", |
30674 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", | 31162 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", |
... | @@ -32283,6 +32771,11 @@ | ... | @@ -32283,6 +32771,11 @@ |
32283 | } | 32771 | } |
32284 | } | 32772 | } |
32285 | }, | 32773 | }, |
32774 | + "stylis": { | ||
32775 | + "version": "4.0.10", | ||
32776 | + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.10.tgz", | ||
32777 | + "integrity": "sha512-m3k+dk7QeJw660eIKRRn3xPF6uuvHs/FFzjX3HQ5ove0qYsiygoAhwn5a3IYKaZPo5LrYD0rfVmtv1gNY1uYwg==" | ||
32778 | + }, | ||
32286 | "supports-color": { | 32779 | "supports-color": { |
32287 | "version": "7.2.0", | 32780 | "version": "7.2.0", |
32288 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", | 32781 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", | ... | ... |
... | @@ -14,6 +14,7 @@ | ... | @@ -14,6 +14,7 @@ |
14 | "highcharts": "^9.2.0", | 14 | "highcharts": "^9.2.0", |
15 | "highcharts-react-official": "^3.0.0", | 15 | "highcharts-react-official": "^3.0.0", |
16 | "moment": "^2.29.1", | 16 | "moment": "^2.29.1", |
17 | + "qrcode": "^1.4.4", | ||
17 | "react": "^17.0.2", | 18 | "react": "^17.0.2", |
18 | "react-dom": "^17.0.2", | 19 | "react-dom": "^17.0.2", |
19 | "react-router-dom": "^5.2.0", | 20 | "react-router-dom": "^5.2.0", |
... | @@ -52,6 +53,7 @@ | ... | @@ -52,6 +53,7 @@ |
52 | ] | 53 | ] |
53 | }, | 54 | }, |
54 | "devDependencies": { | 55 | "devDependencies": { |
56 | + "@types/qrcode": "^1.4.1", | ||
55 | "@types/react-router-dom": "^5.1.8", | 57 | "@types/react-router-dom": "^5.1.8", |
56 | "@types/styled-components": "^5.1.12", | 58 | "@types/styled-components": "^5.1.12", |
57 | "@types/validator": "^13.6.3", | 59 | "@types/validator": "^13.6.3", | ... | ... |
... | @@ -9,6 +9,12 @@ export const token = atom({ | ... | @@ -9,6 +9,12 @@ export const token = atom({ |
9 | effects_UNSTABLE : [persistAtom], | 9 | effects_UNSTABLE : [persistAtom], |
10 | }); | 10 | }); |
11 | 11 | ||
12 | +export const userId = atom({ | ||
13 | + key : 'userId', | ||
14 | + default : null, | ||
15 | + effects_UNSTABLE : [persistAtom], | ||
16 | +}); | ||
17 | + | ||
12 | export const userTypeCd = atom({ | 18 | export const userTypeCd = atom({ |
13 | key : 'userTypeCd', | 19 | key : 'userTypeCd', |
14 | default : 'NORMAL', | 20 | default : 'NORMAL', | ... | ... |
... | @@ -23,6 +23,7 @@ const LoginContainer = (props : LoginProps) => { | ... | @@ -23,6 +23,7 @@ const LoginContainer = (props : LoginProps) => { |
23 | }); | 23 | }); |
24 | 24 | ||
25 | const [token, setToken] = useRecoilState(recoilUtil.token); | 25 | const [token, setToken] = useRecoilState(recoilUtil.token); |
26 | + const [userId, setUserId] = useRecoilState(recoilUtil.userId); | ||
26 | const [userTypeCd, setUserTypeCd] = useRecoilState(recoilUtil.userTypeCd); | 27 | const [userTypeCd, setUserTypeCd] = useRecoilState(recoilUtil.userTypeCd); |
27 | 28 | ||
28 | 29 | ||
... | @@ -58,12 +59,13 @@ const LoginContainer = (props : LoginProps) => { | ... | @@ -58,12 +59,13 @@ const LoginContainer = (props : LoginProps) => { |
58 | const result : any = await authApi.login(loginForm); | 59 | const result : any = await authApi.login(loginForm); |
59 | if(result.statusText === 'OK' && result.data.userTypeCd !== 'NORMAL') { | 60 | if(result.statusText === 'OK' && result.data.userTypeCd !== 'NORMAL') { |
60 | setToken(result.data.token); | 61 | setToken(result.data.token); |
62 | + setUserId(loginForm.userId); | ||
61 | setUserTypeCd(result.data.userTypeCd); | 63 | setUserTypeCd(result.data.userTypeCd); |
62 | Alert.onSuccess('로그인 성공, 메인 화면으로 이동합니다.', () => props.history.push('/')); | 64 | Alert.onSuccess('로그인 성공, 메인 화면으로 이동합니다.', () => props.history.push('/')); |
63 | } else if(result.data.userTypeCd === 'NORMAL') { | 65 | } else if(result.data.userTypeCd === 'NORMAL') { |
64 | Alert.onError('권한이 없는 유저입니다.', () => props.history.push('/')); | 66 | Alert.onError('권한이 없는 유저입니다.', () => props.history.push('/')); |
65 | } | 67 | } |
66 | - } catch(e) { | 68 | + } catch(e : any) { |
67 | Alert.onError(e.response.data.error, () => null); | 69 | Alert.onError(e.response.data.error, () => null); |
68 | } | 70 | } |
69 | 71 | ... | ... |
... | @@ -10,6 +10,8 @@ import * as Alert from '../../../util/alertMessage'; | ... | @@ -10,6 +10,8 @@ import * as Alert from '../../../util/alertMessage'; |
10 | 10 | ||
11 | import { doctorApi, medicineApi } from '../../../api'; | 11 | import { doctorApi, medicineApi } from '../../../api'; |
12 | 12 | ||
13 | +import QRCode from 'qrcode'; | ||
14 | + | ||
13 | 15 | ||
14 | //toDo : Generate QR Code By Medicine Id | 16 | //toDo : Generate QR Code By Medicine Id |
15 | 17 | ||
... | @@ -18,6 +20,7 @@ type DoctorMenuProps = RouteComponentProps | ... | @@ -18,6 +20,7 @@ type DoctorMenuProps = RouteComponentProps |
18 | const DoctorMenuContainer = (props : DoctorMenuProps) => { | 20 | const DoctorMenuContainer = (props : DoctorMenuProps) => { |
19 | 21 | ||
20 | const token = useRecoilValue(recoilUtil.token); | 22 | const token = useRecoilValue(recoilUtil.token); |
23 | + const userId = useRecoilValue(recoilUtil.userId); | ||
21 | const [loading, setLoading] = useRecoilState(recoilUtil.loading); | 24 | const [loading, setLoading] = useRecoilState(recoilUtil.loading); |
22 | 25 | ||
23 | const [doctorInfo, setDoctorInfo] = useState<any>({ | 26 | const [doctorInfo, setDoctorInfo] = useState<any>({ |
... | @@ -52,9 +55,13 @@ const DoctorMenuContainer = (props : DoctorMenuProps) => { | ... | @@ -52,9 +55,13 @@ const DoctorMenuContainer = (props : DoctorMenuProps) => { |
52 | const [newPatientSearchResult, setNewPatientSearchResult] = useState<any | null>(null); | 55 | const [newPatientSearchResult, setNewPatientSearchResult] = useState<any | null>(null); |
53 | 56 | ||
54 | const [prescribeModal, setPrescribeModal] = useState<boolean>(false); | 57 | const [prescribeModal, setPrescribeModal] = useState<boolean>(false); |
58 | + const [prescribeModalStep, setPrescribeModalStep] = useState<number>(1); | ||
55 | const [searchMedicineKeyword, setSearchMedicineKeyword] = useState<string>(''); | 59 | const [searchMedicineKeyword, setSearchMedicineKeyword] = useState<string>(''); |
56 | const [medicineList, setMedicineList] = useState<any>([]); | 60 | const [medicineList, setMedicineList] = useState<any>([]); |
57 | const [prescribeMedicine, setPrescribeMedicine] = useState<any>(null); | 61 | const [prescribeMedicine, setPrescribeMedicine] = useState<any>(null); |
62 | + const [dosage, setDosage] = useState<string>('1'); | ||
63 | + | ||
64 | + const [qrcodeUrl, setQrcodeUrl] = useState<string | null>(null); | ||
58 | 65 | ||
59 | 66 | ||
60 | const fetchData = async() => { | 67 | const fetchData = async() => { |
... | @@ -213,9 +220,11 @@ const DoctorMenuContainer = (props : DoctorMenuProps) => { | ... | @@ -213,9 +220,11 @@ const DoctorMenuContainer = (props : DoctorMenuProps) => { |
213 | setEditModal(false); | 220 | setEditModal(false); |
214 | setEditPatientInfo(''); | 221 | setEditPatientInfo(''); |
215 | setPrescribeModal(false); | 222 | setPrescribeModal(false); |
223 | + setPrescribeModalStep(1); | ||
216 | setSearchMedicineKeyword(''); | 224 | setSearchMedicineKeyword(''); |
217 | setMedicineList([]); | 225 | setMedicineList([]); |
218 | setPrescribeMedicine(null); | 226 | setPrescribeMedicine(null); |
227 | + setDosage('1'); | ||
219 | }; | 228 | }; |
220 | 229 | ||
221 | const onGoBottleDetail = (bottleId : number) => { | 230 | const onGoBottleDetail = (bottleId : number) => { |
... | @@ -233,7 +242,6 @@ const DoctorMenuContainer = (props : DoctorMenuProps) => { | ... | @@ -233,7 +242,6 @@ const DoctorMenuContainer = (props : DoctorMenuProps) => { |
233 | setLoading(true); | 242 | setLoading(true); |
234 | const res = await medicineApi.searchMedicine(token, searchMedicineKeyword); | 243 | const res = await medicineApi.searchMedicine(token, searchMedicineKeyword); |
235 | if(res.statusText === 'OK') { | 244 | if(res.statusText === 'OK') { |
236 | - console.log(res.data.medicineList) | ||
237 | setMedicineList(res.data.medicineList); | 245 | setMedicineList(res.data.medicineList); |
238 | } | 246 | } |
239 | setLoading(false); | 247 | setLoading(false); |
... | @@ -242,9 +250,32 @@ const DoctorMenuContainer = (props : DoctorMenuProps) => { | ... | @@ -242,9 +250,32 @@ const DoctorMenuContainer = (props : DoctorMenuProps) => { |
242 | } | 250 | } |
243 | }; | 251 | }; |
244 | 252 | ||
253 | + const onSetDosage = (e : React.ChangeEvent<HTMLInputElement>) => { | ||
254 | + setDosage(e.target.value); | ||
255 | + }; | ||
256 | + | ||
257 | + const onSetNextStepPrescribe = () => { | ||
258 | + if(prescribeMedicine) setPrescribeModalStep(prescribeModalStep + 1); | ||
259 | + else Alert.onWarning('먼저 처방할 약을 선택해야 합니다.', () => null); | ||
260 | + }; | ||
261 | + | ||
262 | + const onSetPrevStepPrescribe = () => { | ||
263 | + if(prescribeModalStep > 1) setPrescribeModalStep(prescribeModalStep - 1); | ||
264 | + }; | ||
265 | + | ||
245 | const onPrescribeSubmit = async() => { | 266 | const onPrescribeSubmit = async() => { |
246 | - //toDo : 처방해서, QR코드 생성 | 267 | + Alert.onCheck(`${prescribeMedicine.name}(일 복용량:${dosage})\n을 처방하시겠습니까?`, async () => { |
247 | - Alert.onWarning('작업 중입니다.', () => null); | 268 | + setQrcodeUrl(await QRCode.toDataURL(`${prescribeMedicine.name}/${prescribeMedicine.medicineId}/${dosage}/${userId}`, { |
269 | + type : "image/png", | ||
270 | + color : {dark : '#337DFF', light : '#FFF'}, | ||
271 | + })); | ||
272 | + Alert.onSuccess('처방 정보가 생성 되었습니다.', () => onSetNextStepPrescribe()); | ||
273 | + }, () => null); | ||
274 | + }; | ||
275 | + | ||
276 | + const onPrintQrcode = async() => { | ||
277 | + //toDo : QR코드 출력 | ||
278 | + Alert.onWarning('준비 중입니다.', () => null); | ||
248 | }; | 279 | }; |
249 | 280 | ||
250 | const onPrescribeCancel = () => { | 281 | const onPrescribeCancel = () => { |
... | @@ -298,14 +329,21 @@ const DoctorMenuContainer = (props : DoctorMenuProps) => { | ... | @@ -298,14 +329,21 @@ const DoctorMenuContainer = (props : DoctorMenuProps) => { |
298 | onCloseModal = {onCloseModal} | 329 | onCloseModal = {onCloseModal} |
299 | 330 | ||
300 | prescribeModal = {prescribeModal} | 331 | prescribeModal = {prescribeModal} |
332 | + prescribeModalStep = {prescribeModalStep} | ||
333 | + onSetNextStepPrescribe = {onSetNextStepPrescribe} | ||
334 | + onSetPrevStepPrescribe = {onSetPrevStepPrescribe} | ||
301 | setPrescribeModal = {setPrescribeModal} | 335 | setPrescribeModal = {setPrescribeModal} |
302 | searchMedicineKeyword = {searchMedicineKeyword} | 336 | searchMedicineKeyword = {searchMedicineKeyword} |
303 | onSetSearchMedicineKeyword = {onSetSearchMedicineKeyword} | 337 | onSetSearchMedicineKeyword = {onSetSearchMedicineKeyword} |
304 | medicineList = {medicineList} | 338 | medicineList = {medicineList} |
305 | searchMedicine = {searchMedicine} | 339 | searchMedicine = {searchMedicine} |
306 | prescribeMedicine = {prescribeMedicine} | 340 | prescribeMedicine = {prescribeMedicine} |
341 | + dosage = {dosage} | ||
342 | + onSetDosage = {onSetDosage} | ||
343 | + qrcodeUrl = {qrcodeUrl} | ||
307 | setPrescribeMedicine = {setPrescribeMedicine} | 344 | setPrescribeMedicine = {setPrescribeMedicine} |
308 | onPrescribeSubmit = {onPrescribeSubmit} | 345 | onPrescribeSubmit = {onPrescribeSubmit} |
346 | + onPrintQrcode = {onPrintQrcode} | ||
309 | onPrescribeCancel = {onPrescribeCancel} | 347 | onPrescribeCancel = {onPrescribeCancel} |
310 | 348 | ||
311 | newPatientSearchResult = {newPatientSearchResult} | 349 | newPatientSearchResult = {newPatientSearchResult} | ... | ... |
... | @@ -48,6 +48,10 @@ interface DoctorMenuProps { | ... | @@ -48,6 +48,10 @@ interface DoctorMenuProps { |
48 | 48 | ||
49 | prescribeModal : boolean; | 49 | prescribeModal : boolean; |
50 | setPrescribeModal : any; | 50 | setPrescribeModal : any; |
51 | + prescribeModalStep : number; | ||
52 | + onSetNextStepPrescribe : () => void; | ||
53 | + onSetPrevStepPrescribe : () => void; | ||
54 | + | ||
51 | searchMedicineKeyword : string; | 55 | searchMedicineKeyword : string; |
52 | onSetSearchMedicineKeyword : React.ChangeEventHandler<HTMLInputElement>; | 56 | onSetSearchMedicineKeyword : React.ChangeEventHandler<HTMLInputElement>; |
53 | 57 | ||
... | @@ -57,7 +61,13 @@ interface DoctorMenuProps { | ... | @@ -57,7 +61,13 @@ interface DoctorMenuProps { |
57 | prescribeMedicine : any; | 61 | prescribeMedicine : any; |
58 | setPrescribeMedicine : (arg0 : any) => void; | 62 | setPrescribeMedicine : (arg0 : any) => void; |
59 | 63 | ||
64 | + dosage : string; | ||
65 | + onSetDosage : React.ChangeEventHandler<HTMLInputElement>; | ||
66 | + | ||
67 | + qrcodeUrl : string | null; | ||
68 | + | ||
60 | onPrescribeSubmit : () => void; | 69 | onPrescribeSubmit : () => void; |
70 | + onPrintQrcode : () => void; | ||
61 | onPrescribeCancel : () => void; | 71 | onPrescribeCancel : () => void; |
62 | } | 72 | } |
63 | 73 | ||
... | @@ -189,53 +199,105 @@ const DoctorMenuPresenter = (props : DoctorMenuProps) => { | ... | @@ -189,53 +199,105 @@ const DoctorMenuPresenter = (props : DoctorMenuProps) => { |
189 | <styled.ModalContentWrapper> | 199 | <styled.ModalContentWrapper> |
190 | <styled.ModalContent> | 200 | <styled.ModalContent> |
191 | <styled.MedicineSearchTitle> | 201 | <styled.MedicineSearchTitle> |
192 | - 약 검색 | 202 | + { |
203 | + props.prescribeModalStep === 1 ? | ||
204 | + '약 검색' : | ||
205 | + props.prescribeModalStep === 2 ? | ||
206 | + '복용량 입력' : | ||
207 | + '처방 정보 QR코드' | ||
208 | + } | ||
193 | </styled.MedicineSearchTitle> | 209 | </styled.MedicineSearchTitle> |
194 | - <styled.MedicineSearchInputWrapper> | ||
195 | - <styled.MedicineSearchInput | ||
196 | - placeholder = '증상, 또는 약 이름을 검색하세요.' | ||
197 | - onChange = {props.onSetSearchMedicineKeyword} | ||
198 | - value = {props.searchMedicineKeyword} | ||
199 | - /> | ||
200 | - <styled.MedicineSearchButton | ||
201 | - onClick = {props.searchMedicine} | ||
202 | - > | ||
203 | - <styled.MedicineSearchButtonImg src = {lensImg}/> | ||
204 | - </styled.MedicineSearchButton> | ||
205 | - </styled.MedicineSearchInputWrapper> | ||
206 | - <styled.MedicineSearchResultWrapper> | ||
207 | { | 210 | { |
208 | - props.medicineList.length ? | 211 | + props.prescribeModalStep === 1 ? |
209 | - props.medicineList.map((medicine : any) => { | 212 | + <> |
210 | - return ( | 213 | + <styled.MedicineSearchInputWrapper> |
211 | - <styled.MedicineSearchResultEach | 214 | + <styled.MedicineSearchInput |
212 | - key = {medicine.medicineId} | 215 | + placeholder = '증상, 또는 약 이름을 검색하세요.' |
213 | - onClick = {() => props.setPrescribeMedicine(medicine)} | 216 | + onChange = {props.onSetSearchMedicineKeyword} |
214 | - > | 217 | + value = {props.searchMedicineKeyword} |
215 | - <styled.MedicineSearchResultEachInfo> | 218 | + /> |
216 | - {medicine.name} | 219 | + <styled.MedicineSearchButton |
217 | - </styled.MedicineSearchResultEachInfo> | 220 | + onClick = {props.searchMedicine} |
218 | - <styled.MedicineSearchButtonImg | 221 | + > |
219 | - src = { | 222 | + <styled.MedicineSearchButtonImg src = {lensImg}/> |
220 | - props.prescribeMedicine && props.prescribeMedicine.medicineId === medicine.medicineId ? | 223 | + </styled.MedicineSearchButton> |
221 | - check : uncheck | 224 | + </styled.MedicineSearchInputWrapper> |
222 | - } | 225 | + <styled.MedicineSearchResultWrapper> |
223 | - /> | 226 | + { |
224 | - </styled.MedicineSearchResultEach> | 227 | + props.medicineList.length ? |
225 | - ) | 228 | + props.medicineList.map((medicine : any) => { |
226 | - }) : | 229 | + return ( |
227 | - <styled.NothingWrapper style = {{fontSize : 13,}}> | 230 | + <styled.MedicineSearchResultEach |
228 | - 🤔검색 결과가 없습니다. | 231 | + key = {medicine.medicineId} |
229 | - </styled.NothingWrapper> | 232 | + onClick = {() => props.setPrescribeMedicine( |
233 | + props.prescribeMedicine && props.prescribeMedicine.medicineId === medicine.medicineId ? | ||
234 | + null : medicine | ||
235 | + )} | ||
236 | + > | ||
237 | + <styled.MedicineSearchResultEachInfo> | ||
238 | + {medicine.name} | ||
239 | + </styled.MedicineSearchResultEachInfo> | ||
240 | + <styled.MedicineSearchButtonImg | ||
241 | + src = { | ||
242 | + props.prescribeMedicine && props.prescribeMedicine.medicineId === medicine.medicineId ? | ||
243 | + check : uncheck | ||
244 | + } | ||
245 | + /> | ||
246 | + </styled.MedicineSearchResultEach> | ||
247 | + ) | ||
248 | + }) : | ||
249 | + <styled.NothingWrapper style = {{fontSize : 13,}}> | ||
250 | + 🤔검색 결과가 없습니다. | ||
251 | + </styled.NothingWrapper> | ||
252 | + } | ||
253 | + </styled.MedicineSearchResultWrapper> | ||
254 | + </> | ||
255 | + : | ||
256 | + props.prescribeModalStep === 2 ? | ||
257 | + <styled.MedicineDosageSetWrapper> | ||
258 | + <styled.MedicineDosageInfo> | ||
259 | + *하루 복용량을 입력하세요. | ||
260 | + </styled.MedicineDosageInfo> | ||
261 | + <styled.MedicineDosageInput | ||
262 | + value = {props.dosage} | ||
263 | + onChange = {props.onSetDosage} | ||
264 | + /> | ||
265 | + </styled.MedicineDosageSetWrapper> | ||
266 | + : | ||
267 | + <styled.MedicineQRCodeWrapper> | ||
268 | + <styled.MedicineQRCodeInfo> | ||
269 | + *어플리케이션에서 QR코드를 스캔하면 약병에 약이 등록됩니다. | ||
270 | + </styled.MedicineQRCodeInfo> | ||
271 | + { | ||
272 | + props.qrcodeUrl ? | ||
273 | + <styled.MedicineQRCode src = {props.qrcodeUrl}/> : null | ||
274 | + } | ||
275 | + </styled.MedicineQRCodeWrapper> | ||
230 | } | 276 | } |
231 | - </styled.MedicineSearchResultWrapper> | ||
232 | <styled.MedicinePrescribeButtonWrapper> | 277 | <styled.MedicinePrescribeButtonWrapper> |
233 | - <styled.MedicinePrescribeButton | 278 | + { |
234 | - isClose = {false} | 279 | + props.prescribeModalStep === 1 ? |
235 | - onClick = {props.onPrescribeSubmit} | 280 | + <styled.MedicinePrescribeButton |
236 | - > | 281 | + isClose = {false} |
237 | - 처방 | 282 | + onClick = {props.onSetNextStepPrescribe} |
238 | - </styled.MedicinePrescribeButton> | 283 | + > |
284 | + 다음 단계 | ||
285 | + </styled.MedicinePrescribeButton> : | ||
286 | + props.prescribeModalStep === 2 ? | ||
287 | + <styled.MedicinePrescribeButton | ||
288 | + isClose = {false} | ||
289 | + onClick = {props.onPrescribeSubmit} | ||
290 | + > | ||
291 | + 처방 | ||
292 | + </styled.MedicinePrescribeButton> | ||
293 | + : | ||
294 | + <styled.MedicinePrescribeButton | ||
295 | + isClose = {false} | ||
296 | + onClick = {props.onPrintQrcode} | ||
297 | + > | ||
298 | + 출력 | ||
299 | + </styled.MedicinePrescribeButton> | ||
300 | + } | ||
239 | <styled.MedicinePrescribeButton | 301 | <styled.MedicinePrescribeButton |
240 | isClose = {true} | 302 | isClose = {true} |
241 | onClick = {props.onPrescribeCancel} | 303 | onClick = {props.onPrescribeCancel} | ... | ... |
... | @@ -436,6 +436,7 @@ export const MedicineSearchButtonImg = styled.img ` | ... | @@ -436,6 +436,7 @@ export const MedicineSearchButtonImg = styled.img ` |
436 | height : 15px; | 436 | height : 15px; |
437 | width : 15px; | 437 | width : 15px; |
438 | 438 | ||
439 | + transition : .25s all; | ||
439 | `; | 440 | `; |
440 | 441 | ||
441 | export const MedicineSearchResultWrapper = styled.div ` | 442 | export const MedicineSearchResultWrapper = styled.div ` |
... | @@ -499,6 +500,92 @@ export const MedicineSelectButtonImg = styled.img ` | ... | @@ -499,6 +500,92 @@ export const MedicineSelectButtonImg = styled.img ` |
499 | width : 15px; | 500 | width : 15px; |
500 | `; | 501 | `; |
501 | 502 | ||
503 | +export const MedicineDosageSetWrapper = styled.div ` | ||
504 | + width : 80%; | ||
505 | + | ||
506 | + display : flex; | ||
507 | + flex-direction : column; | ||
508 | + | ||
509 | + justify-content : center; | ||
510 | + align-items : center; | ||
511 | + | ||
512 | + border : none; | ||
513 | + | ||
514 | + margin : 20px 0; | ||
515 | + | ||
516 | + height : 200px; | ||
517 | +`; | ||
518 | + | ||
519 | +export const MedicineDosageInfo = styled.div ` | ||
520 | + font-size : 15px; | ||
521 | + font-weight : 500; | ||
522 | + | ||
523 | + color : #a0a0a0; | ||
524 | + | ||
525 | + width : 100%; | ||
526 | + margin : 0 0 20px 0; | ||
527 | + | ||
528 | + border : none; | ||
529 | + background-color : transparent; | ||
530 | + | ||
531 | + text-align : center; | ||
532 | +`; | ||
533 | + | ||
534 | +export const MedicineDosageInput = styled.input.attrs({ | ||
535 | + type : 'number', | ||
536 | + min : '1', | ||
537 | + max : '3', | ||
538 | +}) ` | ||
539 | + width : 40%; | ||
540 | + | ||
541 | + padding : 10px 20px; | ||
542 | + color : #337DFF; | ||
543 | + font-size : 20px; | ||
544 | + | ||
545 | + font-weight : 700; | ||
546 | + | ||
547 | + border : none; | ||
548 | + border-bottom : 1px solid #337DFF; | ||
549 | + | ||
550 | + display : flex; | ||
551 | + flex-direction : row; | ||
552 | + | ||
553 | + text-align : center; | ||
554 | + | ||
555 | + transition : .25s all; | ||
556 | +`; | ||
557 | + | ||
558 | +export const MedicineQRCodeWrapper = styled.div ` | ||
559 | + width : 80%; | ||
560 | + height : 200px; | ||
561 | + | ||
562 | + display : flex; | ||
563 | + flex-direction : column; | ||
564 | + | ||
565 | + justify-content : center; | ||
566 | + align-items : center; | ||
567 | + | ||
568 | + margin : 20px 0; | ||
569 | + | ||
570 | + border : none; | ||
571 | +`; | ||
572 | + | ||
573 | +export const MedicineQRCodeInfo = styled.div ` | ||
574 | + font-size : 15px; | ||
575 | + font-weight : 500; | ||
576 | + | ||
577 | + color : #a0a0a0; | ||
578 | + | ||
579 | + text-align : center; | ||
580 | +`; | ||
581 | + | ||
582 | +export const MedicineQRCode = styled.img ` | ||
583 | + margin : 10px 0 0 0; | ||
584 | + | ||
585 | + height : 170px; | ||
586 | + width : 170px; | ||
587 | +`; | ||
588 | + | ||
502 | export const MedicinePrescribeButtonWrapper = styled.div ` | 589 | export const MedicinePrescribeButtonWrapper = styled.div ` |
503 | margin : 20px 0 0 0; | 590 | margin : 20px 0 0 0; |
504 | 591 | ... | ... |
This diff could not be displayed because it is too large.
-
Please register or login to post a comment