Updated API

This commit is contained in:
Geomitron
2020-08-27 13:18:56 -05:00
parent f990fc2c38
commit 5049b2e9ab
7 changed files with 30 additions and 23 deletions

View File

@@ -10,7 +10,7 @@
</div> </div>
</div> </div>
<div id="textPanel" class="content"> <div id="textPanel" class="content">
<span class="header">{{selectedVersion.avTagName}}</span> <span class="header">{{selectedVersion.chartName}}</span>
<div class="description"> <div class="description">
<div *ngIf="songResult.album == null"><b>Album:</b> {{selectedVersion.album}}</div> <div *ngIf="songResult.album == null"><b>Album:</b> {{selectedVersion.album}}</div>
<div><b>{{charterPlural}}</b> {{selectedVersion.charters}}</div> <div><b>{{charterPlural}}</b> {{selectedVersion.charters}}</div>

View File

@@ -42,7 +42,7 @@ export class ChartSidebarComponent implements OnInit {
this.songResult = result this.songResult = result
const albumArt = this.albumArtService.getImage(result.id) const albumArt = this.albumArtService.getImage(result.id)
const results = await this.electronService.invoke('song-details', result.id) const results = await this.electronService.invoke('song-details', result.id)
this.charts = groupBy(results, 'chartID').sort((v1, v2) => v1[0].avTagName.length - v2[0].avTagName.length) this.charts = groupBy(results, 'chartID').sort((v1, v2) => v1[0].chartName.length - v2[0].chartName.length)
this.sortCharts() this.sortCharts()
await this.selectChart(this.charts[0][0].chartID) await this.selectChart(this.charts[0][0].chartID)
this.initChartDropdown() this.initChartDropdown()
@@ -84,8 +84,8 @@ export class ChartSidebarComponent implements OnInit {
const version = chart[0] const version = chart[0]
return { return {
value: version.chartID, value: version.chartID,
text: version.avTagName, text: version.chartName,
name: `${version.avTagName} <b>[${version.charters}]</b>` name: `${version.chartName} <b>[${version.charters}]</b>`
} }
}) })
const $chartDropdown = $('#chartDropdown') const $chartDropdown = $('#chartDropdown')
@@ -127,7 +127,7 @@ export class ChartSidebarComponent implements OnInit {
* Converts `this.selectedVersion.chartMetadata.length` into a readable duration. * Converts `this.selectedVersion.chartMetadata.length` into a readable duration.
*/ */
updateSongLength() { updateSongLength() {
let seconds = this.selectedVersion.chartMetadata.length let seconds = this.selectedVersion.songLength
if (seconds < 60) { this.songLength = `${seconds} second${seconds == 1 ? '' : 's'}`; return } if (seconds < 60) { this.songLength = `${seconds} second${seconds == 1 ? '' : 's'}`; return }
let minutes = Math.floor(seconds / 60) let minutes = Math.floor(seconds / 60)
let hours = 0 let hours = 0
@@ -204,7 +204,7 @@ export class ChartSidebarComponent implements OnInit {
onDownloadClicked() { onDownloadClicked() {
this.downloadService.addDownload( this.downloadService.addDownload(
this.selectedVersion.versionID, { this.selectedVersion.versionID, {
avTagName: this.selectedVersion.avTagName, chartName: this.selectedVersion.chartName,
artist: this.songResult.artist, artist: this.songResult.artist,
charter: this.selectedVersion.charters, charter: this.selectedVersion.charters,
driveData: this.selectedVersion.driveData driveData: this.selectedVersion.driveData

View File

@@ -18,7 +18,7 @@
<div class="scrolling content"> <div class="scrolling content">
<div class="ui segments"> <div class="ui segments">
<div class="ui segment" *ngFor="let chartGroup of chartGroups"> <div class="ui segment" *ngFor="let chartGroup of chartGroups">
<p *ngFor="let chart of chartGroup">{{chart.avTagName}} <b>[{{chart.charters}}]</b></p> <p *ngFor="let chart of chartGroup">{{chart.chartName}} <b>[{{chart.charters}}]</b></p>
</div> </div>
</div> </div>
</div> </div>

View File

@@ -71,7 +71,7 @@ export class StatusBarComponent {
const downloadSong = this.selectedResults.find(song => song.id == downloadVersion.songID) const downloadSong = this.selectedResults.find(song => song.id == downloadVersion.songID)
this.downloadService.addDownload( this.downloadService.addDownload(
downloadVersion.versionID, { downloadVersion.versionID, {
avTagName: downloadVersion.avTagName, chartName: downloadVersion.chartName,
artist: downloadSong.artist, artist: downloadSong.artist,
charter: downloadVersion.charters, charter: downloadVersion.charters,
driveData: downloadVersion.driveData driveData: downloadVersion.driveData
@@ -91,7 +91,7 @@ export class StatusBarComponent {
const downloadSong = this.selectedResults.find(song => song.id == downloadVersion.songID) const downloadSong = this.selectedResults.find(song => song.id == downloadVersion.songID)
this.downloadService.addDownload( this.downloadService.addDownload(
downloadVersion.versionID, { downloadVersion.versionID, {
avTagName: downloadVersion.avTagName, chartName: downloadVersion.chartName,
artist: downloadSong.artist, artist: downloadSong.artist,
charter: downloadVersion.charters, charter: downloadVersion.charters,
driveData: downloadVersion.driveData driveData: downloadVersion.driveData

View File

@@ -50,7 +50,7 @@ export class ChartDownload {
if (data.driveData.inChartPack) { if (data.driveData.inChartPack) {
this.destinationFolderName = sanitizeFilename(parse(data.driveData.files[0].name).name) this.destinationFolderName = sanitizeFilename(parse(data.driveData.files[0].name).name)
} else { } else {
this.destinationFolderName = sanitizeFilename(`${this.data.artist} - ${this.data.avTagName} (${this.data.charter})`) this.destinationFolderName = sanitizeFilename(`${this.data.artist} - ${this.data.chartName} (${this.data.charter})`)
} }
} }
@@ -107,7 +107,7 @@ export class ChartDownload {
emitIPCEvent('download-updated', { emitIPCEvent('download-updated', {
versionID: this.versionID, versionID: this.versionID,
title: `${this.data.avTagName} - ${this.data.artist}`, title: `${this.data.chartName} - ${this.data.artist}`,
header: header, header: header,
description: description, description: description,
percent: this.percent, percent: this.percent,

View File

@@ -13,7 +13,7 @@ export interface Download {
* Contains the data required to start downloading a single chart. * Contains the data required to start downloading a single chart.
*/ */
export interface NewDownload { export interface NewDownload {
avTagName: string chartName: string
artist: string artist: string
charter: string charter: string
driveData: DriveChart & { inChartPack: boolean } driveData: DriveChart & { inChartPack: boolean }

View File

@@ -14,27 +14,30 @@ export interface VersionResult {
songID: number songID: number
latestVersionID: number latestVersionID: number
latestSetlistVersionID: number latestSetlistVersionID: number
icon: string name: string
chartName: string
artist: string
album: string
genre: string
year: string
songDataIncorrect: boolean
driveData: DriveChart & { inChartPack: boolean } driveData: DriveChart & { inChartPack: boolean }
avTagName: string md5: string
lastModified: string
icon: string
charters: string charters: string
charterIDs: string charterIDs: string
tags: string | null tags: string | null
lastModified: string songLength: number
song_length: number
diff_band: number diff_band: number
diff_guitar: number diff_guitar: number
diff_rhythm: number
diff_bass: number diff_bass: number
diff_rhythm: number
diff_drums: number diff_drums: number
diff_keys: number diff_keys: number
diff_guitarghl: number diff_guitarghl: number
diff_bassghl: number diff_bassghl: number
songDataIncorrect: boolean chartData: ChartData
year: string
chartMetadata: ChartMetadata
isRemoved: boolean
album: string
} }
export interface DriveChart { export interface DriveChart {
@@ -42,15 +45,19 @@ export interface DriveChart {
isArchive: boolean isArchive: boolean
downloadPath: string downloadPath: string
filesHash: string filesHash: string
folderName: string
folderID: string
files: DriveFile[] files: DriveFile[]
} }
export interface DriveSource { export interface DriveSource {
isSetlistSource: boolean isSetlistSource: boolean
isDriveFileSource?: boolean
setlistIcon?: string setlistIcon?: string
sourceUserIDs: number[] sourceUserIDs: number[]
sourceName: string sourceName: string
sourceDriveID: string sourceDriveID: string
proxyLink?: string
} }
export interface DriveFile { export interface DriveFile {
@@ -63,7 +70,7 @@ export interface DriveFile {
size: string size: string
} }
export interface ChartMetadata { export interface ChartData {
hasSections: boolean hasSections: boolean
hasStarPower: boolean hasStarPower: boolean
hasForced: boolean hasForced: boolean