From df51936aea330c98b9e9a3b5eb3779d4afa92f2c Mon Sep 17 00:00:00 2001 From: Christopher Serr Date: Wed, 28 Sep 2022 20:24:28 +0200 Subject: [PATCH] Update `livesplit-core` (#716) This updates `livesplit-core` to the latest version. This mostly adds custom variable columns and allows for the timer to visualize the delta for the background. There's some performance improvements as well. Also we now build `livesplit-core` in debug mode by default when building locally. So compilation is a little bit faster and additional debug checks are active, such as integer overflows. --- .github/workflows/ci.yml | 6 +- buildCore.js | 11 ++- livesplit-core | 2 +- package-lock.json | 124 ++++++++++++++++---------------- package.json | 11 +-- src/css/Table.scss | 15 ++-- src/ui/Settings.tsx | 150 ++++++++++++++++++++++++++++++++++++++- test/rendering-test.js | 4 +- webpack.config.js | 20 +++--- 9 files changed, 252 insertions(+), 91 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index feb317e..2939b9b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -54,7 +54,7 @@ jobs: run: | set -e cd $HOME - git -C binaryen pull || git clone https://github.com/WebAssembly/binaryen binaryen + git -C binaryen pull || git clone --recursive https://github.com/WebAssembly/binaryen binaryen cd binaryen cmake . make -j2 wasm-opt @@ -63,7 +63,7 @@ jobs: - name: Install wasm-bindgen run: | set -e - cargo install wasm-bindgen-cli + cargo install wasm-bindgen-cli --debug - name: Install npm packages run: | @@ -75,7 +75,7 @@ jobs: - name: Build Core run: | set -e - npm run build:core + npm run build:core:production - name: Set up tslint matcher run: echo "::add-matcher::.github/workflows/tslint.json" diff --git a/buildCore.js b/buildCore.js index b923722..b84f9e9 100644 --- a/buildCore.js +++ b/buildCore.js @@ -1,6 +1,13 @@ const { execSync } = require("child_process"); const fs = require("fs"); +let buildFlags = ""; +let targetFolder = "debug"; +if (process.argv.some((v) => v === "--production")) { + buildFlags = "--release"; + targetFolder = "release"; +} + execSync( "cargo run", { @@ -10,7 +17,7 @@ execSync( ); execSync( - "cargo build -p cdylib --features wasm-web --target wasm32-unknown-unknown --release", + `cargo rustc -p livesplit-core-capi --crate-type cdylib --features wasm-web --target wasm32-unknown-unknown ${buildFlags}`, { cwd: "livesplit-core", stdio: "inherit", @@ -22,7 +29,7 @@ execSync( ); execSync( - "wasm-bindgen livesplit-core/target/wasm32-unknown-unknown/release/livesplit_core.wasm --out-dir src/livesplit-core", + `wasm-bindgen livesplit-core/target/wasm32-unknown-unknown/${targetFolder}/livesplit_core.wasm --out-dir src/livesplit-core`, { stdio: "inherit", }, diff --git a/livesplit-core b/livesplit-core index 04f0391..33ab825 160000 --- a/livesplit-core +++ b/livesplit-core @@ -1 +1 @@ -Subproject commit 04f0391fed72869c535abd9cb8843954dcecd3c9 +Subproject commit 33ab8256cfbe0eafc85123db9e8b505ab4092aa1 diff --git a/package-lock.json b/package-lock.json index 4893b93..c6438b2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,21 +10,21 @@ "license": "ISC", "dependencies": { "@types/commonmark": "^0.27.5", - "@types/react": "^17.0.37", + "@types/react": "^16.0.0", "@types/react-color": "^3.0.5", - "@types/react-dom": "^17.0.11", + "@types/react-dom": "^16.0.0", "@types/react-resizable": "^1.7.4", "@types/react-sidebar": "^3.0.2", "@types/react-toastify": "^4.1.0", "@types/react-toggle": "^4.0.3", - "commonmark": "^0.30.0", + "commonmark": "^0.27.0", "commonmark-react-renderer": "^4.3.5", "fast-deep-equal": "^3.1.3", "idb": "^7.0.0", - "react": "^17.0.2", + "react": "^16.0.0", "react-color": "^2.19.3", "react-contextmenu": "^2.14.0", - "react-dom": "^17.0.2", + "react-dom": "^16.0.0", "react-linkifier": "^4.0.0", "react-resizable": "^3.0.4", "react-sidebar": "^3.0.2", @@ -2673,9 +2673,9 @@ "dev": true }, "node_modules/@types/react": { - "version": "17.0.37", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.37.tgz", - "integrity": "sha512-2FS1oTqBGcH/s0E+CjrCCR9+JMpsu9b69RTFO+40ua43ZqP5MmQ4iUde/dMjWR909KxZwmOQIFq6AV6NjEG5xg==", + "version": "16.14.32", + "resolved": "https://registry.npmjs.org/@types/react/-/react-16.14.32.tgz", + "integrity": "sha512-hvEy4vGVADbtj/U6+CA5SRC5QFIjdxD7JslAie8EuAYZwhYY9bgforpXNyF1VFzhnkEOesDy1278t1wdjN74cw==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -2692,11 +2692,11 @@ } }, "node_modules/@types/react-dom": { - "version": "17.0.11", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.11.tgz", - "integrity": "sha512-f96K3k+24RaLGVu/Y2Ng3e1EbZ8/cVJvypZWd7cy0ofCBaf2lcM46xNhycMZ2xGwbBjRql7hOlZ+e2WlJ5MH3Q==", + "version": "16.9.16", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-16.9.16.tgz", + "integrity": "sha512-Oqc0RY4fggGA3ltEgyPLc3IV9T73IGoWjkONbsyJ3ZBn+UPPCYpU2ec0i3cEbJuEdZtkqcCF2l1zf2pBdgUGSg==", "dependencies": { - "@types/react": "*" + "@types/react": "^16" } }, "node_modules/@types/react-resizable": { @@ -4217,13 +4217,13 @@ } }, "node_modules/commonmark": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.30.0.tgz", - "integrity": "sha512-j1yoUo4gxPND1JWV9xj5ELih0yMv1iCWDG6eEQIPLSWLxzCXiFoyS7kvB+WwU+tZMf4snwJMMtaubV0laFpiBA==", + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.27.0.tgz", + "integrity": "sha512-nHdZE2hDhygZgTuuIAD4+Q5cAa2zRzhZyG3e1Jt8I1RSRVarZhJosLMW+tzyCg2frndTKOgQlmjH/iRe4Giqhw==", "dependencies": { - "entities": "~2.0", - "mdurl": "~1.0.1", - "minimist": ">=1.2.2", + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", "string.prototype.repeat": "^0.2.0" }, "bin": { @@ -4249,9 +4249,9 @@ } }, "node_modules/commonmark/node_modules/entities": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", - "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" }, "node_modules/compressible": { "version": "2.0.18", @@ -8810,12 +8810,13 @@ } }, "node_modules/react": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", - "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "version": "16.14.0", + "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", + "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", "dependencies": { "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "object-assign": "^4.1.1", + "prop-types": "^15.6.2" }, "engines": { "node": ">=0.10.0" @@ -8853,16 +8854,17 @@ } }, "node_modules/react-dom": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", - "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "version": "16.14.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz", + "integrity": "sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==", "dependencies": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1", - "scheduler": "^0.20.2" + "prop-types": "^15.6.2", + "scheduler": "^0.19.1" }, "peerDependencies": { - "react": "17.0.2" + "react": "^16.14.0" } }, "node_modules/react-draggable": { @@ -9544,9 +9546,9 @@ "dev": true }, "node_modules/scheduler": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", - "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz", + "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==", "dependencies": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1" @@ -14161,9 +14163,9 @@ "dev": true }, "@types/react": { - "version": "17.0.37", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.37.tgz", - "integrity": "sha512-2FS1oTqBGcH/s0E+CjrCCR9+JMpsu9b69RTFO+40ua43ZqP5MmQ4iUde/dMjWR909KxZwmOQIFq6AV6NjEG5xg==", + "version": "16.14.32", + "resolved": "https://registry.npmjs.org/@types/react/-/react-16.14.32.tgz", + "integrity": "sha512-hvEy4vGVADbtj/U6+CA5SRC5QFIjdxD7JslAie8EuAYZwhYY9bgforpXNyF1VFzhnkEOesDy1278t1wdjN74cw==", "requires": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -14180,11 +14182,11 @@ } }, "@types/react-dom": { - "version": "17.0.11", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.11.tgz", - "integrity": "sha512-f96K3k+24RaLGVu/Y2Ng3e1EbZ8/cVJvypZWd7cy0ofCBaf2lcM46xNhycMZ2xGwbBjRql7hOlZ+e2WlJ5MH3Q==", + "version": "16.9.16", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-16.9.16.tgz", + "integrity": "sha512-Oqc0RY4fggGA3ltEgyPLc3IV9T73IGoWjkONbsyJ3ZBn+UPPCYpU2ec0i3cEbJuEdZtkqcCF2l1zf2pBdgUGSg==", "requires": { - "@types/react": "*" + "@types/react": "^16" } }, "@types/react-resizable": { @@ -15447,20 +15449,20 @@ "dev": true }, "commonmark": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.30.0.tgz", - "integrity": "sha512-j1yoUo4gxPND1JWV9xj5ELih0yMv1iCWDG6eEQIPLSWLxzCXiFoyS7kvB+WwU+tZMf4snwJMMtaubV0laFpiBA==", + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.27.0.tgz", + "integrity": "sha512-nHdZE2hDhygZgTuuIAD4+Q5cAa2zRzhZyG3e1Jt8I1RSRVarZhJosLMW+tzyCg2frndTKOgQlmjH/iRe4Giqhw==", "requires": { - "entities": "~2.0", - "mdurl": "~1.0.1", - "minimist": ">=1.2.2", + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", "string.prototype.repeat": "^0.2.0" }, "dependencies": { "entities": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", - "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" } } }, @@ -18973,12 +18975,13 @@ } }, "react": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", - "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "version": "16.14.0", + "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", + "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", "requires": { "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "object-assign": "^4.1.1", + "prop-types": "^15.6.2" } }, "react-color": { @@ -19005,13 +19008,14 @@ } }, "react-dom": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", - "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "version": "16.14.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz", + "integrity": "sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==", "requires": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1", - "scheduler": "^0.20.2" + "prop-types": "^15.6.2", + "scheduler": "^0.19.1" } }, "react-draggable": { @@ -19535,9 +19539,9 @@ "dev": true }, "scheduler": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", - "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz", + "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==", "requires": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1" diff --git a/package.json b/package.json index 396b3db..870e016 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "scripts": { "build": "webpack", "build:core": "node buildCore.js", + "build:core:production": "node buildCore.js --production", "lint": "tslint --project tsconfig.json", "publish": "webpack --mode production", "serve": "webpack serve", @@ -17,21 +18,21 @@ "license": "ISC", "dependencies": { "@types/commonmark": "^0.27.5", - "@types/react": "^17.0.37", + "@types/react": "^16.0.0", "@types/react-color": "^3.0.5", - "@types/react-dom": "^17.0.11", + "@types/react-dom": "^16.0.0", "@types/react-resizable": "^1.7.4", "@types/react-sidebar": "^3.0.2", "@types/react-toastify": "^4.1.0", "@types/react-toggle": "^4.0.3", - "commonmark": "^0.30.0", + "commonmark": "^0.27.0", "commonmark-react-renderer": "^4.3.5", "fast-deep-equal": "^3.1.3", "idb": "^7.0.0", - "react": "^17.0.2", + "react": "^16.0.0", "react-color": "^2.19.3", "react-contextmenu": "^2.14.0", - "react-dom": "^17.0.2", + "react-dom": "^16.0.0", "react-linkifier": "^4.0.0", "react-resizable": "^3.0.4", "react-sidebar": "^3.0.2", diff --git a/src/css/Table.scss b/src/css/Table.scss index 012a993..44169d6 100644 --- a/src/css/Table.scss +++ b/src/css/Table.scss @@ -12,23 +12,23 @@ .table-row-even { display: table-row; - background: $dark-row-color !important; + background: $dark-row-color !important; } .table-row-odd { display: table-row; - background: $light-row-color !important; + background: $light-row-color !important; } } .table-body { display: table-row-group; - > tr { + >tr { display: table-row; background: $dark-row-color; - > td { + >td { padding: math.div($ui-margin, 2) math.div($ui-margin, 2); display: table-cell; @@ -54,10 +54,10 @@ } .selected { - background: $selected-row-color !important; + background: $selected-row-color !important; } - .tab-bar > button { + .tab-bar>button { font-size: 15px; height: 30px; border-bottom-right-radius: 0px; @@ -66,7 +66,7 @@ border-bottom: 0px; } - tr > td > input { + tr>td>input { margin-right: -40px; &:focus { @@ -125,6 +125,7 @@ select { height: $settings-row-height; + min-width: 80px; } &.optional-value { diff --git a/src/ui/Settings.tsx b/src/ui/Settings.tsx index d109ad9..0615910 100644 --- a/src/ui/Settings.tsx +++ b/src/ui/Settings.tsx @@ -56,15 +56,17 @@ export interface SettingValueFactory { r2: number, g2: number, b2: number, a2: number, ): T; fromAlignment(value: string): T | null; + fromColumnKind(value: string): T | null; fromColumnStartWith(value: string): T | null; fromColumnUpdateWith(value: string): T | null; fromColumnUpdateTrigger(value: string): T | null; fromLayoutDirection(value: string): T | null; fromFont(name: string, style: string, weight: string, stretch: string): T | null; fromEmptyFont(): T; + fromDeltaGradient(value: string): T | null; } -export class JsonSettingValueFactory { +export class JsonSettingValueFactory implements SettingValueFactory { public fromBool(v: boolean): ExtendedSettingsDescriptionValueJson { return { Bool: v }; } @@ -125,6 +127,9 @@ export class JsonSettingValueFactory { public fromAlignment(_: string): ExtendedSettingsDescriptionValueJson | null { throw new Error("Not implemented"); } + public fromColumnKind(_: string): ExtendedSettingsDescriptionValueJson | null { + throw new Error("Not implemented"); + } public fromColumnStartWith(_: string): ExtendedSettingsDescriptionValueJson | null { throw new Error("Not implemented"); } @@ -148,6 +153,9 @@ export class JsonSettingValueFactory { public fromEmptyFont(): ExtendedSettingsDescriptionValueJson { throw new Error("Not implemented"); } + public fromDeltaGradient(_: string): ExtendedSettingsDescriptionValueJson | null { + throw new Error("Not implemented"); + } } export class SettingsComponent extends React.Component> { @@ -707,6 +715,26 @@ export class SettingsComponent extends React.Component> { ); + } else if ("ColumnKind" in value) { + component = ( +
+ +
+ ); } else if ("ColumnStartWith" in value) { component = (
@@ -950,6 +978,126 @@ export class SettingsComponent extends React.Component> { {children}
); + } else if ("DeltaGradient" in value) { + let type: string; + let color1: Option = null; + let color2: Option = null; + const gradient = value.DeltaGradient; + + if (typeof gradient !== "string") { + [type] = Object.keys(gradient); + if ("Plain" in gradient) { + color1 = gradient.Plain; + } else if ("Vertical" in gradient) { + [color1, color2] = gradient.Vertical; + } else if ("Horizontal" in gradient) { + [color1, color2] = gradient.Horizontal; + } else { + assertNever(gradient); + } + } else { + type = gradient; + } + + const colorsToValue = ( + type: string, + color1: Option, + color2: Option, + ) => { + color1 = color1 ? color1 : [0.0, 0.0, 0.0, 0.0]; + color2 = color2 ? color2 : color1; + switch (type) { + case "Transparent": + return factory.fromTransparentGradient(); + case "Plain": + return factory.fromColor( + color1[0], color1[1], color1[2], color1[3], + ); + case "Vertical": + return factory.fromVerticalGradient( + color1[0], color1[1], color1[2], color1[3], + color2[0], color2[1], color2[2], color2[3], + ); + case "Horizontal": + return factory.fromHorizontalGradient( + color1[0], color1[1], color1[2], color1[3], + color2[0], color2[1], color2[2], color2[3], + ); + default: + return expect( + factory.fromDeltaGradient(type), + "Unexpected Gradient Type", + ); + } + }; + + const children: JSX.Element[] = [ + , + ]; + + if (color1) { + children.push( + { + this.props.setValue( + valueIndex, + colorsToValue(type, color, color2), + ); + }} + />, + ); + } + + if (color2) { + children.push( + { + this.props.setValue( + valueIndex, + colorsToValue(type, color1, color), + ); + }} + />, + ); + } + + if (color2) { + component = ( +
+ {children} +
+ ); + } else if (color1) { + component = ( +
+ {children} +
+ ); + } else { + component = ( +
+ {children} +
+ ); + } } else { assertNever(value); } diff --git a/test/rendering-test.js b/test/rendering-test.js index e9942b3..38105a6 100644 --- a/test/rendering-test.js +++ b/test/rendering-test.js @@ -154,9 +154,9 @@ describe("Layout Rendering Tests", function () { testRendering("all_components", "default", "f4G-QgAAAAAeAAAO____________________AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA__wCAAAAAABv______4Hb4AG"); testRendering("all_components", "pmw3", "f4G-QgAAAAAeAAAO________fmAOf6AAX4AG3_gH3_AOX_APVkgOX-AOVvAPX_AeX_AeWrAeb_gfAAAAAABv__x-____JABO"); testRendering("default", "default", "____________AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAD_________"); - testRendering("default", "pmw3", "__wA___GX2AGX-gGWNgGSkAOXnAOW9gOX-APVtwOH_APX8AOX_APRnAOXVAOXJAeHvAeX_wf__AfAAAAAABgAAD_AAB_____"); + testRendering("default", "pmw3", "__wA___GX2AG3-gGUNgGSkAOXnAOW9gOX-APVtwOH_APX8AOX_APRnAOXVAOXJAeHvAeX_wf__AfAAAAAABgAAD_AAB_____"); testRendering("splits_two_rows", "celeste", "f8AAcAAHf8AA____d4AAcAAHf_gAcAAPd_AAYAAHf4AA____f4AAYAAH__AA____Z_gAYAAHf_8A9VVfb_wAcAAPf_AAYAAP"); - testRendering("splits_with_labels", "celeste", "AABEAADPAADPAADPAADA_____AAH_wAP_wAP_wAPwgAA____wgAH34AP_4AH34APQYAA____0EAP_8AP38AP38APwAAAAAAA"); + testRendering("splits_with_labels", "celeste", "AABEAADPAADPAADPAADA____fAAH_wAP_wAP_wAPxgAA____QgAH34AP_4AH34APQYAA____0EAP_8AP38AP38APwAAAAAAA"); testRendering("title_centered_no_game_icon", "celeste", "________AAAAADQAAHQAAH4A______3_____AAAAAAAAAAAA____AAkAAL8DAP8DAP8DAP8D_________-n9AAAAAAAAAAAA"); testRendering("title_centered_with_game_icon", "celeste", "________AAAAQBoAQBoAYB8A________4B8A4AAA4AAA4AAA4AAA4ASA4H_D4H_D4H_D4H_D_________9T94AAAAAAAAAAA"); testRendering("title_left_no_attempt_count", "celeste", "________AAAA-AAA-AAA-AAA____________AAAAAAAAAAAA____CQAA_wAA_4AA_4AA_4AA________qf__AAAAAAAAAAAA"); diff --git a/webpack.config.js b/webpack.config.js index 05dc4c1..d35a993 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -22,7 +22,7 @@ module.exports = async (env, argv) => { const coreContributorsMap = {}; for (const coreContributor of coreContributorsList) { - if (coreContributor.type === "User") { + if (coreContributor.type === "User" && !coreContributor.login.includes("dependabot")) { coreContributorsMap[coreContributor.login] = coreContributor; } } @@ -31,7 +31,7 @@ module.exports = async (env, argv) => { const existingContributor = coreContributorsMap[lsoContributor.login]; if (existingContributor) { existingContributor.contributions += lsoContributor.contributions; - } else if (lsoContributor.type === "User") { + } else if (lsoContributor.type === "User" && !lsoContributor.login.includes("dependabot")) { coreContributorsMap[lsoContributor.login] = lsoContributor; } } @@ -125,15 +125,15 @@ module.exports = async (env, argv) => { test: /\.tsx?$/, use: [ { - loader: "ts-loader", - options: { - getCustomTransformers: () => ({ - before: [!isProduction && ReactRefreshTypeScript()].filter(Boolean), - }), - transpileOnly: !isProduction, - }, + loader: "ts-loader", + options: { + getCustomTransformers: () => ({ + before: [!isProduction && ReactRefreshTypeScript()].filter(Boolean), + }), + transpileOnly: !isProduction, + }, }, - ], + ], exclude: "/node_modules", }, {