Compare commits
12 commits
0.2.2-pre.
...
main
Author | SHA1 | Date | |
---|---|---|---|
a4e45ab2b8 | |||
a8815648cb | |||
747b1d78db | |||
d982c5f57b | |||
c609634b98 | |||
629bf91d4f | |||
949b05b192 | |||
de3e262a3c | |||
27ee2de172 | |||
95e8df6478 | |||
801c00375d | |||
fdb9fd183f |
|
@ -69,7 +69,7 @@ jobs:
|
||||||
needs: [ build-site ]
|
needs: [ build-site ]
|
||||||
if: success()
|
if: success()
|
||||||
runs-on: docker
|
runs-on: docker
|
||||||
container: forgejo.neshweb.net/firq/dockge-cli:0.1.1-c.2
|
container: forgejo.neshweb.net/firq/dockge-cli:0.1.2
|
||||||
steps:
|
steps:
|
||||||
- name: Configure Dockge CLI
|
- name: Configure Dockge CLI
|
||||||
run: |
|
run: |
|
||||||
|
@ -80,3 +80,18 @@ jobs:
|
||||||
dockge status fgo-ta-com-preview
|
dockge status fgo-ta-com-preview
|
||||||
dockge update fgo-ta-com-preview
|
dockge update fgo-ta-com-preview
|
||||||
dockge status fgo-ta-com-preview
|
dockge status fgo-ta-com-preview
|
||||||
|
|
||||||
|
run-unlighthouse:
|
||||||
|
needs: [ build-site ]
|
||||||
|
if: success()
|
||||||
|
runs-on: docker
|
||||||
|
steps:
|
||||||
|
- name: Launch workflow
|
||||||
|
run: |
|
||||||
|
payload="{\"ref\": \"${GITHUB_REF_NAME}\", \"inputs\": { \"containertag\": \"${GITHUB_REF_NAME}\" }}"
|
||||||
|
curl -X "POST" \
|
||||||
|
-H "accept: application/json" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-H "Authorization: token ${GITHUB_TOKEN}" \
|
||||||
|
-d "${payload}" \
|
||||||
|
"${GITHUB_API_URL}/repos/${GITHUB_REPOSITORY}/actions/workflows/unlighthouse.yml/dispatches" -v
|
||||||
|
|
|
@ -63,3 +63,19 @@ jobs:
|
||||||
release-dir: release
|
release-dir: release
|
||||||
token: ${{ secrets.FORGEJO_TOKEN }}
|
token: ${{ secrets.FORGEJO_TOKEN }}
|
||||||
tag: ${{ github.ref_name }}
|
tag: ${{ github.ref_name }}
|
||||||
|
|
||||||
|
auto-deploy-dockge:
|
||||||
|
needs: [ build-site ]
|
||||||
|
if: success()
|
||||||
|
runs-on: docker
|
||||||
|
container: forgejo.neshweb.net/firq/dockge-cli:0.1.2
|
||||||
|
steps:
|
||||||
|
- name: Configure Dockge CLI
|
||||||
|
run: |
|
||||||
|
dockge host '${{ vars.DOCKGE_HOST }}'
|
||||||
|
dockge login --user '${{ secrets.DOCKGE_USER }}' --password '${{ secrets.DOCKGE_CREDENTIAL }}'
|
||||||
|
- name: Check status and redeploy
|
||||||
|
run: |
|
||||||
|
dockge status fgo-ta-com
|
||||||
|
dockge update fgo-ta-com
|
||||||
|
dockge status fgo-ta-com
|
||||||
|
|
|
@ -1,17 +1,36 @@
|
||||||
|
name: Run unlighthouse-tests [Downstream pipeline]
|
||||||
|
run-name: Run unlighthouse-tests [Downstream pipeline] for version ${{ inputs.containertag }}
|
||||||
on:
|
on:
|
||||||
push:
|
workflow_dispatch:
|
||||||
tags:
|
inputs:
|
||||||
- '[0-9]+\.[0-9]+\.[0-9]+-ulh\.[0-9]+'
|
containertag:
|
||||||
|
description: "Tag of the container to test"
|
||||||
|
default: "preview"
|
||||||
|
type: "string"
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
unlighthouse:
|
unlighthouse:
|
||||||
runs-on: docker
|
runs-on: docker
|
||||||
container: forgejo.neshweb.net/ci-docker-images/unlighthouse:0.2.1
|
container:
|
||||||
|
image: forgejo.neshweb.net/ci-docker-images/unlighthouse:0.3.0
|
||||||
|
services:
|
||||||
|
website:
|
||||||
|
image: forgejo.neshweb.net/firq/fgo-ta-com-website:${{ inputs.containertag }}
|
||||||
|
options: >-
|
||||||
|
--workdir /
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: https://code.forgejo.org/actions/checkout@v3
|
uses: https://code.forgejo.org/actions/checkout@v3
|
||||||
|
- name: Check availability
|
||||||
|
run: |
|
||||||
|
while [ "$(curl -o /dev/null -s -w '%{http_code}' http://localhost:8081/)" -ne 200 ];
|
||||||
|
do echo "Waiting...";
|
||||||
|
sleep 5;
|
||||||
|
done;
|
||||||
- name: Run unlighthouse
|
- name: Run unlighthouse
|
||||||
run: unlighthouse-ci --site "https://preview.fgo-ta.com/" --disable-dynamic-sampling
|
run: unlighthouse-ci --site "http://localhost:8081/"
|
||||||
|
- name: Replace URLs
|
||||||
|
run: find ./unlighthouse-reports -type f | xargs sed -i "s|http://localhost:8081|https://preview.fgo-ta.com|g";
|
||||||
- name: Prepare artifacts
|
- name: Prepare artifacts
|
||||||
run: cp serve.json unlighthouse-reports
|
run: cp serve.json unlighthouse-reports
|
||||||
- name: Upload reports
|
- name: Upload reports
|
||||||
|
@ -19,79 +38,54 @@ jobs:
|
||||||
with:
|
with:
|
||||||
name: unlighthouse-reports
|
name: unlighthouse-reports
|
||||||
path: unlighthouse-reports/
|
path: unlighthouse-reports/
|
||||||
|
- name: Upload Dockerfile
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: dockerfile
|
||||||
|
path: Dockerfile.reports
|
||||||
|
|
||||||
deploy-unlighthouse-files:
|
build-site:
|
||||||
needs: [ unlighthouse ]
|
needs: [ unlighthouse ]
|
||||||
if: success()
|
if: success()
|
||||||
runs-on: docker
|
runs-on: dind
|
||||||
env:
|
|
||||||
DEPLOY_USER: ${{ secrets.DEPLOY_USER }}
|
|
||||||
DEPLOY_HOST: ${{ secrets.DEPLOY_HOST }}
|
|
||||||
steps:
|
steps:
|
||||||
- name: Install and update ssh + rsync
|
- name: Downloading static site artifacts
|
||||||
run: |
|
uses: actions/download-artifact@v3
|
||||||
which rsync || ( apt update -y && apt install rsync -y)
|
with:
|
||||||
which ssh-agent || ( apt update -y && apt install openssh-client -y)
|
name: dockerfile
|
||||||
- name: Downloading static site artifacts
|
- name: Downloading static site artifacts
|
||||||
uses: actions/download-artifact@v3
|
uses: actions/download-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: unlighthouse-reports
|
name: unlighthouse-reports
|
||||||
path: public
|
path: reports
|
||||||
- name: Install SSH Key
|
- name: Set up Docker Buildx
|
||||||
uses: https://github.com/shimataro/ssh-key-action@v2
|
uses: docker/setup-buildx-action@v3
|
||||||
|
- name: Log into Docker Package Registry
|
||||||
|
uses: docker/login-action@v3
|
||||||
with:
|
with:
|
||||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
registry: forgejo.neshweb.net
|
||||||
known_hosts: unnecessary
|
username: ${{ secrets.FORGEJO_USERNAME }}
|
||||||
- name: Adding Known Hosts
|
password: ${{ secrets.FORGEJO_TOKEN }}
|
||||||
run: ssh-keyscan -H ${{ secrets.DEPLOY_HOST }} >> ~/.ssh/known_hosts
|
- name: Build and push to Docker Package Registry
|
||||||
- name: Stop screen session, delete old files
|
uses: docker/build-push-action@v5
|
||||||
uses: https://github.com/appleboy/ssh-action@master
|
|
||||||
with:
|
with:
|
||||||
host: ${{ env.DEPLOY_HOST }}
|
context: .
|
||||||
username: ${{ env.DEPLOY_USER }}
|
file: Dockerfile.reports
|
||||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
push: true
|
||||||
script: |
|
tags: forgejo.neshweb.net/firq/fgo-ta-com-website-unlighthouse:latest
|
||||||
screen -X -S fgo_ta_com-unlighthouse kill
|
|
||||||
rm -r -f fgo_ta_com/unlighthouse/*
|
|
||||||
- name: Copy files using rsync
|
|
||||||
run: rsync -az --stats public/* ${{ env.DEPLOY_USER }}@${{ env.DEPLOY_HOST }}:~/fgo_ta_com/unlighthouse
|
|
||||||
- name: Check files on deploy target
|
|
||||||
uses: https://github.com/appleboy/ssh-action@master
|
|
||||||
with:
|
|
||||||
host: ${{ env.DEPLOY_HOST }}
|
|
||||||
username: ${{ env.DEPLOY_USER }}
|
|
||||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
|
||||||
script: |
|
|
||||||
cd fgo_ta_com
|
|
||||||
find unlighthouse -maxdepth 1 -printf "%p\n"
|
|
||||||
|
|
||||||
deploy-unlighthouse-site:
|
auto-deploy-dockge:
|
||||||
needs: [ deploy-unlighthouse-files ]
|
needs: [ build-site ]
|
||||||
if: success()
|
if: success()
|
||||||
runs-on: docker
|
runs-on: docker
|
||||||
env:
|
container: forgejo.neshweb.net/firq/dockge-cli:0.1.2
|
||||||
DEPLOY_USER: ${{ secrets.DEPLOY_USER }}
|
|
||||||
DEPLOY_HOST: ${{ secrets.DEPLOY_HOST }}
|
|
||||||
steps:
|
steps:
|
||||||
- name: Install and update ssh + rsync
|
- name: Configure Dockge CLI
|
||||||
run: |
|
run: |
|
||||||
which rsync || ( apt update -y && apt install rsync -y)
|
dockge host '${{ vars.DOCKGE_HOST }}'
|
||||||
which ssh-agent || ( apt update -y && apt install openssh-client -y)
|
dockge login --user '${{ secrets.DOCKGE_USER }}' --password '${{ secrets.DOCKGE_CREDENTIAL }}'
|
||||||
- name: Install SSH Key
|
- name: Check status and redeploy
|
||||||
uses: https://github.com/shimataro/ssh-key-action@v2
|
run: |
|
||||||
with:
|
dockge status fgo-ta-com-unlighthouse
|
||||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
dockge update fgo-ta-com-unlighthouse
|
||||||
known_hosts: unnecessary
|
dockge status fgo-ta-com-unlighthouse
|
||||||
- name: Adding Known Hosts
|
|
||||||
run: ssh-keyscan -H ${{ secrets.DEPLOY_HOST }} >> ~/.ssh/known_hosts
|
|
||||||
- name: Start new screen session
|
|
||||||
uses: https://github.com/appleboy/ssh-action@master
|
|
||||||
with:
|
|
||||||
host: ${{ env.DEPLOY_HOST }}
|
|
||||||
username: ${{ env.DEPLOY_USER }}
|
|
||||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
|
||||||
script: |
|
|
||||||
PATH="$HOME/.local/bin:$PATH"
|
|
||||||
screen -ls | grep 'fgo_ta_com-unlighthouse' | awk '{print $1}' | xargs -I % -t screen -X -S % quit
|
|
||||||
cd fgo_ta_com
|
|
||||||
screen -S fgo_ta_com-unlighthouse -dm serve unlighthouse/ -p ${{ secrets.UNLIGHTHOUSE_DEPLOY_PORT }}
|
|
||||||
|
|
6
Dockerfile.reports
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
FROM forgejo.neshweb.net/ci-docker-images/website-serve:2 AS runtime
|
||||||
|
|
||||||
|
ADD reports /public
|
||||||
|
|
||||||
|
EXPOSE 8081
|
||||||
|
CMD serve public/ -p 8081
|
|
@ -1,12 +1,12 @@
|
||||||
import { defineConfig } from 'astro/config';
|
|
||||||
import sitemap from '@astrojs/sitemap';
|
import sitemap from '@astrojs/sitemap';
|
||||||
import metaTags from "astro-meta-tags";
|
import metaTags from "astro-meta-tags";
|
||||||
|
import { defineConfig } from 'astro/config';
|
||||||
|
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
sitemap: true,
|
sitemap: true,
|
||||||
base: '/',
|
base: '/',
|
||||||
outDir: 'dist',
|
outDir: 'dist',
|
||||||
publicDir: 'static',
|
publicDir: 'public',
|
||||||
site: 'https://fgo-ta.com/',
|
site: 'https://fgo-ta.com/',
|
||||||
integrations: [sitemap(), metaTags()],
|
integrations: [sitemap(), metaTags()],
|
||||||
trailingSlash: "never"
|
trailingSlash: "never"
|
||||||
|
|
781
package-lock.json
generated
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"name": "fgo-ta-com-website",
|
"name": "fgo-ta-com-website",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"version": "0.2.2-pre.14",
|
"version": "0.2.2-pre.22",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "astro dev",
|
"dev": "astro dev",
|
||||||
"start": "astro dev",
|
"start": "astro dev",
|
||||||
|
@ -11,10 +11,10 @@
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@astro-community/astro-embed-youtube": "^0.5.2",
|
"@astro-community/astro-embed-youtube": "^0.5.2",
|
||||||
"@astrojs/check": "^0.8.1",
|
"@astrojs/check": "^0.9.3",
|
||||||
"@astrojs/sitemap": "^3.1.6",
|
"@astrojs/sitemap": "^3.1.6",
|
||||||
"@fontsource/work-sans": "^5.0.18",
|
"@fontsource/work-sans": "^5.0.18",
|
||||||
"astro": "^4.12.2",
|
"astro": "^4.14.3",
|
||||||
"astro-meta-tags": "^0.3.0",
|
"astro-meta-tags": "^0.3.0",
|
||||||
"autoprefixer": "^10.4.19",
|
"autoprefixer": "^10.4.19",
|
||||||
"iconoir": "^7.7.0",
|
"iconoir": "^7.7.0",
|
||||||
|
|
Before Width: | Height: | Size: 123 KiB After Width: | Height: | Size: 123 KiB |
|
@ -12,6 +12,15 @@
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"source": "**/*.woff2",
|
||||||
|
"headers": [
|
||||||
|
{
|
||||||
|
"key": "Cache-Control",
|
||||||
|
"value": "no-cache"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"source": "404.html",
|
"source": "404.html",
|
||||||
"headers": [
|
"headers": [
|
||||||
|
|
BIN
src/assets/ta_servants/11.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
src/assets/ta_servants/167.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
src/assets/ta_servants/223.png
Normal file
After Width: | Height: | Size: 30 KiB |
BIN
src/assets/ta_servants/340.png
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
src/assets/ta_servants/38.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
src/assets/ta_servants/6.png
Normal file
After Width: | Height: | Size: 36 KiB |
|
@ -11,12 +11,20 @@ export interface Props {
|
||||||
const { maintext, subtext, fadeout, baseurl, returnbutton } = Astro.props
|
const { maintext, subtext, fadeout, baseurl, returnbutton } = Astro.props
|
||||||
const displayFadeout = fadeout ? "": "display: none"
|
const displayFadeout = fadeout ? "": "display: none"
|
||||||
const displayBackButton = returnbutton ? "": "display: none"
|
const displayBackButton = returnbutton ? "": "display: none"
|
||||||
|
|
||||||
|
let text
|
||||||
|
if (baseurl) {
|
||||||
|
text = baseurl?.split("/").pop()
|
||||||
|
text = text?.replace("-", " ").replace("-", ".")
|
||||||
|
text = text?.includes('eq 20') ? text?.replace("eq", "EQ") : text
|
||||||
|
}
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<div class="wrap">
|
<div class="wrap">
|
||||||
<div class="head">{maintext}</div>
|
<div class="head">{maintext}</div>
|
||||||
<div class="sub">{subtext}</div>
|
<div class="sub">{subtext}</div>
|
||||||
<a href=`/${baseurl}` style={displayBackButton}><< Back to {baseurl}</a>
|
<a href=`/${baseurl}` style={displayBackButton}><< Back to {text}</a>
|
||||||
<div class="fade" style={displayFadeout}></div>
|
<div class="fade" style={displayFadeout}></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -62,14 +70,16 @@ const displayBackButton = returnbutton ? "": "display: none"
|
||||||
.head {
|
.head {
|
||||||
hyphens: auto;
|
hyphens: auto;
|
||||||
padding-top: 2rem;
|
padding-top: 2rem;
|
||||||
font-size: 2rem;
|
font-size: 3rem;
|
||||||
font-weight: 800;
|
font-weight: 800;
|
||||||
font-family: 'Work Sans', 'Helvetica Neue', Helvetica, Helvetica, Arial,
|
font-family: 'Work Sans', 'Helvetica Neue', Helvetica, Helvetica, Arial,
|
||||||
sans-serif;
|
sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
.sub {
|
.sub {
|
||||||
font-size: 0.75rem;
|
padding-left: 0.5rem;
|
||||||
|
padding-right: 0.5rem;
|
||||||
|
font-size: 1rem;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
font-family: 'Work Sans', 'Helvetica Neue', Helvetica, Helvetica, Arial,
|
font-family: 'Work Sans', 'Helvetica Neue', Helvetica, Helvetica, Arial,
|
||||||
sans-serif;
|
sans-serif;
|
||||||
|
@ -90,19 +100,19 @@ const displayBackButton = returnbutton ? "": "display: none"
|
||||||
@media (min-width: 620px) {
|
@media (min-width: 620px) {
|
||||||
.head {
|
.head {
|
||||||
hyphens: none;
|
hyphens: none;
|
||||||
font-size: 3rem;
|
|
||||||
}
|
|
||||||
.sub {
|
|
||||||
font-size: 0.75rem;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (min-width: 1000px) {
|
|
||||||
.head {
|
|
||||||
font-size: 4rem;
|
font-size: 4rem;
|
||||||
}
|
}
|
||||||
.sub {
|
.sub {
|
||||||
font-size: 1rem;
|
font-size: 1rem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media (min-width: 1000px) {
|
||||||
|
.head {
|
||||||
|
font-size: 6rem;
|
||||||
|
}
|
||||||
|
.sub {
|
||||||
|
font-size: 1rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -45,6 +45,8 @@ const display = fadeout ? "": "display: none"
|
||||||
}
|
}
|
||||||
|
|
||||||
.sub {
|
.sub {
|
||||||
|
padding-left: 0.5rem;
|
||||||
|
padding-right: 0.5rem;
|
||||||
font-size: 1.5rem;
|
font-size: 1.5rem;
|
||||||
font-weight: 800;
|
font-weight: 800;
|
||||||
font-family: 'Work Sans', 'Helvetica Neue', Helvetica, Helvetica, Arial,
|
font-family: 'Work Sans', 'Helvetica Neue', Helvetica, Helvetica, Arial,
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/changes.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Appends and Level 120",
|
"title": "Appends and Level 120",
|
||||||
"releaseDate": "2022-05-23",
|
"releaseDate": "2022-05-23",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/changes.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Castoria",
|
"title": "Castoria",
|
||||||
"releaseDate": "2022-07-04",
|
"releaseDate": "2022-07-04",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/changes.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Koyanskaya of Light",
|
"title": "Koyanskaya of Light",
|
||||||
"releaseDate": "2023-07-03",
|
"releaseDate": "2023-07-03",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/changes.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Oberon",
|
"title": "Oberon",
|
||||||
"releaseDate": "2023-07-10",
|
"releaseDate": "2023-07-10",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/changes.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Scathach-Skadi",
|
"title": "Scathach-Skadi",
|
||||||
"releaseDate": "2020-07-06",
|
"releaseDate": "2020-07-06",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/changes.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Scathach-Skadi (Ruler)",
|
"title": "Scathach-Skadi (Ruler)",
|
||||||
"releaseDate": "2024-07-24",
|
"releaseDate": "2024-07-24",
|
||||||
|
|
|
@ -53,5 +53,6 @@ export const collections = {
|
||||||
taInfoData: taData,
|
taInfoData: taData,
|
||||||
teslafest: taData,
|
teslafest: taData,
|
||||||
groups: groupDescription,
|
groups: groupDescription,
|
||||||
|
teslafestgroups: groupDescription,
|
||||||
changes: changes,
|
changes: changes,
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/groups.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Lostbelt 6.5 - Traum",
|
"title": "Lostbelt 6.5 - Traum",
|
||||||
"releaseDate": "2024-05-13",
|
"releaseDate": "2024-05-13",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/groups.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Lostbelt 6 - Avalon le Fae",
|
"title": "Lostbelt 6 - Avalon le Fae",
|
||||||
"releaseDate": "2023-06-06",
|
"releaseDate": "2023-06-06",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/taInfoData.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Arctic Summer World",
|
"title": "Arctic Summer World",
|
||||||
"releaseDate": "2024-07-24",
|
"releaseDate": "2024-07-24",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/taInfoData.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Beast IV:L",
|
"title": "Beast IV:L",
|
||||||
"releaseDate": "2023-12-26",
|
"releaseDate": "2023-12-26",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/taInfoData.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Case Files Rerun 2024",
|
"title": "Case Files Rerun 2024",
|
||||||
"releaseDate": "2024-01-10",
|
"releaseDate": "2024-01-10",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/taInfoData.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Devilish Bodhisattva",
|
"title": "Devilish Bodhisattva",
|
||||||
"releaseDate": "2019-04-23",
|
"releaseDate": "2019-04-23",
|
||||||
|
|
49
src/content/taInfoData/lostbelt-6-5/kiyohime.json
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/taInfoData.schema.json",
|
||||||
|
"info": {
|
||||||
|
"title": "Kiyohime",
|
||||||
|
"releaseDate": "2024-05-13",
|
||||||
|
"shortdescription": "Help, there is an angry dragon snek that wants to burn me for slightly lying to her",
|
||||||
|
"releaseNumber": 2
|
||||||
|
},
|
||||||
|
"quests": [
|
||||||
|
{
|
||||||
|
"questTitle": "Kiyohime",
|
||||||
|
"description": "",
|
||||||
|
"data": [
|
||||||
|
{
|
||||||
|
"title": "S.Karna Karna Arjuna Junao 5T",
|
||||||
|
"link": "https://youtu.be/f039x5OIl6E",
|
||||||
|
"date": "2024-05-18",
|
||||||
|
"servant": "247",
|
||||||
|
"turns": "5T",
|
||||||
|
"runner": "Akise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Baobhan Arash Habetrot 5T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=a7V5W8MkxO8",
|
||||||
|
"date": "2024-05-31",
|
||||||
|
"servant": "311",
|
||||||
|
"turns": "5T",
|
||||||
|
"runner": "Mikazuki"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Cindereli Habenya Douman Arash 5T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=7Z0Fn8tBV4E",
|
||||||
|
"date": "2024-05-14",
|
||||||
|
"servant": "326",
|
||||||
|
"turns": "5T",
|
||||||
|
"runner": "Loki"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Daikokuten 5T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=Q7v_joSJmNg",
|
||||||
|
"date": "2024-05-20",
|
||||||
|
"servant": "340",
|
||||||
|
"turns": "5T",
|
||||||
|
"runner": "TokuHer0"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
153
src/content/taInfoData/lostbelt-6-5/kriemhild.json
Normal file
|
@ -0,0 +1,153 @@
|
||||||
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/taInfoData.schema.json",
|
||||||
|
"info": {
|
||||||
|
"title": "Kriemhild",
|
||||||
|
"releaseDate": "2024-05-13",
|
||||||
|
"shortdescription": "Trying to get Kriemhild acting sane when she's a Berserker and pitted against her husband - Challenge Impossible",
|
||||||
|
"releaseNumber": 3
|
||||||
|
},
|
||||||
|
"quests": [
|
||||||
|
{
|
||||||
|
"questTitle": "Kriemhild",
|
||||||
|
"description": "",
|
||||||
|
"data": [
|
||||||
|
{
|
||||||
|
"title": "Nero Bride 3T (FLO)",
|
||||||
|
"link": "https://www.youtube.com/watch?v=iEOhDVhIKkw",
|
||||||
|
"date": "2024-05-22",
|
||||||
|
"servant": "90",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Lutrec"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Saber Diarmuid 3T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=aBBY-smKj2I",
|
||||||
|
"date": "2024-05-27",
|
||||||
|
"servant": "223",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Volcanicz"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Muramasa 3T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=Wejdo62W9Ng",
|
||||||
|
"date": "2024-05-16",
|
||||||
|
"servant": "302",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Loki"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Artoria 3T (FLO)",
|
||||||
|
"link": "https://www.youtube.com/watch?v=qkZji1N7oLs",
|
||||||
|
"date": "2024-05-25",
|
||||||
|
"servant": "2",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Fu Windsword"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Siegfried 3T (NPC)",
|
||||||
|
"link": "https://www.youtube.com/watch?v=BSPUS2kQyeE",
|
||||||
|
"date": "2024-05-20",
|
||||||
|
"servant": "6",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "TokuHer0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Jeanne Summer 3T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=_1GgmzU8SJI",
|
||||||
|
"date": "2024-05-18",
|
||||||
|
"servant": "216",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "im poketar"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Emiya 3T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=hEuWchiPUcM",
|
||||||
|
"date": "2024-05-18",
|
||||||
|
"servant": "11",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Volcanicz"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Melusine 3T (Solo)",
|
||||||
|
"link": "https://www.youtube.com/watch?v=pH7iLqMKamE",
|
||||||
|
"date": "2024-05-16",
|
||||||
|
"servant": "312_st",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Felt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Kagetora 3T (FLO)",
|
||||||
|
"link": "https://www.youtube.com/watch?v=j_S20-UZbqo",
|
||||||
|
"date": "2024-05-22",
|
||||||
|
"servant": "252",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Volcanicz"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Cindereli 3T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=H_mUuNrZE0I",
|
||||||
|
"date": "2024-05-16",
|
||||||
|
"servant": "326",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Loki"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Rider Ishtar 3T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=9jHuxjH6puw",
|
||||||
|
"date": "2024-05-19",
|
||||||
|
"servant": "182",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Volcanicz"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Cu Caster 3T (FLO)",
|
||||||
|
"link": "https://www.youtube.com/watch?v=N9ZZ-nuePmA",
|
||||||
|
"date": "2024-05-22",
|
||||||
|
"servant": "38",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Akise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Skadi 3T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=YrvWmFTgMUE",
|
||||||
|
"date": "2024-05-17",
|
||||||
|
"servant": "215",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Firq"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Merlin 3T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=kPtC0P-XHag",
|
||||||
|
"date": "2024-05-20",
|
||||||
|
"servant": "150",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Ise(Kai)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Morgan 3T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=hJyf-FFRQUw",
|
||||||
|
"date": "2024-05-15",
|
||||||
|
"servant": "309",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Loki"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Astrea 3T (Lvl. 2)",
|
||||||
|
"link": "https://www.youtube.com/watch?v=EPZUkzN9ySQ",
|
||||||
|
"date": "2024-05-19",
|
||||||
|
"servant": "242",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Alastair Hale"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Summer BB 3T (4man)",
|
||||||
|
"link": "https://www.youtube.com/watch?v=k7btt-Vti2I",
|
||||||
|
"date": "2024-05-21",
|
||||||
|
"servant": "220",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "Volcanicz"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
81
src/content/taInfoData/lostbelt-6-5/moriarty.json
Normal file
|
@ -0,0 +1,81 @@
|
||||||
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/taInfoData.schema.json",
|
||||||
|
"info": {
|
||||||
|
"title": "Moriarty",
|
||||||
|
"releaseDate": "2024-05-13",
|
||||||
|
"shortdescription": "The epic showdown at the Reichenbach Falls - A worthy finale against the Big Bad Evil of this Lostbelt",
|
||||||
|
"releaseNumber": 4
|
||||||
|
},
|
||||||
|
"quests": [
|
||||||
|
{
|
||||||
|
"questTitle": "Moriarty",
|
||||||
|
"description": "",
|
||||||
|
"data": [
|
||||||
|
{
|
||||||
|
"title": "Nero Bride 4T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=wWM5yvCeiIA",
|
||||||
|
"date": "2024-05-25",
|
||||||
|
"servant": "90",
|
||||||
|
"turns": "4T",
|
||||||
|
"runner": "Lutrec"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Morgan 4T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=42pTDuQwsQg",
|
||||||
|
"date": "2024-05-16",
|
||||||
|
"servant": "309",
|
||||||
|
"turns": "4T",
|
||||||
|
"runner": "Loki"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Arjuna Alter 4T (FLO)",
|
||||||
|
"link": "https://www.youtube.com/watch?v=egmZQvRseX8",
|
||||||
|
"date": "2024-05-23",
|
||||||
|
"servant": "247",
|
||||||
|
"turns": "4T",
|
||||||
|
"runner": "Akise"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Da Vinci Ruler 4T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=LUFHZXy0F14",
|
||||||
|
"date": "2024-05-27",
|
||||||
|
"servant": "320",
|
||||||
|
"turns": "4T",
|
||||||
|
"runner": "Lutrec"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Taira 4T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=qU_9PFh04Og",
|
||||||
|
"date": "2024-05-19",
|
||||||
|
"servant": "303",
|
||||||
|
"turns": "4T",
|
||||||
|
"runner": "Patrick Bandeira"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Taira 4T (Solo)",
|
||||||
|
"link": "https://www.youtube.com/watch?v=PaTeIqKSdVA",
|
||||||
|
"date": "2024-05-16",
|
||||||
|
"servant": "303",
|
||||||
|
"turns": "4T",
|
||||||
|
"runner": "Felt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Bazett 3T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=_7vDBCqLlhU",
|
||||||
|
"date": "2024-05-21",
|
||||||
|
"servant": "336",
|
||||||
|
"turns": "3T",
|
||||||
|
"runner": "TokuHer0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"title": "Kiara 4T",
|
||||||
|
"link": "https://www.youtube.com/watch?v=gEa8VJOy2Eg",
|
||||||
|
"date": "2024-05-19",
|
||||||
|
"servant": "167",
|
||||||
|
"turns": "4T",
|
||||||
|
"runner": "im poketar"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/taInfoData.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Zhang Jue",
|
"title": "Zhang Jue",
|
||||||
"releaseDate": "2024-05-13",
|
"releaseDate": "2024-05-13",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/taInfoData.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Albion",
|
"title": "Albion",
|
||||||
"releaseDate": "2023-07-10",
|
"releaseDate": "2023-07-10",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/taInfoData.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Cernunnos",
|
"title": "Cernunnos",
|
||||||
"releaseDate": "2023-07-10",
|
"releaseDate": "2023-07-10",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/taInfoData.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Queen Morgan",
|
"title": "Queen Morgan",
|
||||||
"releaseDate": "2023-06-20",
|
"releaseDate": "2023-06-20",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Lightning in Gilgilgamesh",
|
"title": "Lightning in Gilgilgamesh",
|
||||||
"releaseDate": "2024-03-23",
|
"releaseDate": "2024-03-23",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Grand Finale - The Golden Metropolis Returns",
|
"title": "Grand Finale - The Golden Metropolis Returns",
|
||||||
"releaseDate": "2024-03-18",
|
"releaseDate": "2024-03-18",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Flame Gate",
|
"title": "Flame Gate",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Welcome to Jaguar Country",
|
"title": "Welcome to Jaguar Country",
|
||||||
"releaseDate": "2024-03-16",
|
"releaseDate": "2024-03-16",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Moolah's Pawn Shop",
|
"title": "Moolah's Pawn Shop",
|
||||||
"releaseDate": "2024-03-17",
|
"releaseDate": "2024-03-17",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Rice Ball Franchise Shop No. 1",
|
"title": "Rice Ball Franchise Shop No. 1",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Skyscraper Monster",
|
"title": "Skyscraper Monster",
|
||||||
"releaseDate": "2024-03-16",
|
"releaseDate": "2024-03-16",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Sweets Universe",
|
"title": "Sweets Universe",
|
||||||
"releaseDate": "2024-03-17",
|
"releaseDate": "2024-03-17",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "BE-Witched (Curse)",
|
"title": "BE-Witched (Curse)",
|
||||||
"releaseDate": "2024-03-19",
|
"releaseDate": "2024-03-19",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Main Event - Final Match",
|
"title": "Main Event - Final Match",
|
||||||
"releaseDate": "2024-03-19",
|
"releaseDate": "2024-03-19",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Capture the Clown!",
|
"title": "Capture the Clown!",
|
||||||
"releaseDate": "2024-03-20",
|
"releaseDate": "2024-03-20",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Legend of the Crimson Hero - HD Remastered",
|
"title": "Legend of the Crimson Hero - HD Remastered",
|
||||||
"releaseDate": "2024-03-21",
|
"releaseDate": "2024-03-21",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Finale - The Eternal City Triumphus",
|
"title": "Finale - The Eternal City Triumphus",
|
||||||
"releaseDate": "2024-03-22",
|
"releaseDate": "2024-03-22",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "The Lovely Gorgon Sisters",
|
"title": "The Lovely Gorgon Sisters",
|
||||||
"releaseDate": "2024-03-20",
|
"releaseDate": "2024-03-20",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "The Green Comet",
|
"title": "The Green Comet",
|
||||||
"releaseDate": "2024-03-21",
|
"releaseDate": "2024-03-21",
|
|
@ -1,13 +1,14 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Giga Coil - Singularity Gets Restored until You Reach Home",
|
"title": "Singularity Gets Restored until You Reach Home",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
||||||
"shortdescription": "An interesting, multi-stage quest with plenty of interesting twists",
|
"shortdescription": "An interesting, multi-stage quest with plenty of interesting twists",
|
||||||
"releaseNumber": 2
|
"releaseNumber": 2
|
||||||
},
|
},
|
||||||
"quests": [
|
"quests": [
|
||||||
{
|
{
|
||||||
"questTitle": "Giga Coil - Singularity Gets Restored until You Reach Home",
|
"questTitle": "Singularity Gets Restored until You Reach Home",
|
||||||
"description": "An interesting, multi-stage quest with plenty of interesting twists ... What do you mean 12 Guts stacks is bad quest design????",
|
"description": "An interesting, multi-stage quest with plenty of interesting twists ... What do you mean 12 Guts stacks is bad quest design????",
|
||||||
"data": [
|
"data": [
|
||||||
{
|
{
|
|
@ -1,13 +1,14 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Giga Coil - Child from the Netherworld",
|
"title": "Child from the Netherworld",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
||||||
"shortdescription": "Can Erice stop the racers this time?",
|
"shortdescription": "Can Erice stop the racers this time?",
|
||||||
"releaseNumber": 5
|
"releaseNumber": 5
|
||||||
},
|
},
|
||||||
"quests": [
|
"quests": [
|
||||||
{
|
{
|
||||||
"questTitle": "Giga Coil - Child from the Netherworld",
|
"questTitle": "Child from the Netherworld",
|
||||||
"description": "Can Erice stop the racers this time? Well, she might just if she has more and more ghosts in stock. A real throwback to the Fate/Requiem Collab Event.",
|
"description": "Can Erice stop the racers this time? Well, she might just if she has more and more ghosts in stock. A real throwback to the Fate/Requiem Collab Event.",
|
||||||
"data": [
|
"data": [
|
||||||
{
|
{
|
|
@ -1,13 +1,14 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Giga Coil - Raging Billows! Kakare Shibata!",
|
"title": "Raging Billows! Kakare Shibata!",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
||||||
"shortdescription": "Stacking defences and damage cut - what an interesting strategy",
|
"shortdescription": "Stacking defences and damage cut - what an interesting strategy",
|
||||||
"releaseNumber": 6
|
"releaseNumber": 6
|
||||||
},
|
},
|
||||||
"quests": [
|
"quests": [
|
||||||
{
|
{
|
||||||
"questTitle": "Giga Coil - Raging Billows! Kakare Shibata!",
|
"questTitle": "Raging Billows! Kakare Shibata!",
|
||||||
"description": "Stacking defences and damage cut - what an interesting strategy ... Let's see how it works out against the racers",
|
"description": "Stacking defences and damage cut - what an interesting strategy ... Let's see how it works out against the racers",
|
||||||
"data": [
|
"data": [
|
||||||
{
|
{
|
|
@ -1,13 +1,14 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Giga Coil - Galaxy Guardian",
|
"title": "Galaxy Guardian",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
||||||
"shortdescription": "The one to keep the Galaxy in order - will her two forms be enough against the racers?",
|
"shortdescription": "The one to keep the Galaxy in order - will her two forms be enough against the racers?",
|
||||||
"releaseNumber": 3
|
"releaseNumber": 3
|
||||||
},
|
},
|
||||||
"quests": [
|
"quests": [
|
||||||
{
|
{
|
||||||
"questTitle": "Giga Coil - Galaxy Guardian",
|
"questTitle": "Galaxy Guardian",
|
||||||
"description": "The one to keep the Galaxy in order - will her two forms be enough against the racers?",
|
"description": "The one to keep the Galaxy in order - will her two forms be enough against the racers?",
|
||||||
"data": [
|
"data": [
|
||||||
{
|
{
|
|
@ -1,13 +1,14 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Giga Coil - Western Ninja Arts Book",
|
"title": "Western Ninja Arts Book",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
||||||
"shortdescription": "Can Fuuma, his clones and his arsenal of debuffs stop the racers?",
|
"shortdescription": "Can Fuuma, his clones and his arsenal of debuffs stop the racers?",
|
||||||
"releaseNumber": 1
|
"releaseNumber": 1
|
||||||
},
|
},
|
||||||
"quests": [
|
"quests": [
|
||||||
{
|
{
|
||||||
"questTitle": "Giga Coil - Western Ninja Arts Book",
|
"questTitle": "Western Ninja Arts Book",
|
||||||
"description": "Can Fuuma, his clones and his arsenal of debuffs stop the racers? One of the most obnoxious quests in the history of Challenge Quests - and this time, with a harder cap on party cost.",
|
"description": "Can Fuuma, his clones and his arsenal of debuffs stop the racers? One of the most obnoxious quests in the history of Challenge Quests - and this time, with a harder cap on party cost.",
|
||||||
"data": [
|
"data": [
|
||||||
{
|
{
|
|
@ -1,13 +1,14 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Giga Coil - True Love",
|
"title": "True Love",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
||||||
"shortdescription": "Somehow, Orion can now transform - is he a Transformer then?",
|
"shortdescription": "Somehow, Orion can now transform - is he a Transformer then?",
|
||||||
"releaseNumber": 4
|
"releaseNumber": 4
|
||||||
},
|
},
|
||||||
"quests": [
|
"quests": [
|
||||||
{
|
{
|
||||||
"questTitle": "Giga Coil - True Love",
|
"questTitle": "True Love",
|
||||||
"description": "Somehow, Orion can now transform - is he a Transformer then? But to be fair, he really fits in with all the other pigs.",
|
"description": "Somehow, Orion can now transform - is he a Transformer then? But to be fair, he really fits in with all the other pigs.",
|
||||||
"data": [
|
"data": [
|
||||||
{
|
{
|
|
@ -1,13 +1,14 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Giga Coil - Five Star Idol",
|
"title": "Five Star Idol",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
||||||
"shortdescription": "A total of 10 HP Bars and some interesting field effects - what will happen on this stage?",
|
"shortdescription": "A total of 10 HP Bars and some interesting field effects - what will happen on this stage?",
|
||||||
"releaseNumber": 7
|
"releaseNumber": 7
|
||||||
},
|
},
|
||||||
"quests": [
|
"quests": [
|
||||||
{
|
{
|
||||||
"questTitle": "Giga Coil - Five Star Idol",
|
"questTitle": "Five Star Idol",
|
||||||
"description": "A total of 10 HP Bars and some interesting field effects - what will happen on this stage? Will the racers idol prevail? Let's enjoy the show and see ...",
|
"description": "A total of 10 HP Bars and some interesting field effects - what will happen on this stage? Will the racers idol prevail? Let's enjoy the show and see ...",
|
||||||
"data": [
|
"data": [
|
||||||
{
|
{
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Until That Person's Defeated",
|
"title": "Until That Person's Defeated",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "March of the Holy Reindeer",
|
"title": "March of the Holy Reindeer",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Crime and Punishment - Gray Mustache Must Die",
|
"title": "Crime and Punishment - Gray Mustache Must Die",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Super My Home Daddy",
|
"title": "Super My Home Daddy",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Heart Pounding! The Grand Decisive Swimsuit Battle!",
|
"title": "Heart Pounding! The Grand Decisive Swimsuit Battle!",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "The Librarian's Job",
|
"title": "The Librarian's Job",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "../../../../.astro/collections/teslafest.schema.json",
|
||||||
"info": {
|
"info": {
|
||||||
"title": "Rematch at Reichenbach Falls",
|
"title": "Rematch at Reichenbach Falls",
|
||||||
"releaseDate": "2024-03-15",
|
"releaseDate": "2024-03-15",
|
10
src/content/teslafestgroups/eq-2020.json
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"$schema": "../../../.astro/collections/teslafestgroups.schema.json",
|
||||||
|
"info": {
|
||||||
|
"title": "Exhibition Quests 2020",
|
||||||
|
"releaseDate": "2024-03-15",
|
||||||
|
"shortdescription": "The return of the 2020 Nerofest Exhibition Quests - time to go for round 2",
|
||||||
|
"releaseNumber": 1,
|
||||||
|
"type": "group"
|
||||||
|
}
|
||||||
|
}
|
10
src/content/teslafestgroups/eq-2021.json
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"$schema": "../../../.astro/collections/teslafestgroups.schema.json",
|
||||||
|
"info": {
|
||||||
|
"title": "Exhibition Quests 2021",
|
||||||
|
"releaseDate": "2024-03-15",
|
||||||
|
"shortdescription": "The return of the 2021 Ishtarfest Exhibition Quests - time to run those again",
|
||||||
|
"releaseNumber": 2,
|
||||||
|
"type": "group"
|
||||||
|
}
|
||||||
|
}
|
10
src/content/teslafestgroups/giga-coil.json
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"$schema": "../../../.astro/collections/teslafestgroups.schema.json",
|
||||||
|
"info": {
|
||||||
|
"title": "Giga Coil",
|
||||||
|
"releaseDate": "2024-03-15",
|
||||||
|
"shortdescription": "The second collection of old Challenge Quests that requires strategic of servants - let's go again",
|
||||||
|
"releaseNumber": 4,
|
||||||
|
"type": "group"
|
||||||
|
}
|
||||||
|
}
|
10
src/content/teslafestgroups/mega-coil.json
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"$schema": "../../../.astro/collections/teslafestgroups.schema.json",
|
||||||
|
"info": {
|
||||||
|
"title": "Mega Coil",
|
||||||
|
"releaseDate": "2024-03-15",
|
||||||
|
"shortdescription": "A collection of old Challenge Quests that requires strategic use of a full servant roster - be prepared",
|
||||||
|
"releaseNumber": 3,
|
||||||
|
"type": "group"
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,7 +1,7 @@
|
||||||
---
|
---
|
||||||
import Navbar from '../components/navbar.astro'
|
import Navbar from '../components/navbar.astro'
|
||||||
import NavbarEntry from '../components/navbarEntry.astro'
|
import NavbarEntry from '../components/navbarEntry.astro'
|
||||||
import navdata from '../../static/data/_navdata.json'
|
import navdata from '../data/_navdata.json'
|
||||||
import embed from '../assets/embed.png'
|
import embed from '../assets/embed.png'
|
||||||
import home from 'iconoir/icons/home.svg'
|
import home from 'iconoir/icons/home.svg'
|
||||||
import database from 'iconoir/icons/database.svg'
|
import database from 'iconoir/icons/database.svg'
|
||||||
|
@ -9,6 +9,9 @@ import databasestar from 'iconoir/icons/database-star.svg'
|
||||||
import mail from 'iconoir/icons/mail.svg'
|
import mail from 'iconoir/icons/mail.svg'
|
||||||
import type { IconsLookup } from '../types/generic'
|
import type { IconsLookup } from '../types/generic'
|
||||||
|
|
||||||
|
import workSans800 from '@fontsource/work-sans/files/work-sans-latin-800-normal.woff2?url';
|
||||||
|
import workSans600 from '@fontsource/work-sans/files/work-sans-latin-600-normal.woff2?url';
|
||||||
|
|
||||||
export interface Props {
|
export interface Props {
|
||||||
title: string
|
title: string
|
||||||
currentpage: string
|
currentpage: string
|
||||||
|
@ -61,6 +64,8 @@ const mapped_navdata = navdata.map((item) => ({
|
||||||
<!-- Disable DarkReader, as site is already in dark mode -->
|
<!-- Disable DarkReader, as site is already in dark mode -->
|
||||||
<meta name="darkreader-lock" content="this site only has darkmode">
|
<meta name="darkreader-lock" content="this site only has darkmode">
|
||||||
<!-- Links -->
|
<!-- Links -->
|
||||||
|
<link rel="preload" as="font" type="font/woff2" href={workSans600} crossorigin="anonymous" />
|
||||||
|
<link rel="preload" as="font" type="font/woff2" href={workSans800} crossorigin="anonymous" />
|
||||||
<link rel="icon" type="image/ico" href="/favicon.ico" />
|
<link rel="icon" type="image/ico" href="/favicon.ico" />
|
||||||
<link rel="sitemap" href="/sitemap-index.xml" />
|
<link rel="sitemap" href="/sitemap-index.xml" />
|
||||||
<link href="https://mastodon.neshweb.net/@Firq" rel="me" />
|
<link href="https://mastodon.neshweb.net/@Firq" rel="me" />
|
||||||
|
|
|
@ -1,15 +1,17 @@
|
||||||
---
|
---
|
||||||
export interface Props {
|
export interface Props {
|
||||||
title: string
|
title: string
|
||||||
|
hidetitle?: boolean
|
||||||
description: string
|
description: string
|
||||||
}
|
}
|
||||||
|
|
||||||
const { title, description } = Astro.props
|
const { title, hidetitle, description } = Astro.props
|
||||||
|
const override = hidetitle ? "display: None" : ""
|
||||||
---
|
---
|
||||||
|
|
||||||
<div class="base">
|
<div class="base">
|
||||||
<h1>{title}</h1>
|
<h1 style={override}>{title}</h1>
|
||||||
<h2>{description}</h2>
|
<h2 style={override}>{description}</h2>
|
||||||
<div>
|
<div>
|
||||||
<slot />
|
<slot />
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -17,6 +17,7 @@ const { collection, collectionKey, baseurl } = Astro.props
|
||||||
const taEntry = await plsLoadTAEntry(collectionKey, collection)
|
const taEntry = await plsLoadTAEntry(collectionKey, collection)
|
||||||
const pagetitle = `${taEntry.info.title} - FGO TA`
|
const pagetitle = `${taEntry.info.title} - FGO TA`
|
||||||
const displaystate = taEntry.quests[0].data.length > 0 ? 'none' : 'flex'
|
const displaystate = taEntry.quests[0].data.length > 0 ? 'none' : 'flex'
|
||||||
|
const hidetitle = taEntry.quests.length <= 1
|
||||||
---
|
---
|
||||||
|
|
||||||
<Layout
|
<Layout
|
||||||
|
@ -33,7 +34,7 @@ const displaystate = taEntry.quests[0].data.length > 0 ? 'none' : 'flex'
|
||||||
/>
|
/>
|
||||||
{
|
{
|
||||||
taEntry.quests.map((item) => (
|
taEntry.quests.map((item) => (
|
||||||
<BaseSection title={item.questTitle} description={item.description}>
|
<BaseSection title={item.questTitle} description={item.description} hidetitle={hidetitle}>
|
||||||
{item.data
|
{item.data
|
||||||
.sort((a, b) => b.date.valueOf() - a.date.valueOf())
|
.sort((a, b) => b.date.valueOf() - a.date.valueOf())
|
||||||
.map((item) => (
|
.map((item) => (
|
||||||
|
|
|
@ -78,6 +78,12 @@ export async function getStaticPaths() {
|
||||||
}
|
}
|
||||||
|
|
||||||
const { key, group, questinfo, pageinfo } = Astro.props
|
const { key, group, questinfo, pageinfo } = Astro.props
|
||||||
|
|
||||||
|
let baseurl_return = "database"
|
||||||
|
if (key.includes("/")) {
|
||||||
|
baseurl_return = baseurl_return + "/" + key.split("/", 1)[0]
|
||||||
|
}
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
{
|
{
|
||||||
|
@ -85,7 +91,7 @@ const { key, group, questinfo, pageinfo } = Astro.props
|
||||||
<TaShowcaseLayout
|
<TaShowcaseLayout
|
||||||
collection="taInfoData"
|
collection="taInfoData"
|
||||||
collectionKey={key}
|
collectionKey={key}
|
||||||
baseurl="database"
|
baseurl={baseurl_return}
|
||||||
/>
|
/>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,7 @@ const description =
|
||||||
currentpage="home"
|
currentpage="home"
|
||||||
descriptionOverride={description}
|
descriptionOverride={description}
|
||||||
>
|
>
|
||||||
<Title maintext='FGO NA TA DATA­BASE' subtext='The all-in-one lookup for your all TA needs'/>
|
<Title maintext='FGO NA TA DATA­BASE' subtext='The all-in-one lookup for all your TA needs'/>
|
||||||
<Hero fadeout={true}/>
|
<Hero fadeout={true}/>
|
||||||
</Layout>
|
</Layout>
|
||||||
|
|
||||||
|
|
122
src/pages/teslafest/[...slug].astro
Normal file
|
@ -0,0 +1,122 @@
|
||||||
|
---
|
||||||
|
import { getCollection } from 'astro:content'
|
||||||
|
import TaShowcaseLayout from '../../layouts/taShowcaseLayout.astro'
|
||||||
|
import Layout from '../../layouts/Layout.astro'
|
||||||
|
import DatabaseSection from '../../layouts/databaseSection.astro'
|
||||||
|
import QuestListing from '../../components/listings/questListingCard.astro'
|
||||||
|
import SmallTitle from '../../components/smallTitle.astro'
|
||||||
|
|
||||||
|
interface store {
|
||||||
|
slug: string
|
||||||
|
group: boolean
|
||||||
|
questinfo:
|
||||||
|
| undefined
|
||||||
|
| {
|
||||||
|
slug: string
|
||||||
|
info: {
|
||||||
|
title: string
|
||||||
|
releaseDate: Date
|
||||||
|
shortdescription: string
|
||||||
|
releaseNumber: number
|
||||||
|
}
|
||||||
|
}[]
|
||||||
|
pageinfo:
|
||||||
|
| undefined
|
||||||
|
| {
|
||||||
|
title: string
|
||||||
|
shortdescription: string
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function getStaticPaths() {
|
||||||
|
const fulldata = await getCollection('teslafest')
|
||||||
|
const slugdata: store[] = fulldata.map((data) => {
|
||||||
|
return {
|
||||||
|
slug: data.id,
|
||||||
|
group: false,
|
||||||
|
questinfo: undefined,
|
||||||
|
pageinfo: undefined,
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
const groupdata = await getCollection('teslafestgroups')
|
||||||
|
const groups: store[] = groupdata.map((data) => {
|
||||||
|
return {
|
||||||
|
slug: data.id,
|
||||||
|
group: true,
|
||||||
|
questinfo: undefined,
|
||||||
|
pageinfo: undefined,
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
const full = slugdata.concat(groups as any)
|
||||||
|
full.map((data) => {
|
||||||
|
if (data.group) {
|
||||||
|
const coll = fulldata.filter((d) => d.id.split("/", 1)[0] == data.slug)
|
||||||
|
data.questinfo = coll.map((d) => {
|
||||||
|
return { slug: d.id, info: d.data.info }
|
||||||
|
})
|
||||||
|
data.questinfo.sort(
|
||||||
|
(a, b) =>
|
||||||
|
b.info.releaseDate.valueOf() - a.info.releaseDate.valueOf() ||
|
||||||
|
b.info.releaseNumber - a.info.releaseNumber
|
||||||
|
)
|
||||||
|
const page = groupdata.find((d) => d.id === data.slug)
|
||||||
|
data.pageinfo = page?.data.info
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
return full.map((data) => ({
|
||||||
|
params: { slug: data.slug },
|
||||||
|
props: {
|
||||||
|
key: data.slug,
|
||||||
|
group: data.group,
|
||||||
|
questinfo: data.questinfo,
|
||||||
|
pageinfo: data.pageinfo,
|
||||||
|
},
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
|
||||||
|
const { key, group, questinfo, pageinfo } = Astro.props
|
||||||
|
|
||||||
|
let baseurl_return = "teslafest"
|
||||||
|
if (key.includes("/")) {
|
||||||
|
baseurl_return = baseurl_return + "/" + key.split("/", 1)[0]
|
||||||
|
}
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
{
|
||||||
|
!group && (
|
||||||
|
<TaShowcaseLayout
|
||||||
|
collection="teslafest"
|
||||||
|
collectionKey={key}
|
||||||
|
baseurl={baseurl_return}
|
||||||
|
/>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
{
|
||||||
|
group && (
|
||||||
|
<Layout
|
||||||
|
title={`${pageinfo!.title} - Teslafest - FGO TA`}
|
||||||
|
currentpage="teslafest"
|
||||||
|
descriptionOverride={pageinfo!.shortdescription}
|
||||||
|
>
|
||||||
|
<SmallTitle
|
||||||
|
maintext={pageinfo!.title}
|
||||||
|
subtext={pageinfo!.shortdescription}
|
||||||
|
fadeout={true}
|
||||||
|
baseurl="teslafest"
|
||||||
|
returnbutton={true}
|
||||||
|
/>
|
||||||
|
<DatabaseSection title="" titlehidden={true}>
|
||||||
|
{questinfo!.map((quest) => (
|
||||||
|
<QuestListing
|
||||||
|
{...{ ...quest.info, slug: quest.slug }}
|
||||||
|
baseurl="teslafest"
|
||||||
|
/>
|
||||||
|
))}
|
||||||
|
</DatabaseSection>
|
||||||
|
</Layout>
|
||||||
|
)
|
||||||
|
}
|
|
@ -1,13 +0,0 @@
|
||||||
---
|
|
||||||
import { getCollection } from 'astro:content';
|
|
||||||
import TaShowcaseLayout from '../../layouts/taShowcaseLayout.astro'
|
|
||||||
|
|
||||||
export async function getStaticPaths() {
|
|
||||||
const fulldata = (await getCollection('teslafest')).map((data) => data.id)
|
|
||||||
return fulldata.map((slug) => ({ params: { slug } }))
|
|
||||||
}
|
|
||||||
|
|
||||||
const { slug } = Astro.params
|
|
||||||
---
|
|
||||||
|
|
||||||
<TaShowcaseLayout collection="teslafest" collectionKey={slug} baseurl="teslafest" />
|
|
|
@ -1,23 +1,26 @@
|
||||||
---
|
---
|
||||||
import { getCollection } from 'astro:content';
|
import { getCollection } from 'astro:content'
|
||||||
import Layout from '../../layouts/Layout.astro'
|
import Layout from '../../layouts/Layout.astro'
|
||||||
import QuestListing from '../../components/listings/questListingCard.astro'
|
import QuestListing from '../../components/listings/questListingLine.astro'
|
||||||
import DatabaseSection from '../../layouts/databaseSection.astro'
|
import DatabaseSection from '../../layouts/databaseSection.astro'
|
||||||
import SmallTitle from '../../components/smallTitle.astro';
|
import SmallTitle from '../../components/smallTitle.astro'
|
||||||
|
|
||||||
const description = 'One of the most anticipated events of 2024 - Teslafest. Were the two weeks of time enough for all those quests, even with a parallel lottery?'
|
const description =
|
||||||
|
'One of the most anticipated events of 2024 - Teslafest. Were the two weeks of time enough for all those quests, even with a parallel lottery?'
|
||||||
const fulldata = await getCollection('teslafest')
|
const fulldata = await getCollection('teslafest')
|
||||||
|
const groups = await getCollection('teslafestgroups')
|
||||||
|
|
||||||
fulldata.sort(
|
let combined = fulldata
|
||||||
(a, b) => b.data.info.releaseDate.valueOf() - a.data.info.releaseDate.valueOf() || b.data.info.releaseNumber - a.data.info.releaseNumber
|
for (const group of groups) {
|
||||||
|
combined = combined.filter((data) => !data.id.startsWith(group.id))
|
||||||
|
}
|
||||||
|
combined = combined.concat(groups as any)
|
||||||
|
|
||||||
|
combined.sort(
|
||||||
|
(a, b) =>
|
||||||
|
b.data.info.releaseDate.valueOf() - a.data.info.releaseDate.valueOf() ||
|
||||||
|
b.data.info.releaseNumber - a.data.info.releaseNumber
|
||||||
)
|
)
|
||||||
|
|
||||||
const gc = fulldata.filter((value) => value.id.startsWith("gc-"))
|
|
||||||
const mc = fulldata.filter((value) => value.id.startsWith("mc-"))
|
|
||||||
const cq = fulldata.filter((value) => value.id.startsWith("cq-"))
|
|
||||||
const eq_2021 = fulldata.filter((value) => value.id.startsWith("eq-2021"))
|
|
||||||
const eq_2020 = fulldata.filter((value) => value.id.startsWith("eq-2020"))
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<Layout
|
<Layout
|
||||||
|
@ -25,21 +28,11 @@ const eq_2020 = fulldata.filter((value) => value.id.startsWith("eq-2020"))
|
||||||
currentpage="teslafest"
|
currentpage="teslafest"
|
||||||
descriptionOverride={description}
|
descriptionOverride={description}
|
||||||
>
|
>
|
||||||
<SmallTitle maintext='TESLA­FEST' subtext='' fadeout={true}/>
|
<SmallTitle maintext="TESLAFEST" subtext={description} fadeout={true} />
|
||||||
<DatabaseSection title="Challenge Quest">
|
<DatabaseSection title="NA Runs" titlehidden={true} displayLine={true}>
|
||||||
{cq.map((quest) => <QuestListing { ...{...quest.data.info, slug: quest.id} } baseurl="teslafest" />)}
|
{
|
||||||
</DatabaseSection>
|
combined.map((quest) => { return (<QuestListing {...{ ...quest.data.info, slug: quest.id }} baseurl="teslafest" />)})
|
||||||
<DatabaseSection title="Giga Coil">
|
}
|
||||||
{gc.map((quest) => <QuestListing { ...{...quest.data.info, slug: quest.id} } baseurl="teslafest" />)}
|
|
||||||
</DatabaseSection>
|
|
||||||
<DatabaseSection title="Mega Coil">
|
|
||||||
{mc.map((quest) => <QuestListing { ...{...quest.data.info, slug: quest.id} } baseurl="teslafest" />)}
|
|
||||||
</DatabaseSection>
|
|
||||||
<DatabaseSection title="Exhibition Quests: 2020 Revival">
|
|
||||||
{eq_2020.map((quest) => <QuestListing { ...{...quest.data.info, slug: quest.id} } baseurl="teslafest" />)}
|
|
||||||
</DatabaseSection>
|
|
||||||
<DatabaseSection title="Exhibition Quests: 2021 Revival">
|
|
||||||
{eq_2021.map((quest) => <QuestListing { ...{...quest.data.info, slug: quest.id} } baseurl="teslafest" />)}
|
|
||||||
</DatabaseSection>
|
</DatabaseSection>
|
||||||
</Layout>
|
</Layout>
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,32 @@
|
||||||
export default {
|
export default {
|
||||||
|
lighthouseOptions: {
|
||||||
|
throttlingMethod: "devtools",
|
||||||
|
throttling: {
|
||||||
|
cpuSlowdownMultiplier: 4,
|
||||||
|
requestLatencyMs: 150,
|
||||||
|
downloadThroughputKbps: 1638.4,
|
||||||
|
uploadThroughputKbps: 1638.4,
|
||||||
|
},
|
||||||
|
screenEmulation: {
|
||||||
|
width: 412,
|
||||||
|
height: 823,
|
||||||
|
deviceScaleFactor: 1.75,
|
||||||
|
}
|
||||||
|
},
|
||||||
puppeteerOptions: {
|
puppeteerOptions: {
|
||||||
args: ["--no-sandbox", "--disable-setuid-sandbox"],
|
args: [
|
||||||
|
"--no-sandbox",
|
||||||
|
"--disable-setuid-sandbox"
|
||||||
|
],
|
||||||
},
|
},
|
||||||
ci: {
|
ci: {
|
||||||
budget: 50,
|
budget: 50,
|
||||||
buildStatic: true
|
buildStatic: true,
|
||||||
|
},
|
||||||
|
scanner: {
|
||||||
|
sitemap: true,
|
||||||
|
dynamicSampling: false,
|
||||||
|
samples: 3,
|
||||||
},
|
},
|
||||||
outputPath: "unlighthouse-reports",
|
outputPath: "unlighthouse-reports",
|
||||||
}
|
}
|
||||||
|
|