Merge pull request #5216 from LLK/hotfix/totally-normal-2021
[Master] Hotfix/totally normal 2021
252
package-lock.json
generated
|
@ -16,9 +16,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/cli": {
|
"@babel/cli": {
|
||||||
"version": "7.13.10",
|
"version": "7.13.14",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.13.10.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.13.14.tgz",
|
||||||
"integrity": "sha512-lYSBC7B4B9hJ7sv0Ojx1BrGhuzCoOIYfLjd+Xpd4rOzdS+a47yi8voV8vFkfjlZR1N5qZO7ixOCbobUdT304PQ==",
|
"integrity": "sha512-zmEFV8WBRsW+mPQumO1/4b34QNALBVReaiHJOkxhUsdo/AvYM62c+SKSuLi2aZ42t3ocK6OI0uwUXRvrIbREZw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents",
|
"@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents",
|
||||||
|
@ -232,25 +232,24 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@babel/core": {
|
"@babel/core": {
|
||||||
"version": "7.13.10",
|
"version": "7.13.14",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.10.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.14.tgz",
|
||||||
"integrity": "sha512-bfIYcT0BdKeAZrovpMqX2Mx5NrgAckGbwT982AkdS5GNfn3KMGiprlBAtmBcFZRUmpaufS6WZFP8trvx8ptFDw==",
|
"integrity": "sha512-wZso/vyF4ki0l0znlgM4inxbdrUvCb+cVz8grxDq+6C9k6qbqoIJteQOKicaKjCipU3ISV+XedCqpL2RJJVehA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/code-frame": "^7.12.13",
|
"@babel/code-frame": "^7.12.13",
|
||||||
"@babel/generator": "^7.13.9",
|
"@babel/generator": "^7.13.9",
|
||||||
"@babel/helper-compilation-targets": "^7.13.10",
|
"@babel/helper-compilation-targets": "^7.13.13",
|
||||||
"@babel/helper-module-transforms": "^7.13.0",
|
"@babel/helper-module-transforms": "^7.13.14",
|
||||||
"@babel/helpers": "^7.13.10",
|
"@babel/helpers": "^7.13.10",
|
||||||
"@babel/parser": "^7.13.10",
|
"@babel/parser": "^7.13.13",
|
||||||
"@babel/template": "^7.12.13",
|
"@babel/template": "^7.12.13",
|
||||||
"@babel/traverse": "^7.13.0",
|
"@babel/traverse": "^7.13.13",
|
||||||
"@babel/types": "^7.13.0",
|
"@babel/types": "^7.13.14",
|
||||||
"convert-source-map": "^1.7.0",
|
"convert-source-map": "^1.7.0",
|
||||||
"debug": "^4.1.0",
|
"debug": "^4.1.0",
|
||||||
"gensync": "^1.0.0-beta.2",
|
"gensync": "^1.0.0-beta.2",
|
||||||
"json5": "^2.1.2",
|
"json5": "^2.1.2",
|
||||||
"lodash": "^4.17.19",
|
|
||||||
"semver": "^6.3.0",
|
"semver": "^6.3.0",
|
||||||
"source-map": "^0.5.0"
|
"source-map": "^0.5.0"
|
||||||
},
|
},
|
||||||
|
@ -316,9 +315,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/parser": {
|
"@babel/parser": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.13",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.13.tgz",
|
||||||
"integrity": "sha512-4T7Pb244rxH24yR116LAuJ+adxXXnHhZaLJjegJVKSdoNCe4x1eDBaud5YIcQFcqzsaD5BHvJw5BQ0AZapdCRw==",
|
"integrity": "sha512-OhsyMrqygfk5v8HmWwOzlYjJrtLaFhF34MrfG/Z73DgYCI6ojNUTUp2TYbtnjo8PegeJp12eamsNettCQjKjVw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@babel/template": {
|
"@babel/template": {
|
||||||
|
@ -333,26 +332,25 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/traverse": {
|
"@babel/traverse": {
|
||||||
"version": "7.13.0",
|
"version": "7.13.13",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.0.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.13.tgz",
|
||||||
"integrity": "sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ==",
|
"integrity": "sha512-CblEcwmXKR6eP43oQGG++0QMTtCjAsa3frUuzHoiIJWpaIIi8dwMyEFUJoXRLxagGqCK+jALRwIO+o3R9p/uUg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/code-frame": "^7.12.13",
|
"@babel/code-frame": "^7.12.13",
|
||||||
"@babel/generator": "^7.13.0",
|
"@babel/generator": "^7.13.9",
|
||||||
"@babel/helper-function-name": "^7.12.13",
|
"@babel/helper-function-name": "^7.12.13",
|
||||||
"@babel/helper-split-export-declaration": "^7.12.13",
|
"@babel/helper-split-export-declaration": "^7.12.13",
|
||||||
"@babel/parser": "^7.13.0",
|
"@babel/parser": "^7.13.13",
|
||||||
"@babel/types": "^7.13.0",
|
"@babel/types": "^7.13.13",
|
||||||
"debug": "^4.1.0",
|
"debug": "^4.1.0",
|
||||||
"globals": "^11.1.0",
|
"globals": "^11.1.0"
|
||||||
"lodash": "^4.17.19"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/types": {
|
"@babel/types": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.14",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.14.tgz",
|
||||||
"integrity": "sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==",
|
"integrity": "sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/helper-validator-identifier": "^7.12.11",
|
"@babel/helper-validator-identifier": "^7.12.11",
|
||||||
|
@ -494,12 +492,12 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/helper-compilation-targets": {
|
"@babel/helper-compilation-targets": {
|
||||||
"version": "7.13.10",
|
"version": "7.13.13",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.10.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.13.tgz",
|
||||||
"integrity": "sha512-/Xju7Qg1GQO4mHZ/Kcs6Au7gfafgZnwm+a7sy/ow/tV1sHeraRUHbjdat8/UvDor4Tez+siGKDk6zIKtCPKVJA==",
|
"integrity": "sha512-q1kcdHNZehBwD9jYPh3WyXcsFERi39X4I59I3NadciWtNDyZ6x+GboOxncFK0kXlKIv6BJm5acncehXWUjWQMQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/compat-data": "^7.13.8",
|
"@babel/compat-data": "^7.13.12",
|
||||||
"@babel/helper-validator-option": "^7.12.17",
|
"@babel/helper-validator-option": "^7.12.17",
|
||||||
"browserslist": "^4.14.5",
|
"browserslist": "^4.14.5",
|
||||||
"semver": "^6.3.0"
|
"semver": "^6.3.0"
|
||||||
|
@ -519,9 +517,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"electron-to-chromium": {
|
"electron-to-chromium": {
|
||||||
"version": "1.3.697",
|
"version": "1.3.701",
|
||||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.697.tgz",
|
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.701.tgz",
|
||||||
"integrity": "sha512-VTAS+IWwGlfaL7VtfUMzFeV55PT/HglNFqQ6eW9E3PfjvPqhZfqJj+8dd9zrqrJYcouUfCgQw0OIse85Dz9V9Q==",
|
"integrity": "sha512-Zd9ofdIMYHYhG1gvnejQDvC/kqSeXQvtXF0yRURGxgwGqDZm9F9Fm3dYFnm5gyuA7xpXfBlzVLN1sz0FjxpKfw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"semver": {
|
"semver": {
|
||||||
|
@ -562,9 +560,9 @@
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/types": {
|
"@babel/types": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.14",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.14.tgz",
|
||||||
"integrity": "sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==",
|
"integrity": "sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/helper-validator-identifier": "^7.12.11",
|
"@babel/helper-validator-identifier": "^7.12.11",
|
||||||
|
@ -596,9 +594,9 @@
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/types": {
|
"@babel/types": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.14",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.14.tgz",
|
||||||
"integrity": "sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==",
|
"integrity": "sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/helper-validator-identifier": "^7.12.11",
|
"@babel/helper-validator-identifier": "^7.12.11",
|
||||||
|
@ -621,9 +619,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/helper-module-transforms": {
|
"@babel/helper-module-transforms": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.14",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.14.tgz",
|
||||||
"integrity": "sha512-7zVQqMO3V+K4JOOj40kxiCrMf6xlQAkewBB0eu2b03OO/Q21ZutOzjpfD79A5gtE/2OWi1nv625MrDlGlkbknQ==",
|
"integrity": "sha512-QuU/OJ0iAOSIatyVZmfqB0lbkVP0kDRiKj34xy+QNsnVZi/PA6BoSoreeqnxxa9EHFAIL0R9XOaAR/G9WlIy5g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/helper-module-imports": "^7.13.12",
|
"@babel/helper-module-imports": "^7.13.12",
|
||||||
|
@ -632,8 +630,8 @@
|
||||||
"@babel/helper-split-export-declaration": "^7.12.13",
|
"@babel/helper-split-export-declaration": "^7.12.13",
|
||||||
"@babel/helper-validator-identifier": "^7.12.11",
|
"@babel/helper-validator-identifier": "^7.12.11",
|
||||||
"@babel/template": "^7.12.13",
|
"@babel/template": "^7.12.13",
|
||||||
"@babel/traverse": "^7.13.0",
|
"@babel/traverse": "^7.13.13",
|
||||||
"@babel/types": "^7.13.12"
|
"@babel/types": "^7.13.14"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/code-frame": {
|
"@babel/code-frame": {
|
||||||
|
@ -697,9 +695,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/parser": {
|
"@babel/parser": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.13",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.13.tgz",
|
||||||
"integrity": "sha512-4T7Pb244rxH24yR116LAuJ+adxXXnHhZaLJjegJVKSdoNCe4x1eDBaud5YIcQFcqzsaD5BHvJw5BQ0AZapdCRw==",
|
"integrity": "sha512-OhsyMrqygfk5v8HmWwOzlYjJrtLaFhF34MrfG/Z73DgYCI6ojNUTUp2TYbtnjo8PegeJp12eamsNettCQjKjVw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@babel/template": {
|
"@babel/template": {
|
||||||
|
@ -714,26 +712,25 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/traverse": {
|
"@babel/traverse": {
|
||||||
"version": "7.13.0",
|
"version": "7.13.13",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.0.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.13.tgz",
|
||||||
"integrity": "sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ==",
|
"integrity": "sha512-CblEcwmXKR6eP43oQGG++0QMTtCjAsa3frUuzHoiIJWpaIIi8dwMyEFUJoXRLxagGqCK+jALRwIO+o3R9p/uUg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/code-frame": "^7.12.13",
|
"@babel/code-frame": "^7.12.13",
|
||||||
"@babel/generator": "^7.13.0",
|
"@babel/generator": "^7.13.9",
|
||||||
"@babel/helper-function-name": "^7.12.13",
|
"@babel/helper-function-name": "^7.12.13",
|
||||||
"@babel/helper-split-export-declaration": "^7.12.13",
|
"@babel/helper-split-export-declaration": "^7.12.13",
|
||||||
"@babel/parser": "^7.13.0",
|
"@babel/parser": "^7.13.13",
|
||||||
"@babel/types": "^7.13.0",
|
"@babel/types": "^7.13.13",
|
||||||
"debug": "^4.1.0",
|
"debug": "^4.1.0",
|
||||||
"globals": "^11.1.0",
|
"globals": "^11.1.0"
|
||||||
"lodash": "^4.17.19"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/types": {
|
"@babel/types": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.14",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.14.tgz",
|
||||||
"integrity": "sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==",
|
"integrity": "sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/helper-validator-identifier": "^7.12.11",
|
"@babel/helper-validator-identifier": "^7.12.11",
|
||||||
|
@ -827,9 +824,9 @@
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/types": {
|
"@babel/types": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.14",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.14.tgz",
|
||||||
"integrity": "sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==",
|
"integrity": "sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/helper-validator-identifier": "^7.12.11",
|
"@babel/helper-validator-identifier": "^7.12.11",
|
||||||
|
@ -930,9 +927,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/parser": {
|
"@babel/parser": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.13",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.13.tgz",
|
||||||
"integrity": "sha512-4T7Pb244rxH24yR116LAuJ+adxXXnHhZaLJjegJVKSdoNCe4x1eDBaud5YIcQFcqzsaD5BHvJw5BQ0AZapdCRw==",
|
"integrity": "sha512-OhsyMrqygfk5v8HmWwOzlYjJrtLaFhF34MrfG/Z73DgYCI6ojNUTUp2TYbtnjo8PegeJp12eamsNettCQjKjVw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@babel/template": {
|
"@babel/template": {
|
||||||
|
@ -947,26 +944,25 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/traverse": {
|
"@babel/traverse": {
|
||||||
"version": "7.13.0",
|
"version": "7.13.13",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.0.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.13.tgz",
|
||||||
"integrity": "sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ==",
|
"integrity": "sha512-CblEcwmXKR6eP43oQGG++0QMTtCjAsa3frUuzHoiIJWpaIIi8dwMyEFUJoXRLxagGqCK+jALRwIO+o3R9p/uUg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/code-frame": "^7.12.13",
|
"@babel/code-frame": "^7.12.13",
|
||||||
"@babel/generator": "^7.13.0",
|
"@babel/generator": "^7.13.9",
|
||||||
"@babel/helper-function-name": "^7.12.13",
|
"@babel/helper-function-name": "^7.12.13",
|
||||||
"@babel/helper-split-export-declaration": "^7.12.13",
|
"@babel/helper-split-export-declaration": "^7.12.13",
|
||||||
"@babel/parser": "^7.13.0",
|
"@babel/parser": "^7.13.13",
|
||||||
"@babel/types": "^7.13.0",
|
"@babel/types": "^7.13.13",
|
||||||
"debug": "^4.1.0",
|
"debug": "^4.1.0",
|
||||||
"globals": "^11.1.0",
|
"globals": "^11.1.0"
|
||||||
"lodash": "^4.17.19"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/types": {
|
"@babel/types": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.14",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.14.tgz",
|
||||||
"integrity": "sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==",
|
"integrity": "sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/helper-validator-identifier": "^7.12.11",
|
"@babel/helper-validator-identifier": "^7.12.11",
|
||||||
|
@ -1060,9 +1056,9 @@
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/types": {
|
"@babel/types": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.14",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.14.tgz",
|
||||||
"integrity": "sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==",
|
"integrity": "sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/helper-validator-identifier": "^7.12.11",
|
"@babel/helper-validator-identifier": "^7.12.11",
|
||||||
|
@ -1177,9 +1173,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/parser": {
|
"@babel/parser": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.13",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.13.tgz",
|
||||||
"integrity": "sha512-4T7Pb244rxH24yR116LAuJ+adxXXnHhZaLJjegJVKSdoNCe4x1eDBaud5YIcQFcqzsaD5BHvJw5BQ0AZapdCRw==",
|
"integrity": "sha512-OhsyMrqygfk5v8HmWwOzlYjJrtLaFhF34MrfG/Z73DgYCI6ojNUTUp2TYbtnjo8PegeJp12eamsNettCQjKjVw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@babel/template": {
|
"@babel/template": {
|
||||||
|
@ -1194,26 +1190,25 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/traverse": {
|
"@babel/traverse": {
|
||||||
"version": "7.13.0",
|
"version": "7.13.13",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.0.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.13.tgz",
|
||||||
"integrity": "sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ==",
|
"integrity": "sha512-CblEcwmXKR6eP43oQGG++0QMTtCjAsa3frUuzHoiIJWpaIIi8dwMyEFUJoXRLxagGqCK+jALRwIO+o3R9p/uUg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/code-frame": "^7.12.13",
|
"@babel/code-frame": "^7.12.13",
|
||||||
"@babel/generator": "^7.13.0",
|
"@babel/generator": "^7.13.9",
|
||||||
"@babel/helper-function-name": "^7.12.13",
|
"@babel/helper-function-name": "^7.12.13",
|
||||||
"@babel/helper-split-export-declaration": "^7.12.13",
|
"@babel/helper-split-export-declaration": "^7.12.13",
|
||||||
"@babel/parser": "^7.13.0",
|
"@babel/parser": "^7.13.13",
|
||||||
"@babel/types": "^7.13.0",
|
"@babel/types": "^7.13.13",
|
||||||
"debug": "^4.1.0",
|
"debug": "^4.1.0",
|
||||||
"globals": "^11.1.0",
|
"globals": "^11.1.0"
|
||||||
"lodash": "^4.17.19"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/types": {
|
"@babel/types": {
|
||||||
"version": "7.13.12",
|
"version": "7.13.14",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.12.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.14.tgz",
|
||||||
"integrity": "sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==",
|
"integrity": "sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/helper-validator-identifier": "^7.12.11",
|
"@babel/helper-validator-identifier": "^7.12.11",
|
||||||
|
@ -4860,9 +4855,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"caniuse-lite": {
|
"caniuse-lite": {
|
||||||
"version": "1.0.30001191",
|
"version": "1.0.30001204",
|
||||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001191.tgz",
|
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001204.tgz",
|
||||||
"integrity": "sha512-xJJqzyd+7GCJXkcoBiQ1GuxEiOBCLQ0aVW9HMekifZsAVGdj5eJ4mFB9fEhSHipq9IOk/QXFJUiIr9lZT+EsGw==",
|
"integrity": "sha512-JUdjWpcxfJ9IPamy2f5JaRDCaqJOxDzOSKtbdx4rH9VivMd1vIzoPumsJa9LoMIi4Fx2BV2KZOxWhNkBjaYivQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"canvas-fit": {
|
"canvas-fit": {
|
||||||
|
@ -5350,9 +5345,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"colorette": {
|
"colorette": {
|
||||||
"version": "1.2.1",
|
"version": "1.2.2",
|
||||||
"resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz",
|
||||||
"integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==",
|
"integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"colormap": {
|
"colormap": {
|
||||||
|
@ -15809,9 +15804,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node-releases": {
|
"node-releases": {
|
||||||
"version": "1.1.70",
|
"version": "1.1.71",
|
||||||
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.70.tgz",
|
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.71.tgz",
|
||||||
"integrity": "sha512-Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw==",
|
"integrity": "sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node-sass": {
|
"node-sass": {
|
||||||
|
@ -20909,9 +20904,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"scratch-blocks": {
|
"scratch-blocks": {
|
||||||
"version": "0.1.0-prerelease.20210324033606",
|
"version": "0.1.0-prerelease.20210329152629",
|
||||||
"resolved": "https://registry.npmjs.org/scratch-blocks/-/scratch-blocks-0.1.0-prerelease.20210324033606.tgz",
|
"resolved": "https://registry.npmjs.org/scratch-blocks/-/scratch-blocks-0.1.0-prerelease.20210329152629.tgz",
|
||||||
"integrity": "sha512-zCf7mN64RLME1tA9t2HcDEnf5h5+ziMyksbQj3gsWOUylYLrrYksMBw7wprVEMdPBJwz+4HhpcpkkrCQV1NVnw==",
|
"integrity": "sha512-aOsTbGnwI+senEBpH8ZCAipJhxkyJ2UPrKA7JeTtBN4xsoW5sTvQ/fEpnBa/wa0pYi9abk2KGvfGDV1qdp8onA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"exports-loader": "0.6.3",
|
"exports-loader": "0.6.3",
|
||||||
|
@ -20919,9 +20914,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"scratch-gui": {
|
"scratch-gui": {
|
||||||
"version": "0.1.0-prerelease.20210324120840",
|
"version": "0.1.0-prerelease.20210329170111",
|
||||||
"resolved": "https://registry.npmjs.org/scratch-gui/-/scratch-gui-0.1.0-prerelease.20210324120840.tgz",
|
"resolved": "https://registry.npmjs.org/scratch-gui/-/scratch-gui-0.1.0-prerelease.20210329170111.tgz",
|
||||||
"integrity": "sha512-6KLZfZdJLAMLBDJo/LC6f0ckUg0CefE941NvBiNmV2XOIAoMPe5gq/eX3C1JT6BDLAFw4ogw4+K1KmQX/PYibw==",
|
"integrity": "sha512-QM/f9FtDesgfb8vKNwkIPUxcYWZtcYqzROz0R4d5bsQ8W9k8FxP1NBr8hw/Lmoh+AyrJWY3MmUk+v8saX5/yOg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"arraybuffer-loader": "^1.0.6",
|
"arraybuffer-loader": "^1.0.6",
|
||||||
|
@ -20972,10 +20967,10 @@
|
||||||
"redux": "3.7.2",
|
"redux": "3.7.2",
|
||||||
"redux-throttle": "0.1.1",
|
"redux-throttle": "0.1.1",
|
||||||
"scratch-audio": "0.1.0-prerelease.20200528195344",
|
"scratch-audio": "0.1.0-prerelease.20200528195344",
|
||||||
"scratch-blocks": "0.1.0-prerelease.20210324033606",
|
"scratch-blocks": "0.1.0-prerelease.20210329152629",
|
||||||
"scratch-l10n": "3.11.20210324031512",
|
"scratch-l10n": "3.11.20210324031512",
|
||||||
"scratch-paint": "0.2.0-prerelease.20210319222931",
|
"scratch-paint": "0.2.0-prerelease.20210319222931",
|
||||||
"scratch-render": "0.1.0-prerelease.20210317200605",
|
"scratch-render": "0.1.0-prerelease.20210329152519",
|
||||||
"scratch-render-fonts": "1.0.0-prerelease.20200507182347",
|
"scratch-render-fonts": "1.0.0-prerelease.20200507182347",
|
||||||
"scratch-storage": "1.3.3",
|
"scratch-storage": "1.3.3",
|
||||||
"scratch-svg-renderer": "0.2.0-prerelease.20210317184701",
|
"scratch-svg-renderer": "0.2.0-prerelease.20210317184701",
|
||||||
|
@ -21142,9 +21137,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"electron-to-chromium": {
|
"electron-to-chromium": {
|
||||||
"version": "1.3.698",
|
"version": "1.3.701",
|
||||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.698.tgz",
|
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.701.tgz",
|
||||||
"integrity": "sha512-VEXDzYblnlT+g8Q3gedwzgKOso1evkeJzV8lih7lV8mL8eAnGVnKyC3KsFT6S+R5PQO4ffdr1PI16/ElibY/kQ==",
|
"integrity": "sha512-Zd9ofdIMYHYhG1gvnejQDvC/kqSeXQvtXF0yRURGxgwGqDZm9F9Fm3dYFnm5gyuA7xpXfBlzVLN1sz0FjxpKfw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"has-flag": {
|
"has-flag": {
|
||||||
|
@ -21364,6 +21359,19 @@
|
||||||
"integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=",
|
"integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"scratch-l10n": {
|
||||||
|
"version": "3.11.20210324031512",
|
||||||
|
"resolved": "https://registry.npmjs.org/scratch-l10n/-/scratch-l10n-3.11.20210324031512.tgz",
|
||||||
|
"integrity": "sha512-dyv2cjNWVHrL78XpW64uF2azYaUhMKLjfJVH6vSCPJxm3EKCvO6EoaUSlIAwhsGoMwgfxWZ8D74+IaifGJfnCQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"@babel/cli": "^7.1.2",
|
||||||
|
"@babel/core": "^7.1.2",
|
||||||
|
"babel-plugin-react-intl": "^3.0.1",
|
||||||
|
"react-intl": "^2.8.0",
|
||||||
|
"transifex": "1.6.6"
|
||||||
|
}
|
||||||
|
},
|
||||||
"scratch-storage": {
|
"scratch-storage": {
|
||||||
"version": "1.3.3",
|
"version": "1.3.3",
|
||||||
"resolved": "https://registry.npmjs.org/scratch-storage/-/scratch-storage-1.3.3.tgz",
|
"resolved": "https://registry.npmjs.org/scratch-storage/-/scratch-storage-1.3.3.tgz",
|
||||||
|
@ -21431,9 +21439,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"scratch-l10n": {
|
"scratch-l10n": {
|
||||||
"version": "3.11.20210324031512",
|
"version": "3.11.20210329031438",
|
||||||
"resolved": "https://registry.npmjs.org/scratch-l10n/-/scratch-l10n-3.11.20210324031512.tgz",
|
"resolved": "https://registry.npmjs.org/scratch-l10n/-/scratch-l10n-3.11.20210329031438.tgz",
|
||||||
"integrity": "sha512-dyv2cjNWVHrL78XpW64uF2azYaUhMKLjfJVH6vSCPJxm3EKCvO6EoaUSlIAwhsGoMwgfxWZ8D74+IaifGJfnCQ==",
|
"integrity": "sha512-/XnUW5Q7xaxvlNTBChrqyQjSM0jpk3SQfdlbM/76qO8D7vWOTCAyaCbQ05v/Wnm9V8QqWqlp3+e1yNWa4k4c+Q==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/cli": "^7.1.2",
|
"@babel/cli": "^7.1.2",
|
||||||
|
@ -21457,7 +21465,7 @@
|
||||||
"minilog": "3.1.0",
|
"minilog": "3.1.0",
|
||||||
"parse-color": "1.0.0",
|
"parse-color": "1.0.0",
|
||||||
"prop-types": "^15.5.10",
|
"prop-types": "^15.5.10",
|
||||||
"scratch-render-fonts": "^1.0.0-prerelease.20200507182347"
|
"scratch-render-fonts": "^1.0.0-prerelease.20210325224822"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"lodash.omit": {
|
"lodash.omit": {
|
||||||
|
@ -21482,9 +21490,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"scratch-render-fonts": {
|
"scratch-render-fonts": {
|
||||||
"version": "1.0.0-prerelease.20200507182347",
|
"version": "1.0.0-prerelease.20210325224822",
|
||||||
"resolved": "https://registry.npmjs.org/scratch-render-fonts/-/scratch-render-fonts-1.0.0-prerelease.20200507182347.tgz",
|
"resolved": "https://registry.npmjs.org/scratch-render-fonts/-/scratch-render-fonts-1.0.0-prerelease.20210325224822.tgz",
|
||||||
"integrity": "sha512-tVt2s7lxsBhme9WKIZTnluMerdJVGEc80QSrDdIIzUvHXGCIYkLh6j7ytwXcyq2UsA34d93op9+I9Bh1SPkQkA==",
|
"integrity": "sha512-N68YRKGEbFvMAhfNFEluDuWFXUCbO9ezRahqJKwCFpEQuhgQ9tmA+y+GZ5ETQwI/e9M1tHAfX/8DxK5yBdQT1A==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"base64-loader": "1.0.0"
|
"base64-loader": "1.0.0"
|
||||||
|
@ -21515,9 +21523,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"scratch-render": {
|
"scratch-render": {
|
||||||
"version": "0.1.0-prerelease.20210317200605",
|
"version": "0.1.0-prerelease.20210329152519",
|
||||||
"resolved": "https://registry.npmjs.org/scratch-render/-/scratch-render-0.1.0-prerelease.20210317200605.tgz",
|
"resolved": "https://registry.npmjs.org/scratch-render/-/scratch-render-0.1.0-prerelease.20210329152519.tgz",
|
||||||
"integrity": "sha512-HbWHTOX9X/jlZw0HINKfHkZ8H7GHiyqR8Cj3jKowHrH2r8bTn7K8DfT3Ql81fepMxVqqeKFPPnpvHwvDEaYWKg==",
|
"integrity": "sha512-w7n4t6FSQQGzXoDJJ0SnhOCDhc42EX28qWdjm73Zsv7nR/HFLwblrglodeTgcIU35bAX2rmWLDBgAMyhe7S1LA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"grapheme-breaker": "0.3.2",
|
"grapheme-breaker": "0.3.2",
|
||||||
|
|
|
@ -125,7 +125,7 @@
|
||||||
"redux-mock-store": "^1.2.3",
|
"redux-mock-store": "^1.2.3",
|
||||||
"redux-thunk": "2.0.1",
|
"redux-thunk": "2.0.1",
|
||||||
"sass-loader": "6.0.6",
|
"sass-loader": "6.0.6",
|
||||||
"scratch-gui": "0.1.0-prerelease.20210324120840",
|
"scratch-gui": "0.1.0-prerelease.20210329170111",
|
||||||
"scratch-l10n": "latest",
|
"scratch-l10n": "latest",
|
||||||
"selenium-webdriver": "3.6.0",
|
"selenium-webdriver": "3.6.0",
|
||||||
"slick-carousel": "1.6.0",
|
"slick-carousel": "1.6.0",
|
||||||
|
|
154
src/components/cats/cats.jsx
Normal file
|
@ -0,0 +1,154 @@
|
||||||
|
const React = require('react');
|
||||||
|
const bindAll = require('lodash.bindall');
|
||||||
|
|
||||||
|
const Modal = require('../modal/base/modal.jsx');
|
||||||
|
const ModalTitle = require('../modal/base/modal-title.jsx');
|
||||||
|
|
||||||
|
require('./cats.scss');
|
||||||
|
|
||||||
|
const catImages = [
|
||||||
|
'/images/cats/IMG_9775.jpg',
|
||||||
|
'/images/cats/IMG_9766.jpg',
|
||||||
|
'/images/cats/IMG_9587.jpg',
|
||||||
|
'/images/cats/IMG_6558.jpg',
|
||||||
|
'/images/cats/IMG_6521.jpg',
|
||||||
|
'/images/cats/IMG_6020.jpg',
|
||||||
|
'/images/cats/IMG_5880.jpg',
|
||||||
|
'/images/cats/IMG_3218.jpg',
|
||||||
|
'/images/cats/IMG_2776.jpg',
|
||||||
|
'/images/cats/IMG_2775.jpg',
|
||||||
|
'/images/cats/IMG_2681.jpg',
|
||||||
|
'/images/cats/IMG_1092.jpg',
|
||||||
|
'/images/cats/IMG_0684.jpg',
|
||||||
|
'/images/cats/IMG_0698.jpg',
|
||||||
|
'/images/cats/IMG_0504.jpg',
|
||||||
|
'/images/cats/IMG_0288.jpg',
|
||||||
|
'/images/cats/IMG_0122.jpg',
|
||||||
|
'/images/cats/IMG_2507.jpg',
|
||||||
|
'/images/cats/IMG_1977.jpg',
|
||||||
|
'/images/cats/IMG_1696.jpg',
|
||||||
|
'/images/cats/IMG_1463.jpg',
|
||||||
|
'/images/cats/IMG_1157.jpg',
|
||||||
|
'/images/cats/IMG_0681.jpg',
|
||||||
|
'/images/cats/IMG_0135.jpg',
|
||||||
|
'/images/cats/IMG_0071.jpg',
|
||||||
|
'/images/cats/1.jpg',
|
||||||
|
'/images/cats/2.jpg',
|
||||||
|
'/images/cats/3.jpg',
|
||||||
|
'/images/cats/4.jpg',
|
||||||
|
'/images/cats/cat-meme.jpg',
|
||||||
|
'/images/cats/cat-meme2.jpg',
|
||||||
|
'/images/cats/Cat1.jpg',
|
||||||
|
'/images/cats/Cat2.jpg',
|
||||||
|
'/images/cats/Cat3.jpg',
|
||||||
|
'/images/cats/Cat4.jpg',
|
||||||
|
'/images/cats/Cat5.jpg',
|
||||||
|
'/images/cats/Cat6.png',
|
||||||
|
'/images/cats/Cat7.jpg',
|
||||||
|
'/images/cats/Cat8.jpg',
|
||||||
|
'/images/cats/Cat9.jpg',
|
||||||
|
'/images/cats/Cat10.png',
|
||||||
|
'/images/cats/Cat11.png',
|
||||||
|
'/images/cats/Cat12.png',
|
||||||
|
'/images/cats/Cat13.png',
|
||||||
|
'/images/cats/Cat14.png',
|
||||||
|
'/images/cats/IMG_2167.jpg',
|
||||||
|
'/images/cats/IMG_4316.jpg',
|
||||||
|
'/images/cats/IMG_5396.jpg'
|
||||||
|
];
|
||||||
|
|
||||||
|
/* eslint-disable max-len */
|
||||||
|
const mysteryFacts = [
|
||||||
|
'I became a pet after retiring from NASA.',
|
||||||
|
'I was cursed to take this form by an evil wizard.',
|
||||||
|
'My alter ego is Katy Purry.',
|
||||||
|
'You should feed me now or I\'ll be late to my bowling league.',
|
||||||
|
'You think you know, but you have no idea. This is the diary of Scratch Cat...',
|
||||||
|
'I\'m a criminal paw-secutor.',
|
||||||
|
'By night, I put on a human costume and fight crime.',
|
||||||
|
'My grandma was the inspiration for Warrior Cats.',
|
||||||
|
'You think I\'m running back and forth for no reason, but I\'ve got a marathon in June I\'m training for.',
|
||||||
|
'Can you please put on the movie Ratatouille?',
|
||||||
|
'In my secret lab I\'ve almost perfected prosthetic opposable thumbs.',
|
||||||
|
'I\'m late for my audition for Cats: The Musical.',
|
||||||
|
'Actually I\'m a famous opera meower.',
|
||||||
|
'My purrs are ancient healing magic.',
|
||||||
|
'I purr because I contain a small motor.',
|
||||||
|
'I\'m not trying to stab you with my claws, I\'m practicing to be on The Great British Bakeoff.',
|
||||||
|
'My name is Alexander Hameowlton.',
|
||||||
|
'When my humans go to school, I host tea parties with the neighborhood pets.',
|
||||||
|
'When I scratch at the furniture it\'s my way of telling you it\'s time for a new couch',
|
||||||
|
'I knock things off the table, because things on the table are my mortal enemies.',
|
||||||
|
'When I sleep, I dream about three things: fish, catnip, and you. But mostly fish.',
|
||||||
|
'This is my angry face.',
|
||||||
|
'I\'m a cat during the day, but I\'m a loaf ... also during the day.',
|
||||||
|
'At night I closely study the word "homeowner" because the word "meow" is in it.',
|
||||||
|
'My journal is filled with so many cat puns, I almost cat believe it.',
|
||||||
|
'I\'m gonna change the world super soon, quick 3-hour power nap first.',
|
||||||
|
'If Scratch code happened in real life, "Move 10" would make me just sit there and look at you',
|
||||||
|
'I theorized the existence of radium and then was so disappointed to out that Marie Curie had beat me to it in 1902!',
|
||||||
|
'In my free time, I like to go bird watching.',
|
||||||
|
'Hannah Meowtana was inspired by my life.'
|
||||||
|
];
|
||||||
|
|
||||||
|
/* eslint-enable max-len */
|
||||||
|
|
||||||
|
class Cats extends React.Component {
|
||||||
|
constructor (props) {
|
||||||
|
super(props);
|
||||||
|
bindAll(this, [
|
||||||
|
'handleCatsClick',
|
||||||
|
'handleClose',
|
||||||
|
'pickRandomFact'
|
||||||
|
]);
|
||||||
|
this.state = {
|
||||||
|
open: false
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
handleCatsClick () {
|
||||||
|
this.setState({open: true});
|
||||||
|
}
|
||||||
|
|
||||||
|
handleClose () {
|
||||||
|
this.setState({open: false});
|
||||||
|
}
|
||||||
|
|
||||||
|
pickRandomFact () {
|
||||||
|
const randomNumber = Math.floor(Math.random() * (mysteryFacts.length - 1));
|
||||||
|
const catFact = mysteryFacts[randomNumber];
|
||||||
|
return catFact;
|
||||||
|
}
|
||||||
|
|
||||||
|
pickRandomCatImage () {
|
||||||
|
const randomNumber = Math.floor(Math.random() * (catImages.length - 1));
|
||||||
|
const catImage = catImages[randomNumber];
|
||||||
|
return catImage;
|
||||||
|
}
|
||||||
|
|
||||||
|
render () {
|
||||||
|
return (<React.Fragment>
|
||||||
|
<div onClick={this.handleCatsClick}>
|
||||||
|
<a> {'Secret Lives'} </a>
|
||||||
|
</div>
|
||||||
|
<Modal
|
||||||
|
useStandardSizes
|
||||||
|
className="mod-cats"
|
||||||
|
isOpen={this.state.open}
|
||||||
|
onRequestClose={this.handleClose}
|
||||||
|
>
|
||||||
|
<div className="cats-modal-header modal-header">
|
||||||
|
<ModalTitle title={'Shhh... 🤫'} />
|
||||||
|
</div>
|
||||||
|
<div className="cats-modal-content modal-content">
|
||||||
|
<p> {this.pickRandomFact()} </p>
|
||||||
|
<img src={this.pickRandomCatImage()} />
|
||||||
|
</div>
|
||||||
|
</Modal>
|
||||||
|
</React.Fragment>
|
||||||
|
);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = Cats;
|
34
src/components/cats/cats.scss
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
@import "../../colors";
|
||||||
|
@import "../../frameless";
|
||||||
|
|
||||||
|
.mod-cats {
|
||||||
|
min-height: 15rem;
|
||||||
|
max-height: calc(100% - 5rem);
|
||||||
|
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cats-modal-header {
|
||||||
|
box-shadow: inset 0 -1px 0 0 $ui-blue-dark;
|
||||||
|
background-color: $ui-blue;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cats-modal-content {
|
||||||
|
margin: 0 auto;
|
||||||
|
box-shadow: none;
|
||||||
|
width: 100%;
|
||||||
|
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
padding: 20px 50px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cats-modal-content img {
|
||||||
|
width: 400px;
|
||||||
|
|
||||||
|
@media #{$small}, #{$small-height} {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
|
@ -8,6 +8,7 @@ const React = require('react');
|
||||||
|
|
||||||
const FooterBox = require('../container/footer.jsx');
|
const FooterBox = require('../container/footer.jsx');
|
||||||
const LanguageChooser = require('../../languagechooser/languagechooser.jsx');
|
const LanguageChooser = require('../../languagechooser/languagechooser.jsx');
|
||||||
|
const Cats = require('../../cats/cats.jsx');
|
||||||
|
|
||||||
const frameless = require('../../../lib/frameless');
|
const frameless = require('../../../lib/frameless');
|
||||||
const getScratchWikiLink = require('../../../lib/scratch-wiki');
|
const getScratchWikiLink = require('../../../lib/scratch-wiki');
|
||||||
|
@ -34,6 +35,9 @@ const Footer = props => (
|
||||||
<FormattedMessage id="general.contactUs" />
|
<FormattedMessage id="general.contactUs" />
|
||||||
</a>
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
|
<dd>
|
||||||
|
<Cats />
|
||||||
|
</dd>
|
||||||
</dl>
|
</dl>
|
||||||
<dl>
|
<dl>
|
||||||
<dd>
|
<dd>
|
||||||
|
@ -100,7 +104,9 @@ const Footer = props => (
|
||||||
<FormattedMessage id="general.donate" />
|
<FormattedMessage id="general.donate" />
|
||||||
</a>
|
</a>
|
||||||
</dd>
|
</dd>
|
||||||
|
<dd>
|
||||||
|
<Cats />
|
||||||
|
</dd>
|
||||||
</dl>
|
</dl>
|
||||||
<dl>
|
<dl>
|
||||||
<dt>
|
<dt>
|
||||||
|
|
|
@ -9,7 +9,9 @@ const thumbnailUrl = require('../../lib/user-thumbnail');
|
||||||
require('./grid.scss');
|
require('./grid.scss');
|
||||||
|
|
||||||
const Grid = props => (
|
const Grid = props => (
|
||||||
<div className={classNames('grid', props.className)}>
|
<div
|
||||||
|
className={classNames('grid', props.className)}
|
||||||
|
>
|
||||||
<FlexRow>
|
<FlexRow>
|
||||||
{props.items.map((item, key) => {
|
{props.items.map((item, key) => {
|
||||||
const href = `/${props.itemType}/${item.id}/`;
|
const href = `/${props.itemType}/${item.id}/`;
|
||||||
|
@ -19,6 +21,7 @@ const Grid = props => (
|
||||||
avatar={thumbnailUrl(item.author.id)}
|
avatar={thumbnailUrl(item.author.id)}
|
||||||
creator={item.author.username}
|
creator={item.author.username}
|
||||||
favorites={item.stats.favorites}
|
favorites={item.stats.favorites}
|
||||||
|
isUpsideDown={props.isUpsideDown}
|
||||||
href={href}
|
href={href}
|
||||||
key={key}
|
key={key}
|
||||||
loves={item.stats.loves}
|
loves={item.stats.loves}
|
||||||
|
@ -38,6 +41,7 @@ const Grid = props => (
|
||||||
return (
|
return (
|
||||||
<Thumbnail
|
<Thumbnail
|
||||||
href={href}
|
href={href}
|
||||||
|
isUpsideDown={props.isUpsideDown}
|
||||||
key={key}
|
key={key}
|
||||||
owner={item.owner}
|
owner={item.owner}
|
||||||
src={item.image}
|
src={item.image}
|
||||||
|
@ -52,6 +56,7 @@ const Grid = props => (
|
||||||
|
|
||||||
Grid.propTypes = {
|
Grid.propTypes = {
|
||||||
className: PropTypes.string,
|
className: PropTypes.string,
|
||||||
|
isUpsideDown: PropTypes.bool,
|
||||||
itemType: PropTypes.string,
|
itemType: PropTypes.string,
|
||||||
items: PropTypes.arrayOf(PropTypes.object),
|
items: PropTypes.arrayOf(PropTypes.object),
|
||||||
showAvatar: PropTypes.bool,
|
showAvatar: PropTypes.bool,
|
||||||
|
|
|
@ -11,6 +11,16 @@
|
||||||
$project-height: 208px;
|
$project-height: 208px;
|
||||||
$gallery-height: 164px;
|
$gallery-height: 164px;
|
||||||
|
|
||||||
|
&.cat {
|
||||||
|
background-image: url("/svgs/space-cat.svg");
|
||||||
|
background-size: contain;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
|
||||||
|
.thumbnail {
|
||||||
|
opacity: .85;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.flex-row {
|
.flex-row {
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
padding: 12px 0;
|
padding: 12px 0;
|
||||||
|
|
|
@ -110,12 +110,16 @@ const Thumbnail = props => {
|
||||||
</a>
|
</a>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const surpriseClass = props.isUpsideDown ? 'upsideDown' : '';
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
className={classNames(
|
className={classNames(
|
||||||
'thumbnail',
|
'thumbnail',
|
||||||
props.type,
|
props.type,
|
||||||
props.className
|
props.className,
|
||||||
|
surpriseClass
|
||||||
)}
|
)}
|
||||||
>
|
>
|
||||||
{imgElement}
|
{imgElement}
|
||||||
|
@ -136,6 +140,7 @@ Thumbnail.propTypes = {
|
||||||
className: PropTypes.string,
|
className: PropTypes.string,
|
||||||
creator: PropTypes.string,
|
creator: PropTypes.string,
|
||||||
favorites: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
|
favorites: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
|
||||||
|
isUpsideDown: PropTypes.bool,
|
||||||
href: PropTypes.string,
|
href: PropTypes.string,
|
||||||
linkTitle: PropTypes.bool,
|
linkTitle: PropTypes.bool,
|
||||||
loves: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
|
loves: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
|
||||||
|
|
|
@ -112,4 +112,8 @@
|
||||||
height: $gallery-height;
|
height: $gallery-height;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&.upsideDown {
|
||||||
|
transform: rotate(180deg);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -82,5 +82,5 @@
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<% } %>
|
<% } %>
|
||||||
</body>
|
<div style="color: #fff">;</div></body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -29,7 +29,8 @@ class Search extends React.Component {
|
||||||
'getSearchState',
|
'getSearchState',
|
||||||
'handleChangeSortMode',
|
'handleChangeSortMode',
|
||||||
'handleGetSearchMore',
|
'handleGetSearchMore',
|
||||||
'getTab'
|
'getTab',
|
||||||
|
'tick'
|
||||||
]);
|
]);
|
||||||
this.state = this.getSearchState();
|
this.state = this.getSearchState();
|
||||||
this.state.loaded = [];
|
this.state.loaded = [];
|
||||||
|
@ -38,6 +39,12 @@ class Search extends React.Component {
|
||||||
this.state.offset = 0;
|
this.state.offset = 0;
|
||||||
this.state.loadMore = false;
|
this.state.loadMore = false;
|
||||||
|
|
||||||
|
this.state.isUpsideDown = false;
|
||||||
|
this.state.isRainbow = false;
|
||||||
|
this.state.isSecret = false;
|
||||||
|
|
||||||
|
this.state.elapsed = 0;
|
||||||
|
|
||||||
let mode = '';
|
let mode = '';
|
||||||
const query = window.location.search;
|
const query = window.location.search;
|
||||||
const m = query.lastIndexOf('mode=');
|
const m = query.lastIndexOf('mode=');
|
||||||
|
@ -54,7 +61,6 @@ class Search extends React.Component {
|
||||||
if (ACCEPTABLE_MODES.indexOf(mode) !== -1) {
|
if (ACCEPTABLE_MODES.indexOf(mode) !== -1) {
|
||||||
this.state.mode = mode;
|
this.state.mode = mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
componentDidMount () {
|
componentDidMount () {
|
||||||
// just in case there's a URL in the wild with pluses to indicate spaces,
|
// just in case there's a URL in the wild with pluses to indicate spaces,
|
||||||
|
@ -86,13 +92,22 @@ class Search extends React.Component {
|
||||||
// Error means that term was not URI encoded and decoding failed.
|
// Error means that term was not URI encoded and decoding failed.
|
||||||
// We can silence this error because not all query strings are intended to be decoded.
|
// We can silence this error because not all query strings are intended to be decoded.
|
||||||
}
|
}
|
||||||
|
|
||||||
this.props.dispatch(navigationActions.setSearchTerm(term));
|
this.props.dispatch(navigationActions.setSearchTerm(term));
|
||||||
}
|
}
|
||||||
componentDidUpdate (prevProps) {
|
componentDidUpdate (prevProps) {
|
||||||
if (this.props.searchTerm !== prevProps.searchTerm) {
|
if (this.props.searchTerm !== prevProps.searchTerm) {
|
||||||
|
this.setEasterEggs(this.props.searchTerm);
|
||||||
this.handleGetSearchMore();
|
this.handleGetSearchMore();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tick () {
|
||||||
|
this.setState(prevState => (
|
||||||
|
{elapsed: (prevState.elapsed + 10) % 360}
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
encodeSearchTerm () {
|
encodeSearchTerm () {
|
||||||
let termText = '';
|
let termText = '';
|
||||||
if (this.props.searchTerm) {
|
if (this.props.searchTerm) {
|
||||||
|
@ -122,6 +137,23 @@ class Search extends React.Component {
|
||||||
window.location = newLocation;
|
window.location = newLocation;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setEasterEggs (term) {
|
||||||
|
if (term === 'upside down' || term === 'upsidedown' || term === 'upside-down') {
|
||||||
|
this.setState({isUpsideDown: true});
|
||||||
|
}
|
||||||
|
|
||||||
|
if (term.includes('rainbow')) {
|
||||||
|
this.setState({isRainbow: true});
|
||||||
|
setInterval(this.tick, 200);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (term.includes('secret life')) {
|
||||||
|
this.setState({isSecret: true});
|
||||||
|
setInterval(this.tick, 200);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
handleGetSearchMore () {
|
handleGetSearchMore () {
|
||||||
const termText = this.encodeSearchTerm();
|
const termText = this.encodeSearchTerm();
|
||||||
const locale = this.props.intl.locale;
|
const locale = this.props.intl.locale;
|
||||||
|
@ -180,11 +212,14 @@ class Search extends React.Component {
|
||||||
}
|
}
|
||||||
return allTab;
|
return allTab;
|
||||||
}
|
}
|
||||||
|
|
||||||
getProjectBox () {
|
getProjectBox () {
|
||||||
const results = (
|
const results = (
|
||||||
<Grid
|
<Grid
|
||||||
cards
|
cards
|
||||||
|
className={this.state.isSecret ? 'cat' : null}
|
||||||
showAvatar
|
showAvatar
|
||||||
|
isUpsideDown={this.state.isUpsideDown}
|
||||||
itemType={this.state.tab}
|
itemType={this.state.tab}
|
||||||
items={this.state.loaded}
|
items={this.state.loaded}
|
||||||
showFavorites={false}
|
showFavorites={false}
|
||||||
|
@ -193,6 +228,7 @@ class Search extends React.Component {
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
let searchAction = null;
|
let searchAction = null;
|
||||||
|
|
||||||
if (this.state.loaded.length === 0 && this.state.offset !== 0) {
|
if (this.state.loaded.length === 0 && this.state.offset !== 0) {
|
||||||
searchAction = <h2 className="search-prompt"><FormattedMessage id="general.searchEmpty" /></h2>;
|
searchAction = <h2 className="search-prompt"><FormattedMessage id="general.searchEmpty" /></h2>;
|
||||||
} else if (this.state.loadMore) {
|
} else if (this.state.loadMore) {
|
||||||
|
@ -208,16 +244,30 @@ class Search extends React.Component {
|
||||||
<div
|
<div
|
||||||
id="projectBox"
|
id="projectBox"
|
||||||
key="projectBox"
|
key="projectBox"
|
||||||
|
style={this.fancyStyle()}
|
||||||
>
|
>
|
||||||
{results}
|
{results}
|
||||||
{searchAction}
|
{searchAction}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fancyStyle () {
|
||||||
|
if (this.state.isRainbow) {
|
||||||
|
return {
|
||||||
|
filter: `hue-rotate(${this.state.elapsed}deg) saturate(400%)`
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
return {};
|
||||||
|
}
|
||||||
|
|
||||||
render () {
|
render () {
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
<div className="outer">
|
<div
|
||||||
|
className="outer"
|
||||||
|
>
|
||||||
<TitleBanner className="masthead">
|
<TitleBanner className="masthead">
|
||||||
<div className="inner">
|
<div className="inner">
|
||||||
<h1 className="title-banner-h1">
|
<h1 className="title-banner-h1">
|
||||||
|
|
BIN
static/images/cats/1.jpg
Normal file
After Width: | Height: | Size: 46 KiB |
BIN
static/images/cats/2.jpg
Normal file
After Width: | Height: | Size: 38 KiB |
BIN
static/images/cats/3.jpg
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
static/images/cats/4.jpg
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
static/images/cats/Cat1.jpg
Normal file
After Width: | Height: | Size: 52 KiB |
BIN
static/images/cats/Cat10.png
Normal file
After Width: | Height: | Size: 116 KiB |
BIN
static/images/cats/Cat11.png
Normal file
After Width: | Height: | Size: 70 KiB |
BIN
static/images/cats/Cat12.png
Normal file
After Width: | Height: | Size: 92 KiB |
BIN
static/images/cats/Cat13.png
Normal file
After Width: | Height: | Size: 1.6 MiB |
BIN
static/images/cats/Cat14.png
Normal file
After Width: | Height: | Size: 1.5 MiB |
BIN
static/images/cats/Cat2.jpg
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
static/images/cats/Cat3.jpg
Normal file
After Width: | Height: | Size: 35 KiB |
BIN
static/images/cats/Cat4.jpg
Normal file
After Width: | Height: | Size: 39 KiB |
BIN
static/images/cats/Cat5.jpg
Normal file
After Width: | Height: | Size: 51 KiB |
BIN
static/images/cats/Cat6.png
Normal file
After Width: | Height: | Size: 292 KiB |
BIN
static/images/cats/Cat7.jpg
Normal file
After Width: | Height: | Size: 83 KiB |
BIN
static/images/cats/Cat8.jpg
Normal file
After Width: | Height: | Size: 74 KiB |
BIN
static/images/cats/Cat9.jpg
Normal file
After Width: | Height: | Size: 44 KiB |
BIN
static/images/cats/IMG_0071.jpg
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
static/images/cats/IMG_0122.jpg
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
static/images/cats/IMG_0135.jpg
Normal file
After Width: | Height: | Size: 50 KiB |
BIN
static/images/cats/IMG_0288.jpg
Normal file
After Width: | Height: | Size: 44 KiB |
BIN
static/images/cats/IMG_0504.jpg
Normal file
After Width: | Height: | Size: 44 KiB |
BIN
static/images/cats/IMG_0681.jpg
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
static/images/cats/IMG_0684.jpg
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
static/images/cats/IMG_0698.jpg
Normal file
After Width: | Height: | Size: 44 KiB |
BIN
static/images/cats/IMG_1092.jpg
Normal file
After Width: | Height: | Size: 45 KiB |
BIN
static/images/cats/IMG_1157.jpg
Normal file
After Width: | Height: | Size: 56 KiB |
BIN
static/images/cats/IMG_1463.jpg
Normal file
After Width: | Height: | Size: 35 KiB |
BIN
static/images/cats/IMG_1696.jpg
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
static/images/cats/IMG_1977.jpg
Normal file
After Width: | Height: | Size: 38 KiB |
BIN
static/images/cats/IMG_2167.jpg
Normal file
After Width: | Height: | Size: 152 KiB |
BIN
static/images/cats/IMG_2507.jpg
Normal file
After Width: | Height: | Size: 49 KiB |
BIN
static/images/cats/IMG_2681.jpg
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
static/images/cats/IMG_2775.jpg
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
static/images/cats/IMG_2776.jpg
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
static/images/cats/IMG_3218.jpg
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
static/images/cats/IMG_4316.jpg
Normal file
After Width: | Height: | Size: 54 KiB |
BIN
static/images/cats/IMG_5396.jpg
Normal file
After Width: | Height: | Size: 69 KiB |
BIN
static/images/cats/IMG_5880.jpg
Normal file
After Width: | Height: | Size: 45 KiB |
BIN
static/images/cats/IMG_6020.jpg
Normal file
After Width: | Height: | Size: 48 KiB |
BIN
static/images/cats/IMG_6521.jpg
Normal file
After Width: | Height: | Size: 43 KiB |
BIN
static/images/cats/IMG_6558.jpg
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
static/images/cats/IMG_9587.jpg
Normal file
After Width: | Height: | Size: 49 KiB |
BIN
static/images/cats/IMG_9766.jpg
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
static/images/cats/IMG_9775.jpg
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
static/images/cats/cat-meme.jpg
Normal file
After Width: | Height: | Size: 87 KiB |
BIN
static/images/cats/cat-meme2.jpg
Normal file
After Width: | Height: | Size: 27 KiB |
74
static/svgs/space-cat.svg
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="90.99702453613281" height="102.05416107177734" viewBox="-0.5393884181976318 -0.07916021347045898 90.99702453613281 102.05416107177734">
|
||||||
|
<!-- Exported by Scratch - http://scratch.mit.edu/ -->
|
||||||
|
<g id="ID0.09973295871168375">
|
||||||
|
<g id="ID0.38591043977066875">
|
||||||
|
<path id="ID0.5587377939373255" fill="#FAA51F" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 47.2 37.3 C 47.2 37.3 48.4 33.3 52 30.7 C 56.8 27.4 62.3 26.5 61.3 23.1 C 59.8 17.6 52.2 19.8 46.7 25.1 C 41.3 30.4 42.4 33.3 42.4 33.3 C 42.4 33.3 42.1 38.9 47.2 37.3 Z "/>
|
||||||
|
<g id="ID0.9676653761416674">
|
||||||
|
<path id="ID0.0763801415450871" fill="#FAA51F" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 37.1 24.1 C 37.1 24.1 33 20.1 29.3 12.1 C 27.7 8.6 36.1 8.9 32 2.7 C 30.8 0.9 22.8 5.7 21.4 7.3 C 20.1 8.8 20 9.7 21.3 11.3 C 25.8 17.1 26.7 26.2 26.7 26.2 "/>
|
||||||
|
<path id="ID0.055647328961640596" fill="#FAA51F" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 30.2 9.5 C 30.2 9.5 29.1 10.3 27.7 10.7 "/>
|
||||||
|
</g>
|
||||||
|
<g id="Layer_3_7_">
|
||||||
|
<path id="ID0.09487091470509768" fill="#FAA51F" d="M 17.2 39.8 C 15.2 41.3 13.1 43.5 11.9 46.6 C 9.3 53.6 11.6 61.7 7.2 61.6 C 2.8 61.6 -3.4 49.8 5.6 40.4 C 8.7 37.2 12.1 35.4 14.9 34 C 15.6 33.6 22.1 30.9 25.9 32.9 C 29.6 34.8 28.6 36.4 28.1 37.2 C 27.5 38 19.9 37.6 17.2 39.8 Z " stroke-width="1"/>
|
||||||
|
<path id="ID0.206121654715389" fill="#FFFFFF" d="M 7.5 61.6 C 5.4 62 2.1 58.2 1.3 54.6 C 0.5 51 1.3 48.2 1.8 46.4 C 2.7 44.7 2.6 49.4 5.3 50 C 8 50.6 11.4 48.1 11.4 48.1 C 11.4 48.1 10.6 53.4 10.2 56.4 C 9.9 59.1 9.6 61 7.5 61.6 Z " stroke-width="1"/>
|
||||||
|
<path id="ID0.7381807691417634" fill="none" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 17.2 39.8 C 15.2 41.3 13.1 43.5 11.9 46.6 C 9.3 53.6 11.6 61.7 7.2 61.6 C 2.8 61.6 -3.4 49.8 5.6 40.4 C 8.7 37.2 12.1 35.4 14.9 34 C 15.6 33.6 22.1 30.9 25.9 32.9 C 29.6 34.8 28.6 36.4 28.1 37.2 C 27.5 38 19.9 37.6 17.2 39.8 Z "/>
|
||||||
|
</g>
|
||||||
|
<g id="Layer_2_14_">
|
||||||
|
<path id="ID0.0715795997530222" fill="#FAA51F" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 32 31.9 "/>
|
||||||
|
</g>
|
||||||
|
<path id="ID0.4700182010419667" fill="#FAA51F" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 45.3 31.1 C 40.6 26.4 34.8 18.2 26.4 26.5 C 18 34.8 25 40.5 29.7 45.3 C 34.4 50 38.6 48.5 43.4 43.7 C 48.3 38.9 50 35.8 45.3 31.1 Z "/>
|
||||||
|
<path id="ID0.8155788099393249" fill="#FAA51F" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 37.4 47.8 C 37.4 47.8 30.8 47.7 27.1 52.3 C 25.2 54.7 24.9 61.6 20.2 60.9 C 14.5 60 16.3 51.1 22.3 46.4 C 27.7 42.2 30.4 43 30.4 43 "/>
|
||||||
|
<path id="ID0.9267381150275469" fill="#FFFFFF" d="M 41.4 30.8 C 38.4 27.8 34.7 22.7 30.1 27.3 C 25.5 31.9 29.9 35.5 32.9 38.5 C 35.9 41.5 38.3 40.8 40.9 38.2 C 43.5 35.6 44.4 33.8 41.4 30.8 Z " stroke-width="1"/>
|
||||||
|
<g id="ID0.5876337415538728">
|
||||||
|
<path id="ID0.6729683084413409" fill="#FAA51F" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 24.1 38.8 C 24.1 38.8 21.2 33.4 13.5 29 C 10.2 27.1 10.3 34.4 4.6 29.4 C 2.7 27.8 7.5 22 9.2 20.5 C 10.8 19.1 12.2 19.2 13.7 20.6 C 16.8 23.4 24.9 28 24.9 28 "/>
|
||||||
|
<path id="ID0.6592974476516247" fill="#FAA51F" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 10.6 29.7 C 10.6 29.7 11.7 28.6 12.3 27.2 "/>
|
||||||
|
</g>
|
||||||
|
<g id="Layer_2_13_">
|
||||||
|
<path id="ID0.0841677337884903" fill="#FAA51F" d="M 61.9 30.1 C 61.4 30 60.9 30 60.4 29.9 L 60.4 29.9 C 58.1 30.5 55.6 31.4 52.9 32.7 C 36.2 40.6 27.3 53.3 28.4 66.3 C 29.4 78.6 44.3 82.9 45.1 83.1 L 49.3 90.5 L 49.3 90.5 L 54.2 99.1 L 56.9 91.7 L 59.4 85 C 59.4 85 63.9 83.7 67.7 81.2 C 69.1 80.3 71.5 78.3 72.6 77.3 L 75.4 76.8 L 83.8 77.9 L 85.4 78.1 L 84.7 76.5 L 80.9 67.5 C 80.9 67.5 83.1 60.1 82.8 56.4 C 82.2 50.3 79.6 46.7 79.6 46.7 C 79.6 46.7 81.3 44.4 82 41.4 C 81.9 41.2 81.7 41.1 81.6 40.9 C 76.5 34.8 69.4 31.1 61.9 30.1 Z " stroke-width="1"/>
|
||||||
|
<path id="ID0.5103519866243005" fill="#FFFFFF" d="M 61.9 30.1 C 59.2 30.7 56.3 31.7 53.2 33.3 C 49.6 35 46.4 36.6 42 39.8 C 35.1 44.8 30.9 54.6 38 63.1 C 42.1 68 48.3 62.8 48.3 62.8 L 55.1 60.1 C 55.1 60.1 59.8 54.5 63.8 52.8 C 67.7 51 69.7 53.7 69.7 53.7 L 78.3 50.5 L 79 47.5 L 79.1 46.8 C 79.1 46.8 81.2 44.3 81.7 41.1 C 76.5 34.8 69.4 31.1 61.9 30.1 Z " stroke-width="1"/>
|
||||||
|
<path id="ID0.9912767210043967" fill="none" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 58.5 87.6 L 60.5 81.7 "/>
|
||||||
|
<path id="ID0.6875613899901509" fill="none" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 61.9 30.1 C 61.4 30 60.9 30 60.4 29.9 C 58.1 30.5 55.5 31.4 52.9 32.7 C 36.2 40.6 27.3 53.3 28.4 66.3 C 29.4 78.6 44.3 82.9 45.1 83.1 L 49.3 90.5 L 54.2 99.1 L 56.9 91.7 L 59.4 85 C 59.4 85 63.9 83.7 67.7 81.2 C 69.1 80.3 71.5 78.3 72.6 77.3 L 75.4 76.8 L 83.8 77.9 L 85.4 78.1 L 84.7 76.5 L 80.9 67.5 C 80.9 67.5 83.1 60.1 82.8 56.4 C 82.2 50.3 79.6 46.7 79.6 46.7 C 79.6 46.7 81.3 44.4 82 41.4 C 81.9 41.2 81.7 41.1 81.6 40.9 C 76.5 34.8 69.4 31.1 61.9 30.1 Z "/>
|
||||||
|
</g>
|
||||||
|
<g id="Layer_5_7_">
|
||||||
|
<path id="ID0.20810980116948485" fill="#FFFFFF" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 81.1 57.6 C 80.8 52.4 77.9 48.4 74.7 48.6 C 71.5 48.8 69.1 53.1 69.4 58.3 C 69.7 63.5 72.6 67.5 75.8 67.3 C 79 67.1 81.4 62.8 81.1 57.6 Z "/>
|
||||||
|
<path id="ID0.7512365346774459" fill="#414142" d="M 78.8 54.8 C 78.4 53.8 77.4 53.3 76.5 53.7 C 75.6 54 75.2 55.1 75.5 56.1 C 75.9 57.1 76.9 57.6 77.8 57.2 C 78.8 56.8 79.2 55.8 78.8 54.8 " stroke-width="1"/>
|
||||||
|
</g>
|
||||||
|
<g id="Layer_7_7_">
|
||||||
|
<path id="ID0.584295348264277" fill="#FFFFFF" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 60.6 68.9 C 60.3 63.7 57 59.7 53.1 60 C 49.3 60.2 46.5 64.6 46.8 69.8 C 47.1 75 50.4 79 54.3 78.8 C 58 78.4 60.9 74 60.6 68.9 Z "/>
|
||||||
|
<path id="ID0.8320168349891901" fill="#414142" d="M 58 66 C 57.4 65.2 56.2 64.9 55.5 65.5 C 54.7 66.1 54.6 67.2 55.2 68.1 C 55.8 68.9 57 69.2 57.7 68.6 C 58.5 68 58.6 66.8 58 66 " stroke-width="1"/>
|
||||||
|
</g>
|
||||||
|
<path id="ID0.6457894956693053" fill="#5F4B43" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 63.5 54.4 C 65 53.6 67.6 53.2 66.7 51.5 C 66.2 50.8 63 49.1 61.4 50.1 C 59.7 51.2 58.4 55.3 59.4 56.5 C 60.4 57.7 62.2 55.1 63.5 54.4 Z "/>
|
||||||
|
<path id="ID0.5298887402750552" fill="#FFFFFF" stroke="#8E5322" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 48.7 46.7 C 45.3 50.7 45.2 55.3 45.2 55.3 C 45.2 55.3 40 53.8 41.6 49.4 C 43.5 43.7 48.7 46.7 48.7 46.7 Z "/>
|
||||||
|
</g>
|
||||||
|
<path id="ID0.053966973908245564" fill="#FFFFFF" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 79.4 78.7 L 85.7 80.3 C 87.2 80.7 88.3 79.1 87.6 77.8 L 84.4 71.9 "/>
|
||||||
|
<path id="ID0.1555270254611969" fill="#FFFFFF" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 39.7 35.9 C 25.9 46 22.9 65.4 33.1 79.2 C 37 84.5 42.2 88.2 48 90.2 L 52 98.9 C 53 101 55.9 101 56.8 98.9 L 60 91.8 C 65.7 91.5 71.4 89.5 76.3 85.9 C 90.1 75.8 93.1 56.4 82.9 42.6 C 72.8 28.8 53.5 25.8 39.7 35.9 Z "/>
|
||||||
|
<g id="ID0.5774397738277912">
|
||||||
|
<path id="ID0.7828251798637211" fill="#6D6E71" d="M 83.4 45.2 C 90.8 57.4 82.5 65.9 70.3 73.3 C 58.1 80.7 46.7 84.2 39.3 72 C 31.9 59.8 35.8 44 47.9 36.6 C 60 29.2 76 33.1 83.4 45.2 Z " stroke-width="1"/>
|
||||||
|
<path id="ID0.36082394095137715" fill="#A7A9AC" d="M 54.5 33.8 L 50.9 35.4 C 68.3 34.8 85.8 65.3 68.3 74.3 C 50.8 83.3 68.5 74.4 68.5 74.4 C 69.1 74.1 69.6 73.7 70.2 73.4 C 82.4 66 90.7 57.5 83.3 45.3 C 77.3 35.2 65.4 30.8 54.5 33.8 Z " stroke-width="1"/>
|
||||||
|
<path id="ID0.2866909154690802" fill="none" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 83.4 45.2 C 90.8 57.4 82.5 65.9 70.3 73.3 C 58.1 80.7 46.7 84.2 39.3 72 C 31.9 59.8 35.8 44 47.9 36.6 C 60 29.2 76 33.1 83.4 45.2 Z "/>
|
||||||
|
</g>
|
||||||
|
<path id="ID0.12203236622735858" fill="none" stroke="#FFFFFF" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" d="M 81.5 55.7 C 81.5 55.7 79.6 63.1 69.1 67.7 "/>
|
||||||
|
<path id="ID0.4920350951142609" fill="none" stroke="#FFFFFF" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" d="M 65.1 69.6 L 63.6 70.3 "/>
|
||||||
|
<g id="ID0.2624542023986578">
|
||||||
|
<path id="ID0.1011484288610518" fill="#FFFFFF" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 23.9 17.8 L 20.3 10.2 L 33.1 3.5 L 33.1 3.5 L 27.6 6.4 L 32.2 14.6 L 23.9 17.8 "/>
|
||||||
|
<path id="ID0.9947993699461222" fill="#FFFFFF" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 30.5 11.3 C 30.5 11.3 36.5 8.7 33 3.5 L 27.5 6.4 L 30.5 11.3 Z "/>
|
||||||
|
<path id="ID0.910616482142359" fill="#FFFFFF" stroke="#58595B" stroke-width="1.4000132602999924" stroke-linecap="round" stroke-linejoin="round" d="M 24.9641 11.2261 C 25.3675 10.8916 25.8691 10.7524 26.3535 10.7976 C 26.8379 10.8429 27.305 11.0726 27.6395 11.4759 C 27.974 11.8793 28.1132 12.3809 28.068 12.8653 C 28.0227 13.3497 27.793 13.8169 27.3896 14.1513 C 26.9863 14.4858 26.4847 14.625 26.0003 14.5798 C 25.5159 14.5345 25.0487 14.3048 24.7143 13.9015 C 24.3798 13.4981 24.2406 12.9965 24.2858 12.5121 C 24.331 12.0277 24.5607 11.5605 24.9641 11.2261 Z "/>
|
||||||
|
<path id="ID0.05219633784145117" fill="#D1D3D4" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 20.3 10.2 L 19.7 9.1 C 19.4 8.5 19.6 7.7 20.2 7.4 L 30.7 1.6 C 31.4 1.2 32.2 1.5 32.5 2.2 L 33.1 3.6 L 20.3 10.2 Z "/>
|
||||||
|
<path id="ID0.8260174826718867" fill="none" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 21.3 6.5 L 21.9 7.5 "/>
|
||||||
|
<path id="ID0.48421383230015635" fill="none" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 23.3 5.6 L 23.8 6.4 "/>
|
||||||
|
<path id="ID0.9640323268249631" fill="none" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 25.5 4.5 L 26 5.4 "/>
|
||||||
|
<path id="ID0.8807248384691775" fill="none" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 27.5 3.5 L 28 4.4 "/>
|
||||||
|
<path id="ID0.8796985191293061" fill="none" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 29.5 2.4 L 30 3.4 "/>
|
||||||
|
</g>
|
||||||
|
<g id="ID0.357671526260674">
|
||||||
|
<path id="ID0.8794409851543605" fill="#FFFFFF" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 20.5 24.4 L 13.9 18.9 L 4.1 29.8 L 4.1 29.8 L 8.4 25.2 L 15.2 31.8 L 20.5 24.4 "/>
|
||||||
|
<path id="ID0.8567405277863145" fill="#FFFFFF" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 12.4 29.3 C 12.4 29.3 8.3 34.6 4 29.8 L 8.3 25.2 L 12.4 29.3 Z "/>
|
||||||
|
<path id="ID0.5000843121670187" fill="#FFFFFF" stroke="#58595B" stroke-width="1.399987475238863" stroke-linecap="round" stroke-linejoin="round" d="M 13.847 23.8693 C 14.2716 23.5623 14.7813 23.4565 15.2616 23.5337 C 15.7419 23.6108 16.1929 23.8709 16.4999 24.2955 C 16.807 24.7201 16.9128 25.2298 16.8356 25.7101 C 16.7584 26.1905 16.4984 26.6414 16.0738 26.9485 C 15.6492 27.2555 15.1395 27.3613 14.6591 27.2841 C 14.1788 27.207 13.7279 26.9469 13.4208 26.5223 C 13.1137 26.0977 13.008 25.588 13.0851 25.1077 C 13.1623 24.6274 13.4224 24.1764 13.847 23.8693 Z "/>
|
||||||
|
<path id="ID0.5419647269882262" fill="#D1D3D4" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 13.9 18.9 L 12.9 18 C 12.4 17.5 11.6 17.5 11.1 18.1 L 2.7 27 C 2.2 27.6 2.2 28.5 2.9 28.9 L 4.1 29.8 L 13.9 18.9 Z "/>
|
||||||
|
<path id="ID0.2554870289750397" fill="none" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 10 19 L 10.8 19.8 "/>
|
||||||
|
<path id="ID0.0665745297446847" fill="none" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 8.6 20.7 L 9.3 21.4 "/>
|
||||||
|
<path id="ID0.7712228633463383" fill="none" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 7 22.6 L 7.8 23.3 "/>
|
||||||
|
<path id="ID0.586033093277365" fill="none" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 5.5 24.3 L 6.3 25 "/>
|
||||||
|
<path id="ID0.053929599933326244" fill="none" stroke="#58595B" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round" d="M 3.9 26 L 4.7 26.8 "/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 13 KiB |