feat: enhance rosary with final prayer and mystery titles
All checks were successful
CI / update (push) Successful in 25s
All checks were successful
CI / update (push) Successful in 25s
- Add RosaryFinalPrayer component with Latin and German text - Display short mystery titles in decade headings (e.g., "5. Gesätz: Kreuzigung") - Add descriptive titles to initial three Ave Marias (Glaube, Hoffnung, Liebe) - Add closing cross symbol to signal final sign of the cross - Mystery titles update dynamically when switching between rosary types
This commit is contained in:
@@ -44,5 +44,10 @@
|
||||
"mongoose": "^8.0.0",
|
||||
"node-cron": "^4.2.1",
|
||||
"sharp": "^0.33.0"
|
||||
},
|
||||
"pnpm": {
|
||||
"onlyBuiltDependencies": [
|
||||
"esbuild"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
24
src/lib/components/prayers/RosaryFinalPrayer.svelte
Normal file
24
src/lib/components/prayers/RosaryFinalPrayer.svelte
Normal file
@@ -0,0 +1,24 @@
|
||||
<p>
|
||||
<v lang="la">Orémus:</v>
|
||||
<v lang="de">Lasset uns beten:</v>
|
||||
</p>
|
||||
<p>
|
||||
<v lang="la">Déus, cújus Unigénitus,</v>
|
||||
<v lang="de">O Gott, dessen eingeborner Sohn</v>
|
||||
<v lang="la">pér vítam, mórtem ét resurrectiónem súam</v>
|
||||
<v lang="de">durch sein Leben, seinen Tod und seine Auferstehung</v>
|
||||
<v lang="la">nóbis salútis ætérnæ præmia comparávit:</v>
|
||||
<v lang="de">uns die Belohnung des ewigen Lebens verdient hat,</v>
|
||||
<v lang="la">concéde, quæsumus;</v>
|
||||
<v lang="de">verleihe uns, wir bitten dich,</v>
|
||||
<v lang="la">út, hæc mystéria sanctíssimo beátæ Maríæ Vírginis Rosário recoléntes;</v>
|
||||
<v lang="de">daß wir, indem wir die Geheimisse des heiligen Rosenkranzes der allerseligsten Jungfrau ehren,</v>
|
||||
<v lang="la">ét imitémur quód cóntinent,</v>
|
||||
<v lang="de">was sie enthalten nachahmen</v>
|
||||
<v lang="la">ét quód promíttunt, assequámur.</v>
|
||||
<v lang="de">und dadurch erlangen, was uns in denselben verheißen ist.</v>
|
||||
<v lang="la">Pér eúmdem Chrístum Dóminum nóstrum.</v>
|
||||
<v lang="de">Durch unsern Herrn Jesus Christus.</v>
|
||||
<v lang="la">Ámen.</v>
|
||||
<v lang="de">Amen.</v>
|
||||
</p>
|
||||
@@ -9,6 +9,7 @@ import AveMaria from "$lib/components/prayers/AveMaria.svelte";
|
||||
import GloriaPatri from "$lib/components/prayers/GloriaPatri.svelte";
|
||||
import FatimaGebet from "$lib/components/prayers/FatimaGebet.svelte";
|
||||
import SalveRegina from "$lib/components/prayers/SalveRegina.svelte";
|
||||
import RosaryFinalPrayer from "$lib/components/prayers/RosaryFinalPrayer.svelte";
|
||||
import BenedictusMedal from "$lib/components/BenedictusMedal.svelte";
|
||||
import CounterButton from "$lib/components/CounterButton.svelte";
|
||||
|
||||
@@ -75,6 +76,38 @@ const mysteriesLatin = {
|
||||
]
|
||||
};
|
||||
|
||||
// Short titles for mysteries (for display in headings)
|
||||
const mysteryTitles = {
|
||||
freudenreich: [
|
||||
"Verkündigung",
|
||||
"Heimsuchung",
|
||||
"Geburt",
|
||||
"Darstellung",
|
||||
"Wiederfindung"
|
||||
],
|
||||
schmerzhaften: [
|
||||
"Todesangst",
|
||||
"Geißelung",
|
||||
"Dornenkrönung",
|
||||
"Kreuzweg",
|
||||
"Kreuzigung"
|
||||
],
|
||||
glorreichen: [
|
||||
"Auferstehung",
|
||||
"Himmelfahrt",
|
||||
"Geistsendung",
|
||||
"Aufnahme Mariens",
|
||||
"Krönung Mariens"
|
||||
],
|
||||
lichtreichen: [
|
||||
"Taufe",
|
||||
"Hochzeit zu Kana",
|
||||
"Verkündigung des Reiches",
|
||||
"Verklärung",
|
||||
"Einsetzung der Eucharistie"
|
||||
]
|
||||
};
|
||||
|
||||
// Toggle for including Luminous mysteries
|
||||
let includeLuminous = true;
|
||||
|
||||
@@ -113,12 +146,14 @@ function getMysteryForWeekday(date, includeLuminous) {
|
||||
let selectedMystery = getMysteryForWeekday(new Date(), includeLuminous);
|
||||
let currentMysteries = mysteries[selectedMystery];
|
||||
let currentMysteriesLatin = mysteriesLatin[selectedMystery];
|
||||
let currentMysteryTitles = mysteryTitles[selectedMystery];
|
||||
|
||||
// Function to switch mysteries
|
||||
function selectMystery(mysteryType) {
|
||||
selectedMystery = mysteryType;
|
||||
currentMysteries = mysteries[mysteryType];
|
||||
currentMysteriesLatin = mysteriesLatin[mysteryType];
|
||||
currentMysteryTitles = mysteryTitles[mysteryType];
|
||||
}
|
||||
|
||||
// Function to handle toggle change
|
||||
@@ -1153,7 +1188,7 @@ l536 389l-209 -629zM1671 934l-370 267l150 436l-378 -271l-371 271q8 -34 15 -68q10
|
||||
bind:this={sectionElements.start1}
|
||||
data-section="start1"
|
||||
>
|
||||
<h3>Ave Maria</h3>
|
||||
<h3>Ave Maria: Glaube</h3>
|
||||
<AveMaria
|
||||
mysteryLatin="Jesus, qui adáugeat nobis fidem"
|
||||
mystery="Jesus, der in uns den Glauben vermehre"
|
||||
@@ -1166,7 +1201,7 @@ l536 389l-209 -629zM1671 934l-370 267l150 436l-378 -271l-371 271q8 -34 15 -68q10
|
||||
bind:this={sectionElements.start2}
|
||||
data-section="start2"
|
||||
>
|
||||
<h3>Ave Maria</h3>
|
||||
<h3>Ave Maria: Hoffnung</h3>
|
||||
<AveMaria
|
||||
mysteryLatin="Jesus, qui corróboret nobis spem"
|
||||
mystery="Jesus, der in uns die Hoffnung stärke"
|
||||
@@ -1179,7 +1214,7 @@ l536 389l-209 -629zM1671 934l-370 267l150 436l-378 -271l-371 271q8 -34 15 -68q10
|
||||
bind:this={sectionElements.start3}
|
||||
data-section="start3"
|
||||
>
|
||||
<h3>Ave Maria</h3>
|
||||
<h3>Ave Maria: Liebe</h3>
|
||||
<AveMaria
|
||||
mysteryLatin="Jesus, qui perficiat in nobis caritátem"
|
||||
mystery="Jesus, der in uns die Liebe entzünde"
|
||||
@@ -1206,7 +1241,7 @@ l536 389l-209 -629zM1671 934l-370 267l150 436l-378 -271l-371 271q8 -34 15 -68q10
|
||||
bind:this={sectionElements[`secret${decadeNum}`]}
|
||||
data-section="secret{decadeNum}"
|
||||
>
|
||||
<h2>{decadeNum}. Gesätz</h2>
|
||||
<h2>{decadeNum}. Gesätz: {currentMysteryTitles[decadeNum - 1]}</h2>
|
||||
<h3>Ave Maria <span class="repeat-count">(10×)</span></h3>
|
||||
<AveMaria
|
||||
mysteryLatin={currentMysteriesLatin[decadeNum - 1]}
|
||||
@@ -1252,6 +1287,11 @@ l536 389l-209 -629zM1671 934l-370 267l150 436l-378 -271l-371 271q8 -34 15 -68q10
|
||||
|
||||
<h3>Salve Regina</h3>
|
||||
<SalveRegina />
|
||||
|
||||
<h3>Schlussgebet</h3>
|
||||
<RosaryFinalPrayer />
|
||||
|
||||
<h3 style="text-align: center; font-size: 2.5rem; margin-top: 2rem;">♱</h3>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user