This wiki publishes the same schedule twice and the fuller surface is the worse one. /wiki/Banner_List has 55 clean rows with full wall clocks and states no timezone anywhere on the page; the front page's Current Banners module emits the same instants as real <time datetime="...-07:00"> elements. The two agree exactly, which is strong evidence the list is UTC and is still only evidence — so we read the surface that says what it means and pay four live banners instead of a full history for it. If an editor ever states the zone on Banner_List, that page becomes the better source immediately. Two ways this could have failed silently. The template writes its BEM underscores as __, so a selector written against the class name a browser shows matches nothing at all; and banner names are red links to ?action=edit&redlink=1, which Miraheze's robots.txt disallows, so a href carrying a query is refused and the page URL stands in. No resetOffsets, and here the source did state an offset: -07:00, which is US Pacific and therefore shifts twice a year. That is the Fate/Grand Order gap arriving through a page that looks like it answered the question. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
40 lines
1.4 KiB
TypeScript
40 lines
1.4 KiB
TypeScript
import { arknightsWikiParser } from "./akwiki.ts";
|
|
import { blueArchiveWikiParser } from "./bawiki.ts";
|
|
import { fandomParser } from "./fandom.ts";
|
|
import { game8Parser } from "./game8.ts";
|
|
import { holodoriWikiParser } from "./holodori.ts";
|
|
import { iopWikiParser } from "./iopwiki.ts";
|
|
import { stellaSoraWikiParser } from "./stellasora.ts";
|
|
import { wikiGgParser } from "./wikigg.ts";
|
|
import type { SourceParser } from "./types.ts";
|
|
|
|
/**
|
|
* Every known site template. Adding a source for a site already listed here is
|
|
* an entry in `adapters/index.ts`; adding a new *site* means a parser module
|
|
* here and one line below.
|
|
*/
|
|
export const PARSERS: SourceParser[] = [
|
|
game8Parser,
|
|
wikiGgParser,
|
|
arknightsWikiParser,
|
|
fandomParser,
|
|
blueArchiveWikiParser,
|
|
holodoriWikiParser,
|
|
iopWikiParser,
|
|
stellaSoraWikiParser,
|
|
];
|
|
|
|
export function parserById(id: string): SourceParser | undefined {
|
|
return PARSERS.find((p) => p.id === id);
|
|
}
|
|
|
|
export type { SourceParser } from "./types.ts";
|
|
export { arknightsWikiParser } from "./akwiki.ts";
|
|
export { blueArchiveWikiParser } from "./bawiki.ts";
|
|
export { fandomParser } from "./fandom.ts";
|
|
export { game8Parser } from "./game8.ts";
|
|
export { holodoriWikiParser } from "./holodori.ts";
|
|
export { iopWikiParser } from "./iopwiki.ts";
|
|
export { stellaSoraWikiParser } from "./stellasora.ts";
|
|
export { wikiGgParser } from "./wikigg.ts";
|