mirror of
https://github.com/Myxelium/Bridge-Multi.git
synced 2026-04-11 14:19:38 +00:00
Add issues and modchart indicators
This commit is contained in:
@@ -2,6 +2,8 @@ import _ from 'lodash'
|
||||
import sanitize from 'sanitize-filename'
|
||||
import { Difficulty, Instrument } from 'scan-chart'
|
||||
|
||||
import { ChartData } from './interfaces/search.interface'
|
||||
|
||||
// WARNING: do not import anything related to Electron; the code will not compile correctly.
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||
@@ -166,3 +168,25 @@ export function removeStyleTags(text: string) {
|
||||
} while (newText !== oldText)
|
||||
return newText
|
||||
}
|
||||
|
||||
export function hasIssues(chart: Pick<ChartData, 'metadataIssues' | 'folderIssues' | 'notesData'>) {
|
||||
if (chart.metadataIssues.length > 0) { return true }
|
||||
for (const folderIssue of chart.folderIssues) {
|
||||
if (!['albumArtSize', 'invalidIni', 'multipleVideo', 'badIniLine'].includes(folderIssue.folderIssue)) { return true }
|
||||
}
|
||||
for (const chartIssue of chart.notesData?.chartIssues ?? []) {
|
||||
if (chartIssue !== 'isDefaultBPM') { return true }
|
||||
}
|
||||
for (const trackIssue of chart.notesData?.trackIssues ?? []) {
|
||||
for (const ti of trackIssue.trackIssues) {
|
||||
if (ti !== 'noNotesOnNonemptyTrack') { return true }
|
||||
}
|
||||
}
|
||||
for (const noteIssue of chart.notesData?.noteIssues ?? []) {
|
||||
for (const ni of noteIssue.noteIssues) {
|
||||
if (ni.issueType !== 'babySustain') { return true }
|
||||
}
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user