tres
This commit is contained in:
		
							parent
							
								
									9bd36e4d1a
								
							
						
					
					
						commit
						541545b166
					
				
							
								
								
									
										6
									
								
								.idea/vcs.xml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								.idea/vcs.xml
									
									
									
										generated
									
									
									
										Normal file
									
								
							@ -0,0 +1,6 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8"?>
 | 
			
		||||
<project version="4">
 | 
			
		||||
  <component name="VcsDirectoryMappings">
 | 
			
		||||
    <mapping directory="$PROJECT_DIR$" vcs="Git" />
 | 
			
		||||
  </component>
 | 
			
		||||
</project>
 | 
			
		||||
							
								
								
									
										454
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										454
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							@ -11,8 +11,14 @@
 | 
			
		||||
        "@testing-library/jest-dom": "^5.17.0",
 | 
			
		||||
        "@testing-library/react": "^13.4.0",
 | 
			
		||||
        "@testing-library/user-event": "^13.5.0",
 | 
			
		||||
        "axios": "^1.6.2",
 | 
			
		||||
        "crypto-browserify": "^3.12.0",
 | 
			
		||||
        "dotenv": "^16.3.1",
 | 
			
		||||
        "os-browserify": "^0.3.0",
 | 
			
		||||
        "path-browserify": "^1.0.1",
 | 
			
		||||
        "react": "^18.2.0",
 | 
			
		||||
        "react-dom": "^18.2.0",
 | 
			
		||||
        "react-router-dom": "^6.19.0",
 | 
			
		||||
        "react-scripts": "5.0.1",
 | 
			
		||||
        "web-vitals": "^2.1.4"
 | 
			
		||||
      }
 | 
			
		||||
@ -3261,6 +3267,14 @@
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/@remix-run/router": {
 | 
			
		||||
      "version": "1.12.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.12.0.tgz",
 | 
			
		||||
      "integrity": "sha512-2hXv036Bux90e1GXTWSMfNzfDDK8LA8JYEWfyHxzvwdp6GyoWEovKc9cotb3KCKmkdwsIBuFGX7ScTWyiHv7Eg==",
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/@rollup/plugin-babel": {
 | 
			
		||||
      "version": "5.3.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz",
 | 
			
		||||
@ -5235,6 +5249,22 @@
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
 | 
			
		||||
      "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/asn1.js": {
 | 
			
		||||
      "version": "5.4.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz",
 | 
			
		||||
      "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "bn.js": "^4.0.0",
 | 
			
		||||
        "inherits": "^2.0.1",
 | 
			
		||||
        "minimalistic-assert": "^1.0.0",
 | 
			
		||||
        "safer-buffer": "^2.1.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/asn1.js/node_modules/bn.js": {
 | 
			
		||||
      "version": "4.12.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
 | 
			
		||||
      "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/ast-types-flow": {
 | 
			
		||||
      "version": "0.0.8",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz",
 | 
			
		||||
@ -5321,6 +5351,29 @@
 | 
			
		||||
        "node": ">=4"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/axios": {
 | 
			
		||||
      "version": "1.6.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.2.tgz",
 | 
			
		||||
      "integrity": "sha512-7i24Ri4pmDRfJTR7LDBhsOTtcm+9kjX5WiY1X3wIisx6G9So3pfMkEiU7emUBe46oceVImccTEM3k6C5dbVW8A==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "follow-redirects": "^1.15.0",
 | 
			
		||||
        "form-data": "^4.0.0",
 | 
			
		||||
        "proxy-from-env": "^1.1.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/axios/node_modules/form-data": {
 | 
			
		||||
      "version": "4.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
 | 
			
		||||
      "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "asynckit": "^0.4.0",
 | 
			
		||||
        "combined-stream": "^1.0.8",
 | 
			
		||||
        "mime-types": "^2.1.12"
 | 
			
		||||
      },
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">= 6"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/axobject-query": {
 | 
			
		||||
      "version": "3.2.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz",
 | 
			
		||||
@ -5655,6 +5708,11 @@
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
 | 
			
		||||
      "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/bn.js": {
 | 
			
		||||
      "version": "5.2.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz",
 | 
			
		||||
      "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/body-parser": {
 | 
			
		||||
      "version": "1.20.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz",
 | 
			
		||||
@ -5746,11 +5804,78 @@
 | 
			
		||||
        "node": ">=8"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/brorand": {
 | 
			
		||||
      "version": "1.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/browser-process-hrtime": {
 | 
			
		||||
      "version": "1.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz",
 | 
			
		||||
      "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/browserify-aes": {
 | 
			
		||||
      "version": "1.2.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
 | 
			
		||||
      "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "buffer-xor": "^1.0.3",
 | 
			
		||||
        "cipher-base": "^1.0.0",
 | 
			
		||||
        "create-hash": "^1.1.0",
 | 
			
		||||
        "evp_bytestokey": "^1.0.3",
 | 
			
		||||
        "inherits": "^2.0.1",
 | 
			
		||||
        "safe-buffer": "^5.0.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/browserify-cipher": {
 | 
			
		||||
      "version": "1.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz",
 | 
			
		||||
      "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "browserify-aes": "^1.0.4",
 | 
			
		||||
        "browserify-des": "^1.0.0",
 | 
			
		||||
        "evp_bytestokey": "^1.0.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/browserify-des": {
 | 
			
		||||
      "version": "1.0.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz",
 | 
			
		||||
      "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "cipher-base": "^1.0.1",
 | 
			
		||||
        "des.js": "^1.0.0",
 | 
			
		||||
        "inherits": "^2.0.1",
 | 
			
		||||
        "safe-buffer": "^5.1.2"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/browserify-rsa": {
 | 
			
		||||
      "version": "4.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "bn.js": "^5.0.0",
 | 
			
		||||
        "randombytes": "^2.0.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/browserify-sign": {
 | 
			
		||||
      "version": "4.2.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.2.tgz",
 | 
			
		||||
      "integrity": "sha512-1rudGyeYY42Dk6texmv7c4VcQ0EsvVbLwZkA+AQB7SxvXxmcD93jcHie8bzecJ+ChDlmAm2Qyu0+Ccg5uhZXCg==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "bn.js": "^5.2.1",
 | 
			
		||||
        "browserify-rsa": "^4.1.0",
 | 
			
		||||
        "create-hash": "^1.2.0",
 | 
			
		||||
        "create-hmac": "^1.1.7",
 | 
			
		||||
        "elliptic": "^6.5.4",
 | 
			
		||||
        "inherits": "^2.0.4",
 | 
			
		||||
        "parse-asn1": "^5.1.6",
 | 
			
		||||
        "readable-stream": "^3.6.2",
 | 
			
		||||
        "safe-buffer": "^5.2.1"
 | 
			
		||||
      },
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">= 4"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/browserslist": {
 | 
			
		||||
      "version": "4.22.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz",
 | 
			
		||||
@ -5795,6 +5920,11 @@
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
 | 
			
		||||
      "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/buffer-xor": {
 | 
			
		||||
      "version": "1.0.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
 | 
			
		||||
      "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/builtin-modules": {
 | 
			
		||||
      "version": "3.3.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz",
 | 
			
		||||
@ -5986,6 +6116,15 @@
 | 
			
		||||
        "node": ">=8"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/cipher-base": {
 | 
			
		||||
      "version": "1.0.4",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
 | 
			
		||||
      "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "inherits": "^2.0.1",
 | 
			
		||||
        "safe-buffer": "^5.0.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/cjs-module-lexer": {
 | 
			
		||||
      "version": "1.2.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz",
 | 
			
		||||
@ -6260,6 +6399,45 @@
 | 
			
		||||
        "node": ">=10"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/create-ecdh": {
 | 
			
		||||
      "version": "4.0.4",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz",
 | 
			
		||||
      "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "bn.js": "^4.1.0",
 | 
			
		||||
        "elliptic": "^6.5.3"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/create-ecdh/node_modules/bn.js": {
 | 
			
		||||
      "version": "4.12.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
 | 
			
		||||
      "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/create-hash": {
 | 
			
		||||
      "version": "1.2.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
 | 
			
		||||
      "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "cipher-base": "^1.0.1",
 | 
			
		||||
        "inherits": "^2.0.1",
 | 
			
		||||
        "md5.js": "^1.3.4",
 | 
			
		||||
        "ripemd160": "^2.0.1",
 | 
			
		||||
        "sha.js": "^2.4.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/create-hmac": {
 | 
			
		||||
      "version": "1.1.7",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
 | 
			
		||||
      "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "cipher-base": "^1.0.3",
 | 
			
		||||
        "create-hash": "^1.1.0",
 | 
			
		||||
        "inherits": "^2.0.1",
 | 
			
		||||
        "ripemd160": "^2.0.0",
 | 
			
		||||
        "safe-buffer": "^5.0.1",
 | 
			
		||||
        "sha.js": "^2.4.8"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/cross-spawn": {
 | 
			
		||||
      "version": "7.0.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
 | 
			
		||||
@ -6273,6 +6451,27 @@
 | 
			
		||||
        "node": ">= 8"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/crypto-browserify": {
 | 
			
		||||
      "version": "3.12.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
 | 
			
		||||
      "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "browserify-cipher": "^1.0.0",
 | 
			
		||||
        "browserify-sign": "^4.0.0",
 | 
			
		||||
        "create-ecdh": "^4.0.0",
 | 
			
		||||
        "create-hash": "^1.1.0",
 | 
			
		||||
        "create-hmac": "^1.1.0",
 | 
			
		||||
        "diffie-hellman": "^5.0.0",
 | 
			
		||||
        "inherits": "^2.0.1",
 | 
			
		||||
        "pbkdf2": "^3.0.3",
 | 
			
		||||
        "public-encrypt": "^4.0.0",
 | 
			
		||||
        "randombytes": "^2.0.0",
 | 
			
		||||
        "randomfill": "^1.0.3"
 | 
			
		||||
      },
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": "*"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/crypto-random-string": {
 | 
			
		||||
      "version": "2.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz",
 | 
			
		||||
@ -6836,6 +7035,15 @@
 | 
			
		||||
        "node": ">=6"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/des.js": {
 | 
			
		||||
      "version": "1.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "inherits": "^2.0.1",
 | 
			
		||||
        "minimalistic-assert": "^1.0.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/destroy": {
 | 
			
		||||
      "version": "1.2.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
 | 
			
		||||
@ -6900,6 +7108,21 @@
 | 
			
		||||
        "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/diffie-hellman": {
 | 
			
		||||
      "version": "5.0.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
 | 
			
		||||
      "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "bn.js": "^4.1.0",
 | 
			
		||||
        "miller-rabin": "^4.0.0",
 | 
			
		||||
        "randombytes": "^2.0.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/diffie-hellman/node_modules/bn.js": {
 | 
			
		||||
      "version": "4.12.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
 | 
			
		||||
      "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/dir-glob": {
 | 
			
		||||
      "version": "3.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
 | 
			
		||||
@ -7036,11 +7259,14 @@
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/dotenv": {
 | 
			
		||||
      "version": "10.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz",
 | 
			
		||||
      "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==",
 | 
			
		||||
      "version": "16.3.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz",
 | 
			
		||||
      "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==",
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=10"
 | 
			
		||||
        "node": ">=12"
 | 
			
		||||
      },
 | 
			
		||||
      "funding": {
 | 
			
		||||
        "url": "https://github.com/motdotla/dotenv?sponsor=1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/dotenv-expand": {
 | 
			
		||||
@ -7077,6 +7303,25 @@
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.590.tgz",
 | 
			
		||||
      "integrity": "sha512-hohItzsQcG7/FBsviCYMtQwUSWvVF7NVqPOnJCErWsAshsP/CR2LAXdmq276RbESNdhxiAq5/vRo1g2pxGXVww=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/elliptic": {
 | 
			
		||||
      "version": "6.5.4",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz",
 | 
			
		||||
      "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "bn.js": "^4.11.9",
 | 
			
		||||
        "brorand": "^1.1.0",
 | 
			
		||||
        "hash.js": "^1.0.0",
 | 
			
		||||
        "hmac-drbg": "^1.0.1",
 | 
			
		||||
        "inherits": "^2.0.4",
 | 
			
		||||
        "minimalistic-assert": "^1.0.1",
 | 
			
		||||
        "minimalistic-crypto-utils": "^1.0.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/elliptic/node_modules/bn.js": {
 | 
			
		||||
      "version": "4.12.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
 | 
			
		||||
      "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/emittery": {
 | 
			
		||||
      "version": "0.8.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz",
 | 
			
		||||
@ -8014,6 +8259,15 @@
 | 
			
		||||
        "node": ">=0.8.x"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/evp_bytestokey": {
 | 
			
		||||
      "version": "1.0.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
 | 
			
		||||
      "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "md5.js": "^1.3.4",
 | 
			
		||||
        "safe-buffer": "^5.1.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/execa": {
 | 
			
		||||
      "version": "5.1.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
 | 
			
		||||
@ -8921,6 +9175,28 @@
 | 
			
		||||
        "url": "https://github.com/sponsors/ljharb"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/hash-base": {
 | 
			
		||||
      "version": "3.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "inherits": "^2.0.4",
 | 
			
		||||
        "readable-stream": "^3.6.0",
 | 
			
		||||
        "safe-buffer": "^5.2.0"
 | 
			
		||||
      },
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=4"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/hash.js": {
 | 
			
		||||
      "version": "1.1.7",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
 | 
			
		||||
      "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "inherits": "^2.0.3",
 | 
			
		||||
        "minimalistic-assert": "^1.0.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/hasown": {
 | 
			
		||||
      "version": "2.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz",
 | 
			
		||||
@ -8940,6 +9216,16 @@
 | 
			
		||||
        "he": "bin/he"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/hmac-drbg": {
 | 
			
		||||
      "version": "1.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
 | 
			
		||||
      "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "hash.js": "^1.0.3",
 | 
			
		||||
        "minimalistic-assert": "^1.0.0",
 | 
			
		||||
        "minimalistic-crypto-utils": "^1.0.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/hoopy": {
 | 
			
		||||
      "version": "0.1.4",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz",
 | 
			
		||||
@ -12240,6 +12526,16 @@
 | 
			
		||||
        "tmpl": "1.0.5"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/md5.js": {
 | 
			
		||||
      "version": "1.3.5",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
 | 
			
		||||
      "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "hash-base": "^3.0.0",
 | 
			
		||||
        "inherits": "^2.0.1",
 | 
			
		||||
        "safe-buffer": "^5.1.2"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/mdn-data": {
 | 
			
		||||
      "version": "2.0.4",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz",
 | 
			
		||||
@ -12302,6 +12598,23 @@
 | 
			
		||||
        "node": ">=8.6"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/miller-rabin": {
 | 
			
		||||
      "version": "4.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
 | 
			
		||||
      "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "bn.js": "^4.0.0",
 | 
			
		||||
        "brorand": "^1.0.1"
 | 
			
		||||
      },
 | 
			
		||||
      "bin": {
 | 
			
		||||
        "miller-rabin": "bin/miller-rabin"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/miller-rabin/node_modules/bn.js": {
 | 
			
		||||
      "version": "4.12.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
 | 
			
		||||
      "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/mime": {
 | 
			
		||||
      "version": "1.6.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
 | 
			
		||||
@ -12420,6 +12733,11 @@
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
 | 
			
		||||
      "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/minimalistic-crypto-utils": {
 | 
			
		||||
      "version": "1.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
 | 
			
		||||
      "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/minimatch": {
 | 
			
		||||
      "version": "3.1.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
 | 
			
		||||
@ -12826,6 +13144,11 @@
 | 
			
		||||
        "node": ">= 0.8.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/os-browserify": {
 | 
			
		||||
      "version": "0.3.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
 | 
			
		||||
      "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/p-limit": {
 | 
			
		||||
      "version": "3.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
 | 
			
		||||
@ -12894,6 +13217,18 @@
 | 
			
		||||
        "node": ">=6"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/parse-asn1": {
 | 
			
		||||
      "version": "5.1.6",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz",
 | 
			
		||||
      "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "asn1.js": "^5.2.0",
 | 
			
		||||
        "browserify-aes": "^1.0.0",
 | 
			
		||||
        "evp_bytestokey": "^1.0.0",
 | 
			
		||||
        "pbkdf2": "^3.0.3",
 | 
			
		||||
        "safe-buffer": "^5.1.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/parse-json": {
 | 
			
		||||
      "version": "5.2.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
 | 
			
		||||
@ -12933,6 +13268,11 @@
 | 
			
		||||
        "tslib": "^2.0.3"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/path-browserify": {
 | 
			
		||||
      "version": "1.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz",
 | 
			
		||||
      "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/path-exists": {
 | 
			
		||||
      "version": "4.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
 | 
			
		||||
@ -12975,6 +13315,21 @@
 | 
			
		||||
        "node": ">=8"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/pbkdf2": {
 | 
			
		||||
      "version": "3.1.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz",
 | 
			
		||||
      "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "create-hash": "^1.1.2",
 | 
			
		||||
        "create-hmac": "^1.1.4",
 | 
			
		||||
        "ripemd160": "^2.0.1",
 | 
			
		||||
        "safe-buffer": "^5.0.1",
 | 
			
		||||
        "sha.js": "^2.4.8"
 | 
			
		||||
      },
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=0.12"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/performance-now": {
 | 
			
		||||
      "version": "2.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
 | 
			
		||||
@ -14443,11 +14798,34 @@
 | 
			
		||||
        "node": ">= 0.10"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/proxy-from-env": {
 | 
			
		||||
      "version": "1.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/psl": {
 | 
			
		||||
      "version": "1.9.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz",
 | 
			
		||||
      "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/public-encrypt": {
 | 
			
		||||
      "version": "4.0.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz",
 | 
			
		||||
      "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "bn.js": "^4.1.0",
 | 
			
		||||
        "browserify-rsa": "^4.0.0",
 | 
			
		||||
        "create-hash": "^1.1.0",
 | 
			
		||||
        "parse-asn1": "^5.0.0",
 | 
			
		||||
        "randombytes": "^2.0.1",
 | 
			
		||||
        "safe-buffer": "^5.1.2"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/public-encrypt/node_modules/bn.js": {
 | 
			
		||||
      "version": "4.12.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
 | 
			
		||||
      "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/punycode": {
 | 
			
		||||
      "version": "2.3.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
 | 
			
		||||
@ -14519,6 +14897,15 @@
 | 
			
		||||
        "safe-buffer": "^5.1.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/randomfill": {
 | 
			
		||||
      "version": "1.0.4",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
 | 
			
		||||
      "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "randombytes": "^2.0.5",
 | 
			
		||||
        "safe-buffer": "^5.1.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/range-parser": {
 | 
			
		||||
      "version": "1.2.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
 | 
			
		||||
@ -14739,6 +15126,36 @@
 | 
			
		||||
        "node": ">=0.10.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/react-router": {
 | 
			
		||||
      "version": "6.19.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.19.0.tgz",
 | 
			
		||||
      "integrity": "sha512-0W63PKCZ7+OuQd7Tm+RbkI8kCLmn4GPjDbX61tWljPxWgqTKlEpeQUwPkT1DRjYhF8KSihK0hQpmhU4uxVMcdw==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "@remix-run/router": "1.12.0"
 | 
			
		||||
      },
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      },
 | 
			
		||||
      "peerDependencies": {
 | 
			
		||||
        "react": ">=16.8"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/react-router-dom": {
 | 
			
		||||
      "version": "6.19.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.19.0.tgz",
 | 
			
		||||
      "integrity": "sha512-N6dWlcgL2w0U5HZUUqU2wlmOrSb3ighJmtQ438SWbhB1yuLTXQ8yyTBMK3BSvVjp7gBtKurT554nCtMOgxCZmQ==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "@remix-run/router": "1.12.0",
 | 
			
		||||
        "react-router": "6.19.0"
 | 
			
		||||
      },
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      },
 | 
			
		||||
      "peerDependencies": {
 | 
			
		||||
        "react": ">=16.8",
 | 
			
		||||
        "react-dom": ">=16.8"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/react-scripts": {
 | 
			
		||||
      "version": "5.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/react-scripts/-/react-scripts-5.0.1.tgz",
 | 
			
		||||
@ -14811,6 +15228,14 @@
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/react-scripts/node_modules/dotenv": {
 | 
			
		||||
      "version": "10.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz",
 | 
			
		||||
      "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==",
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=10"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/read-cache": {
 | 
			
		||||
      "version": "1.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
 | 
			
		||||
@ -15146,6 +15571,15 @@
 | 
			
		||||
        "url": "https://github.com/sponsors/isaacs"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/ripemd160": {
 | 
			
		||||
      "version": "2.0.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
 | 
			
		||||
      "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "hash-base": "^3.0.0",
 | 
			
		||||
        "inherits": "^2.0.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/rollup": {
 | 
			
		||||
      "version": "2.79.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz",
 | 
			
		||||
@ -15586,6 +16020,18 @@
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
 | 
			
		||||
      "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/sha.js": {
 | 
			
		||||
      "version": "2.4.11",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
 | 
			
		||||
      "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "inherits": "^2.0.1",
 | 
			
		||||
        "safe-buffer": "^5.0.1"
 | 
			
		||||
      },
 | 
			
		||||
      "bin": {
 | 
			
		||||
        "sha.js": "bin.js"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/shebang-command": {
 | 
			
		||||
      "version": "2.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
 | 
			
		||||
 | 
			
		||||
@ -6,8 +6,14 @@
 | 
			
		||||
    "@testing-library/jest-dom": "^5.17.0",
 | 
			
		||||
    "@testing-library/react": "^13.4.0",
 | 
			
		||||
    "@testing-library/user-event": "^13.5.0",
 | 
			
		||||
    "axios": "^1.6.2",
 | 
			
		||||
    "crypto-browserify": "^3.12.0",
 | 
			
		||||
    "dotenv": "^16.3.1",
 | 
			
		||||
    "os-browserify": "^0.3.0",
 | 
			
		||||
    "path-browserify": "^1.0.1",
 | 
			
		||||
    "react": "^18.2.0",
 | 
			
		||||
    "react-dom": "^18.2.0",
 | 
			
		||||
    "react-router-dom": "^6.19.0",
 | 
			
		||||
    "react-scripts": "5.0.1",
 | 
			
		||||
    "web-vitals": "^2.1.4"
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										78
									
								
								src/App.css
									
									
									
									
									
								
							
							
						
						
									
										78
									
								
								src/App.css
									
									
									
									
									
								
							@ -1,38 +1,56 @@
 | 
			
		||||
@font-face {
 | 
			
		||||
  src: url("fonts/JetBrainsMono-Regular.woff2");
 | 
			
		||||
  font-family: mono;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@font-face {
 | 
			
		||||
  src: url("fonts/JetBrainsMono-Italic.woff2");
 | 
			
		||||
  font-family: JetbrainsItalic;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.App {
 | 
			
		||||
  text-align: center;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.App-logo {
 | 
			
		||||
  height: 40vmin;
 | 
			
		||||
  pointer-events: none;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@media (prefers-reduced-motion: no-preference) {
 | 
			
		||||
  .App-logo {
 | 
			
		||||
    animation: App-logo-spin infinite 20s linear;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.App-header {
 | 
			
		||||
  background-color: #282c34;
 | 
			
		||||
  min-height: 100vh;
 | 
			
		||||
  display: flex;
 | 
			
		||||
  flex-direction: column;
 | 
			
		||||
  align-items: center;
 | 
			
		||||
  justify-content: center;
 | 
			
		||||
  font-size: calc(10px + 2vmin);
 | 
			
		||||
  color: white;
 | 
			
		||||
  align-content: center;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.App-link {
 | 
			
		||||
  color: #61dafb;
 | 
			
		||||
body {
 | 
			
		||||
  background-color: #1B1A1F;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@keyframes App-logo-spin {
 | 
			
		||||
  from {
 | 
			
		||||
    transform: rotate(0deg);
 | 
			
		||||
  }
 | 
			
		||||
  to {
 | 
			
		||||
    transform: rotate(360deg);
 | 
			
		||||
  }
 | 
			
		||||
.addForm {
 | 
			
		||||
  margin-top: 200px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.linkInput {
 | 
			
		||||
  margin-top: 100px;
 | 
			
		||||
  width: 300px;
 | 
			
		||||
  height: 30px;
 | 
			
		||||
  padding: 0.2em 0.5em;
 | 
			
		||||
  font-family: JetBrainsItalic;
 | 
			
		||||
  border-radius: 15px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.title {
 | 
			
		||||
  color: #FFFFFF;
 | 
			
		||||
  font-size: xxx-large;
 | 
			
		||||
  font-family: JetBrainsItalic;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
h1, h2 {
 | 
			
		||||
  font-family: mono;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.shortButton {
 | 
			
		||||
  height: 50px;
 | 
			
		||||
  width: 150px;
 | 
			
		||||
  background-color: #322C77;
 | 
			
		||||
  color: antiquewhite;
 | 
			
		||||
  border: #322C77;
 | 
			
		||||
  border-radius: 5%;
 | 
			
		||||
  font-size: medium;
 | 
			
		||||
  margin-left: 15px;
 | 
			
		||||
  margin-top: 30px;
 | 
			
		||||
  font-family: JetBrainsItalic;
 | 
			
		||||
  border-radius: 25px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										31
									
								
								src/App.js
									
									
									
									
									
								
							
							
						
						
									
										31
									
								
								src/App.js
									
									
									
									
									
								
							@ -1,24 +1,23 @@
 | 
			
		||||
import logo from './logo.svg';
 | 
			
		||||
import './App.css';
 | 
			
		||||
 | 
			
		||||
import {BrowserRouter, Routes, Route} from "react-router-dom";
 | 
			
		||||
import AddLink from "./components/AddLink";
 | 
			
		||||
import Redirecter from './components/Redirecter'
 | 
			
		||||
import NotFound from './components/NotFound'
 | 
			
		||||
 | 
			
		||||
function App() {
 | 
			
		||||
  return (
 | 
			
		||||
    <div className="App">
 | 
			
		||||
      <header className="App-header">
 | 
			
		||||
        <img src={logo} className="App-logo" alt="logo" />
 | 
			
		||||
        <p>
 | 
			
		||||
          Edit <code>src/App.js</code> and save to reload.
 | 
			
		||||
        </p>
 | 
			
		||||
        <a
 | 
			
		||||
          className="App-link"
 | 
			
		||||
          href="https://reactjs.org"
 | 
			
		||||
          target="_blank"
 | 
			
		||||
          rel="noopener noreferrer"
 | 
			
		||||
        >
 | 
			
		||||
          Learn React
 | 
			
		||||
        </a>
 | 
			
		||||
      </header>
 | 
			
		||||
    </div>
 | 
			
		||||
      <div className="App">
 | 
			
		||||
          <BrowserRouter>
 | 
			
		||||
              <Routes>
 | 
			
		||||
                  <Route path="add" element={<AddLink/>} />
 | 
			
		||||
                  <Route path="/" element={<AddLink/>} />
 | 
			
		||||
                  <Route path="404" element={<NotFound/>} />
 | 
			
		||||
                  <Route path="*" element={<Redirecter/>} />
 | 
			
		||||
              </Routes>
 | 
			
		||||
          </BrowserRouter>
 | 
			
		||||
      </div>
 | 
			
		||||
  );
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										70
									
								
								src/components/AddLink.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								src/components/AddLink.js
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,70 @@
 | 
			
		||||
import {React, Component} from "react";
 | 
			
		||||
import "../App.css"
 | 
			
		||||
import "../config"
 | 
			
		||||
 | 
			
		||||
import axios from 'axios'
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class AddLink extends Component {
 | 
			
		||||
    constructor(props) {
 | 
			
		||||
        super(props);
 | 
			
		||||
        this.state = {value: ''}
 | 
			
		||||
        this.handleChange = this.handleChange.bind(this)
 | 
			
		||||
        this.short = this.short.bind(this)
 | 
			
		||||
        this.createLink = this.createLink.bind(this)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    handleChange (event) {
 | 
			
		||||
        this.setState({value: event.target.value})
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    short () {
 | 
			
		||||
        if (this.state.value === "") {
 | 
			
		||||
            return
 | 
			
		||||
        }
 | 
			
		||||
        const linkName = this.createLink(this.state.value)
 | 
			
		||||
        console.log(linkName)
 | 
			
		||||
        this.setState({value: `https://timka.su/${linkName}`})
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    createLink(url) {
 | 
			
		||||
        axios.post("https://link.timka.su",
 | 
			
		||||
            {name: makeid(6), url: url}).then(function (response) {
 | 
			
		||||
                console.log(response.data.name)
 | 
			
		||||
            return `${response.data.name}`
 | 
			
		||||
        })
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    render () {
 | 
			
		||||
        return <div className="addForm">
 | 
			
		||||
            <h3 className="title">Timka ShortLink</h3>
 | 
			
		||||
            <div className="form">
 | 
			
		||||
                <input
 | 
			
		||||
                    name="link"
 | 
			
		||||
                    type="url"
 | 
			
		||||
                    placeholder="Link to be short"
 | 
			
		||||
                    className="linkInput"
 | 
			
		||||
                    value={this.state.value}
 | 
			
		||||
                    onChange={this.handleChange}
 | 
			
		||||
                    autoComplete="off"
 | 
			
		||||
                    required/>
 | 
			
		||||
                <br/>
 | 
			
		||||
                <button onClick={this.short} className="shortButton">Short!</button>
 | 
			
		||||
            </div>
 | 
			
		||||
        </div>
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function makeid(length) {
 | 
			
		||||
    let result = '';
 | 
			
		||||
    const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
 | 
			
		||||
    const charactersLength = characters.length;
 | 
			
		||||
    let counter = 0;
 | 
			
		||||
    while (counter < length) {
 | 
			
		||||
        result += characters.charAt(Math.floor(Math.random() * charactersLength));
 | 
			
		||||
        counter += 1;
 | 
			
		||||
    }
 | 
			
		||||
    return result;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export default AddLink
 | 
			
		||||
							
								
								
									
										10
									
								
								src/components/NotFound.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								src/components/NotFound.js
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,10 @@
 | 
			
		||||
import {React, Component} from "react";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class NotFound extends Component {
 | 
			
		||||
    render () {
 | 
			
		||||
        return <h2>Not found</h2>
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export default NotFound
 | 
			
		||||
							
								
								
									
										25
									
								
								src/components/Redirecter.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								src/components/Redirecter.js
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,25 @@
 | 
			
		||||
import {React, Component} from "react";
 | 
			
		||||
import {resolve} from "crypto-browserify/example/bundle";
 | 
			
		||||
import "../config"
 | 
			
		||||
 | 
			
		||||
const axios = require('axios').default
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class Redirecter extends Component {
 | 
			
		||||
    render () {
 | 
			
		||||
        var parts = window.location.href.split('/')
 | 
			
		||||
        var linkName = parts[3]
 | 
			
		||||
        console.log(linkName)
 | 
			
		||||
        axios.get(`https://link.timka.su?link=${linkName}`).then(
 | 
			
		||||
            function (response) {
 | 
			
		||||
                const json = response.toString()
 | 
			
		||||
                const obj = JSON.parse(json)
 | 
			
		||||
                console.log(obj)
 | 
			
		||||
                window.location.href = obj.url
 | 
			
		||||
            }
 | 
			
		||||
        )
 | 
			
		||||
        return
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export default Redirecter;
 | 
			
		||||
							
								
								
									
										0
									
								
								src/config.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								src/config.js
									
									
									
									
									
										Normal file
									
								
							
							
								
								
									
										9
									
								
								src/css/addForm.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								src/css/addForm.css
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,9 @@
 | 
			
		||||
.add-link {
 | 
			
		||||
    align-content: center;
 | 
			
		||||
    align-items: center;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
body {
 | 
			
		||||
    align-content: center;
 | 
			
		||||
    align-items: center;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-Bold.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-Bold.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-BoldItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-BoldItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-ExtraBold.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-ExtraBold.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-ExtraBoldItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-ExtraBoldItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-ExtraLight.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-ExtraLight.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-ExtraLightItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-ExtraLightItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-Italic.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-Italic.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-Light.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-Light.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-LightItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-LightItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-Medium.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-Medium.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-MediumItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-MediumItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-Regular.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-Regular.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-SemiBold.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-SemiBold.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-SemiBoldItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-SemiBoldItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-Thin.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-Thin.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-ThinItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/fonts/JetBrainsMono-ThinItalic.woff2
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user