+
+
Entry Summary
+
+
+
+
+ | ID |
+ {data.id} |
- );
- })}
-
-
-
- )}
-
-
-
-
-
-
-
Authors
- {data.authors.length === 0 &&
Unknown
}
- {data.authors.length > 0 && (
-
- {data.authors.map((a) => (
- -
- {a.name}
-
- ))}
-
- )}
-
-
-
Publishers
- {data.publishers.length === 0 &&
Unknown
}
- {data.publishers.length > 0 && (
-
- {data.publishers.map((p) => (
- -
- {p.name}
-
- ))}
-
- )}
-
-
-
-
-
-
-
Releases
- {(!data.releases || data.releases.length === 0) &&
No releases recorded
}
- {data.releases && data.releases.length > 0 && (
-
-
-
-
- | Release # |
- Year |
- Downloads |
-
-
-
- {data.releases.map((r) => (
-
- |
- #{r.releaseSeq}
- |
- {r.year ?? -} |
- {r.downloads.length} |
-
- ))}
-
-
-
- )}
-
-
-
-
-
-
Origins
- {(!data.origins || data.origins.length === 0) &&
No origins recorded
}
- {data.origins && data.origins.length > 0 && (
-
-
-
-
- | Type |
- Title |
- Publication |
- Issue |
- Date |
-
-
-
- {data.origins.map((o, idx) => {
- const dateParts = [o.date.year, o.date.month, o.date.day]
- .filter((v) => typeof v === "number" && Number.isFinite(v))
- .map((v, i) => (i === 0 ? String(v) : String(v).padStart(2, "0")));
- const dateText = dateParts.length ? dateParts.join("/") : "-";
- return (
-
- | {o.type.name ?? o.type.id} |
- {o.libraryTitle} |
- {o.publication ?? -} |
+
+ | Title |
+ {data.title} |
+
+
+ | Machine |
- {o.issue ? (
-
- Issue #{o.issue.id}
- {o.issue.magazineId != null && (
-
- {o.issue.magazineTitle ?? `Magazine #${o.issue.magazineId}`}
-
- )}
-
- ) : o.containerId ? (
- Container #{o.containerId}
+ {data.machinetype.id != null ? (
+ data.machinetype.name ? (
+ {data.machinetype.name}
+ ) : (
+ #{data.machinetype.id}
+ )
) : (
-
)}
|
- {dateText} |
- );
- })}
-
-
-
- )}
-
-
-
-
-
-
Relations
- {(!data.relations || data.relations.length === 0) &&
No relations recorded
}
- {data.relations && data.relations.length > 0 && (
-
-
-
-
- | Direction |
- Type |
- Entry |
-
-
-
- {data.relations.map((r, idx) => (
-
- | {r.direction === "from" ? "From" : "To"} |
- {r.type.name ?? r.type.id} |
-
-
- {r.entry.title ?? `Entry #${r.entry.id}`}
-
- |
-
- ))}
-
-
-
- )}
-
-
-
-
-
-
Tags / Members
- {(!data.tags || data.tags.length === 0) &&
No tags recorded
}
- {data.tags && data.tags.length > 0 && (
-
-
-
-
- | Tag |
- Type |
- Category |
- Member Seq |
- Links |
-
-
-
- {data.tags.map((t) => (
-
- | {t.name} |
- {t.type.name ?? t.type.id} |
- {t.category.name ?? (t.category.id != null ? `#${t.category.id}` : "-")} |
- {t.memberSeq ?? -} |
-
-
- {t.link && (
- Link
- )}
- {t.comments && {t.comments}}
- {!t.link && !t.comments && -}
-
- |
-
- ))}
-
-
-
- )}
-
-
-
-
-
-
Ports
- {(!data.ports || data.ports.length === 0) &&
No ports recorded
}
- {data.ports && data.ports.length > 0 && (
-
-
-
-
- | Title |
- Platform |
- Official |
- Link |
-
-
-
- {data.ports.map((p) => (
-
- | {p.title ?? -} |
- {p.platform.name ?? `#${p.platform.id}`} |
- {p.isOfficial ? "Yes" : "No"} |
-
- {p.linkSystem ? (
- Link
- ) : (
- -
- )}
- |
-
- ))}
-
-
-
- )}
-
-
-
-
-
-
Remakes
- {(!data.remakes || data.remakes.length === 0) &&
No remakes recorded
}
- {data.remakes && data.remakes.length > 0 && (
-
-
-
-
- | Title |
- Platforms |
- Years |
- File |
- Notes |
-
-
-
- {data.remakes.map((r) => (
-
- | {r.title} |
- {r.platforms ?? -} |
- {r.remakeYears ?? -} |
-
- {r.fileLink ? (
- File
- ) : (
- -
- )}
- |
- {r.remakeStatus ?? r.authors ?? -} |
-
- ))}
-
-
-
- )}
-
-
-
-
-
-
Scores
- {(!data.scores || data.scores.length === 0) &&
No scores recorded
}
- {data.scores && data.scores.length > 0 && (
-
-
-
-
- | Website |
- Score |
- Votes |
-
-
-
- {data.scores.map((s, idx) => (
-
- | {s.website.name ?? `#${s.website.id}`} |
- {s.score} |
- {s.votes} |
-
- ))}
-
-
-
- )}
-
-
-
-
-
-
Notes
- {(!data.notes || data.notes.length === 0) &&
No notes recorded
}
- {data.notes && data.notes.length > 0 && (
-
-
-
-
- | Type |
- Text |
-
-
-
- {data.notes.map((n) => (
-
- | {n.type.name ?? n.type.id} |
- {n.text} |
-
- ))}
-
-
-
- )}
-
-
-
-
- {/* Aliases (alternative titles) */}
-
-
Aliases
- {(!data.aliases || data.aliases.length === 0) &&
No aliases
}
- {data.aliases && data.aliases.length > 0 && (
-
-
-
-
- | Release # |
- Language |
- Title |
-
-
-
- {data.aliases.map((a, idx) => (
-
- |
- #{a.releaseSeq}
- |
- {a.languageId} |
- {a.title} |
-
- ))}
-
-
-
- )}
-
-
-
-
-
-
Licenses
- {(!data.licenses || data.licenses.length === 0) &&
No licenses linked
}
- {data.licenses && data.licenses.length > 0 && (
-
-
-
-
- | Name |
- Type |
- Official |
- Links |
-
-
-
- {data.licenses.map((l) => (
-
- | {l.name} |
- {l.type.name ?? l.type.id} |
- {l.isOfficial ? "Yes" : "No"} |
-
-
- {l.linkWikipedia && (
- Wikipedia
- )}
- {l.linkSite && (
- Site
- )}
- {!l.linkWikipedia && !l.linkSite && -}
-
- |
-
- ))}
-
-
-
- )}
-
-
-
-
- {/* Web links (external references) */}
-
-
Web links
- {(!data.webrefs || data.webrefs.length === 0) &&
No web links
}
- {data.webrefs && data.webrefs.length > 0 && (
-
-
-
-
- | Website |
- Language |
- URL |
-
-
-
- {data.webrefs.map((w, idx) => (
-
- |
- {w.website.link ? (
- {w.website.name}
- ) : (
- {w.website.name}
- )}
- |
- {w.languageId} |
-
- {w.link}
- |
-
- ))}
-
-
-
- )}
-
-
-
-
-
-
Files
- {(!data.files || data.files.length === 0) &&
No files linked
}
- {data.files && data.files.length > 0 && (
-
-
-
-
- | Type |
- Link |
- Size |
- MD5 |
- Comments |
-
-
-
- {data.files.map((f) => {
- const isHttp = f.link.startsWith("http://") || f.link.startsWith("https://");
- return (
-
- | {f.type.name} |
+
+ | Language |
- {isHttp ? (
- {f.link}
+ {data.language.id ? (
+ data.language.name ? (
+ {data.language.name}
+ ) : (
+ {data.language.id}
+ )
) : (
- {f.link}
+ -
)}
|
- {f.size != null ? new Intl.NumberFormat().format(f.size) : "-"} |
- {f.md5 ?? "-"} |
- {f.comments ?? ""} |
- );
- })}
-
-
+
+ | Genre |
+
+ {data.genre.id ? (
+ data.genre.name ? (
+ {data.genre.name}
+ ) : (
+ #{data.genre.id}
+ )
+ ) : (
+ -
+ )}
+ |
+
+ {typeof data.maxPlayers !== "undefined" && (
+
+ | Max Players |
+ {data.maxPlayers} |
+
+ )}
+ {typeof data.availabletypeId !== "undefined" && (
+
+ | Available Type |
+ {data.availabletypeId ?? -} |
+
+ )}
+ {typeof data.withoutLoadScreen !== "undefined" && (
+
+ | Without Load Screen |
+ {data.withoutLoadScreen ? "Yes" : "No"} |
+
+ )}
+ {typeof data.withoutInlay !== "undefined" && (
+
+ | Without Inlay |
+ {data.withoutInlay ? "Yes" : "No"} |
+
+ )}
+ {typeof data.issueId !== "undefined" && (
+
+ | Issue |
+ {data.issueId ? #{data.issueId} : -} |
+
+ )}
+