mirror of
https://github.com/mas-cli/mas
synced 2024-12-04 01:09:21 +00:00
Fix JSON parsing error by making formattedPrice
& price
optional for SearchResult
.
Use new `displayPrice` to get around optional `formattedPrice`. Doesn't handle i18n, but we can clean that up after we completely redo JSON handling. Resolve #493 Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
This commit is contained in:
parent
ca921c07d8
commit
309cfec38d
3 changed files with 8 additions and 4 deletions
|
@ -18,7 +18,7 @@ enum AppInfoFormatter {
|
||||||
let headline = [
|
let headline = [
|
||||||
"\(app.trackName)",
|
"\(app.trackName)",
|
||||||
"\(app.version)",
|
"\(app.version)",
|
||||||
"[\(app.formattedPrice)]",
|
"[\(app.displayPrice)]",
|
||||||
]
|
]
|
||||||
.joined(separator: " ")
|
.joined(separator: " ")
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,7 @@ enum SearchResultFormatter {
|
||||||
let version = result.version
|
let version = result.version
|
||||||
|
|
||||||
if includePrice {
|
if includePrice {
|
||||||
output += String(format: "%12lu %@ (%@) %@\n", appID, appName, version, result.formattedPrice)
|
output += String(format: "%12lu %@ (%@) %@\n", appID, appName, version, result.displayPrice)
|
||||||
} else {
|
} else {
|
||||||
output += String(format: "%12lu %@ (%@)\n", appID, appName, version)
|
output += String(format: "%12lu %@ (%@)\n", appID, appName, version)
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,9 +10,9 @@ struct SearchResult: Decodable {
|
||||||
var bundleId: String
|
var bundleId: String
|
||||||
var currentVersionReleaseDate: String
|
var currentVersionReleaseDate: String
|
||||||
var fileSizeBytes: String
|
var fileSizeBytes: String
|
||||||
var formattedPrice: String
|
var formattedPrice: String?
|
||||||
var minimumOsVersion: String
|
var minimumOsVersion: String
|
||||||
var price: Double
|
var price: Double?
|
||||||
var sellerName: String
|
var sellerName: String
|
||||||
var sellerUrl: String?
|
var sellerUrl: String?
|
||||||
var trackId: AppID
|
var trackId: AppID
|
||||||
|
@ -20,6 +20,10 @@ struct SearchResult: Decodable {
|
||||||
var trackViewUrl: String
|
var trackViewUrl: String
|
||||||
var version: String
|
var version: String
|
||||||
|
|
||||||
|
var displayPrice: String {
|
||||||
|
formattedPrice ?? "Unknown"
|
||||||
|
}
|
||||||
|
|
||||||
init(
|
init(
|
||||||
bundleId: String = "",
|
bundleId: String = "",
|
||||||
currentVersionReleaseDate: String = "",
|
currentVersionReleaseDate: String = "",
|
||||||
|
|
Loading…
Reference in a new issue