chg: pkg: remove unnecessary cdn based fonts #4
This commit is contained in:
@@ -1,15 +1,15 @@
|
|||||||
FROM node:22-alpine AS assets
|
FROM oven/bun:1-alpine AS assets
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
COPY package*.json ./
|
COPY package.json bun.lock ./
|
||||||
RUN npm ci --ignore-scripts
|
RUN bun install --frozen-lockfile
|
||||||
|
|
||||||
COPY vite.config.js ./
|
COPY vite.config.js ./
|
||||||
COPY assets/ assets/
|
COPY assets/ assets/
|
||||||
COPY public/ public/
|
COPY public/ public/
|
||||||
|
|
||||||
RUN npm run build
|
RUN bun run build && cp -r node_modules/@fortawesome/fontawesome-free/webfonts public/build/webfonts
|
||||||
|
|
||||||
FROM dunglas/frankenphp:latest
|
FROM dunglas/frankenphp:latest
|
||||||
|
|
||||||
|
|||||||
15
assets/css/_fontawesome-config.scss
Normal file
15
assets/css/_fontawesome-config.scss
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
/*!*
|
||||||
|
* This file is part of the SplendidBear Websites' projects.
|
||||||
|
*
|
||||||
|
* Copyright (c) 2026 @ www.splendidbear.org
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please view the LICENSE
|
||||||
|
* file that was distributed with this source code.
|
||||||
|
*/
|
||||||
|
|
||||||
|
$font-path: "/webfonts";
|
||||||
|
|
||||||
|
@import '@fortawesome/fontawesome-free/scss/fontawesome';
|
||||||
|
@import '@fortawesome/fontawesome-free/scss/brands';
|
||||||
|
@import '@fortawesome/fontawesome-free/scss/solid';
|
||||||
|
@import '@fortawesome/fontawesome-free/scss/regular';
|
||||||
12
assets/css/_fonts-config.scss
Normal file
12
assets/css/_fonts-config.scss
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
/*!*
|
||||||
|
* This file is part of the SplendidBear Websites' projects.
|
||||||
|
*
|
||||||
|
* Copyright (c) 2026 @ www.splendidbear.org
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please view the LICENSE
|
||||||
|
* file that was distributed with this source code.
|
||||||
|
*/
|
||||||
|
|
||||||
|
@import '@fontsource/rajdhani';
|
||||||
|
@import '@fontsource/changa-one';
|
||||||
|
@import '@fontsource/open-sans/700';
|
||||||
@@ -1,3 +1,12 @@
|
|||||||
|
/*!*
|
||||||
|
* This file is part of the SplendidBear Websites' projects.
|
||||||
|
*
|
||||||
|
* Copyright (c) 2026 @ www.splendidbear.org
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please view the LICENSE
|
||||||
|
* file that was distributed with this source code.
|
||||||
|
*/
|
||||||
|
|
||||||
.profile-page {
|
.profile-page {
|
||||||
max-width: 900px;
|
max-width: 900px;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
@@ -643,7 +652,6 @@
|
|||||||
|
|
||||||
i {
|
i {
|
||||||
font-size: 40px;
|
font-size: 40px;
|
||||||
display: block;
|
|
||||||
margin-bottom: 16px;
|
margin-bottom: 16px;
|
||||||
opacity: 0.4;
|
opacity: 0.4;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
@use "sass:color";
|
||||||
|
|
||||||
.twofa-status {
|
.twofa-status {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@@ -220,7 +222,7 @@ $bg-hover: rgba(35, 111, 135, 0.15);
|
|||||||
color: white;
|
color: white;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
background: darken($warning, 10%);
|
background: color.adjust($warning, $lightness: -10%);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -229,7 +231,7 @@ $bg-hover: rgba(35, 111, 135, 0.15);
|
|||||||
color: white;
|
color: white;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
background: darken($danger, 10%);
|
background: color.adjust($danger, $lightness: -10%);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -249,7 +251,6 @@ $bg-hover: rgba(35, 111, 135, 0.15);
|
|||||||
font-size: 48px;
|
font-size: 48px;
|
||||||
color: #455a64;
|
color: #455a64;
|
||||||
margin-bottom: 15px;
|
margin-bottom: 15px;
|
||||||
display: block;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
&__text {
|
&__text {
|
||||||
|
|||||||
@@ -1,5 +1,14 @@
|
|||||||
@import url('https://fonts.googleapis.com/css?family=Rajdhani:300,400,500,600,700&subset=latin-ext');
|
/*!*
|
||||||
@import url('https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css');
|
* This file is part of the SplendidBear Websites' projects.
|
||||||
|
*
|
||||||
|
* Copyright (c) 2026 @ www.splendidbear.org
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please view the LICENSE
|
||||||
|
* file that was distributed with this source code.
|
||||||
|
*/
|
||||||
|
|
||||||
|
@import 'fonts-config';
|
||||||
|
@import 'fontawesome-config';
|
||||||
@import "style";
|
@import "style";
|
||||||
@import "style.homepage";
|
@import "style.homepage";
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,15 @@
|
|||||||
|
/*!*
|
||||||
|
* This file is part of the SplendidBear Websites' projects.
|
||||||
|
*
|
||||||
|
* Copyright (c) 2026 @ www.splendidbear.org
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please view the LICENSE
|
||||||
|
* file that was distributed with this source code.
|
||||||
|
*/
|
||||||
|
|
||||||
@import "style";
|
@import "style";
|
||||||
@import url('https://fonts.googleapis.com/css?family=Changa+One|Open+Sans:700');
|
@import 'fonts-config';
|
||||||
@import url('https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css');
|
@import 'fontawesome-config';
|
||||||
|
|
||||||
@import 'mineseeker/base';
|
@import 'mineseeker/base';
|
||||||
@import 'mineseeker/overlay';
|
@import 'mineseeker/overlay';
|
||||||
|
|||||||
@@ -38,14 +38,6 @@ const DIALOG_SX = {
|
|||||||
color: '#e0e0e0',
|
color: '#e0e0e0',
|
||||||
},
|
},
|
||||||
'& .MuiFormHelperText-root': {
|
'& .MuiFormHelperText-root': {
|
||||||
backgroundImage: `
|
|
||||||
linear-gradient(rgba(35, 111, 135, 0.08) 1px, transparent 1px),
|
|
||||||
linear-gradient(90deg, rgba(35, 111, 135, 0.08) 1px, transparent 1px)
|
|
||||||
`,
|
|
||||||
backgroundSize: '46px 46px',
|
|
||||||
border: '1px solid rgba(35, 111, 135, 0.4)',
|
|
||||||
borderRadius: '12px',
|
|
||||||
boxShadow: '0 0 80px rgba(35, 111, 135, 0.15), 0 32px 80px rgba(0, 0, 0, 0.9)',
|
|
||||||
width: '500px',
|
width: '500px',
|
||||||
maxWidth: '94vw',
|
maxWidth: '94vw',
|
||||||
overflow: 'hidden',
|
overflow: 'hidden',
|
||||||
|
|||||||
71
bun.lock
71
bun.lock
@@ -7,7 +7,10 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@emotion/react": "^11.14.0",
|
"@emotion/react": "^11.14.0",
|
||||||
"@emotion/styled": "^11.14.1",
|
"@emotion/styled": "^11.14.1",
|
||||||
"@fortawesome/fontawesome-free": "^5.2.0",
|
"@fontsource/changa-one": "^5.2.8",
|
||||||
|
"@fontsource/open-sans": "^5.2.7",
|
||||||
|
"@fontsource/rajdhani": "^5.2.7",
|
||||||
|
"@fortawesome/fontawesome-free": "^7.2.0",
|
||||||
"@mui/material": "^9.0.0",
|
"@mui/material": "^9.0.0",
|
||||||
"@mui/x-charts": "^9.0.1",
|
"@mui/x-charts": "^9.0.1",
|
||||||
"@tanstack/react-query": "^5.0.0",
|
"@tanstack/react-query": "^5.0.0",
|
||||||
@@ -105,7 +108,13 @@
|
|||||||
|
|
||||||
"@eslint/plugin-kit": ["@eslint/plugin-kit@0.4.1", "http://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", { "dependencies": { "@eslint/core": "^0.17.0", "levn": "^0.4.1" } }, "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA=="],
|
"@eslint/plugin-kit": ["@eslint/plugin-kit@0.4.1", "http://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", { "dependencies": { "@eslint/core": "^0.17.0", "levn": "^0.4.1" } }, "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA=="],
|
||||||
|
|
||||||
"@fortawesome/fontawesome-free": ["@fortawesome/fontawesome-free@5.11.2", "http://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-5.11.2.tgz", {}, "sha512-XiUPoS79r1G7PcpnNtq85TJ7inJWe0v+b5oZJZKb0pGHNIV6+UiNeQWiFGmuQ0aj7GEhnD/v9iqxIsjuRKtEnQ=="],
|
"@fontsource/changa-one": ["@fontsource/changa-one@5.2.8", "http://registry.npmjs.org/@fontsource/changa-one/-/changa-one-5.2.8.tgz", {}, "sha512-gagiU8sMWLs9ejh41NmrYlGdgasSYWFegz5/+22WqYdJVS9HZbaUEXj/6jj3ZKgi+dQZT0kYI+Nha2UQGbO/mA=="],
|
||||||
|
|
||||||
|
"@fontsource/open-sans": ["@fontsource/open-sans@5.2.7", "", {}, "sha512-8yfgDYjE5O0vmTPdrcjV35y4yMnctsokmi9gN49Gcsr0sjzkMkR97AnKDe6OqZh2SFkYlR28fxOvi21bYEgMSw=="],
|
||||||
|
|
||||||
|
"@fontsource/rajdhani": ["@fontsource/rajdhani@5.2.7", "http://registry.npmjs.org/@fontsource/rajdhani/-/rajdhani-5.2.7.tgz", {}, "sha512-7Gy10U688fCdeFfYKebUF2TZotdgH/ghKyMsseXPmB60lpaUHC8aoCSJl5/OpZ+KHKSU2TqBfKfteVkcIXxTAQ=="],
|
||||||
|
|
||||||
|
"@fortawesome/fontawesome-free": ["@fortawesome/fontawesome-free@7.2.0", "http://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-7.2.0.tgz", {}, "sha512-3DguDv/oUE+7vjMeTSOjCSG+KeawgVQOHrKRnvUuqYh1mfArrh7s+s8hXW3e4RerBA1+Wh+hBqf8sJNpqNrBWg=="],
|
||||||
|
|
||||||
"@humanfs/core": ["@humanfs/core@0.19.1", "http://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", {}, "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA=="],
|
"@humanfs/core": ["@humanfs/core@0.19.1", "http://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", {}, "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA=="],
|
||||||
|
|
||||||
@@ -137,13 +146,13 @@
|
|||||||
|
|
||||||
"@mui/utils": ["@mui/utils@9.0.0", "http://registry.npmjs.org/@mui/utils/-/utils-9.0.0.tgz", { "dependencies": { "@babel/runtime": "^7.29.2", "@mui/types": "^9.0.0", "@types/prop-types": "^15.7.15", "clsx": "^2.1.1", "prop-types": "^15.8.1", "react-is": "^19.2.4" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-bQcqyg/gjULUqTuyUjSAFr6LQGLvtkNtDbJerAtoUn9kGZ0hg5QJiN1PLHMLbeFpe3te1831uq7GFl2ITokGdg=="],
|
"@mui/utils": ["@mui/utils@9.0.0", "http://registry.npmjs.org/@mui/utils/-/utils-9.0.0.tgz", { "dependencies": { "@babel/runtime": "^7.29.2", "@mui/types": "^9.0.0", "@types/prop-types": "^15.7.15", "clsx": "^2.1.1", "prop-types": "^15.8.1", "react-is": "^19.2.4" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-bQcqyg/gjULUqTuyUjSAFr6LQGLvtkNtDbJerAtoUn9kGZ0hg5QJiN1PLHMLbeFpe3te1831uq7GFl2ITokGdg=="],
|
||||||
|
|
||||||
"@mui/x-charts": ["@mui/x-charts@9.0.1", "", { "dependencies": { "@babel/runtime": "^7.28.6", "@mui/utils": "9.0.0", "@mui/x-charts-vendor": "^9.0.0", "@mui/x-internal-gestures": "^9.0.0", "@mui/x-internals": "^9.0.0", "bezier-easing": "^2.1.0", "clsx": "^2.1.1", "prop-types": "^15.8.1", "reselect": "^5.1.1", "use-sync-external-store": "^1.6.0" }, "peerDependencies": { "@emotion/react": "^11.9.0", "@emotion/styled": "^11.8.1", "@mui/material": "^7.3.0 || ^9.0.0", "@mui/system": "^7.3.0 || ^9.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@emotion/react", "@emotion/styled"] }, "sha512-0LyhlGhUm07wGJY0d0U+hSljGS1EHKWgPBsTJ/lBNGDrNc4DI9zSbp4h802LN/eLwMUVXJSI7DH2W3Ef3WsqnQ=="],
|
"@mui/x-charts": ["@mui/x-charts@9.0.1", "http://registry.npmjs.org/@mui/x-charts/-/x-charts-9.0.1.tgz", { "dependencies": { "@babel/runtime": "^7.28.6", "@mui/utils": "9.0.0", "@mui/x-charts-vendor": "^9.0.0", "@mui/x-internal-gestures": "^9.0.0", "@mui/x-internals": "^9.0.0", "bezier-easing": "^2.1.0", "clsx": "^2.1.1", "prop-types": "^15.8.1", "reselect": "^5.1.1", "use-sync-external-store": "^1.6.0" }, "peerDependencies": { "@emotion/react": "^11.9.0", "@emotion/styled": "^11.8.1", "@mui/material": "^7.3.0 || ^9.0.0", "@mui/system": "^7.3.0 || ^9.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@emotion/react", "@emotion/styled"] }, "sha512-0LyhlGhUm07wGJY0d0U+hSljGS1EHKWgPBsTJ/lBNGDrNc4DI9zSbp4h802LN/eLwMUVXJSI7DH2W3Ef3WsqnQ=="],
|
||||||
|
|
||||||
"@mui/x-charts-vendor": ["@mui/x-charts-vendor@9.0.0", "", { "dependencies": { "@babel/runtime": "^7.28.6", "@types/d3-array": "^3.2.2", "@types/d3-color": "^3.1.3", "@types/d3-format": "^3.0.4", "@types/d3-interpolate": "^3.0.4", "@types/d3-path": "^3.1.1", "@types/d3-scale": "^4.0.9", "@types/d3-shape": "^3.1.8", "@types/d3-time": "^3.0.4", "@types/d3-time-format": "^4.0.3", "@types/d3-timer": "^3.0.2", "d3-array": "^3.2.4", "d3-color": "^3.1.0", "d3-format": "^3.1.2", "d3-interpolate": "^3.0.1", "d3-path": "^3.1.0", "d3-scale": "^4.0.2", "d3-shape": "^3.2.0", "d3-time": "^3.1.0", "d3-time-format": "^4.1.0", "d3-timer": "^3.0.1", "flatqueue": "^3.0.0", "internmap": "^2.0.3" } }, "sha512-Do91i+fZiNj/4LN5oaGpJoutolzDBDwdfw6tHrx2LKXDMCRlaImCfreLbdbkk7dFsi9fuIP7hWiMV4vDJKPJTA=="],
|
"@mui/x-charts-vendor": ["@mui/x-charts-vendor@9.0.0", "http://registry.npmjs.org/@mui/x-charts-vendor/-/x-charts-vendor-9.0.0.tgz", { "dependencies": { "@babel/runtime": "^7.28.6", "@types/d3-array": "^3.2.2", "@types/d3-color": "^3.1.3", "@types/d3-format": "^3.0.4", "@types/d3-interpolate": "^3.0.4", "@types/d3-path": "^3.1.1", "@types/d3-scale": "^4.0.9", "@types/d3-shape": "^3.1.8", "@types/d3-time": "^3.0.4", "@types/d3-time-format": "^4.0.3", "@types/d3-timer": "^3.0.2", "d3-array": "^3.2.4", "d3-color": "^3.1.0", "d3-format": "^3.1.2", "d3-interpolate": "^3.0.1", "d3-path": "^3.1.0", "d3-scale": "^4.0.2", "d3-shape": "^3.2.0", "d3-time": "^3.1.0", "d3-time-format": "^4.1.0", "d3-timer": "^3.0.1", "flatqueue": "^3.0.0", "internmap": "^2.0.3" } }, "sha512-Do91i+fZiNj/4LN5oaGpJoutolzDBDwdfw6tHrx2LKXDMCRlaImCfreLbdbkk7dFsi9fuIP7hWiMV4vDJKPJTA=="],
|
||||||
|
|
||||||
"@mui/x-internal-gestures": ["@mui/x-internal-gestures@9.0.0", "", { "dependencies": { "@babel/runtime": "^7.28.6" } }, "sha512-+fW1EUai25GJbivGRsi3GX4GYsSvzFPvUEjmMgB4POkRBDjrEZNaLdVWfapT6DlWv/Vfbi08bYSuyvhPXGMZjw=="],
|
"@mui/x-internal-gestures": ["@mui/x-internal-gestures@9.0.0", "http://registry.npmjs.org/@mui/x-internal-gestures/-/x-internal-gestures-9.0.0.tgz", { "dependencies": { "@babel/runtime": "^7.28.6" } }, "sha512-+fW1EUai25GJbivGRsi3GX4GYsSvzFPvUEjmMgB4POkRBDjrEZNaLdVWfapT6DlWv/Vfbi08bYSuyvhPXGMZjw=="],
|
||||||
|
|
||||||
"@mui/x-internals": ["@mui/x-internals@9.0.0", "", { "dependencies": { "@babel/runtime": "^7.28.6", "@mui/utils": "9.0.0", "reselect": "^5.1.1", "use-sync-external-store": "^1.6.0" }, "peerDependencies": { "react": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-E/4rdg69JjhyybpPGypCjAKSKLLnSdCFM+O6P/nkUg47+qt3uftxQEhjQO53rcn6ahHl6du/uNZ9BLgeY6kYxQ=="],
|
"@mui/x-internals": ["@mui/x-internals@9.0.0", "http://registry.npmjs.org/@mui/x-internals/-/x-internals-9.0.0.tgz", { "dependencies": { "@babel/runtime": "^7.28.6", "@mui/utils": "9.0.0", "reselect": "^5.1.1", "use-sync-external-store": "^1.6.0" }, "peerDependencies": { "react": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-E/4rdg69JjhyybpPGypCjAKSKLLnSdCFM+O6P/nkUg47+qt3uftxQEhjQO53rcn6ahHl6du/uNZ9BLgeY6kYxQ=="],
|
||||||
|
|
||||||
"@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@1.1.3", "http://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.3.tgz", { "dependencies": { "@tybys/wasm-util": "^0.10.1" }, "peerDependencies": { "@emnapi/core": "^1.7.1", "@emnapi/runtime": "^1.7.1" } }, "sha512-xK9sGVbJWYb08+mTJt3/YV24WxvxpXcXtP6B172paPZ+Ts69Re9dAr7lKwJoeIx8OoeuimEiRZ7umkiUVClmmQ=="],
|
"@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@1.1.3", "http://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.3.tgz", { "dependencies": { "@tybys/wasm-util": "^0.10.1" }, "peerDependencies": { "@emnapi/core": "^1.7.1", "@emnapi/runtime": "^1.7.1" } }, "sha512-xK9sGVbJWYb08+mTJt3/YV24WxvxpXcXtP6B172paPZ+Ts69Re9dAr7lKwJoeIx8OoeuimEiRZ7umkiUVClmmQ=="],
|
||||||
|
|
||||||
@@ -227,25 +236,25 @@
|
|||||||
|
|
||||||
"@tybys/wasm-util": ["@tybys/wasm-util@0.10.1", "http://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg=="],
|
"@tybys/wasm-util": ["@tybys/wasm-util@0.10.1", "http://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg=="],
|
||||||
|
|
||||||
"@types/d3-array": ["@types/d3-array@3.2.2", "", {}, "sha512-hOLWVbm7uRza0BYXpIIW5pxfrKe0W+D5lrFiAEYR+pb6w3N2SwSMaJbXdUfSEv+dT4MfHBLtn5js0LAWaO6otw=="],
|
"@types/d3-array": ["@types/d3-array@3.2.2", "http://registry.npmjs.org/@types/d3-array/-/d3-array-3.2.2.tgz", {}, "sha512-hOLWVbm7uRza0BYXpIIW5pxfrKe0W+D5lrFiAEYR+pb6w3N2SwSMaJbXdUfSEv+dT4MfHBLtn5js0LAWaO6otw=="],
|
||||||
|
|
||||||
"@types/d3-color": ["@types/d3-color@3.1.3", "", {}, "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A=="],
|
"@types/d3-color": ["@types/d3-color@3.1.3", "http://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz", {}, "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A=="],
|
||||||
|
|
||||||
"@types/d3-format": ["@types/d3-format@3.0.4", "", {}, "sha512-fALi2aI6shfg7vM5KiR1wNJnZ7r6UuggVqtDA+xiEdPZQwy/trcQaHnwShLuLdta2rTymCNpxYTiMZX/e09F4g=="],
|
"@types/d3-format": ["@types/d3-format@3.0.4", "http://registry.npmjs.org/@types/d3-format/-/d3-format-3.0.4.tgz", {}, "sha512-fALi2aI6shfg7vM5KiR1wNJnZ7r6UuggVqtDA+xiEdPZQwy/trcQaHnwShLuLdta2rTymCNpxYTiMZX/e09F4g=="],
|
||||||
|
|
||||||
"@types/d3-interpolate": ["@types/d3-interpolate@3.0.4", "", { "dependencies": { "@types/d3-color": "*" } }, "sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA=="],
|
"@types/d3-interpolate": ["@types/d3-interpolate@3.0.4", "http://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz", { "dependencies": { "@types/d3-color": "*" } }, "sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA=="],
|
||||||
|
|
||||||
"@types/d3-path": ["@types/d3-path@3.1.1", "", {}, "sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg=="],
|
"@types/d3-path": ["@types/d3-path@3.1.1", "http://registry.npmjs.org/@types/d3-path/-/d3-path-3.1.1.tgz", {}, "sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg=="],
|
||||||
|
|
||||||
"@types/d3-scale": ["@types/d3-scale@4.0.9", "", { "dependencies": { "@types/d3-time": "*" } }, "sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw=="],
|
"@types/d3-scale": ["@types/d3-scale@4.0.9", "http://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.9.tgz", { "dependencies": { "@types/d3-time": "*" } }, "sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw=="],
|
||||||
|
|
||||||
"@types/d3-shape": ["@types/d3-shape@3.1.8", "", { "dependencies": { "@types/d3-path": "*" } }, "sha512-lae0iWfcDeR7qt7rA88BNiqdvPS5pFVPpo5OfjElwNaT2yyekbM0C9vK+yqBqEmHr6lDkRnYNoTBYlAgJa7a4w=="],
|
"@types/d3-shape": ["@types/d3-shape@3.1.8", "http://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.8.tgz", { "dependencies": { "@types/d3-path": "*" } }, "sha512-lae0iWfcDeR7qt7rA88BNiqdvPS5pFVPpo5OfjElwNaT2yyekbM0C9vK+yqBqEmHr6lDkRnYNoTBYlAgJa7a4w=="],
|
||||||
|
|
||||||
"@types/d3-time": ["@types/d3-time@3.0.4", "", {}, "sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g=="],
|
"@types/d3-time": ["@types/d3-time@3.0.4", "http://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.4.tgz", {}, "sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g=="],
|
||||||
|
|
||||||
"@types/d3-time-format": ["@types/d3-time-format@4.0.3", "", {}, "sha512-5xg9rC+wWL8kdDj153qZcsJ0FWiFt0J5RB6LYUNZjwSnesfblqrI/bJ1wBdJ8OQfncgbJG5+2F+qfqnqyzYxyg=="],
|
"@types/d3-time-format": ["@types/d3-time-format@4.0.3", "http://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-4.0.3.tgz", {}, "sha512-5xg9rC+wWL8kdDj153qZcsJ0FWiFt0J5RB6LYUNZjwSnesfblqrI/bJ1wBdJ8OQfncgbJG5+2F+qfqnqyzYxyg=="],
|
||||||
|
|
||||||
"@types/d3-timer": ["@types/d3-timer@3.0.2", "", {}, "sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw=="],
|
"@types/d3-timer": ["@types/d3-timer@3.0.2", "http://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz", {}, "sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw=="],
|
||||||
|
|
||||||
"@types/estree": ["@types/estree@1.0.8", "http://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", {}, "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w=="],
|
"@types/estree": ["@types/estree@1.0.8", "http://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", {}, "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w=="],
|
||||||
|
|
||||||
@@ -307,7 +316,7 @@
|
|||||||
|
|
||||||
"balanced-match": ["balanced-match@1.0.0", "http://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", {}, "sha512-9Y0g0Q8rmSt+H33DfKv7FOc3v+iRI+o1lbzt8jGcIosYW37IIW/2XVYq5NPdmaD5NQ59Nk26Kl/vZbwW9Fr8vg=="],
|
"balanced-match": ["balanced-match@1.0.0", "http://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", {}, "sha512-9Y0g0Q8rmSt+H33DfKv7FOc3v+iRI+o1lbzt8jGcIosYW37IIW/2XVYq5NPdmaD5NQ59Nk26Kl/vZbwW9Fr8vg=="],
|
||||||
|
|
||||||
"bezier-easing": ["bezier-easing@2.1.0", "", {}, "sha512-gbIqZ/eslnUFC1tjEvtz0sgx+xTK20wDnYMIA27VA04R7w6xxXQPZDbibjA9DTWZRA2CXtwHykkVzlCaAJAZig=="],
|
"bezier-easing": ["bezier-easing@2.1.0", "http://registry.npmjs.org/bezier-easing/-/bezier-easing-2.1.0.tgz", {}, "sha512-gbIqZ/eslnUFC1tjEvtz0sgx+xTK20wDnYMIA27VA04R7w6xxXQPZDbibjA9DTWZRA2CXtwHykkVzlCaAJAZig=="],
|
||||||
|
|
||||||
"brace-expansion": ["brace-expansion@1.1.11", "http://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", { "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA=="],
|
"brace-expansion": ["brace-expansion@1.1.11", "http://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", { "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA=="],
|
||||||
|
|
||||||
@@ -341,25 +350,25 @@
|
|||||||
|
|
||||||
"csstype": ["csstype@3.2.3", "http://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", {}, "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ=="],
|
"csstype": ["csstype@3.2.3", "http://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", {}, "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ=="],
|
||||||
|
|
||||||
"d3-array": ["d3-array@3.2.4", "", { "dependencies": { "internmap": "1 - 2" } }, "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg=="],
|
"d3-array": ["d3-array@3.2.4", "http://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", { "dependencies": { "internmap": "1 - 2" } }, "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg=="],
|
||||||
|
|
||||||
"d3-color": ["d3-color@3.1.0", "", {}, "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA=="],
|
"d3-color": ["d3-color@3.1.0", "http://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", {}, "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA=="],
|
||||||
|
|
||||||
"d3-format": ["d3-format@3.1.2", "", {}, "sha512-AJDdYOdnyRDV5b6ArilzCPPwc1ejkHcoyFarqlPqT7zRYjhavcT3uSrqcMvsgh2CgoPbK3RCwyHaVyxYcP2Arg=="],
|
"d3-format": ["d3-format@3.1.2", "http://registry.npmjs.org/d3-format/-/d3-format-3.1.2.tgz", {}, "sha512-AJDdYOdnyRDV5b6ArilzCPPwc1ejkHcoyFarqlPqT7zRYjhavcT3uSrqcMvsgh2CgoPbK3RCwyHaVyxYcP2Arg=="],
|
||||||
|
|
||||||
"d3-interpolate": ["d3-interpolate@3.0.1", "", { "dependencies": { "d3-color": "1 - 3" } }, "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g=="],
|
"d3-interpolate": ["d3-interpolate@3.0.1", "http://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", { "dependencies": { "d3-color": "1 - 3" } }, "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g=="],
|
||||||
|
|
||||||
"d3-path": ["d3-path@3.1.0", "", {}, "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ=="],
|
"d3-path": ["d3-path@3.1.0", "http://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", {}, "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ=="],
|
||||||
|
|
||||||
"d3-scale": ["d3-scale@4.0.2", "", { "dependencies": { "d3-array": "2.10.0 - 3", "d3-format": "1 - 3", "d3-interpolate": "1.2.0 - 3", "d3-time": "2.1.1 - 3", "d3-time-format": "2 - 4" } }, "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ=="],
|
"d3-scale": ["d3-scale@4.0.2", "http://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", { "dependencies": { "d3-array": "2.10.0 - 3", "d3-format": "1 - 3", "d3-interpolate": "1.2.0 - 3", "d3-time": "2.1.1 - 3", "d3-time-format": "2 - 4" } }, "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ=="],
|
||||||
|
|
||||||
"d3-shape": ["d3-shape@3.2.0", "", { "dependencies": { "d3-path": "^3.1.0" } }, "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA=="],
|
"d3-shape": ["d3-shape@3.2.0", "http://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", { "dependencies": { "d3-path": "^3.1.0" } }, "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA=="],
|
||||||
|
|
||||||
"d3-time": ["d3-time@3.1.0", "", { "dependencies": { "d3-array": "2 - 3" } }, "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q=="],
|
"d3-time": ["d3-time@3.1.0", "http://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", { "dependencies": { "d3-array": "2 - 3" } }, "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q=="],
|
||||||
|
|
||||||
"d3-time-format": ["d3-time-format@4.1.0", "", { "dependencies": { "d3-time": "1 - 3" } }, "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg=="],
|
"d3-time-format": ["d3-time-format@4.1.0", "http://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", { "dependencies": { "d3-time": "1 - 3" } }, "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg=="],
|
||||||
|
|
||||||
"d3-timer": ["d3-timer@3.0.1", "", {}, "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA=="],
|
"d3-timer": ["d3-timer@3.0.1", "http://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", {}, "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA=="],
|
||||||
|
|
||||||
"data-view-buffer": ["data-view-buffer@1.0.2", "http://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", { "dependencies": { "call-bound": "^1.0.3", "es-errors": "^1.3.0", "is-data-view": "^1.0.2" } }, "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ=="],
|
"data-view-buffer": ["data-view-buffer@1.0.2", "http://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", { "dependencies": { "call-bound": "^1.0.3", "es-errors": "^1.3.0", "is-data-view": "^1.0.2" } }, "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ=="],
|
||||||
|
|
||||||
@@ -445,7 +454,7 @@
|
|||||||
|
|
||||||
"flat-cache": ["flat-cache@4.0.1", "http://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", { "dependencies": { "flatted": "^3.2.9", "keyv": "^4.5.4" } }, "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw=="],
|
"flat-cache": ["flat-cache@4.0.1", "http://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", { "dependencies": { "flatted": "^3.2.9", "keyv": "^4.5.4" } }, "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw=="],
|
||||||
|
|
||||||
"flatqueue": ["flatqueue@3.0.0", "", {}, "sha512-y1deYaVt+lIc/d2uIcWDNd0CrdQTO5xoCjeFdhX0kSXvm2Acm0o+3bAOiYklTEoRyzwio3sv3/IiBZdusbAe2Q=="],
|
"flatqueue": ["flatqueue@3.0.0", "http://registry.npmjs.org/flatqueue/-/flatqueue-3.0.0.tgz", {}, "sha512-y1deYaVt+lIc/d2uIcWDNd0CrdQTO5xoCjeFdhX0kSXvm2Acm0o+3bAOiYklTEoRyzwio3sv3/IiBZdusbAe2Q=="],
|
||||||
|
|
||||||
"flatted": ["flatted@3.4.2", "http://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz", {}, "sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA=="],
|
"flatted": ["flatted@3.4.2", "http://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz", {}, "sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA=="],
|
||||||
|
|
||||||
@@ -503,7 +512,7 @@
|
|||||||
|
|
||||||
"internal-slot": ["internal-slot@1.1.0", "http://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", { "dependencies": { "es-errors": "^1.3.0", "hasown": "^2.0.2", "side-channel": "^1.1.0" } }, "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw=="],
|
"internal-slot": ["internal-slot@1.1.0", "http://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", { "dependencies": { "es-errors": "^1.3.0", "hasown": "^2.0.2", "side-channel": "^1.1.0" } }, "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw=="],
|
||||||
|
|
||||||
"internmap": ["internmap@2.0.3", "", {}, "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg=="],
|
"internmap": ["internmap@2.0.3", "http://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", {}, "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg=="],
|
||||||
|
|
||||||
"is-array-buffer": ["is-array-buffer@3.0.5", "http://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", { "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.3", "get-intrinsic": "^1.2.6" } }, "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A=="],
|
"is-array-buffer": ["is-array-buffer@3.0.5", "http://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", { "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.3", "get-intrinsic": "^1.2.6" } }, "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A=="],
|
||||||
|
|
||||||
@@ -701,7 +710,7 @@
|
|||||||
|
|
||||||
"regexp.prototype.flags": ["regexp.prototype.flags@1.5.4", "http://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", { "dependencies": { "call-bind": "^1.0.8", "define-properties": "^1.2.1", "es-errors": "^1.3.0", "get-proto": "^1.0.1", "gopd": "^1.2.0", "set-function-name": "^2.0.2" } }, "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA=="],
|
"regexp.prototype.flags": ["regexp.prototype.flags@1.5.4", "http://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", { "dependencies": { "call-bind": "^1.0.8", "define-properties": "^1.2.1", "es-errors": "^1.3.0", "get-proto": "^1.0.1", "gopd": "^1.2.0", "set-function-name": "^2.0.2" } }, "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA=="],
|
||||||
|
|
||||||
"reselect": ["reselect@5.1.1", "", {}, "sha512-K/BG6eIky/SBpzfHZv/dd+9JBFiS4SWV7FIujVyJRux6e45+73RaUHXLmIR1f7WOMaQ0U1km6qwklRQxpJJY0w=="],
|
"reselect": ["reselect@5.1.1", "http://registry.npmjs.org/reselect/-/reselect-5.1.1.tgz", {}, "sha512-K/BG6eIky/SBpzfHZv/dd+9JBFiS4SWV7FIujVyJRux6e45+73RaUHXLmIR1f7WOMaQ0U1km6qwklRQxpJJY0w=="],
|
||||||
|
|
||||||
"resolve": ["resolve@2.0.0-next.6", "http://registry.npmjs.org/resolve/-/resolve-2.0.0-next.6.tgz", { "dependencies": { "es-errors": "^1.3.0", "is-core-module": "^2.16.1", "node-exports-info": "^1.6.0", "object-keys": "^1.1.1", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { "resolve": "bin/resolve" } }, "sha512-3JmVl5hMGtJ3kMmB3zi3DL25KfkCEyy3Tw7Gmw7z5w8M9WlwoPFnIvwChzu1+cF3iaK3sp18hhPz8ANeimdJfA=="],
|
"resolve": ["resolve@2.0.0-next.6", "http://registry.npmjs.org/resolve/-/resolve-2.0.0-next.6.tgz", { "dependencies": { "es-errors": "^1.3.0", "is-core-module": "^2.16.1", "node-exports-info": "^1.6.0", "object-keys": "^1.1.1", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { "resolve": "bin/resolve" } }, "sha512-3JmVl5hMGtJ3kMmB3zi3DL25KfkCEyy3Tw7Gmw7z5w8M9WlwoPFnIvwChzu1+cF3iaK3sp18hhPz8ANeimdJfA=="],
|
||||||
|
|
||||||
@@ -795,7 +804,7 @@
|
|||||||
|
|
||||||
"uri-js": ["uri-js@4.4.1", "http://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", { "dependencies": { "punycode": "^2.1.0" } }, "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg=="],
|
"uri-js": ["uri-js@4.4.1", "http://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", { "dependencies": { "punycode": "^2.1.0" } }, "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg=="],
|
||||||
|
|
||||||
"use-sync-external-store": ["use-sync-external-store@1.6.0", "", { "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w=="],
|
"use-sync-external-store": ["use-sync-external-store@1.6.0", "http://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz", { "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w=="],
|
||||||
|
|
||||||
"vite": ["vite@8.0.8", "http://registry.npmjs.org/vite/-/vite-8.0.8.tgz", { "dependencies": { "lightningcss": "^1.32.0", "picomatch": "^4.0.4", "postcss": "^8.5.8", "rolldown": "1.0.0-rc.15", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "@vitejs/devtools": "^0.1.0", "esbuild": "^0.27.0 || ^0.28.0", "jiti": ">=1.21.0", "less": "^4.0.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "@vitejs/devtools", "esbuild", "jiti", "less", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-dbU7/iLVa8KZALJyLOBOQ88nOXtNG8vxKuOT4I2mD+Ya70KPceF4IAmDsmU0h1Qsn5bPrvsY9HJstCRh3hG6Uw=="],
|
"vite": ["vite@8.0.8", "http://registry.npmjs.org/vite/-/vite-8.0.8.tgz", { "dependencies": { "lightningcss": "^1.32.0", "picomatch": "^4.0.4", "postcss": "^8.5.8", "rolldown": "1.0.0-rc.15", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "@vitejs/devtools": "^0.1.0", "esbuild": "^0.27.0 || ^0.28.0", "jiti": ">=1.21.0", "less": "^4.0.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "@vitejs/devtools", "esbuild", "jiti", "less", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-dbU7/iLVa8KZALJyLOBOQ88nOXtNG8vxKuOT4I2mD+Ya70KPceF4IAmDsmU0h1Qsn5bPrvsY9HJstCRh3hG6Uw=="],
|
||||||
|
|
||||||
|
|||||||
5442
package-lock.json
generated
5442
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -15,7 +15,10 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@emotion/react": "^11.14.0",
|
"@emotion/react": "^11.14.0",
|
||||||
"@emotion/styled": "^11.14.1",
|
"@emotion/styled": "^11.14.1",
|
||||||
"@fortawesome/fontawesome-free": "^5.2.0",
|
"@fontsource/changa-one": "^5.2.8",
|
||||||
|
"@fontsource/open-sans": "^5.2.7",
|
||||||
|
"@fontsource/rajdhani": "^5.2.7",
|
||||||
|
"@fortawesome/fontawesome-free": "^7.2.0",
|
||||||
"@mui/material": "^9.0.0",
|
"@mui/material": "^9.0.0",
|
||||||
"@mui/x-charts": "^9.0.1",
|
"@mui/x-charts": "^9.0.1",
|
||||||
"@tanstack/react-query": "^5.0.0",
|
"@tanstack/react-query": "^5.0.0",
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
<div class="bshare-card">
|
<div class="bshare-card">
|
||||||
|
|
||||||
<div class="bshare-card__eyebrow">
|
<div class="bshare-card__eyebrow">
|
||||||
<i class="fa fa-crosshairs"></i> Battle Report
|
<i class="fas fa-crosshairs"></i> Battle Report
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{# VS Header #}
|
{# VS Header #}
|
||||||
@@ -52,24 +52,24 @@
|
|||||||
{# Result badge #}
|
{# Result badge #}
|
||||||
{% if resign == 'red' %}
|
{% if resign == 'red' %}
|
||||||
<div class="bshare-badge bshare-badge--blue">
|
<div class="bshare-badge bshare-badge--blue">
|
||||||
<i class="fa fa-trophy"></i> Blue wins
|
<i class="fas fa-trophy"></i> Blue wins
|
||||||
</div>
|
</div>
|
||||||
{% elseif resign == 'blue' %}
|
{% elseif resign == 'blue' %}
|
||||||
<div class="bshare-badge bshare-badge--red">
|
<div class="bshare-badge bshare-badge--red">
|
||||||
<i class="fa fa-trophy"></i> Red wins
|
<i class="fas fa-trophy"></i> Red wins
|
||||||
</div>
|
</div>
|
||||||
{% elseif redPts is not null and bluePts is not null %}
|
{% elseif redPts is not null and bluePts is not null %}
|
||||||
{% if redPts > bluePts %}
|
{% if redPts > bluePts %}
|
||||||
<div class="bshare-badge bshare-badge--red">
|
<div class="bshare-badge bshare-badge--red">
|
||||||
<i class="fa fa-trophy"></i> Red wins
|
<i class="fas fa-trophy"></i> Red wins
|
||||||
</div>
|
</div>
|
||||||
{% elseif bluePts > redPts %}
|
{% elseif bluePts > redPts %}
|
||||||
<div class="bshare-badge bshare-badge--blue">
|
<div class="bshare-badge bshare-badge--blue">
|
||||||
<i class="fa fa-trophy"></i> Blue wins
|
<i class="fas fa-trophy"></i> Blue wins
|
||||||
</div>
|
</div>
|
||||||
{% else %}
|
{% else %}
|
||||||
<div class="bshare-badge bshare-badge--draw">
|
<div class="bshare-badge bshare-badge--draw">
|
||||||
<i class="fa fa-minus"></i> Draw
|
<i class="fas fa-minus"></i> Draw
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -89,25 +89,25 @@
|
|||||||
<div class="bshare-details">
|
<div class="bshare-details">
|
||||||
{% if resign %}
|
{% if resign %}
|
||||||
<div class="bshare-detail">
|
<div class="bshare-detail">
|
||||||
<i class="fa fa-flag"></i>
|
<i class="fas fa-flag"></i>
|
||||||
<span>{{ resign|capitalize }} resigned</span>
|
<span>{{ resign|capitalize }} resigned</span>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if game.redExplodedBomb %}
|
{% if game.redExplodedBomb %}
|
||||||
<div class="bshare-detail bshare-detail--bomb">
|
<div class="bshare-detail bshare-detail--bomb">
|
||||||
<i class="fa fa-bomb"></i>
|
<i class="fas fa-bomb"></i>
|
||||||
<span>{{ redName }} hit a mine</span>
|
<span>{{ redName }} hit a mine</span>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if game.blueExplodedBomb %}
|
{% if game.blueExplodedBomb %}
|
||||||
<div class="bshare-detail bshare-detail--bomb">
|
<div class="bshare-detail bshare-detail--bomb">
|
||||||
<i class="fa fa-bomb"></i>
|
<i class="fas fa-bomb"></i>
|
||||||
<span>{{ blueName }} hit a mine</span>
|
<span>{{ blueName }} hit a mine</span>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if game.updated %}
|
{% if game.updated %}
|
||||||
<div class="bshare-detail">
|
<div class="bshare-detail">
|
||||||
<i class="fa fa-calendar"></i>
|
<i class="fas fa-calendar"></i>
|
||||||
<span>{{ game.updated|date('Y-m-d H:i') }}</span>
|
<span>{{ game.updated|date('Y-m-d H:i') }}</span>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -115,10 +115,10 @@
|
|||||||
|
|
||||||
<div class="bshare-cta">
|
<div class="bshare-cta">
|
||||||
<a href="{{ path('MineSeekerBundle_gamePlay') }}" class="bshare-btn">
|
<a href="{{ path('MineSeekerBundle_gamePlay') }}" class="bshare-btn">
|
||||||
<i class="fa fa-play"></i> Play MineSeeker
|
<i class="fas fa-play"></i> Play MineSeeker
|
||||||
</a>
|
</a>
|
||||||
<a href="{{ path('MineSeekerBundle_homepage') }}" class="bshare-btn bshare-btn--ghost">
|
<a href="{{ path('MineSeekerBundle_homepage') }}" class="bshare-btn bshare-btn--ghost">
|
||||||
<i class="fa fa-home"></i> Homepage
|
<i class="fas fa-house"></i> Homepage
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -28,20 +28,20 @@
|
|||||||
{{ app.user.username }}
|
{{ app.user.username }}
|
||||||
</a>
|
</a>
|
||||||
<a href="{{ path('MineSeekerBundle_profile_security') }}" class="hero-auth-btn hero-auth-btn--security">
|
<a href="{{ path('MineSeekerBundle_profile_security') }}" class="hero-auth-btn hero-auth-btn--security">
|
||||||
<i class="fa fa-lock"></i> Security
|
<i class="fas fa-lock"></i> Security
|
||||||
</a>
|
</a>
|
||||||
<form method="post" action="{{ path('MineSeekerBundle_logout') }}">
|
<form method="post" action="{{ path('MineSeekerBundle_logout') }}">
|
||||||
<input type="hidden" name="_csrf_token" value="{{ csrf_token('logout') }}"/>
|
<input type="hidden" name="_csrf_token" value="{{ csrf_token('logout') }}"/>
|
||||||
<button type="submit" class="hero-auth-btn hero-auth-btn--out">
|
<button type="submit" class="hero-auth-btn hero-auth-btn--out">
|
||||||
<i class="fa fa-sign-out"></i> Sign out
|
<i class="fas fa-right-from-bracket"></i> Sign out
|
||||||
</button>
|
</button>
|
||||||
</form>
|
</form>
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('MineSeekerBundle_login') }}" class="hero-auth-btn">
|
<a href="{{ path('MineSeekerBundle_login') }}" class="hero-auth-btn">
|
||||||
<i class="fa fa-sign-in"></i> Sign in
|
<i class="fas fa-right-to-bracket"></i> Sign in
|
||||||
</a>
|
</a>
|
||||||
<a href="{{ path('MineSeekerBundle_register') }}" class="hero-auth-btn hero-auth-btn--register">
|
<a href="{{ path('MineSeekerBundle_register') }}" class="hero-auth-btn hero-auth-btn--register">
|
||||||
<i class="fa fa-user-plus"></i> Register
|
<i class="fas fa-user-plus"></i> Register
|
||||||
</a>
|
</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
@@ -70,9 +70,9 @@
|
|||||||
<section class="feature-block">
|
<section class="feature-block">
|
||||||
<div class="feature-block__inner">
|
<div class="feature-block__inner">
|
||||||
<div class="feature-block__visual feature-block__visual--stats">
|
<div class="feature-block__visual feature-block__visual--stats">
|
||||||
<i class="fa fa-bar-chart"></i>
|
<i class="fas fa-chart-bar"></i>
|
||||||
<i class="fa fa-trophy"></i>
|
<i class="fas fa-trophy"></i>
|
||||||
<i class="fa fa-history"></i>
|
<i class="fas fa-clock-rotate-left"></i>
|
||||||
</div>
|
</div>
|
||||||
<div class="feature-block__text">
|
<div class="feature-block__text">
|
||||||
<p class="feature-block__label">For registered players</p>
|
<p class="feature-block__label">For registered players</p>
|
||||||
@@ -84,7 +84,7 @@
|
|||||||
</p>
|
</p>
|
||||||
{% if not is_granted("IS_AUTHENTICATED_REMEMBERED") %}
|
{% if not is_granted("IS_AUTHENTICATED_REMEMBERED") %}
|
||||||
<a href="{{ path('MineSeekerBundle_register') }}" class="feature-block__cta">
|
<a href="{{ path('MineSeekerBundle_register') }}" class="feature-block__cta">
|
||||||
<i class="fa fa-user-plus"></i> Create free account
|
<i class="fas fa-user-plus"></i> Create free account
|
||||||
</a>
|
</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
{% if authenticationError is defined and authenticationError %}
|
{% if authenticationError is defined and authenticationError %}
|
||||||
<div class="auth-error">
|
<div class="auth-error">
|
||||||
<i class="fa fa-exclamation-triangle"></i>
|
<i class="fas fa-triangle-exclamation"></i>
|
||||||
{{ authenticationError|trans({}, 'SchebTwoFactorBundle') }}
|
{{ authenticationError|trans({}, 'SchebTwoFactorBundle') }}
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
<div class="auth-field">
|
<div class="auth-field">
|
||||||
<label for="auth-code" class="auth-label">Authentication Code</label>
|
<label for="auth-code" class="auth-label">Authentication Code</label>
|
||||||
<div class="auth-input-wrap">
|
<div class="auth-input-wrap">
|
||||||
<i class="fa fa-shield auth-input-icon"></i>
|
<i class="fas fa-shield auth-input-icon"></i>
|
||||||
<input
|
<input
|
||||||
type="text"
|
type="text"
|
||||||
id="auth-code"
|
id="auth-code"
|
||||||
@@ -39,14 +39,14 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button type="submit" class="auth-submit">
|
<button type="submit" class="auth-submit">
|
||||||
<i class="fa fa-check"></i> Verify
|
<i class="fas fa-check"></i> Verify
|
||||||
</button>
|
</button>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<form method="post" action="{{ path('MineSeekerBundle_logout') }}" class="auth-cancel-standalone">
|
<form method="post" action="{{ path('MineSeekerBundle_logout') }}" class="auth-cancel-standalone">
|
||||||
<input type="hidden" name="_csrf_token" value="{{ csrf_token('logout') }}"/>
|
<input type="hidden" name="_csrf_token" value="{{ csrf_token('logout') }}"/>
|
||||||
<button type="submit" class="auth-cancel auth-cancel--block">
|
<button type="submit" class="auth-cancel auth-cancel--block">
|
||||||
<i class="fa fa-sign-out"></i> Cancel
|
<i class="fas fa-right-from-bracket"></i> Cancel
|
||||||
</button>
|
</button>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -29,7 +29,7 @@
|
|||||||
<div class="auth-field">
|
<div class="auth-field">
|
||||||
<label for="auth-code" class="auth-label">Verification Code</label>
|
<label for="auth-code" class="auth-label">Verification Code</label>
|
||||||
<div class="auth-input-wrap">
|
<div class="auth-input-wrap">
|
||||||
<i class="fa fa-shield auth-input-icon"></i>
|
<i class="fas fa-shield auth-input-icon"></i>
|
||||||
<input
|
<input
|
||||||
type="text"
|
type="text"
|
||||||
id="auth-code"
|
id="auth-code"
|
||||||
@@ -48,7 +48,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button type="submit" class="auth-submit">
|
<button type="submit" class="auth-submit">
|
||||||
<i class="fa fa-check"></i> Activate 2FA
|
<i class="fas fa-check"></i> Activate 2FA
|
||||||
</button>
|
</button>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<div class="auth-page">
|
<div class="auth-page">
|
||||||
{% for email in app.flashes('reset_sent') %}
|
{% for email in app.flashes('reset_sent') %}
|
||||||
<div class="auth-card auth-card--sent">
|
<div class="auth-card auth-card--sent">
|
||||||
<div class="auth-sent-icon"><i class="fa fa-envelope-o"></i></div>
|
<div class="auth-sent-icon"><i class="far fa-envelope"></i></div>
|
||||||
<h2 class="auth-title">Check your inbox</h2>
|
<h2 class="auth-title">Check your inbox</h2>
|
||||||
<p class="auth-sub">If an account exists for that address, we sent a reset link to</p>
|
<p class="auth-sub">If an account exists for that address, we sent a reset link to</p>
|
||||||
<p class="auth-sent-email">{{ email }}</p>
|
<p class="auth-sent-email">{{ email }}</p>
|
||||||
@@ -29,7 +29,7 @@
|
|||||||
<div class="auth-field">
|
<div class="auth-field">
|
||||||
<label for="{{ form.email.vars.id }}" class="auth-label">Email</label>
|
<label for="{{ form.email.vars.id }}" class="auth-label">Email</label>
|
||||||
<div class="auth-input-wrap">
|
<div class="auth-input-wrap">
|
||||||
<i class="fa fa-envelope auth-input-icon"></i>
|
<i class="fas fa-envelope auth-input-icon"></i>
|
||||||
{{ form_widget(form.email, {
|
{{ form_widget(form.email, {
|
||||||
attr: {
|
attr: {
|
||||||
class: 'auth-input' ~ (not form.email.vars.valid ? ' auth-input--error' : ''),
|
class: 'auth-input' ~ (not form.email.vars.valid ? ' auth-input--error' : ''),
|
||||||
@@ -40,13 +40,13 @@
|
|||||||
</div>
|
</div>
|
||||||
{% if not form.email.vars.valid %}
|
{% if not form.email.vars.valid %}
|
||||||
{% for error in form.email.vars.errors %}
|
{% for error in form.email.vars.errors %}
|
||||||
<p class="auth-field-error"><i class="fa fa-exclamation-circle"></i> {{ error.message }}</p>
|
<p class="auth-field-error"><i class="fas fa-circle-exclamation"></i> {{ error.message }}</p>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button type="submit" class="auth-submit">
|
<button type="submit" class="auth-submit">
|
||||||
<i class="fa fa-paper-plane"></i> Send Reset Link
|
<i class="fas fa-paper-plane"></i> Send Reset Link
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
{{ form_end(form) }}
|
{{ form_end(form) }}
|
||||||
|
|||||||
@@ -6,13 +6,13 @@
|
|||||||
<div class="auth-page">
|
<div class="auth-page">
|
||||||
{% for message in app.flashes('success') %}
|
{% for message in app.flashes('success') %}
|
||||||
<div class="auth-flash auth-flash--success">
|
<div class="auth-flash auth-flash--success">
|
||||||
<i class="fa fa-check-circle"></i> {{ message }}
|
<i class="fas fa-circle-check"></i> {{ message }}
|
||||||
</div>
|
</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
{% for message in app.flashes('error') %}
|
{% for message in app.flashes('error') %}
|
||||||
<div class="auth-flash auth-flash--error">
|
<div class="auth-flash auth-flash--error">
|
||||||
<i class="fa fa-exclamation-triangle"></i> {{ message }}
|
<i class="fas fa-triangle-exclamation"></i> {{ message }}
|
||||||
</div>
|
</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
{% if error %}
|
{% if error %}
|
||||||
<div class="auth-error">
|
<div class="auth-error">
|
||||||
<i class="fa fa-exclamation-triangle"></i>
|
<i class="fas fa-triangle-exclamation"></i>
|
||||||
{{ error.messageKey|trans(error.messageData, 'security') }}
|
{{ error.messageKey|trans(error.messageData, 'security') }}
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
<div class="auth-field">
|
<div class="auth-field">
|
||||||
<label for="username" class="auth-label">Username</label>
|
<label for="username" class="auth-label">Username</label>
|
||||||
<div class="auth-input-wrap">
|
<div class="auth-input-wrap">
|
||||||
<i class="fa fa-user auth-input-icon"></i>
|
<i class="fas fa-user auth-input-icon"></i>
|
||||||
<input
|
<input
|
||||||
type="text"
|
type="text"
|
||||||
id="username"
|
id="username"
|
||||||
@@ -50,7 +50,7 @@
|
|||||||
<div class="auth-field">
|
<div class="auth-field">
|
||||||
<label for="password" class="auth-label">Password</label>
|
<label for="password" class="auth-label">Password</label>
|
||||||
<div class="auth-input-wrap">
|
<div class="auth-input-wrap">
|
||||||
<i class="fa fa-lock auth-input-icon"></i>
|
<i class="fas fa-lock auth-input-icon"></i>
|
||||||
<input
|
<input
|
||||||
type="password"
|
type="password"
|
||||||
id="password"
|
id="password"
|
||||||
@@ -76,7 +76,7 @@
|
|||||||
<input type="hidden" id="g-recaptcha-response" name="g-recaptcha-response"/>
|
<input type="hidden" id="g-recaptcha-response" name="g-recaptcha-response"/>
|
||||||
|
|
||||||
<button type="submit" class="auth-submit">
|
<button type="submit" class="auth-submit">
|
||||||
<i class="fa fa-sign-in"></i> Sign In
|
<i class="fas fa-right-to-bracket"></i> Sign In
|
||||||
</button>
|
</button>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
|||||||
@@ -14,53 +14,53 @@
|
|||||||
<h1 class="profile-name">{{ app.user.username }}</h1>
|
<h1 class="profile-name">{{ app.user.username }}</h1>
|
||||||
{% if app.user.email %}
|
{% if app.user.email %}
|
||||||
<p class="profile-email">
|
<p class="profile-email">
|
||||||
<i class="fa fa-envelope"></i>
|
<i class="fas fa-envelope"></i>
|
||||||
{{ app.user.email }}
|
{{ app.user.email }}
|
||||||
</p>
|
</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<p class="profile-role">
|
<p class="profile-role">
|
||||||
<i class="fa fa-shield"></i> Registered commander
|
<i class="fas fa-shield"></i> Registered commander
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="profile-stats">
|
<div class="profile-stats">
|
||||||
<div class="profile-stat">
|
<div class="profile-stat">
|
||||||
<i class="fa fa-gamepad profile-stat__icon"></i>
|
<i class="fas fa-gamepad profile-stat__icon"></i>
|
||||||
<span class="profile-stat__value">{{ stats.total }}</span>
|
<span class="profile-stat__value">{{ stats.total }}</span>
|
||||||
<span class="profile-stat__label">Games played</span>
|
<span class="profile-stat__label">Games played</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="profile-stat profile-stat--win">
|
<div class="profile-stat profile-stat--win">
|
||||||
<i class="fa fa-trophy profile-stat__icon"></i>
|
<i class="fas fa-trophy profile-stat__icon"></i>
|
||||||
<span class="profile-stat__value">{{ stats.wins }}</span>
|
<span class="profile-stat__value">{{ stats.wins }}</span>
|
||||||
<span class="profile-stat__label">Victories</span>
|
<span class="profile-stat__label">Victories</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="profile-stat profile-stat--loss">
|
<div class="profile-stat profile-stat--loss">
|
||||||
<i class="fa fa-flag profile-stat__icon"></i>
|
<i class="fas fa-flag profile-stat__icon"></i>
|
||||||
<span class="profile-stat__value">{{ stats.losses }}</span>
|
<span class="profile-stat__value">{{ stats.losses }}</span>
|
||||||
<span class="profile-stat__label">Defeats</span>
|
<span class="profile-stat__label">Defeats</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="profile-stat profile-stat--draw">
|
<div class="profile-stat profile-stat--draw">
|
||||||
<i class="fa fa-minus profile-stat__icon"></i>
|
<i class="fas fa-minus profile-stat__icon"></i>
|
||||||
<span class="profile-stat__value">{{ stats.draws }}</span>
|
<span class="profile-stat__value">{{ stats.draws }}</span>
|
||||||
<span class="profile-stat__label">Draws</span>
|
<span class="profile-stat__label">Draws</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="profile-stat profile-stat--rate">
|
<div class="profile-stat profile-stat--rate">
|
||||||
<i class="fa fa-percent profile-stat__icon"></i>
|
<i class="fas fa-percent profile-stat__icon"></i>
|
||||||
<span class="profile-stat__value">{{ stats.winRate }}<small>%</small></span>
|
<span class="profile-stat__value">{{ stats.winRate }}<small>%</small></span>
|
||||||
<span class="profile-stat__label">Win rate</span>
|
<span class="profile-stat__label">Win rate</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="profile-stat profile-stat--avg">
|
<div class="profile-stat profile-stat--avg">
|
||||||
<i class="fa fa-line-chart profile-stat__icon"></i>
|
<i class="fas fa-chart-line profile-stat__icon"></i>
|
||||||
<span class="profile-stat__value">{{ stats.avgScore }}</span>
|
<span class="profile-stat__value">{{ stats.avgScore }}</span>
|
||||||
<span class="profile-stat__label">Avg score</span>
|
<span class="profile-stat__label">Avg score</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="profile-stat profile-stat--best">
|
<div class="profile-stat profile-stat--best">
|
||||||
<i class="fa fa-star profile-stat__icon"></i>
|
<i class="fas fa-star profile-stat__icon"></i>
|
||||||
<span class="profile-stat__value">{{ stats.bestScore }}</span>
|
<span class="profile-stat__value">{{ stats.bestScore }}</span>
|
||||||
<span class="profile-stat__label">Best score</span>
|
<span class="profile-stat__label">Best score</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="profile-stat profile-stat--bomb">
|
<div class="profile-stat profile-stat--bomb">
|
||||||
<i class="fa fa-bomb profile-stat__icon"></i>
|
<i class="fas fa-bomb profile-stat__icon"></i>
|
||||||
<span class="profile-stat__value">{{ stats.bombs }}</span>
|
<span class="profile-stat__value">{{ stats.bombs }}</span>
|
||||||
<span class="profile-stat__label">Mines hit</span>
|
<span class="profile-stat__label">Mines hit</span>
|
||||||
</div>
|
</div>
|
||||||
@@ -74,7 +74,7 @@
|
|||||||
{% if recent|length > 0 %}
|
{% if recent|length > 0 %}
|
||||||
<div class="profile-section">
|
<div class="profile-section">
|
||||||
<h2 class="profile-section__title">
|
<h2 class="profile-section__title">
|
||||||
<i class="fa fa-history"></i> Recent battles
|
<i class="fas fa-clock-rotate-left"></i> Recent battles
|
||||||
</h2>
|
</h2>
|
||||||
<div class="profile-games">
|
<div class="profile-games">
|
||||||
{% for game in recent %}
|
{% for game in recent %}
|
||||||
@@ -115,7 +115,7 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
</span>
|
</span>
|
||||||
<span class="profile-game__color">
|
<span class="profile-game__color">
|
||||||
<i class="fa fa-circle" style="color: {{ is_red ? '#c0392b' : '#2980b9' }}"></i>
|
<i class="fas fa-circle" style="color: {{ is_red ? '#c0392b' : '#2980b9' }}"></i>
|
||||||
</span>
|
</span>
|
||||||
<span class="profile-game__date">
|
<span class="profile-game__date">
|
||||||
{{ game.updated ? game.updated|date('Y-m-d') : '' }}
|
{{ game.updated ? game.updated|date('Y-m-d') : '' }}
|
||||||
@@ -126,7 +126,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{% else %}
|
{% else %}
|
||||||
<div class="profile-empty">
|
<div class="profile-empty">
|
||||||
<i class="fa fa-inbox"></i>
|
<i class="fas fa-inbox"></i>
|
||||||
<p>No games recorded yet. <a href="{{ path('MineSeekerBundle_gamePlay') }}">Start playing!</a></p>
|
<p>No games recorded yet. <a href="{{ path('MineSeekerBundle_gamePlay') }}">Start playing!</a></p>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<div class="auth-page">
|
<div class="auth-page">
|
||||||
{% for email in app.flashes('verify_email') %}
|
{% for email in app.flashes('verify_email') %}
|
||||||
<div class="auth-card auth-card--sent">
|
<div class="auth-card auth-card--sent">
|
||||||
<div class="auth-sent-icon"><i class="fa fa-envelope-o"></i></div>
|
<div class="auth-sent-icon"><i class="far fa-envelope"></i></div>
|
||||||
<h2 class="auth-title">Check your inbox</h2>
|
<h2 class="auth-title">Check your inbox</h2>
|
||||||
<p class="auth-sub">We sent an activation link to</p>
|
<p class="auth-sub">We sent an activation link to</p>
|
||||||
<p class="auth-sent-email">{{ email }}</p>
|
<p class="auth-sent-email">{{ email }}</p>
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
<div class="auth-field">
|
<div class="auth-field">
|
||||||
<label for="{{ form.username.vars.id }}" class="auth-label">Username</label>
|
<label for="{{ form.username.vars.id }}" class="auth-label">Username</label>
|
||||||
<div class="auth-input-wrap">
|
<div class="auth-input-wrap">
|
||||||
<i class="fa fa-user auth-input-icon"></i>
|
<i class="fas fa-user auth-input-icon"></i>
|
||||||
{{ form_widget(form.username, {
|
{{ form_widget(form.username, {
|
||||||
attr: {
|
attr: {
|
||||||
class: 'auth-input' ~ (not form.username.vars.valid ? ' auth-input--error' : ''),
|
class: 'auth-input' ~ (not form.username.vars.valid ? ' auth-input--error' : ''),
|
||||||
@@ -44,7 +44,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{% if not form.username.vars.valid %}
|
{% if not form.username.vars.valid %}
|
||||||
{% for error in form.username.vars.errors %}
|
{% for error in form.username.vars.errors %}
|
||||||
<p class="auth-field-error"><i class="fa fa-exclamation-circle"></i> {{ error.message }}</p>
|
<p class="auth-field-error"><i class="fas fa-circle-exclamation"></i> {{ error.message }}</p>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
@@ -52,7 +52,7 @@
|
|||||||
<div class="auth-field">
|
<div class="auth-field">
|
||||||
<label for="{{ form.email.vars.id }}" class="auth-label">Email</label>
|
<label for="{{ form.email.vars.id }}" class="auth-label">Email</label>
|
||||||
<div class="auth-input-wrap">
|
<div class="auth-input-wrap">
|
||||||
<i class="fa fa-envelope auth-input-icon"></i>
|
<i class="fas fa-envelope auth-input-icon"></i>
|
||||||
{{ form_widget(form.email, {
|
{{ form_widget(form.email, {
|
||||||
attr: {
|
attr: {
|
||||||
class: 'auth-input' ~ (not form.email.vars.valid ? ' auth-input--error' : ''),
|
class: 'auth-input' ~ (not form.email.vars.valid ? ' auth-input--error' : ''),
|
||||||
@@ -62,7 +62,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{% if not form.email.vars.valid %}
|
{% if not form.email.vars.valid %}
|
||||||
{% for error in form.email.vars.errors %}
|
{% for error in form.email.vars.errors %}
|
||||||
<p class="auth-field-error"><i class="fa fa-exclamation-circle"></i> {{ error.message }}</p>
|
<p class="auth-field-error"><i class="fas fa-circle-exclamation"></i> {{ error.message }}</p>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
@@ -70,7 +70,7 @@
|
|||||||
<div class="auth-field">
|
<div class="auth-field">
|
||||||
<label for="{{ form.plainPassword.first.vars.id }}" class="auth-label">Password</label>
|
<label for="{{ form.plainPassword.first.vars.id }}" class="auth-label">Password</label>
|
||||||
<div class="auth-input-wrap">
|
<div class="auth-input-wrap">
|
||||||
<i class="fa fa-lock auth-input-icon"></i>
|
<i class="fas fa-lock auth-input-icon"></i>
|
||||||
{{ form_widget(form.plainPassword.first, {
|
{{ form_widget(form.plainPassword.first, {
|
||||||
attr: {
|
attr: {
|
||||||
class: 'auth-input' ~ (not form.plainPassword.vars.valid ? ' auth-input--error' : ''),
|
class: 'auth-input' ~ (not form.plainPassword.vars.valid ? ' auth-input--error' : ''),
|
||||||
@@ -81,7 +81,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{% if not form.plainPassword.vars.valid %}
|
{% if not form.plainPassword.vars.valid %}
|
||||||
{% for error in form.plainPassword.vars.errors %}
|
{% for error in form.plainPassword.vars.errors %}
|
||||||
<p class="auth-field-error"><i class="fa fa-exclamation-circle"></i> {{ error.message }}</p>
|
<p class="auth-field-error"><i class="fas fa-circle-exclamation"></i> {{ error.message }}</p>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
@@ -89,7 +89,7 @@
|
|||||||
<div class="auth-field">
|
<div class="auth-field">
|
||||||
<label for="{{ form.plainPassword.second.vars.id }}" class="auth-label">Confirm Password</label>
|
<label for="{{ form.plainPassword.second.vars.id }}" class="auth-label">Confirm Password</label>
|
||||||
<div class="auth-input-wrap">
|
<div class="auth-input-wrap">
|
||||||
<i class="fa fa-lock auth-input-icon"></i>
|
<i class="fas fa-lock auth-input-icon"></i>
|
||||||
{{ form_widget(form.plainPassword.second, {
|
{{ form_widget(form.plainPassword.second, {
|
||||||
attr: {
|
attr: {
|
||||||
class: 'auth-input' ~ (not form.plainPassword.vars.valid ? ' auth-input--error' : ''),
|
class: 'auth-input' ~ (not form.plainPassword.vars.valid ? ' auth-input--error' : ''),
|
||||||
@@ -100,7 +100,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button type="submit" class="auth-submit">
|
<button type="submit" class="auth-submit">
|
||||||
<i class="fa fa-user-plus"></i> Create Account
|
<i class="fas fa-user-plus"></i> Create Account
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
{{ form_end(form) }}
|
{{ form_end(form) }}
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
<div class="auth-field">
|
<div class="auth-field">
|
||||||
<label for="{{ form.plainPassword.first.vars.id }}" class="auth-label">New Password</label>
|
<label for="{{ form.plainPassword.first.vars.id }}" class="auth-label">New Password</label>
|
||||||
<div class="auth-input-wrap">
|
<div class="auth-input-wrap">
|
||||||
<i class="fa fa-lock auth-input-icon"></i>
|
<i class="fas fa-lock auth-input-icon"></i>
|
||||||
{{ form_widget(form.plainPassword.first, {
|
{{ form_widget(form.plainPassword.first, {
|
||||||
attr: {
|
attr: {
|
||||||
class: 'auth-input' ~ (not form.plainPassword.vars.valid ? ' auth-input--error' : ''),
|
class: 'auth-input' ~ (not form.plainPassword.vars.valid ? ' auth-input--error' : ''),
|
||||||
@@ -25,7 +25,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{% if not form.plainPassword.vars.valid %}
|
{% if not form.plainPassword.vars.valid %}
|
||||||
{% for error in form.plainPassword.vars.errors %}
|
{% for error in form.plainPassword.vars.errors %}
|
||||||
<p class="auth-field-error"><i class="fa fa-exclamation-circle"></i> {{ error.message }}</p>
|
<p class="auth-field-error"><i class="fas fa-circle-exclamation"></i> {{ error.message }}</p>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
<div class="auth-field">
|
<div class="auth-field">
|
||||||
<label for="{{ form.plainPassword.second.vars.id }}" class="auth-label">Confirm New Password</label>
|
<label for="{{ form.plainPassword.second.vars.id }}" class="auth-label">Confirm New Password</label>
|
||||||
<div class="auth-input-wrap">
|
<div class="auth-input-wrap">
|
||||||
<i class="fa fa-lock auth-input-icon"></i>
|
<i class="fas fa-lock auth-input-icon"></i>
|
||||||
{{ form_widget(form.plainPassword.second, {
|
{{ form_widget(form.plainPassword.second, {
|
||||||
attr: {
|
attr: {
|
||||||
class: 'auth-input' ~ (not form.plainPassword.vars.valid ? ' auth-input--error' : ''),
|
class: 'auth-input' ~ (not form.plainPassword.vars.valid ? ' auth-input--error' : ''),
|
||||||
@@ -44,7 +44,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button type="submit" class="auth-submit">
|
<button type="submit" class="auth-submit">
|
||||||
<i class="fa fa-key"></i> Set New Password
|
<i class="fas fa-key"></i> Set New Password
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
{{ form_end(form) }}
|
{{ form_end(form) }}
|
||||||
|
|||||||
Reference in New Issue
Block a user