diff --git a/package-lock.json b/package-lock.json
index 7eba31e..c18ee58 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -17,8 +17,12 @@
"react": "^18.2.0",
"react-awesome-button": "^7.0.4",
"react-dom": "^18.2.0",
+ "react-parallax": "^3.5.1",
"react-scripts": "5.0.1",
+ "react-scroll-parallax": "^3.3.2",
+ "react-spring": "^9.6.0",
"react-ts-typewriter": "^0.1.8-b",
+ "react-visibility-sensor": "^5.1.1",
"typescript": "^4.9.4",
"wagmi": "^0.9.2"
}
@@ -5926,6 +5930,174 @@
"integrity": "sha512-K0aGNn1TjalKj+65D7ycc1//H9roAQ51GJVk5ZJQFb2teECGmzd86bYDC0aYdbRf7gtovescq4Zt6FR0tgXiHQ==",
"peer": true
},
+ "node_modules/@react-spring/animated": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/animated/-/animated-9.6.0.tgz",
+ "integrity": "sha512-YFBLQ3bnGlUaWA9eVcZ7K1nfgVSF30XPfwqag5hlswYcMi7C5zVriFqN4oxRyDAFHfmNpPfFCRHmgP52L3GF1A==",
+ "dependencies": {
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ },
+ "peerDependencies": {
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0"
+ }
+ },
+ "node_modules/@react-spring/core": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/core/-/core-9.6.0.tgz",
+ "integrity": "sha512-CCU6MOp6Hk29qFhC+8/Hty5Rh8b4TcHvLjFX1GP9i2iXvw77WayRyy+Wi+KCt+RD+xXO2fi9bNWcloOHPHJp/g==",
+ "dependencies": {
+ "@react-spring/animated": "~9.6.0",
+ "@react-spring/rafz": "~9.6.0",
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/react-spring/donate"
+ },
+ "peerDependencies": {
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0"
+ }
+ },
+ "node_modules/@react-spring/rafz": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/rafz/-/rafz-9.6.0.tgz",
+ "integrity": "sha512-Vw8IwWXWEMszef8V/yemSR8YZe4cbX84JrMMuW+UE5Ha1/mOCznlFU59fKJxQQA/UJlfY70K9oZ+aboFgWWk0g=="
+ },
+ "node_modules/@react-spring/shared": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/shared/-/shared-9.6.0.tgz",
+ "integrity": "sha512-Kama7SJiAajZsjfTJAxLDndxeYr0Qin6Ust9Wn/gRCVC1maXJ79Su0gsQYapSA0+Nmkxdi+RiXJUDmGX6LMuuw==",
+ "dependencies": {
+ "@react-spring/rafz": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ },
+ "peerDependencies": {
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0"
+ }
+ },
+ "node_modules/@react-spring/three": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/three/-/three-9.6.0.tgz",
+ "integrity": "sha512-7JCx7uvJyKFHs9XnRXmAlf1VCjwDiEoiNnCpjpZiOOC8AukTRNHeFNsqwa9WKpEBNciHxAivAxxzSVh6JkBk0g==",
+ "dependencies": {
+ "@react-spring/animated": "~9.6.0",
+ "@react-spring/core": "~9.6.0",
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ },
+ "peerDependencies": {
+ "@react-three/fiber": ">=6.0",
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
+ "three": ">=0.126"
+ }
+ },
+ "node_modules/@react-spring/types": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/types/-/types-9.6.0.tgz",
+ "integrity": "sha512-XOWupgf+/rMhQTiIxZzjVRw+4ZNkXcO5tuha3pOBNK88a7LPGjM6imdS1aQ2kl3y1sBy0f9JrclNShfASbkvTw=="
+ },
+ "node_modules/@react-spring/web": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.6.0.tgz",
+ "integrity": "sha512-ztdkBmRZB020MEPEU8gXlbkE6858/IdA2P37RvcjOHq4tEpIizrsh/XTipU+T5iyrbT6UQLnh4JnIWow4jfOmg==",
+ "dependencies": {
+ "@react-spring/animated": "~9.6.0",
+ "@react-spring/core": "~9.6.0",
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ },
+ "peerDependencies": {
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
+ "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0"
+ }
+ },
+ "node_modules/@react-spring/zdog": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/zdog/-/zdog-9.6.0.tgz",
+ "integrity": "sha512-YUOnOqVR9PY5vAxIhT4b/P0d+WT4Ze76o9bydsadHx3o3vO9yVl9FiImOUUY9iDCwvfcj31FoUVW0CosdHA4EQ==",
+ "dependencies": {
+ "@react-spring/animated": "~9.6.0",
+ "@react-spring/core": "~9.6.0",
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ },
+ "peerDependencies": {
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
+ "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0",
+ "react-zdog": ">=1.0",
+ "zdog": ">=1.0"
+ }
+ },
+ "node_modules/@react-three/fiber": {
+ "version": "8.9.1",
+ "resolved": "https://registry.npmjs.org/@react-three/fiber/-/fiber-8.9.1.tgz",
+ "integrity": "sha512-xRMO9RGp0DkxSFu5BmmkjCxJ4r0dEpLobtxXdZwI0h2rZZaCnkPM5zThRN8xaZNbZhzRSVICeNOFaZltr9xFyQ==",
+ "peer": true,
+ "dependencies": {
+ "@babel/runtime": "^7.17.8",
+ "@types/react-reconciler": "^0.26.7",
+ "its-fine": "^1.0.6",
+ "react-reconciler": "^0.27.0",
+ "react-use-measure": "^2.1.1",
+ "scheduler": "^0.21.0",
+ "suspend-react": "^0.0.8",
+ "zustand": "^3.7.1"
+ },
+ "peerDependencies": {
+ "expo": ">=43.0",
+ "expo-asset": ">=8.4",
+ "expo-gl": ">=11.0",
+ "react": ">=18.0",
+ "react-dom": ">=18.0",
+ "react-native": ">=0.64",
+ "three": ">=0.133"
+ },
+ "peerDependenciesMeta": {
+ "expo": {
+ "optional": true
+ },
+ "expo-asset": {
+ "optional": true
+ },
+ "expo-gl": {
+ "optional": true
+ },
+ "react-dom": {
+ "optional": true
+ },
+ "react-native": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@react-three/fiber/node_modules/scheduler": {
+ "version": "0.21.0",
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.21.0.tgz",
+ "integrity": "sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==",
+ "peer": true,
+ "dependencies": {
+ "loose-envify": "^1.1.0"
+ }
+ },
+ "node_modules/@react-three/fiber/node_modules/zustand": {
+ "version": "3.7.2",
+ "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz",
+ "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==",
+ "peer": true,
+ "engines": {
+ "node": ">=12.7.0"
+ },
+ "peerDependencies": {
+ "react": ">=16.8"
+ },
+ "peerDependenciesMeta": {
+ "react": {
+ "optional": true
+ }
+ }
+ },
"node_modules/@rollup/plugin-babel": {
"version": "5.3.1",
"resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz",
@@ -6862,6 +7034,15 @@
"@types/react": "*"
}
},
+ "node_modules/@types/react-reconciler": {
+ "version": "0.26.7",
+ "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.26.7.tgz",
+ "integrity": "sha512-mBDYl8x+oyPX/VBb3E638N0B7xG+SPk/EAMcVPeexqus/5aTpTphQi0curhhshOqRrc9t6OPoJfEUkbymse/lQ==",
+ "peer": true,
+ "dependencies": {
+ "@types/react": "*"
+ }
+ },
"node_modules/@types/resolve": {
"version": "1.17.1",
"resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz",
@@ -9049,6 +9230,11 @@
"resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz",
"integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ=="
},
+ "node_modules/bezier-easing": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/bezier-easing/-/bezier-easing-2.1.0.tgz",
+ "integrity": "sha512-gbIqZ/eslnUFC1tjEvtz0sgx+xTK20wDnYMIA27VA04R7w6xxXQPZDbibjA9DTWZRA2CXtwHykkVzlCaAJAZig=="
+ },
"node_modules/bfj": {
"version": "7.0.2",
"resolved": "https://registry.npmjs.org/bfj/-/bfj-7.0.2.tgz",
@@ -10698,6 +10884,12 @@
"integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==",
"peer": true
},
+ "node_modules/debounce": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz",
+ "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==",
+ "peer": true
+ },
"node_modules/debug": {
"version": "4.3.4",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
@@ -14833,6 +15025,27 @@
"node": ">=8"
}
},
+ "node_modules/its-fine": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/its-fine/-/its-fine-1.0.7.tgz",
+ "integrity": "sha512-xjBg9NTmOj42yFoWA0UoUDxeRiZR1C9ILY/G2elIKYt+YZCQ0I4o8vd7yIs+i9GjVmVOlxfNtoBJLGtrrnGrSA==",
+ "peer": true,
+ "dependencies": {
+ "@types/react-reconciler": "^0.28.0"
+ },
+ "peerDependencies": {
+ "react": ">=18.0"
+ }
+ },
+ "node_modules/its-fine/node_modules/@types/react-reconciler": {
+ "version": "0.28.0",
+ "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.28.0.tgz",
+ "integrity": "sha512-5cjk9ottZAj7eaTsqzPUIlrVbh3hBAO2YaEL1rkjHKB3xNAId7oU8GhzvAX+gfmlfoxTwJnBjPxEHyxkEA1Ffg==",
+ "peer": true,
+ "dependencies": {
+ "@types/react": "*"
+ }
+ },
"node_modules/jake": {
"version": "10.8.5",
"resolved": "https://registry.npmjs.org/jake/-/jake-10.8.5.tgz",
@@ -17393,6 +17606,12 @@
"node": ">= 8"
}
},
+ "node_modules/konva": {
+ "version": "3.4.1",
+ "resolved": "https://registry.npmjs.org/konva/-/konva-3.4.1.tgz",
+ "integrity": "sha512-Lra+Sb9dFwsCtkWoFvtcmVFbzAZCqSS/we3iTxDogBl3DTTjieY0e/1crqvs/EZCNR5uV2Kfvkn7t2547cD1SQ==",
+ "peer": true
+ },
"node_modules/language-subtag-registry": {
"version": "0.3.22",
"resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz",
@@ -17479,6 +17698,12 @@
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
},
+ "node_modules/lodash-es": {
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz",
+ "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==",
+ "peer": true
+ },
"node_modules/lodash.debounce": {
"version": "4.0.8",
"resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
@@ -19873,6 +20098,17 @@
"node": ">=6"
}
},
+ "node_modules/parallax-controller": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/parallax-controller/-/parallax-controller-1.6.0.tgz",
+ "integrity": "sha512-IVRuEMMcLtAnlthB3MJ+bzkOQWz26DESXsP3x+CBsGjIjmXxLr+l1IkR799dQETXgGBZQTUyhRUXFaThBc6+lA==",
+ "dependencies": {
+ "bezier-easing": "^2.1.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
"node_modules/param-case": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz",
@@ -20191,6 +20427,12 @@
"node": ">=10.13.0"
}
},
+ "node_modules/pointer-events-polyfill": {
+ "version": "0.4.4-pre",
+ "resolved": "https://registry.npmjs.org/pointer-events-polyfill/-/pointer-events-polyfill-0.4.4-pre.tgz",
+ "integrity": "sha512-t7iitVY5jW9mGOFZEHphJOzB8eMhoYaE6I5HqsUX14rjsPa9F6OlMOCj3EpqDzNb/8XtMk2BxMpOyePPyuefHw==",
+ "peer": true
+ },
"node_modules/popper.js": {
"version": "1.16.1",
"resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz",
@@ -22047,6 +22289,40 @@
"integrity": "sha512-oOanj84fJEXUg9FoEAQomA8ISG+DVIrTZ3qF7m69VQUJyOGYyDZmPqKcjvRku4KXlEH6hWO9i4ACLzNBh8gC0A==",
"peer": true
},
+ "node_modules/react-parallax": {
+ "version": "3.5.1",
+ "resolved": "https://registry.npmjs.org/react-parallax/-/react-parallax-3.5.1.tgz",
+ "integrity": "sha512-p5zPsPsqELlIOGaPS01O0IRx8R2bxcBAtrdF/RHf9nIxxk5hijbM2y89tk4rJQBcNH6ESSLe7J2NV4/ms7FLFw==",
+ "peerDependencies": {
+ "react": "16.x.x || 17.x.x || 18.x.x",
+ "react-dom": "16.x.x || 17.x.x || 18.x.x"
+ }
+ },
+ "node_modules/react-reconciler": {
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.27.0.tgz",
+ "integrity": "sha512-HmMDKciQjYmBRGuuhIaKA1ba/7a+UsM5FzOZsMO2JYHt9Jh8reCb7j1eDC95NOyUlKM9KRyvdx0flBuDvYSBoA==",
+ "peer": true,
+ "dependencies": {
+ "loose-envify": "^1.1.0",
+ "scheduler": "^0.21.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "peerDependencies": {
+ "react": "^18.0.0"
+ }
+ },
+ "node_modules/react-reconciler/node_modules/scheduler": {
+ "version": "0.21.0",
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.21.0.tgz",
+ "integrity": "sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==",
+ "peer": true,
+ "dependencies": {
+ "loose-envify": "^1.1.0"
+ }
+ },
"node_modules/react-refresh": {
"version": "0.11.0",
"resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.11.0.tgz",
@@ -22172,6 +22448,21 @@
}
}
},
+ "node_modules/react-scroll-parallax": {
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/react-scroll-parallax/-/react-scroll-parallax-3.3.2.tgz",
+ "integrity": "sha512-mLgcLqyFhrIp31gLjz11yYmWEwS8NJoOoCZ15ZFXPOcpPQK8R+jZfeuO59Trm9bReok/iDUyx3ZyCCZjkxj37Q==",
+ "dependencies": {
+ "parallax-controller": "^1.5.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "peerDependencies": {
+ "react": "^16.8.0-0 || >=17.0.1 || ^18.0.0",
+ "react-dom": "^16.8.0-0 || >=17.0.1 || ^18.0.0"
+ }
+ },
"node_modules/react-shallow-renderer": {
"version": "16.15.0",
"resolved": "https://registry.npmjs.org/react-shallow-renderer/-/react-shallow-renderer-16.15.0.tgz",
@@ -22185,6 +22476,274 @@
"react": "^16.0.0 || ^17.0.0 || ^18.0.0"
}
},
+ "node_modules/react-spring": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/react-spring/-/react-spring-9.6.0.tgz",
+ "integrity": "sha512-BJJBhGPkNNoj83i6+7z7BDDuB3Q25j0w3WCCKlSqgLQafcjx+Se2ogxKM05m+JjjeML5DTDTbsw0UD0GbAzW4g==",
+ "dependencies": {
+ "@react-spring/core": "~9.6.0",
+ "@react-spring/konva": "~9.6.0",
+ "@react-spring/native": "~9.6.0",
+ "@react-spring/three": "~9.6.0",
+ "@react-spring/web": "~9.6.0",
+ "@react-spring/zdog": "~9.6.0"
+ },
+ "peerDependencies": {
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
+ "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0"
+ }
+ },
+ "node_modules/react-spring/node_modules/@jest/types": {
+ "version": "26.6.2",
+ "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz",
+ "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==",
+ "peer": true,
+ "dependencies": {
+ "@types/istanbul-lib-coverage": "^2.0.0",
+ "@types/istanbul-reports": "^3.0.0",
+ "@types/node": "*",
+ "@types/yargs": "^15.0.0",
+ "chalk": "^4.0.0"
+ },
+ "engines": {
+ "node": ">= 10.14.2"
+ }
+ },
+ "node_modules/react-spring/node_modules/@react-spring/konva": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/konva/-/konva-9.6.0.tgz",
+ "integrity": "sha512-lRSF+2YQYeRH0RTZMV/ytcoXF7lDwn5BaY9oAXpLNtITpmlvDJrMQ3LgMrppywaujShF4F6ImZQB5dDlUX9CnQ==",
+ "dependencies": {
+ "@react-spring/animated": "~9.6.0",
+ "@react-spring/core": "~9.6.0",
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ },
+ "peerDependencies": {
+ "konva": ">=2.6",
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
+ "react-konva": "^16.8.0 || ^17.0.0"
+ }
+ },
+ "node_modules/react-spring/node_modules/@react-spring/native": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/native/-/native-9.6.0.tgz",
+ "integrity": "sha512-medVvnMkJ7GvQP4UfodiemOoNvyMIriGt9XMX0UfYDFjD/WEXBk63G/StI/hwCARRYnFdvgN1DT0Ywlv1JqJYQ==",
+ "dependencies": {
+ "@react-spring/animated": "~9.6.0",
+ "@react-spring/core": "~9.6.0",
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ },
+ "peerDependencies": {
+ "react": "^16.8.0 || >=17.0.0 || >=18.0.0",
+ "react-native": ">=0.58"
+ }
+ },
+ "node_modules/react-spring/node_modules/@types/yargs": {
+ "version": "15.0.14",
+ "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz",
+ "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==",
+ "peer": true,
+ "dependencies": {
+ "@types/yargs-parser": "*"
+ }
+ },
+ "node_modules/react-spring/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "peer": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/react-spring/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "peer": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/react-spring/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "peer": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/react-spring/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "peer": true
+ },
+ "node_modules/react-spring/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "peer": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/react-spring/node_modules/pretty-format": {
+ "version": "26.6.2",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz",
+ "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==",
+ "peer": true,
+ "dependencies": {
+ "@jest/types": "^26.6.2",
+ "ansi-regex": "^5.0.0",
+ "ansi-styles": "^4.0.0",
+ "react-is": "^17.0.1"
+ },
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/react-spring/node_modules/react-konva": {
+ "version": "16.8.6",
+ "resolved": "https://registry.npmjs.org/react-konva/-/react-konva-16.8.6.tgz",
+ "integrity": "sha512-6KRIqHyJuTTMuAehDIXvw+ZrtEj2aMc2fwolhmFlg1HBzH4PJimsMByTcEx292Afh9d38TcHdjXP1C58qqDOlg==",
+ "peer": true,
+ "dependencies": {
+ "react-reconciler": "^0.20.4",
+ "scheduler": "^0.13.6"
+ },
+ "peerDependencies": {
+ "konva": "^3.2.3",
+ "react": "16.8.x",
+ "react-dom": "16.8.x"
+ }
+ },
+ "node_modules/react-spring/node_modules/react-konva/node_modules/react-reconciler": {
+ "version": "0.20.4",
+ "resolved": "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.20.4.tgz",
+ "integrity": "sha512-kxERc4H32zV2lXMg/iMiwQHOtyqf15qojvkcZ5Ja2CPkjVohHw9k70pdDBwrnQhLVetUJBSYyqU3yqrlVTOajA==",
+ "peer": true,
+ "dependencies": {
+ "loose-envify": "^1.1.0",
+ "object-assign": "^4.1.1",
+ "prop-types": "^15.6.2",
+ "scheduler": "^0.13.6"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "peerDependencies": {
+ "react": "^16.0.0"
+ }
+ },
+ "node_modules/react-spring/node_modules/react-konva/node_modules/scheduler": {
+ "version": "0.13.6",
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.13.6.tgz",
+ "integrity": "sha512-IWnObHt413ucAYKsD9J1QShUKkbKLQQHdxRyw73sw4FN26iWr3DY/H34xGPe4nmL1DwXyWmSWmMrA9TfQbE/XQ==",
+ "peer": true,
+ "dependencies": {
+ "loose-envify": "^1.1.0",
+ "object-assign": "^4.1.1"
+ }
+ },
+ "node_modules/react-spring/node_modules/react-native": {
+ "version": "0.70.6",
+ "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.70.6.tgz",
+ "integrity": "sha512-xtQdImPHnwgraEx3HIZFOF+D1hJ9bC5mfpIdUGoMHRws6OmvHAjmFpO6qfdnaQ29vwbmZRq7yf14sbury74R/w==",
+ "peer": true,
+ "dependencies": {
+ "@jest/create-cache-key-function": "^27.0.1",
+ "@react-native-community/cli": "9.3.2",
+ "@react-native-community/cli-platform-android": "9.3.1",
+ "@react-native-community/cli-platform-ios": "9.3.0",
+ "@react-native/assets": "1.0.0",
+ "@react-native/normalize-color": "2.0.0",
+ "@react-native/polyfills": "2.0.0",
+ "abort-controller": "^3.0.0",
+ "anser": "^1.4.9",
+ "base64-js": "^1.1.2",
+ "event-target-shim": "^5.0.1",
+ "invariant": "^2.2.4",
+ "jsc-android": "^250230.2.1",
+ "memoize-one": "^5.0.0",
+ "metro-react-native-babel-transformer": "0.72.3",
+ "metro-runtime": "0.72.3",
+ "metro-source-map": "0.72.3",
+ "mkdirp": "^0.5.1",
+ "nullthrows": "^1.1.1",
+ "pretty-format": "^26.5.2",
+ "promise": "^8.3.0",
+ "react-devtools-core": "4.24.0",
+ "react-native-codegen": "^0.70.6",
+ "react-native-gradle-plugin": "^0.70.3",
+ "react-refresh": "^0.4.0",
+ "react-shallow-renderer": "^16.15.0",
+ "regenerator-runtime": "^0.13.2",
+ "scheduler": "^0.22.0",
+ "stacktrace-parser": "^0.1.3",
+ "use-sync-external-store": "^1.0.0",
+ "whatwg-fetch": "^3.0.0",
+ "ws": "^6.1.4"
+ },
+ "bin": {
+ "react-native": "cli.js"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "react": "18.1.0"
+ }
+ },
+ "node_modules/react-spring/node_modules/react-refresh": {
+ "version": "0.4.3",
+ "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.4.3.tgz",
+ "integrity": "sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==",
+ "peer": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/react-spring/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "peer": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/react-spring/node_modules/ws": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz",
+ "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==",
+ "peer": true,
+ "dependencies": {
+ "async-limiter": "~1.0.0"
+ }
+ },
"node_modules/react-style-singleton": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz",
@@ -22231,6 +22790,88 @@
"react-dom": "^18.2.0"
}
},
+ "node_modules/react-use-measure": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/react-use-measure/-/react-use-measure-2.1.1.tgz",
+ "integrity": "sha512-nocZhN26cproIiIduswYpV5y5lQpSQS1y/4KuvUCjSKmw7ZWIS/+g3aFnX3WdBkyuGUtTLif3UTqnLLhbDoQig==",
+ "peer": true,
+ "dependencies": {
+ "debounce": "^1.2.1"
+ },
+ "peerDependencies": {
+ "react": ">=16.13",
+ "react-dom": ">=16.13"
+ }
+ },
+ "node_modules/react-visibility-sensor": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/react-visibility-sensor/-/react-visibility-sensor-5.1.1.tgz",
+ "integrity": "sha512-cTUHqIK+zDYpeK19rzW6zF9YfT4486TIgizZW53wEZ+/GPBbK7cNS0EHyJVyHYacwFEvvHLEKfgJndbemWhB/w==",
+ "dependencies": {
+ "prop-types": "^15.7.2"
+ },
+ "peerDependencies": {
+ "react": ">=16.0.0",
+ "react-dom": ">=16.0.0"
+ }
+ },
+ "node_modules/react-zdog": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/react-zdog/-/react-zdog-1.0.11.tgz",
+ "integrity": "sha512-L6/8Zi+Nf+faNMsSZ31HLmLlu6jcbs/jqqFvme7CFnYjAeYfhJ4HyuHKd7Pu/zk9tegv6FaJj1v+hmUwUpKLQw==",
+ "peer": true,
+ "dependencies": {
+ "@babel/runtime": "^7.4.4",
+ "lodash-es": "^4.17.11",
+ "pointer-events-polyfill": "^0.4.4-pre",
+ "react-reconciler": "^0.20.4",
+ "resize-observer-polyfill": "^1.5.1",
+ "scheduler": "0.13.3"
+ },
+ "peerDependencies": {
+ "react": ">=16.8",
+ "react-dom": ">=16.8",
+ "zdog": ">=1.1"
+ }
+ },
+ "node_modules/react-zdog/node_modules/react-reconciler": {
+ "version": "0.20.4",
+ "resolved": "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.20.4.tgz",
+ "integrity": "sha512-kxERc4H32zV2lXMg/iMiwQHOtyqf15qojvkcZ5Ja2CPkjVohHw9k70pdDBwrnQhLVetUJBSYyqU3yqrlVTOajA==",
+ "peer": true,
+ "dependencies": {
+ "loose-envify": "^1.1.0",
+ "object-assign": "^4.1.1",
+ "prop-types": "^15.6.2",
+ "scheduler": "^0.13.6"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "peerDependencies": {
+ "react": "^16.0.0"
+ }
+ },
+ "node_modules/react-zdog/node_modules/react-reconciler/node_modules/scheduler": {
+ "version": "0.13.6",
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.13.6.tgz",
+ "integrity": "sha512-IWnObHt413ucAYKsD9J1QShUKkbKLQQHdxRyw73sw4FN26iWr3DY/H34xGPe4nmL1DwXyWmSWmMrA9TfQbE/XQ==",
+ "peer": true,
+ "dependencies": {
+ "loose-envify": "^1.1.0",
+ "object-assign": "^4.1.1"
+ }
+ },
+ "node_modules/react-zdog/node_modules/scheduler": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.13.3.tgz",
+ "integrity": "sha512-UxN5QRYWtpR1egNWzJcVLk8jlegxAugswQc984lD3kU7NuobsO37/sRfbpTdBjtnD5TBNFA2Q2oLV5+UmPSmEQ==",
+ "peer": true,
+ "dependencies": {
+ "loose-envify": "^1.1.0",
+ "object-assign": "^4.1.1"
+ }
+ },
"node_modules/read-cache": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
@@ -22482,6 +23123,12 @@
"resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
"integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ=="
},
+ "node_modules/resize-observer-polyfill": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz",
+ "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==",
+ "peer": true
+ },
"node_modules/resolve": {
"version": "1.22.1",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
@@ -24095,6 +24742,15 @@
"url": "https://github.com/sponsors/ljharb"
}
},
+ "node_modules/suspend-react": {
+ "version": "0.0.8",
+ "resolved": "https://registry.npmjs.org/suspend-react/-/suspend-react-0.0.8.tgz",
+ "integrity": "sha512-ZC3r8Hu1y0dIThzsGw0RLZplnX9yXwfItcvaIzJc2VQVi8TGyGDlu92syMB5ulybfvGLHAI5Ghzlk23UBPF8xg==",
+ "peer": true,
+ "peerDependencies": {
+ "react": ">=17.0"
+ }
+ },
"node_modules/svg-parser": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz",
@@ -24389,6 +25045,12 @@
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
"integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw=="
},
+ "node_modules/three": {
+ "version": "0.147.0",
+ "resolved": "https://registry.npmjs.org/three/-/three-0.147.0.tgz",
+ "integrity": "sha512-LPTOslYQXFkmvceQjFTNnVVli2LaVF6C99Pv34fJypp8NbQLbTlu3KinZ0zURghS5zEehK+VQyvWuPZ/Sm8fzw==",
+ "peer": true
+ },
"node_modules/throat": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz",
@@ -26128,6 +26790,12 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/zdog": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/zdog/-/zdog-1.1.3.tgz",
+ "integrity": "sha512-raRj6r0gPzopFm5XWBJZr/NuV4EEnT4iE+U3dp5FV5pCb588Gmm3zLIp/j9yqqcMiHH8VNQlerLTgOqL7krh6w==",
+ "peer": true
+ },
"node_modules/zustand": {
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/zustand/-/zustand-4.1.5.tgz",
@@ -30234,6 +30902,112 @@
"integrity": "sha512-K0aGNn1TjalKj+65D7ycc1//H9roAQ51GJVk5ZJQFb2teECGmzd86bYDC0aYdbRf7gtovescq4Zt6FR0tgXiHQ==",
"peer": true
},
+ "@react-spring/animated": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/animated/-/animated-9.6.0.tgz",
+ "integrity": "sha512-YFBLQ3bnGlUaWA9eVcZ7K1nfgVSF30XPfwqag5hlswYcMi7C5zVriFqN4oxRyDAFHfmNpPfFCRHmgP52L3GF1A==",
+ "requires": {
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ }
+ },
+ "@react-spring/core": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/core/-/core-9.6.0.tgz",
+ "integrity": "sha512-CCU6MOp6Hk29qFhC+8/Hty5Rh8b4TcHvLjFX1GP9i2iXvw77WayRyy+Wi+KCt+RD+xXO2fi9bNWcloOHPHJp/g==",
+ "requires": {
+ "@react-spring/animated": "~9.6.0",
+ "@react-spring/rafz": "~9.6.0",
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ }
+ },
+ "@react-spring/rafz": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/rafz/-/rafz-9.6.0.tgz",
+ "integrity": "sha512-Vw8IwWXWEMszef8V/yemSR8YZe4cbX84JrMMuW+UE5Ha1/mOCznlFU59fKJxQQA/UJlfY70K9oZ+aboFgWWk0g=="
+ },
+ "@react-spring/shared": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/shared/-/shared-9.6.0.tgz",
+ "integrity": "sha512-Kama7SJiAajZsjfTJAxLDndxeYr0Qin6Ust9Wn/gRCVC1maXJ79Su0gsQYapSA0+Nmkxdi+RiXJUDmGX6LMuuw==",
+ "requires": {
+ "@react-spring/rafz": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ }
+ },
+ "@react-spring/three": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/three/-/three-9.6.0.tgz",
+ "integrity": "sha512-7JCx7uvJyKFHs9XnRXmAlf1VCjwDiEoiNnCpjpZiOOC8AukTRNHeFNsqwa9WKpEBNciHxAivAxxzSVh6JkBk0g==",
+ "requires": {
+ "@react-spring/animated": "~9.6.0",
+ "@react-spring/core": "~9.6.0",
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ }
+ },
+ "@react-spring/types": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/types/-/types-9.6.0.tgz",
+ "integrity": "sha512-XOWupgf+/rMhQTiIxZzjVRw+4ZNkXcO5tuha3pOBNK88a7LPGjM6imdS1aQ2kl3y1sBy0f9JrclNShfASbkvTw=="
+ },
+ "@react-spring/web": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.6.0.tgz",
+ "integrity": "sha512-ztdkBmRZB020MEPEU8gXlbkE6858/IdA2P37RvcjOHq4tEpIizrsh/XTipU+T5iyrbT6UQLnh4JnIWow4jfOmg==",
+ "requires": {
+ "@react-spring/animated": "~9.6.0",
+ "@react-spring/core": "~9.6.0",
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ }
+ },
+ "@react-spring/zdog": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/zdog/-/zdog-9.6.0.tgz",
+ "integrity": "sha512-YUOnOqVR9PY5vAxIhT4b/P0d+WT4Ze76o9bydsadHx3o3vO9yVl9FiImOUUY9iDCwvfcj31FoUVW0CosdHA4EQ==",
+ "requires": {
+ "@react-spring/animated": "~9.6.0",
+ "@react-spring/core": "~9.6.0",
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ }
+ },
+ "@react-three/fiber": {
+ "version": "8.9.1",
+ "resolved": "https://registry.npmjs.org/@react-three/fiber/-/fiber-8.9.1.tgz",
+ "integrity": "sha512-xRMO9RGp0DkxSFu5BmmkjCxJ4r0dEpLobtxXdZwI0h2rZZaCnkPM5zThRN8xaZNbZhzRSVICeNOFaZltr9xFyQ==",
+ "peer": true,
+ "requires": {
+ "@babel/runtime": "^7.17.8",
+ "@types/react-reconciler": "^0.26.7",
+ "its-fine": "^1.0.6",
+ "react-reconciler": "^0.27.0",
+ "react-use-measure": "^2.1.1",
+ "scheduler": "^0.21.0",
+ "suspend-react": "^0.0.8",
+ "zustand": "^3.7.1"
+ },
+ "dependencies": {
+ "scheduler": {
+ "version": "0.21.0",
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.21.0.tgz",
+ "integrity": "sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==",
+ "peer": true,
+ "requires": {
+ "loose-envify": "^1.1.0"
+ }
+ },
+ "zustand": {
+ "version": "3.7.2",
+ "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz",
+ "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==",
+ "peer": true,
+ "requires": {}
+ }
+ }
+ },
"@rollup/plugin-babel": {
"version": "5.3.1",
"resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz",
@@ -30939,6 +31713,15 @@
"@types/react": "*"
}
},
+ "@types/react-reconciler": {
+ "version": "0.26.7",
+ "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.26.7.tgz",
+ "integrity": "sha512-mBDYl8x+oyPX/VBb3E638N0B7xG+SPk/EAMcVPeexqus/5aTpTphQi0curhhshOqRrc9t6OPoJfEUkbymse/lQ==",
+ "peer": true,
+ "requires": {
+ "@types/react": "*"
+ }
+ },
"@types/resolve": {
"version": "1.17.1",
"resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz",
@@ -32638,6 +33421,11 @@
"resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz",
"integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ=="
},
+ "bezier-easing": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/bezier-easing/-/bezier-easing-2.1.0.tgz",
+ "integrity": "sha512-gbIqZ/eslnUFC1tjEvtz0sgx+xTK20wDnYMIA27VA04R7w6xxXQPZDbibjA9DTWZRA2CXtwHykkVzlCaAJAZig=="
+ },
"bfj": {
"version": "7.0.2",
"resolved": "https://registry.npmjs.org/bfj/-/bfj-7.0.2.tgz",
@@ -33897,6 +34685,12 @@
"integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==",
"peer": true
},
+ "debounce": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz",
+ "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==",
+ "peer": true
+ },
"debug": {
"version": "4.3.4",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
@@ -36999,6 +37793,26 @@
"istanbul-lib-report": "^3.0.0"
}
},
+ "its-fine": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/its-fine/-/its-fine-1.0.7.tgz",
+ "integrity": "sha512-xjBg9NTmOj42yFoWA0UoUDxeRiZR1C9ILY/G2elIKYt+YZCQ0I4o8vd7yIs+i9GjVmVOlxfNtoBJLGtrrnGrSA==",
+ "peer": true,
+ "requires": {
+ "@types/react-reconciler": "^0.28.0"
+ },
+ "dependencies": {
+ "@types/react-reconciler": {
+ "version": "0.28.0",
+ "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.28.0.tgz",
+ "integrity": "sha512-5cjk9ottZAj7eaTsqzPUIlrVbh3hBAO2YaEL1rkjHKB3xNAId7oU8GhzvAX+gfmlfoxTwJnBjPxEHyxkEA1Ffg==",
+ "peer": true,
+ "requires": {
+ "@types/react": "*"
+ }
+ }
+ }
+ },
"jake": {
"version": "10.8.5",
"resolved": "https://registry.npmjs.org/jake/-/jake-10.8.5.tgz",
@@ -38903,6 +39717,12 @@
"resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz",
"integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ=="
},
+ "konva": {
+ "version": "3.4.1",
+ "resolved": "https://registry.npmjs.org/konva/-/konva-3.4.1.tgz",
+ "integrity": "sha512-Lra+Sb9dFwsCtkWoFvtcmVFbzAZCqSS/we3iTxDogBl3DTTjieY0e/1crqvs/EZCNR5uV2Kfvkn7t2547cD1SQ==",
+ "peer": true
+ },
"language-subtag-registry": {
"version": "0.3.22",
"resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz",
@@ -38968,6 +39788,12 @@
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
},
+ "lodash-es": {
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz",
+ "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==",
+ "peer": true
+ },
"lodash.debounce": {
"version": "4.0.8",
"resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
@@ -40861,6 +41687,14 @@
"resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
"integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
},
+ "parallax-controller": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/parallax-controller/-/parallax-controller-1.6.0.tgz",
+ "integrity": "sha512-IVRuEMMcLtAnlthB3MJ+bzkOQWz26DESXsP3x+CBsGjIjmXxLr+l1IkR799dQETXgGBZQTUyhRUXFaThBc6+lA==",
+ "requires": {
+ "bezier-easing": "^2.1.0"
+ }
+ },
"param-case": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz",
@@ -41095,6 +41929,12 @@
"resolved": "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz",
"integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw=="
},
+ "pointer-events-polyfill": {
+ "version": "0.4.4-pre",
+ "resolved": "https://registry.npmjs.org/pointer-events-polyfill/-/pointer-events-polyfill-0.4.4-pre.tgz",
+ "integrity": "sha512-t7iitVY5jW9mGOFZEHphJOzB8eMhoYaE6I5HqsUX14rjsPa9F6OlMOCj3EpqDzNb/8XtMk2BxMpOyePPyuefHw==",
+ "peer": true
+ },
"popper.js": {
"version": "1.16.1",
"resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz",
@@ -42277,6 +43117,33 @@
"integrity": "sha512-oOanj84fJEXUg9FoEAQomA8ISG+DVIrTZ3qF7m69VQUJyOGYyDZmPqKcjvRku4KXlEH6hWO9i4ACLzNBh8gC0A==",
"peer": true
},
+ "react-parallax": {
+ "version": "3.5.1",
+ "resolved": "https://registry.npmjs.org/react-parallax/-/react-parallax-3.5.1.tgz",
+ "integrity": "sha512-p5zPsPsqELlIOGaPS01O0IRx8R2bxcBAtrdF/RHf9nIxxk5hijbM2y89tk4rJQBcNH6ESSLe7J2NV4/ms7FLFw==",
+ "requires": {}
+ },
+ "react-reconciler": {
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.27.0.tgz",
+ "integrity": "sha512-HmMDKciQjYmBRGuuhIaKA1ba/7a+UsM5FzOZsMO2JYHt9Jh8reCb7j1eDC95NOyUlKM9KRyvdx0flBuDvYSBoA==",
+ "peer": true,
+ "requires": {
+ "loose-envify": "^1.1.0",
+ "scheduler": "^0.21.0"
+ },
+ "dependencies": {
+ "scheduler": {
+ "version": "0.21.0",
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.21.0.tgz",
+ "integrity": "sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==",
+ "peer": true,
+ "requires": {
+ "loose-envify": "^1.1.0"
+ }
+ }
+ }
+ },
"react-refresh": {
"version": "0.11.0",
"resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.11.0.tgz",
@@ -42358,6 +43225,14 @@
"workbox-webpack-plugin": "^6.4.1"
}
},
+ "react-scroll-parallax": {
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/react-scroll-parallax/-/react-scroll-parallax-3.3.2.tgz",
+ "integrity": "sha512-mLgcLqyFhrIp31gLjz11yYmWEwS8NJoOoCZ15ZFXPOcpPQK8R+jZfeuO59Trm9bReok/iDUyx3ZyCCZjkxj37Q==",
+ "requires": {
+ "parallax-controller": "^1.5.0"
+ }
+ },
"react-shallow-renderer": {
"version": "16.15.0",
"resolved": "https://registry.npmjs.org/react-shallow-renderer/-/react-shallow-renderer-16.15.0.tgz",
@@ -42368,6 +43243,215 @@
"react-is": "^16.12.0 || ^17.0.0 || ^18.0.0"
}
},
+ "react-spring": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/react-spring/-/react-spring-9.6.0.tgz",
+ "integrity": "sha512-BJJBhGPkNNoj83i6+7z7BDDuB3Q25j0w3WCCKlSqgLQafcjx+Se2ogxKM05m+JjjeML5DTDTbsw0UD0GbAzW4g==",
+ "requires": {
+ "@react-spring/core": "~9.6.0",
+ "@react-spring/konva": "~9.6.0",
+ "@react-spring/native": "~9.6.0",
+ "@react-spring/three": "~9.6.0",
+ "@react-spring/web": "~9.6.0",
+ "@react-spring/zdog": "~9.6.0"
+ },
+ "dependencies": {
+ "@jest/types": {
+ "version": "26.6.2",
+ "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz",
+ "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==",
+ "peer": true,
+ "requires": {
+ "@types/istanbul-lib-coverage": "^2.0.0",
+ "@types/istanbul-reports": "^3.0.0",
+ "@types/node": "*",
+ "@types/yargs": "^15.0.0",
+ "chalk": "^4.0.0"
+ }
+ },
+ "@react-spring/konva": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/konva/-/konva-9.6.0.tgz",
+ "integrity": "sha512-lRSF+2YQYeRH0RTZMV/ytcoXF7lDwn5BaY9oAXpLNtITpmlvDJrMQ3LgMrppywaujShF4F6ImZQB5dDlUX9CnQ==",
+ "requires": {
+ "@react-spring/animated": "~9.6.0",
+ "@react-spring/core": "~9.6.0",
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ }
+ },
+ "@react-spring/native": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spring/native/-/native-9.6.0.tgz",
+ "integrity": "sha512-medVvnMkJ7GvQP4UfodiemOoNvyMIriGt9XMX0UfYDFjD/WEXBk63G/StI/hwCARRYnFdvgN1DT0Ywlv1JqJYQ==",
+ "requires": {
+ "@react-spring/animated": "~9.6.0",
+ "@react-spring/core": "~9.6.0",
+ "@react-spring/shared": "~9.6.0",
+ "@react-spring/types": "~9.6.0"
+ }
+ },
+ "@types/yargs": {
+ "version": "15.0.14",
+ "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz",
+ "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==",
+ "peer": true,
+ "requires": {
+ "@types/yargs-parser": "*"
+ }
+ },
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "peer": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "peer": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "peer": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "peer": true
+ },
+ "has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "peer": true
+ },
+ "pretty-format": {
+ "version": "26.6.2",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz",
+ "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==",
+ "peer": true,
+ "requires": {
+ "@jest/types": "^26.6.2",
+ "ansi-regex": "^5.0.0",
+ "ansi-styles": "^4.0.0",
+ "react-is": "^17.0.1"
+ }
+ },
+ "react-konva": {
+ "version": "16.8.6",
+ "resolved": "https://registry.npmjs.org/react-konva/-/react-konva-16.8.6.tgz",
+ "integrity": "sha512-6KRIqHyJuTTMuAehDIXvw+ZrtEj2aMc2fwolhmFlg1HBzH4PJimsMByTcEx292Afh9d38TcHdjXP1C58qqDOlg==",
+ "peer": true,
+ "requires": {
+ "react-reconciler": "^0.20.4",
+ "scheduler": "^0.13.6"
+ },
+ "dependencies": {
+ "react-reconciler": {
+ "version": "0.20.4",
+ "resolved": "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.20.4.tgz",
+ "integrity": "sha512-kxERc4H32zV2lXMg/iMiwQHOtyqf15qojvkcZ5Ja2CPkjVohHw9k70pdDBwrnQhLVetUJBSYyqU3yqrlVTOajA==",
+ "peer": true,
+ "requires": {
+ "loose-envify": "^1.1.0",
+ "object-assign": "^4.1.1",
+ "prop-types": "^15.6.2",
+ "scheduler": "^0.13.6"
+ }
+ },
+ "scheduler": {
+ "version": "0.13.6",
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.13.6.tgz",
+ "integrity": "sha512-IWnObHt413ucAYKsD9J1QShUKkbKLQQHdxRyw73sw4FN26iWr3DY/H34xGPe4nmL1DwXyWmSWmMrA9TfQbE/XQ==",
+ "peer": true,
+ "requires": {
+ "loose-envify": "^1.1.0",
+ "object-assign": "^4.1.1"
+ }
+ }
+ }
+ },
+ "react-native": {
+ "version": "0.70.6",
+ "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.70.6.tgz",
+ "integrity": "sha512-xtQdImPHnwgraEx3HIZFOF+D1hJ9bC5mfpIdUGoMHRws6OmvHAjmFpO6qfdnaQ29vwbmZRq7yf14sbury74R/w==",
+ "peer": true,
+ "requires": {
+ "@jest/create-cache-key-function": "^27.0.1",
+ "@react-native-community/cli": "9.3.2",
+ "@react-native-community/cli-platform-android": "9.3.1",
+ "@react-native-community/cli-platform-ios": "9.3.0",
+ "@react-native/assets": "1.0.0",
+ "@react-native/normalize-color": "2.0.0",
+ "@react-native/polyfills": "2.0.0",
+ "abort-controller": "^3.0.0",
+ "anser": "^1.4.9",
+ "base64-js": "^1.1.2",
+ "event-target-shim": "^5.0.1",
+ "invariant": "^2.2.4",
+ "jsc-android": "^250230.2.1",
+ "memoize-one": "^5.0.0",
+ "metro-react-native-babel-transformer": "0.72.3",
+ "metro-runtime": "0.72.3",
+ "metro-source-map": "0.72.3",
+ "mkdirp": "^0.5.1",
+ "nullthrows": "^1.1.1",
+ "pretty-format": "^26.5.2",
+ "promise": "^8.3.0",
+ "react-devtools-core": "4.24.0",
+ "react-native-codegen": "^0.70.6",
+ "react-native-gradle-plugin": "^0.70.3",
+ "react-refresh": "^0.4.0",
+ "react-shallow-renderer": "^16.15.0",
+ "regenerator-runtime": "^0.13.2",
+ "scheduler": "^0.22.0",
+ "stacktrace-parser": "^0.1.3",
+ "use-sync-external-store": "^1.0.0",
+ "whatwg-fetch": "^3.0.0",
+ "ws": "^6.1.4"
+ }
+ },
+ "react-refresh": {
+ "version": "0.4.3",
+ "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.4.3.tgz",
+ "integrity": "sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==",
+ "peer": true
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "peer": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ },
+ "ws": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz",
+ "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==",
+ "peer": true,
+ "requires": {
+ "async-limiter": "~1.0.0"
+ }
+ }
+ }
+ },
"react-style-singleton": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz",
@@ -42398,6 +43482,73 @@
"react-dom": "^18.2.0"
}
},
+ "react-use-measure": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/react-use-measure/-/react-use-measure-2.1.1.tgz",
+ "integrity": "sha512-nocZhN26cproIiIduswYpV5y5lQpSQS1y/4KuvUCjSKmw7ZWIS/+g3aFnX3WdBkyuGUtTLif3UTqnLLhbDoQig==",
+ "peer": true,
+ "requires": {
+ "debounce": "^1.2.1"
+ }
+ },
+ "react-visibility-sensor": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/react-visibility-sensor/-/react-visibility-sensor-5.1.1.tgz",
+ "integrity": "sha512-cTUHqIK+zDYpeK19rzW6zF9YfT4486TIgizZW53wEZ+/GPBbK7cNS0EHyJVyHYacwFEvvHLEKfgJndbemWhB/w==",
+ "requires": {
+ "prop-types": "^15.7.2"
+ }
+ },
+ "react-zdog": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/react-zdog/-/react-zdog-1.0.11.tgz",
+ "integrity": "sha512-L6/8Zi+Nf+faNMsSZ31HLmLlu6jcbs/jqqFvme7CFnYjAeYfhJ4HyuHKd7Pu/zk9tegv6FaJj1v+hmUwUpKLQw==",
+ "peer": true,
+ "requires": {
+ "@babel/runtime": "^7.4.4",
+ "lodash-es": "^4.17.11",
+ "pointer-events-polyfill": "^0.4.4-pre",
+ "react-reconciler": "^0.20.4",
+ "resize-observer-polyfill": "^1.5.1",
+ "scheduler": "0.13.3"
+ },
+ "dependencies": {
+ "react-reconciler": {
+ "version": "0.20.4",
+ "resolved": "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.20.4.tgz",
+ "integrity": "sha512-kxERc4H32zV2lXMg/iMiwQHOtyqf15qojvkcZ5Ja2CPkjVohHw9k70pdDBwrnQhLVetUJBSYyqU3yqrlVTOajA==",
+ "peer": true,
+ "requires": {
+ "loose-envify": "^1.1.0",
+ "object-assign": "^4.1.1",
+ "prop-types": "^15.6.2",
+ "scheduler": "^0.13.6"
+ },
+ "dependencies": {
+ "scheduler": {
+ "version": "0.13.6",
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.13.6.tgz",
+ "integrity": "sha512-IWnObHt413ucAYKsD9J1QShUKkbKLQQHdxRyw73sw4FN26iWr3DY/H34xGPe4nmL1DwXyWmSWmMrA9TfQbE/XQ==",
+ "peer": true,
+ "requires": {
+ "loose-envify": "^1.1.0",
+ "object-assign": "^4.1.1"
+ }
+ }
+ }
+ },
+ "scheduler": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.13.3.tgz",
+ "integrity": "sha512-UxN5QRYWtpR1egNWzJcVLk8jlegxAugswQc984lD3kU7NuobsO37/sRfbpTdBjtnD5TBNFA2Q2oLV5+UmPSmEQ==",
+ "peer": true,
+ "requires": {
+ "loose-envify": "^1.1.0",
+ "object-assign": "^4.1.1"
+ }
+ }
+ }
+ },
"read-cache": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
@@ -42596,6 +43747,12 @@
"resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
"integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ=="
},
+ "resize-observer-polyfill": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz",
+ "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==",
+ "peer": true
+ },
"resolve": {
"version": "1.22.1",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
@@ -43813,6 +44970,13 @@
"resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
"integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
},
+ "suspend-react": {
+ "version": "0.0.8",
+ "resolved": "https://registry.npmjs.org/suspend-react/-/suspend-react-0.0.8.tgz",
+ "integrity": "sha512-ZC3r8Hu1y0dIThzsGw0RLZplnX9yXwfItcvaIzJc2VQVi8TGyGDlu92syMB5ulybfvGLHAI5Ghzlk23UBPF8xg==",
+ "peer": true,
+ "requires": {}
+ },
"svg-parser": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz",
@@ -44036,6 +45200,12 @@
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
"integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw=="
},
+ "three": {
+ "version": "0.147.0",
+ "resolved": "https://registry.npmjs.org/three/-/three-0.147.0.tgz",
+ "integrity": "sha512-LPTOslYQXFkmvceQjFTNnVVli2LaVF6C99Pv34fJypp8NbQLbTlu3KinZ0zURghS5zEehK+VQyvWuPZ/Sm8fzw==",
+ "peer": true
+ },
"throat": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz",
@@ -45371,6 +46541,12 @@
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
"integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q=="
},
+ "zdog": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/zdog/-/zdog-1.1.3.tgz",
+ "integrity": "sha512-raRj6r0gPzopFm5XWBJZr/NuV4EEnT4iE+U3dp5FV5pCb588Gmm3zLIp/j9yqqcMiHH8VNQlerLTgOqL7krh6w==",
+ "peer": true
+ },
"zustand": {
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/zustand/-/zustand-4.1.5.tgz",
diff --git a/package.json b/package.json
index aa90c7e..f225a6e 100644
--- a/package.json
+++ b/package.json
@@ -14,8 +14,11 @@
"react": "^18.2.0",
"react-awesome-button": "^7.0.4",
"react-dom": "^18.2.0",
+ "react-parallax": "^3.5.1",
"react-scripts": "5.0.1",
+ "react-scroll-parallax": "^3.3.2",
"react-ts-typewriter": "^0.1.8-b",
+ "react-visibility-sensor": "^5.1.1",
"typescript": "^4.9.4",
"wagmi": "^0.9.2"
},
diff --git a/src/dt.jpg b/src/dt.jpg
new file mode 100644
index 0000000..ad75f17
Binary files /dev/null and b/src/dt.jpg differ
diff --git a/src/index.js b/src/index.js
index 9a592e6..8fe4732 100644
--- a/src/index.js
+++ b/src/index.js
@@ -12,9 +12,10 @@ import { mainnet, goerli, localhost } from 'wagmi/chains';
import { publicProvider } from 'wagmi/providers/public';
import ParticlesBg from "particles-bg";
+import { ParallaxProvider } from 'react-scroll-parallax';
import { Wallet } from "./Wallet";
-import { Panel } from "./template/Panel";
+import { Section1, Section2 } from './template/Sections';
import { Footer } from "./template/Footer";
@@ -36,9 +37,11 @@ const wagmiClient = createClient({
});
ReactDOM.createRoot(document.getElementById("root")).render(
+
+<<<<<<< HEAD
+=======
+
+
+
+
+
+>>>>>>> d6eedc0b33640d1cf1806e7c82ed88a2a93b5ed3
+
);
\ No newline at end of file
diff --git a/src/styles.css b/src/styles.css
index 283cf7f..3fc990d 100644
--- a/src/styles.css
+++ b/src/styles.css
@@ -1,14 +1,20 @@
.mainPanel {
backdrop-filter: blur(3px);
background-color: rgba(255,255,255,0.6);
+<<<<<<< HEAD
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
height: 400px;
width: 400px;
+=======
+ height: 300px;
+ width: 300px;
+>>>>>>> d6eedc0b33640d1cf1806e7c82ed88a2a93b5ed3
text-align: center;
border-radius: 10px;
+ margin: 0 auto;
}
.wrap {
@@ -140,9 +146,14 @@ body {
line-height: 14px;
}
- /* #root {
- height: 500vh;
- } */
+ #root {
+ height: 100vh;
+ }
+
+ .section {
+ height: 100vh;
+
+ }
footer::before {
display: block;
diff --git a/src/template/Panel.jsx b/src/template/Panel.jsx
index e529660..76e1e2f 100644
--- a/src/template/Panel.jsx
+++ b/src/template/Panel.jsx
@@ -5,7 +5,11 @@ import { usePrepareSendTransaction, useSendTransaction, useAccount } from 'wagmi
import Typewriter from 'react-ts-typewriter';
+<<<<<<< HEAD
export function Panel({ txt }) {
+=======
+export function Panel(opacity) {
+>>>>>>> d6eedc0b33640d1cf1806e7c82ed88a2a93b5ed3
const { isConnected } = useAccount();
const { config } = usePrepareSendTransaction({
request: {
@@ -15,7 +19,7 @@ export function Panel({ txt }) {
});
const { isLoading, isSuccess, sendTransaction } = useSendTransaction(config);
return (
-
+
diff --git a/src/template/Sections.jsx b/src/template/Sections.jsx
new file mode 100644
index 0000000..9d295ac
--- /dev/null
+++ b/src/template/Sections.jsx
@@ -0,0 +1,32 @@
+import VisibilitySensor from "react-visibility-sensor";
+import { Parallax } from 'react-parallax';
+
+import { Panel } from "./Panel";
+
+
+
+export function Section1() {
+ return (
+
+ )
+}
+
+export function Section2() {
+ return (
+
+
+ {({ isVisible }) => (
+
+ )}
+
+
+ )
+}
\ No newline at end of file