prayers: add 5 new prayers, move Angelus route, liturgical seasons

Add Guardian Angel, Apostles' Creed, Tantum Ergo, Angelus, and Regina
Caeli to the prayers collection. Move standalone Angelus route into the
prayers system with a 301 redirect from the old path. Extract Easter
computation into shared utility ($lib/js/easter.svelte.ts) and use it
for liturgical season awareness: during Eastertide the rosary defaults
to Glorious mysteries and swaps Salve Regina for Regina Caeli; during
Lent it defaults to Sorrowful mysteries. Seasonal badges shown on both
the mystery selector and prayer sections.
This commit is contained in:
2026-02-13 14:52:40 +01:00
parent aa64cd8306
commit 601e2f6513
19 changed files with 711 additions and 295 deletions

View File

@@ -0,0 +1,48 @@
<script>
import Prayer from './Prayer.svelte';
</script>
<Prayer>
{#snippet children(showLatin, urlLang)}
<p>
{#if showLatin}<v lang="la">Tantum ergo Sacraméntum</v>{/if}
{#if urlLang === 'de'}<v lang="de">Darum lasst uns tief verehren</v>{/if}
{#if urlLang === 'en'}<v lang="en">Therefore so great a Sacrament</v>{/if}
{#if showLatin}<v lang="la">venerémur cérnui:</v>{/if}
{#if urlLang === 'de'}<v lang="de">ein so grosses Sakrament;</v>{/if}
{#if urlLang === 'en'}<v lang="en">let us venerate with bowed heads;</v>{/if}
{#if showLatin}<v lang="la">et antíquum documéntum</v>{/if}
{#if urlLang === 'de'}<v lang="de">dieser Bund soll ewig währen</v>{/if}
{#if urlLang === 'en'}<v lang="en">and the old rite</v>{/if}
{#if showLatin}<v lang="la">novo cedat rítui:</v>{/if}
{#if urlLang === 'de'}<v lang="de">und den neuen Bund ersetzt.</v>{/if}
{#if urlLang === 'en'}<v lang="en">give way to the new:</v>{/if}
{#if showLatin}<v lang="la">præstet fides suppleméntum</v>{/if}
{#if urlLang === 'de'}<v lang="de">Unser Glaube soll uns lehren,</v>{/if}
{#if urlLang === 'en'}<v lang="en">let faith provide a supplement</v>{/if}
{#if showLatin}<v lang="la">sénsuum deféctui.</v>{/if}
{#if urlLang === 'de'}<v lang="de">was das Auge nicht erkennt.</v>{/if}
{#if urlLang === 'en'}<v lang="en">for the failure of the senses.</v>{/if}
</p>
<p>
{#if showLatin}<v lang="la">Genitóri, Genitóque</v>{/if}
{#if urlLang === 'de'}<v lang="de">Gott dem Vater und dem Sohne</v>{/if}
{#if urlLang === 'en'}<v lang="en">To the Begetter and the Begotten</v>{/if}
{#if showLatin}<v lang="la">laus et iubilátio,</v>{/if}
{#if urlLang === 'de'}<v lang="de">sei Lob und Preis und Ehre,</v>{/if}
{#if urlLang === 'en'}<v lang="en">be praise and jubilation,</v>{/if}
{#if showLatin}<v lang="la">salus, honor, virtus quoque</v>{/if}
{#if urlLang === 'de'}<v lang="de">Heil und Ruhm und Macht und Wonne</v>{/if}
{#if urlLang === 'en'}<v lang="en">salvation, honour, virtue also</v>{/if}
{#if showLatin}<v lang="la">sit et benedíctio:</v>{/if}
{#if urlLang === 'de'}<v lang="de">und Segen immerdar,</v>{/if}
{#if urlLang === 'en'}<v lang="en">and blessing too:</v>{/if}
{#if showLatin}<v lang="la">procedénti ab utróque</v>{/if}
{#if urlLang === 'de'}<v lang="de">und dem der von beiden ausgeht,</v>{/if}
{#if urlLang === 'en'}<v lang="en">to Him proceeding from both</v>{/if}
{#if showLatin}<v lang="la">compar sit laudátio. Amen.</v>{/if}
{#if urlLang === 'de'}<v lang="de">sei gleiche Ehre. Amen.</v>{/if}
{#if urlLang === 'en'}<v lang="en">let there be equal praise. Amen.</v>{/if}
</p>
{/snippet}
</Prayer>