mirror of
https://github.com/Kornstalx/5etools-mirror-2.github.io.git
synced 2025-10-28 20:45:35 -05:00
v1.198.1
This commit is contained in:
55
js/render-deities.js
Normal file
55
js/render-deities.js
Normal file
@@ -0,0 +1,55 @@
|
||||
"use strict";
|
||||
|
||||
class RenderDeities {
|
||||
static $getRenderedDeity (deity) {
|
||||
return $$`
|
||||
${Renderer.utils.getBorderTr()}
|
||||
${Renderer.utils.getExcludedTr({entity: deity, dataProp: "deity"})}
|
||||
${Renderer.utils.getNameTr(deity, {suffix: deity.title ? `, ${deity.title.toTitleCase()}` : "", page: UrlUtil.PG_DEITIES})}
|
||||
${RenderDeities._getDeityBody(deity)}
|
||||
${deity.reprinted ? `<tr class="text"><td colspan="6"><i class="text-muted">Note: this deity has been reprinted in a newer publication.</i></td></tr>` : ""}
|
||||
${Renderer.utils.getPageTr(deity)}
|
||||
${deity.previousVersions ? `
|
||||
${Renderer.utils.getDividerTr()}
|
||||
${deity.previousVersions.map((d, i) => RenderDeities._getDeityBody(d, i + 1)).join(Renderer.utils.getDividerTr())}
|
||||
` : ""}
|
||||
${Renderer.utils.getBorderTr()}
|
||||
`;
|
||||
}
|
||||
|
||||
static _getDeityBody (deity, reprintIndex) {
|
||||
const renderer = Renderer.get();
|
||||
|
||||
const renderStack = [];
|
||||
if (deity.entries) {
|
||||
renderer.recursiveRender(
|
||||
{
|
||||
entries: [
|
||||
...deity.customExtensionOf ? [`{@note This deity is a custom extension of {@deity ${deity.customExtensionOf}} with additional information from <i title="${Parser.sourceJsonToFull(deity.source).escapeQuotes()}">${Parser.sourceJsonToAbv(deity.source)}</i>.}`] : [],
|
||||
...deity.entries,
|
||||
],
|
||||
},
|
||||
renderStack,
|
||||
);
|
||||
}
|
||||
|
||||
if (deity.symbolImg) deity.symbolImg.style = deity.symbolImg.style || "deity-symbol";
|
||||
|
||||
const entriesMeta = Renderer.deity.getDeityRenderableEntriesMeta(deity);
|
||||
|
||||
return `
|
||||
${reprintIndex ? `
|
||||
<tr><td colspan="6">
|
||||
<i class="text-muted">
|
||||
${reprintIndex === 1 ? `This deity is a reprint.` : ""} The version below was printed in an older publication (${Parser.sourceJsonToFull(deity.source)}${Renderer.utils.isDisplayPage(deity.page) ? `, page ${deity.page}` : ""}).
|
||||
</i>
|
||||
</td></tr>
|
||||
` : ""}
|
||||
|
||||
${entriesMeta.entriesAttributes.map(entry => `<tr><td colspan="6">${Renderer.get().render(entry)}</td></tr>`).join("")}
|
||||
|
||||
${deity.symbolImg ? `<tr><td colspan="6">${renderer.render({entries: [deity.symbolImg]})}<div class="mb-2"/></td></tr>` : ""}
|
||||
${renderStack.length ? `<tr class="text"><td class="pt-2" colspan="6">${renderStack.join("")}</td></tr>` : ""}
|
||||
`;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user