Omit responsories' own closing Gloria Patri throughout Passiontide
A different, wider rule than the psalm/canticle Gloria (Triduum-only): responsories drop their Gloria for the whole of Passiontide (Passion Sunday through Holy Saturday), except on a Sancti feast's own day — live-verified (St. Joseph, Duplex I, 2027-03-19, landing in Passiontide that year, keeps it; an ordinary ferial day in the same window omits it, at both Compline and Prime). Every responsory's stored text differs, Gloria-bearing vs Gloria-free, by exactly one fixed-wording line, so resolve-common.ts's new resolveResponsory filters that line out rather than requiring separate per-season files or a data migration — mechanism first, per the project's own stated content-authoring order. Wired into the four hours that have a real responsory (Compline, Prime, Lauds, Vespers); Lauds/ Vespers' existing hand-authored Passiontide-proper responsories were already Gloria-free and are unaffected.
This commit is contained in:
@@ -7,7 +7,7 @@ import { getHymnDoxologyId } from './hymn-doxology';
|
||||
import { getOpeningVersicleId } from './opening-versicle';
|
||||
import { getMarianAntiphonId, getMarianAntiphonLabel } from './marian-antiphon';
|
||||
import { isDoubleOrHigher } from './antiphon';
|
||||
import { resolveCommon, appendDoxology, splitNamedAntiphon } from './resolve-common';
|
||||
import { resolveCommon, appendDoxology, splitNamedAntiphon, resolveResponsory } from './resolve-common';
|
||||
import complineDefinitionData from '../data/hours/compline.yml';
|
||||
|
||||
const complineDefinition = complineDefinitionData as HourDefinition;
|
||||
@@ -36,10 +36,11 @@ function resolvePart(part: HourPart, day: LiturgicalDay): ResolvedPart[] {
|
||||
return [{ kind: 'hymn', text: appendDoxology(body, doxology) }];
|
||||
}
|
||||
case 'chapter':
|
||||
case 'responsory':
|
||||
case 'versicle':
|
||||
case 'prayer':
|
||||
return [{ kind: part.kind, text: resolveCommon(part.textRef.id) }];
|
||||
case 'responsory':
|
||||
return [{ kind: 'responsory', text: resolveResponsory(resolveCommon(part.textRef.id), day) }];
|
||||
case 'preces':
|
||||
if (part.omitOnDouble && isDoubleOrHigher(day.winner)) {
|
||||
return [];
|
||||
|
||||
Reference in New Issue
Block a user