Revert "Refactor event mounts and update script management."
This reverts commit bf8110af6c.
This commit is contained in:
@ -103,22 +103,23 @@ const ogImage = await getImage({
|
||||
<LanguageWarning/>
|
||||
)}
|
||||
<Content/>
|
||||
<script is:inline data-astro-rerun>
|
||||
<script>
|
||||
import FightTable from "@components/FightTable.svelte";
|
||||
import {get} from "svelte/store";
|
||||
import GroupTable from "@components/GroupTable.svelte";
|
||||
import {eventRepo} from "../../components/repo/event";
|
||||
import type {ExtendedEvent} from "@type/event";
|
||||
import {mount} from "svelte";
|
||||
|
||||
const eventMounts = new Map();
|
||||
const eventMounts: Map<string, ((ev: ExtendedEvent) => void)[]> = new Map();
|
||||
|
||||
class FightTableElement extends HTMLElement {
|
||||
connectedCallback() {
|
||||
if (!eventMounts.has(this.dataset["event"])) {
|
||||
eventMounts.set(this.dataset["event"], []);
|
||||
connectedCallback(): void {
|
||||
if (!eventMounts.has(this.dataset["event"]!)) {
|
||||
eventMounts.set(this.dataset["event"]!, []);
|
||||
}
|
||||
const rows = Number.parseInt(this.dataset["rows"]);
|
||||
eventMounts.get(this.dataset["event"]).push(ev => {
|
||||
const rows = Number.parseInt(this.dataset["rows"]!);
|
||||
eventMounts.get(this.dataset["event"]!)!.push(ev => {
|
||||
mount(FightTable, {
|
||||
target: this,
|
||||
props: {
|
||||
@ -132,12 +133,12 @@ const ogImage = await getImage({
|
||||
}
|
||||
|
||||
class GroupTableElement extends HTMLElement {
|
||||
connectedCallback() {
|
||||
if (!eventMounts.has(this.dataset["event"])) {
|
||||
eventMounts.set(this.dataset["event"], []);
|
||||
connectedCallback(): void {
|
||||
if (!eventMounts.has(this.dataset["event"]!)) {
|
||||
eventMounts.set(this.dataset["event"]!, []);
|
||||
}
|
||||
const rows = Number.parseInt(this.dataset["rows"]);
|
||||
eventMounts.get(this.dataset["event"]).push(ev => {
|
||||
const rows = Number.parseInt(this.dataset["rows"]!);
|
||||
eventMounts.get(this.dataset["event"]!)!.push(ev => {
|
||||
mount(GroupTable, {
|
||||
target: this,
|
||||
props: {
|
||||
@ -156,14 +157,15 @@ const ogImage = await getImage({
|
||||
function mountEvent() {
|
||||
for (const key of eventMounts.keys()) {
|
||||
get(eventRepo).getEvent(key).then(ev => {
|
||||
for (const mount of eventMounts.get(key)) {
|
||||
for (const mount of eventMounts.get(key)!) {
|
||||
mount(ev);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
mountEvent();
|
||||
document.addEventListener("astro:page-load", mountEvent);
|
||||
document.addEventListener("astro:before-swap", eventMounts.clear);
|
||||
</script>
|
||||
</article>
|
||||
</PageLayout>
|
||||
|
||||
Reference in New Issue
Block a user