mirror of
https://github.com/one-among-us/data.git
synced 2024-11-22 19:24:51 +08:00
Merge branch 'one-among-us:main' into Meowbot233
This commit is contained in:
commit
0b97fd3bd0
@ -1,3 +0,0 @@
|
||||
[
|
||||
"tdor"
|
||||
]
|
@ -1 +0,0 @@
|
||||
[]
|
7
data/hdata.json
Normal file
7
data/hdata.json
Normal file
@ -0,0 +1,7 @@
|
||||
{
|
||||
"commentOnly": [
|
||||
"tdor"
|
||||
],
|
||||
"exclude": [],
|
||||
"notShowOnHome": []
|
||||
}
|
1
people/SS3B_0016/comments/2024-04-05-C17100.json
Normal file
1
people/SS3B_0016/comments/2024-04-05-C17100.json
Normal file
@ -0,0 +1 @@
|
||||
{"id":17100,"content":"晚安","submitter":"Catht","date":"Apr 5, 2024"}
|
@ -8,7 +8,7 @@ import metadataParser from 'markdown-yaml-metadata-parser';
|
||||
|
||||
import { renderMdx } from "./mdx.js";
|
||||
import moment from "moment";
|
||||
import { Icon } from "./icon.js";
|
||||
import { Icon, backSVG } from "./icon.js";
|
||||
|
||||
const PUBLIC_DIR = "public";
|
||||
|
||||
@ -27,8 +27,16 @@ const people = fs.readdirSync(peopleDir).map(person => ({
|
||||
distPath: path.join(projectRoot, DIST_DIR, PEOPLE_DIR, person)
|
||||
}));
|
||||
|
||||
const commentOnlyList = JSON.parse(fs.readFileSync(path.join(projectRoot, DATA_DIR, "comment-only.json")).toString()) as String[];
|
||||
const excludeList = commentOnlyList.concat(JSON.parse(fs.readFileSync(path.join(projectRoot, DATA_DIR, 'exclude.json')).toString()) as String[]);
|
||||
interface HData {
|
||||
commentOnly: string[]
|
||||
exclude: string[]
|
||||
notShowOnHome: string[]
|
||||
}
|
||||
|
||||
const hdata = JSON.parse(fs.readFileSync(path.join(projectRoot, DATA_DIR, "hdata.json")).toString()) as HData;
|
||||
const commentOnlyList = hdata.commentOnly;
|
||||
const excludeList = commentOnlyList.concat(hdata.exclude);
|
||||
const notShowOnHomeList = hdata.notShowOnHome;
|
||||
|
||||
interface PeopleMeta {
|
||||
id: string
|
||||
@ -49,6 +57,7 @@ function buildPeopleInfoAndList() {
|
||||
|
||||
// Compiled meta of list of people for the front page (contains keys id, name, profileUrl)
|
||||
const peopleList: PeopleMeta[] = [];
|
||||
const peopleHomeList: PeopleMeta[] = [];
|
||||
|
||||
// For each person
|
||||
for (const { dirname, srcPath, distPath } of people) {
|
||||
@ -110,14 +119,19 @@ function buildPeopleInfoAndList() {
|
||||
} as PeopleMeta;
|
||||
|
||||
// Add meta to people list
|
||||
if (peopleList.filter(it => it.id == peopleMeta.id).length == 0)
|
||||
if (peopleList.filter(it => it.id == peopleMeta.id).length == 0) {
|
||||
peopleList.push(peopleMeta);
|
||||
if (!notShowOnHomeList.includes(peopleMeta.id))
|
||||
peopleHomeList.push(peopleMeta)
|
||||
}
|
||||
}
|
||||
|
||||
peopleList.sort((a, b) => b.sortKey.localeCompare(a.sortKey))
|
||||
peopleHomeList.sort((a, b) => b.sortKey.localeCompare(a.sortKey))
|
||||
|
||||
// Write people-list.json
|
||||
fs.writeFileSync(path.join(projectRoot, DIST_DIR, `people-list${lang}.json`), JSON.stringify(peopleList));
|
||||
fs.writeFileSync(path.join(projectRoot, DIST_DIR, `people-home-list${lang}.json`), JSON.stringify(peopleHomeList));
|
||||
}
|
||||
}
|
||||
|
||||
@ -157,7 +171,7 @@ function handleFootnote(md: string) {
|
||||
// Replace footnote references with HTML superscript tags
|
||||
return md.replace(/\[\^(\d+)\](?::\s*(.*))?/g, (match, id, text) => text ?
|
||||
// Footnote definition
|
||||
`<li id="footnote-${id}">${text}<a href="#footnote-ref-${id}">↩</a></li>` :
|
||||
`<li id="footnote-${id}">${text}<a href="#footnote-ref-${id}">${backSVG}</a></li>` :
|
||||
// Footnote reference
|
||||
`<sup><a href="#footnote-${id}" id="footnote-ref-${id}">${id}</a></sup>`
|
||||
)
|
||||
|
@ -9,3 +9,5 @@ export const Icon = {
|
||||
TransFlag: `<svg style="display: inline-block; overflow: visible !important; vertical-align: sub; margin-right: 10px;" viewBox="0 0 32 32" width="16" height="16" aria-hidden="true"><path fill="#5BCEFA" d="M0 27c0 2.209 1.791 4 4 4h28c2.209 0 4-1.791 4-4v-1.3H0V27z"/><path fill="#F5A9B8" d="M.026 20.5L0 25.8h36v-5.3z"/><path fill="#EEE" d="M0 15.3h36v5.3H0z"/><path fill="#F5A9B8" d="M0 9.902h36V15.4H0z"/><path fill="#5BCEFA" d="M36 9c0-2.209-1.791-4-4-4H4C1.791 5 0 6.791 0 9v1.2h36V9z"/></svg>`,
|
||||
Pride: `<svg style="display: inline-block; overflow: visible !important; vertical-align: sub; margin-right: 10px;" viewBox="0 0 32 32" width="16" height="16" aria-hidden="true"><path fill="#880082" d="M0 27a4 4 0 0 0 4 4h28a4 4 0 0 0 4-4v-.5H0v.5z"/><path fill="#3558A0" d="M0 22.07h36v4.6H0z"/><path fill="#138F3E" d="M0 17.83h36v4.5H0z"/><path fill="#FAD220" d="M0 13.5h36V18H0z"/><path fill="#FF7300" d="M0 9.17h36v4.5H0z"/><path fill="#FF000E" d="M32 5H4a4 4 0 0 0-4 4v.33h36V9a4 4 0 0 0-4-4z"/></svg>`,
|
||||
};
|
||||
|
||||
export const backSVG = `<svg width="16" height="16"viewBox="0 0 16 16" version="1.1" id="svg1" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> <defs id="defs1" /> <path style="opacity:1;fill:#fff9f9;fill-opacity:0.0199483;stroke:#ff8373;stroke-width:0.839;stroke-linecap:round;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers" d="m 10,4.0031 c 0,0 4.003714,0.3021906 4.001025,4.1458036 C 13.998336,11.992517 10,12.004973 10,12.004973 l -8,-0.0267" id="path1" /> <path style="opacity:1;fill:#fff9f9;fill-opacity:0.0199483;stroke:#ff8373;stroke-width:0.839;stroke-linecap:round;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers" d="M 3.3112984,10.696288 2,11.978273 3.2812828,13.265655" id="path2" /></svg>`
|
Loading…
Reference in New Issue
Block a user