@algoux/standard-ranklist-utils 0.2.3 → 0.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/index.cjs +9 -1
- package/dist/index.d.cts +2 -1
- package/dist/index.d.mts +2 -1
- package/dist/index.mjs +9 -2
- package/package.json +4 -3
package/README.md
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -188,6 +188,13 @@ function resolveStyle(style) {
|
|
|
188
188
|
backgroundColor: backgroundThemeColor
|
|
189
189
|
};
|
|
190
190
|
}
|
|
191
|
+
function resolveUserMarkers(user, markersConfig) {
|
|
192
|
+
if (!user) {
|
|
193
|
+
return [];
|
|
194
|
+
}
|
|
195
|
+
const userMarkers = (Array.isArray(user.markers) ? user.markers : [user.marker]).filter(Boolean).map((marker) => (markersConfig || []).find((m) => m.id === marker)).filter(Boolean);
|
|
196
|
+
return userMarkers;
|
|
197
|
+
}
|
|
191
198
|
|
|
192
199
|
function canRegenerateRanklist(ranklist) {
|
|
193
200
|
var _a;
|
|
@@ -568,7 +575,7 @@ function genSeriesCalcFns(series, rows, ranks, officialRanks) {
|
|
|
568
575
|
if (options.ratio) {
|
|
569
576
|
const { value, rounding = "ceil", denominator = "all" } = options.ratio;
|
|
570
577
|
const officialRows = filteredRows;
|
|
571
|
-
let total = denominator === "submitted" ? officialRows.filter((row) => !row.statuses.every((s) => s.result === null)).length : officialRows.length;
|
|
578
|
+
let total = denominator === "submitted" ? officialRows.filter((row) => !row.statuses.every((s) => s.result === null)).length : denominator === "scored" ? officialRows.filter((row) => row.score.value > 0).length : officialRows.length;
|
|
572
579
|
const accValues = [];
|
|
573
580
|
for (let i = 0; i < value.length; i++) {
|
|
574
581
|
if (i === 0) {
|
|
@@ -709,5 +716,6 @@ exports.resolveContributor = resolveContributor;
|
|
|
709
716
|
exports.resolveStyle = resolveStyle;
|
|
710
717
|
exports.resolveText = resolveText;
|
|
711
718
|
exports.resolveThemeColor = resolveThemeColor;
|
|
719
|
+
exports.resolveUserMarkers = resolveUserMarkers;
|
|
712
720
|
exports.secToTimeStr = secToTimeStr;
|
|
713
721
|
exports.sortRows = sortRows;
|
package/dist/index.d.cts
CHANGED
|
@@ -90,6 +90,7 @@ declare function resolveStyle(style: srk.Style): {
|
|
|
90
90
|
textColor: ThemeColor;
|
|
91
91
|
backgroundColor: ThemeColor;
|
|
92
92
|
};
|
|
93
|
+
declare function resolveUserMarkers(user: srk.User, markersConfig: srk.Marker[] | undefined): srk.Marker[];
|
|
93
94
|
|
|
94
95
|
declare function canRegenerateRanklist(ranklist: srk.Ranklist): boolean;
|
|
95
96
|
declare function getSortedCalculatedRawSolutions(rows: srk.RanklistRow[]): CalculatedSolutionTetrad[];
|
|
@@ -99,4 +100,4 @@ declare function regenerateRanklistBySolutions(originalRanklist: srk.Ranklist, s
|
|
|
99
100
|
declare function regenerateRowsByIncrementalSolutions(originalRanklist: srk.Ranklist, solutions: CalculatedSolutionTetrad[]): srk.RanklistRow[];
|
|
100
101
|
declare function convertToStaticRanklist(ranklist: srk.Ranklist): StaticRanklist;
|
|
101
102
|
|
|
102
|
-
export { type CalculatedSolutionTetrad, EnumTheme, MIN_REGEN_SUPPORTED_VERSION, type RankValue, type StaticRanklist, type ThemeColor, alphabetToNumber, canRegenerateRanklist, convertToStaticRanklist, filterSolutionsUntil, formatTimeDuration, getSortedCalculatedRawSolutions, numberToAlphabet, preZeroFill, regenerateRanklistBySolutions, regenerateRowsByIncrementalSolutions, resolveColor, resolveContributor, resolveStyle, resolveText, resolveThemeColor, secToTimeStr, sortRows };
|
|
103
|
+
export { type CalculatedSolutionTetrad, EnumTheme, MIN_REGEN_SUPPORTED_VERSION, type RankValue, type StaticRanklist, type ThemeColor, alphabetToNumber, canRegenerateRanklist, convertToStaticRanklist, filterSolutionsUntil, formatTimeDuration, getSortedCalculatedRawSolutions, numberToAlphabet, preZeroFill, regenerateRanklistBySolutions, regenerateRowsByIncrementalSolutions, resolveColor, resolveContributor, resolveStyle, resolveText, resolveThemeColor, resolveUserMarkers, secToTimeStr, sortRows };
|
package/dist/index.d.mts
CHANGED
|
@@ -90,6 +90,7 @@ declare function resolveStyle(style: srk.Style): {
|
|
|
90
90
|
textColor: ThemeColor;
|
|
91
91
|
backgroundColor: ThemeColor;
|
|
92
92
|
};
|
|
93
|
+
declare function resolveUserMarkers(user: srk.User, markersConfig: srk.Marker[] | undefined): srk.Marker[];
|
|
93
94
|
|
|
94
95
|
declare function canRegenerateRanklist(ranklist: srk.Ranklist): boolean;
|
|
95
96
|
declare function getSortedCalculatedRawSolutions(rows: srk.RanklistRow[]): CalculatedSolutionTetrad[];
|
|
@@ -99,4 +100,4 @@ declare function regenerateRanklistBySolutions(originalRanklist: srk.Ranklist, s
|
|
|
99
100
|
declare function regenerateRowsByIncrementalSolutions(originalRanklist: srk.Ranklist, solutions: CalculatedSolutionTetrad[]): srk.RanklistRow[];
|
|
100
101
|
declare function convertToStaticRanklist(ranklist: srk.Ranklist): StaticRanklist;
|
|
101
102
|
|
|
102
|
-
export { type CalculatedSolutionTetrad, EnumTheme, MIN_REGEN_SUPPORTED_VERSION, type RankValue, type StaticRanklist, type ThemeColor, alphabetToNumber, canRegenerateRanklist, convertToStaticRanklist, filterSolutionsUntil, formatTimeDuration, getSortedCalculatedRawSolutions, numberToAlphabet, preZeroFill, regenerateRanklistBySolutions, regenerateRowsByIncrementalSolutions, resolveColor, resolveContributor, resolveStyle, resolveText, resolveThemeColor, secToTimeStr, sortRows };
|
|
103
|
+
export { type CalculatedSolutionTetrad, EnumTheme, MIN_REGEN_SUPPORTED_VERSION, type RankValue, type StaticRanklist, type ThemeColor, alphabetToNumber, canRegenerateRanklist, convertToStaticRanklist, filterSolutionsUntil, formatTimeDuration, getSortedCalculatedRawSolutions, numberToAlphabet, preZeroFill, regenerateRanklistBySolutions, regenerateRowsByIncrementalSolutions, resolveColor, resolveContributor, resolveStyle, resolveText, resolveThemeColor, resolveUserMarkers, secToTimeStr, sortRows };
|
package/dist/index.mjs
CHANGED
|
@@ -186,6 +186,13 @@ function resolveStyle(style) {
|
|
|
186
186
|
backgroundColor: backgroundThemeColor
|
|
187
187
|
};
|
|
188
188
|
}
|
|
189
|
+
function resolveUserMarkers(user, markersConfig) {
|
|
190
|
+
if (!user) {
|
|
191
|
+
return [];
|
|
192
|
+
}
|
|
193
|
+
const userMarkers = (Array.isArray(user.markers) ? user.markers : [user.marker]).filter(Boolean).map((marker) => (markersConfig || []).find((m) => m.id === marker)).filter(Boolean);
|
|
194
|
+
return userMarkers;
|
|
195
|
+
}
|
|
189
196
|
|
|
190
197
|
function canRegenerateRanklist(ranklist) {
|
|
191
198
|
var _a;
|
|
@@ -566,7 +573,7 @@ function genSeriesCalcFns(series, rows, ranks, officialRanks) {
|
|
|
566
573
|
if (options.ratio) {
|
|
567
574
|
const { value, rounding = "ceil", denominator = "all" } = options.ratio;
|
|
568
575
|
const officialRows = filteredRows;
|
|
569
|
-
let total = denominator === "submitted" ? officialRows.filter((row) => !row.statuses.every((s) => s.result === null)).length : officialRows.length;
|
|
576
|
+
let total = denominator === "submitted" ? officialRows.filter((row) => !row.statuses.every((s) => s.result === null)).length : denominator === "scored" ? officialRows.filter((row) => row.score.value > 0).length : officialRows.length;
|
|
570
577
|
const accValues = [];
|
|
571
578
|
for (let i = 0; i < value.length; i++) {
|
|
572
579
|
if (i === 0) {
|
|
@@ -690,4 +697,4 @@ function convertToStaticRanklist(ranklist) {
|
|
|
690
697
|
};
|
|
691
698
|
}
|
|
692
699
|
|
|
693
|
-
export { EnumTheme, MIN_REGEN_SUPPORTED_VERSION, alphabetToNumber, canRegenerateRanklist, convertToStaticRanklist, filterSolutionsUntil, formatTimeDuration, getSortedCalculatedRawSolutions, numberToAlphabet, preZeroFill, regenerateRanklistBySolutions, regenerateRowsByIncrementalSolutions, resolveColor, resolveContributor, resolveStyle, resolveText, resolveThemeColor, secToTimeStr, sortRows };
|
|
700
|
+
export { EnumTheme, MIN_REGEN_SUPPORTED_VERSION, alphabetToNumber, canRegenerateRanklist, convertToStaticRanklist, filterSolutionsUntil, formatTimeDuration, getSortedCalculatedRawSolutions, numberToAlphabet, preZeroFill, regenerateRanklistBySolutions, regenerateRowsByIncrementalSolutions, resolveColor, resolveContributor, resolveStyle, resolveText, resolveThemeColor, resolveUserMarkers, secToTimeStr, sortRows };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@algoux/standard-ranklist-utils",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.5",
|
|
4
4
|
"author": "bLue",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"standard ranklist",
|
|
@@ -25,7 +25,8 @@
|
|
|
25
25
|
],
|
|
26
26
|
"scripts": {
|
|
27
27
|
"dev": "tsx src/index.ts",
|
|
28
|
-
"build": "pkgroll"
|
|
28
|
+
"build": "pkgroll",
|
|
29
|
+
"prepublishOnly": "npm run build"
|
|
29
30
|
},
|
|
30
31
|
"dependencies": {
|
|
31
32
|
"@types/semver": "^7.5.0",
|
|
@@ -35,7 +36,7 @@
|
|
|
35
36
|
"textcolor": "^1.0.2"
|
|
36
37
|
},
|
|
37
38
|
"devDependencies": {
|
|
38
|
-
"@algoux/standard-ranklist": "^0.3.
|
|
39
|
+
"@algoux/standard-ranklist": "^0.3.8",
|
|
39
40
|
"@types/node": "^16.18.38",
|
|
40
41
|
"@typescript-eslint/eslint-plugin": "^5.61.0",
|
|
41
42
|
"@typescript-eslint/parser": "^5.61.0",
|