tonus 0.1.8 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/BIBLIOGRAPHY.md +132 -108
  2. package/CHANGELOG.md +598 -1
  3. package/LICENSE +133 -29
  4. package/README.md +106 -83
  5. package/dist/data/am.js +2666 -11196
  6. package/dist/data/ams.d.ts +5 -0
  7. package/dist/data/ams.js +122 -0
  8. package/dist/data/attestation.d.ts +19 -0
  9. package/dist/data/attestation.js +15716 -0
  10. package/dist/data/attestation.json +15711 -0
  11. package/dist/data/cadentiae.d.ts +43 -0
  12. package/dist/data/cadentiae.js +174 -0
  13. package/dist/data/cal.js +48 -0
  14. package/dist/data/census.d.ts +12 -0
  15. package/dist/data/census.js +36 -0
  16. package/dist/data/commune-office.d.ts +4 -0
  17. package/dist/data/commune-office.js +2371 -0
  18. package/dist/data/commune-office.json +2365 -0
  19. package/dist/data/commune.js +181 -11
  20. package/dist/data/corpus-overlap.d.ts +17 -0
  21. package/dist/data/corpus-overlap.js +299 -5
  22. package/dist/data/cot.d.ts +5 -0
  23. package/dist/data/cot.js +172 -0
  24. package/dist/data/cse.d.ts +5 -0
  25. package/dist/data/cse.js +122 -0
  26. package/dist/data/gabc-glyphs.d.ts +45 -0
  27. package/dist/data/gabc-glyphs.js +122 -0
  28. package/dist/data/gr.js +754 -6394
  29. package/dist/data/kyriale.js +116 -116
  30. package/dist/data/la.js +799 -13419
  31. package/dist/data/lh.js +113 -3473
  32. package/dist/data/lu.js +931 -17631
  33. package/dist/data/nocturnale-romanum.js +1659 -10411
  34. package/dist/data/office-ferial.d.ts +4 -0
  35. package/dist/data/office-ferial.js +396 -0
  36. package/dist/data/office-ferial.json +391 -0
  37. package/dist/data/office-monastic.d.ts +17 -1
  38. package/dist/data/office-monastic.js +1403 -466
  39. package/dist/data/office-psalms-monastic.d.ts +13 -1
  40. package/dist/data/office-psalms-monastic.js +9 -0
  41. package/dist/data/propers.js +1 -1
  42. package/dist/data/psalms.js +22919 -5
  43. package/dist/data/psm.d.ts +5 -0
  44. package/dist/data/psm.js +122 -0
  45. package/dist/data/seasonal-respbreve.d.ts +5 -0
  46. package/dist/data/seasonal-respbreve.js +41 -0
  47. package/dist/data/seasonal-respbreve.json +35 -0
  48. package/dist/data/smufl-glyphs.d.ts +17 -0
  49. package/dist/data/smufl-glyphs.js +1546 -0
  50. package/dist/data/smufl-glyphs.json +1530 -0
  51. package/dist/engines/cal/calendar.d.ts +3 -2
  52. package/dist/engines/cal/calendar.js +105 -29
  53. package/dist/engines/cal/data/eras.d.ts +35 -0
  54. package/dist/engines/cal/data/eras.js +128 -0
  55. package/dist/engines/cal/date.js +44 -0
  56. package/dist/engines/cal/types.d.ts +15 -3
  57. package/dist/engines/cal/types.js +5 -5
  58. package/dist/engines/census/census.d.ts +7 -0
  59. package/dist/engines/census/census.js +179 -0
  60. package/dist/engines/census/types.d.ts +55 -0
  61. package/dist/engines/census/types.js +8 -0
  62. package/dist/engines/chant/attest.d.ts +39 -0
  63. package/dist/engines/chant/attest.js +90 -0
  64. package/dist/engines/chant/chant.d.ts +16 -4
  65. package/dist/engines/chant/chant.js +220 -30
  66. package/dist/engines/chant/data/compline.js +2 -1
  67. package/dist/engines/chant/data/masses.d.ts +56 -4
  68. package/dist/engines/chant/data/masses.js +305 -80
  69. package/dist/engines/chant/data/prime.js +1 -1
  70. package/dist/engines/chant/hour.js +279 -58
  71. package/dist/engines/chant/ordinary.d.ts +2 -0
  72. package/dist/engines/chant/ordinary.js +336 -56
  73. package/dist/engines/chant/propers.js +55 -5
  74. package/dist/engines/chant/psalm.d.ts +4 -4
  75. package/dist/engines/chant/psalm.js +25 -11
  76. package/dist/engines/chant/syllabify.d.ts +1 -0
  77. package/dist/engines/chant/syllabify.js +90 -17
  78. package/dist/engines/chant/types.d.ts +115 -12
  79. package/dist/engines/chant/types.js +38 -3
  80. package/dist/engines/harmonia/api.js +4 -0
  81. package/dist/engines/harmonia/data/doctrines.js +3 -1
  82. package/dist/engines/harmonia/tabula.d.ts +3 -0
  83. package/dist/engines/harmonia/tabula.js +1 -0
  84. package/dist/engines/harmonia/voice.d.ts +4 -0
  85. package/dist/engines/harmonia/voice.js +8 -4
  86. package/dist/engines/imprint.js +14 -1
  87. package/dist/engines/planet/orbital.js +4 -4
  88. package/dist/engines/planet/planet.d.ts +10 -0
  89. package/dist/engines/planet/planet.js +30 -3
  90. package/dist/engines/planet/position.js +13 -10
  91. package/dist/engines/planet/types.d.ts +1 -0
  92. package/dist/engines/score/api.d.ts +2 -13
  93. package/dist/engines/score/api.js +21 -8
  94. package/dist/engines/score/articulation.js +2 -2
  95. package/dist/engines/score/cadence.d.ts +76 -0
  96. package/dist/engines/score/cadence.js +96 -0
  97. package/dist/engines/score/emitters/accidentals.d.ts +21 -0
  98. package/dist/engines/score/emitters/accidentals.js +88 -0
  99. package/dist/engines/score/emitters/atramentum.d.ts +107 -0
  100. package/dist/engines/score/emitters/atramentum.js +239 -0
  101. package/dist/engines/score/emitters/breaking.d.ts +62 -0
  102. package/dist/engines/score/emitters/breaking.js +80 -0
  103. package/dist/engines/score/emitters/moderna.d.ts +38 -0
  104. package/dist/engines/score/emitters/moderna.js +612 -0
  105. package/dist/engines/score/emitters/svg.d.ts +143 -0
  106. package/dist/engines/score/emitters/svg.js +1328 -0
  107. package/dist/engines/score/emitters/tracks.d.ts +104 -0
  108. package/dist/engines/score/emitters/tracks.js +728 -0
  109. package/dist/engines/score/infer.d.ts +3 -3
  110. package/dist/engines/score/infer.js +2 -2
  111. package/dist/engines/score/inscriptio.d.ts +69 -0
  112. package/dist/engines/score/inscriptio.js +138 -0
  113. package/dist/engines/score/ir.d.ts +2 -2
  114. package/dist/engines/score/ir.js +59 -12
  115. package/dist/engines/score/lyric.d.ts +23 -0
  116. package/dist/engines/score/lyric.js +234 -0
  117. package/dist/engines/score/meta.d.ts +2 -2
  118. package/dist/engines/score/modulation.d.ts +12 -0
  119. package/dist/engines/score/modulation.js +49 -0
  120. package/dist/engines/score/neume.js +35 -4
  121. package/dist/engines/score/parse.js +150 -9
  122. package/dist/engines/score/phrasing.js +4 -3
  123. package/dist/engines/score/prosody.d.ts +38 -0
  124. package/dist/engines/score/prosody.js +70 -6
  125. package/dist/engines/score/tabula.d.ts +37 -5
  126. package/dist/engines/score/tabula.js +18 -0
  127. package/dist/engines/score/types.d.ts +88 -1
  128. package/dist/engines/temper/api.d.ts +4 -1
  129. package/dist/engines/temper/api.js +28 -5
  130. package/dist/engines/temper/data/guido.js +6 -2
  131. package/dist/engines/temper/data/modes.d.ts +6 -0
  132. package/dist/engines/temper/data/modes.js +42 -0
  133. package/dist/engines/temper/data/tones.d.ts +1 -1
  134. package/dist/engines/temper/data/tones.js +20 -11
  135. package/dist/engines/temper/interval.js +4 -3
  136. package/dist/engines/temper/modality.d.ts +11 -2
  137. package/dist/engines/temper/modality.js +74 -2
  138. package/dist/engines/temper/modes.d.ts +1 -1
  139. package/dist/engines/temper/pitch.d.ts +1 -1
  140. package/dist/engines/temper/pitch.js +12 -2
  141. package/dist/engines/temper/scale.d.ts +53 -0
  142. package/dist/engines/temper/scale.js +107 -8
  143. package/dist/index.d.ts +26 -8
  144. package/dist/index.js +37 -4
  145. package/docs/api/calendar.md +279 -0
  146. package/docs/api/census.md +288 -0
  147. package/docs/api/chant.md +657 -0
  148. package/docs/api/heavens.md +346 -0
  149. package/docs/api/index.md +263 -0
  150. package/docs/api/score.md +873 -0
  151. package/docs/api/tuning.md +619 -0
  152. package/package.json +11 -5
  153. package/dist/data/office-matins-roman.d.ts +0 -19
  154. package/dist/data/office-matins-roman.js +0 -4383
  155. package/dist/data/office-psalms-roman.d.ts +0 -15
  156. package/dist/data/office-psalms-roman.js +0 -28
  157. package/dist/data/office-roman.d.ts +0 -19
  158. package/dist/data/office-roman.js +0 -13792
  159. package/dist/engines/chant/matutinum.d.ts +0 -33
  160. package/dist/engines/chant/matutinum.js +0 -81
  161. package/dist/engines/score/emitters/midi.d.ts +0 -65
  162. package/dist/engines/score/emitters/midi.js +0 -162
  163. package/dist/engines/score/emitters/musicxml.d.ts +0 -18
  164. package/dist/engines/score/emitters/musicxml.js +0 -166
@@ -1,15 +0,0 @@
1
- export interface OfficePsalmPortion {
2
- psalm: number;
3
- from?: number;
4
- to?: number;
5
- }
6
- export interface OfficePsalmEntry {
7
- hour: "Prima" | "Tertia" | "Sexta" | "Nona" | "Completorium";
8
- /** 0–6 (0 = Sunday); null for the feast set or hours with no weekday split. */
9
- weekday: number | null;
10
- /** True for the feast (Festis) psalmody. */
11
- festis: boolean;
12
- psalms: OfficePsalmPortion[];
13
- }
14
- export declare const OFFICE_PSALMS: OfficePsalmEntry[];
15
- //# sourceMappingURL=office-psalms-roman.d.ts.map
@@ -1,28 +0,0 @@
1
- // office-psalms-roman.ts — Roman little-hours psalmody (Prime, Terce, Sext, None, Compline)
2
- // Extracted from Divinum Officium (Psalterium, [Tridentinum] section) by
3
- // scripts/extract-office-psalms.mjs
4
- // Generated: 2026-07-08T04:45:29.223Z
5
- // Entries: 15
6
- //
7
- // The traditional (pre-1911) Roman little-hours psalm distribution. Each entry
8
- // gives the psalm portions for one hour on one weekday (0 = Sunday), or the
9
- // feast set (festis: true, weekday: null). A portion is a whole psalm or an
10
- // inclusive verse range.
11
- export const OFFICE_PSALMS = [
12
- { hour: "Prima", weekday: 0, festis: false, psalms: [{ psalm: 53 }, { psalm: 117 }, { psalm: 118, from: 1, to: 16 }, { psalm: 118, from: 17, to: 32 }] },
13
- { hour: "Prima", weekday: 1, festis: false, psalms: [{ psalm: 53 }, { psalm: 23 }, { psalm: 118, from: 1, to: 16 }, { psalm: 118, from: 17, to: 32 }] },
14
- { hour: "Prima", weekday: 2, festis: false, psalms: [{ psalm: 53 }, { psalm: 24 }, { psalm: 118, from: 1, to: 16 }, { psalm: 118, from: 17, to: 32 }] },
15
- { hour: "Prima", weekday: 3, festis: false, psalms: [{ psalm: 53 }, { psalm: 25 }, { psalm: 118, from: 1, to: 16 }, { psalm: 118, from: 17, to: 32 }] },
16
- { hour: "Prima", weekday: 4, festis: false, psalms: [{ psalm: 53 }, { psalm: 22 }, { psalm: 118, from: 1, to: 16 }, { psalm: 118, from: 17, to: 32 }] },
17
- { hour: "Prima", weekday: 5, festis: false, psalms: [{ psalm: 53 }, { psalm: 21 }, { psalm: 118, from: 1, to: 16 }, { psalm: 118, from: 17, to: 32 }] },
18
- { hour: "Prima", weekday: 6, festis: false, psalms: [{ psalm: 53 }, { psalm: 118, from: 1, to: 16 }, { psalm: 118, from: 17, to: 32 }] },
19
- { hour: "Prima", weekday: null, festis: true, psalms: [{ psalm: 53 }, { psalm: 118, from: 1, to: 16 }, { psalm: 118, from: 17, to: 32 }] },
20
- { hour: "Tertia", weekday: 0, festis: false, psalms: [{ psalm: 118, from: 33, to: 48 }, { psalm: 118, from: 49, to: 64 }, { psalm: 118, from: 65, to: 80 }] },
21
- { hour: "Tertia", weekday: null, festis: false, psalms: [{ psalm: 118, from: 33, to: 48 }, { psalm: 118, from: 49, to: 64 }, { psalm: 118, from: 65, to: 80 }] },
22
- { hour: "Sexta", weekday: 0, festis: false, psalms: [{ psalm: 118, from: 81, to: 96 }, { psalm: 118, from: 97, to: 112 }, { psalm: 118, from: 113, to: 128 }] },
23
- { hour: "Sexta", weekday: null, festis: false, psalms: [{ psalm: 118, from: 81, to: 96 }, { psalm: 118, from: 97, to: 112 }, { psalm: 118, from: 113, to: 128 }] },
24
- { hour: "Nona", weekday: 0, festis: false, psalms: [{ psalm: 118, from: 129, to: 144 }, { psalm: 118, from: 145, to: 160 }, { psalm: 118, from: 161, to: 176 }] },
25
- { hour: "Nona", weekday: null, festis: false, psalms: [{ psalm: 118, from: 129, to: 144 }, { psalm: 118, from: 145, to: 160 }, { psalm: 118, from: 161, to: 176 }] },
26
- { hour: "Completorium", weekday: null, festis: false, psalms: [{ psalm: 4 }, { psalm: 30, from: 2, to: 6 }, { psalm: 90 }, { psalm: 133 }] }
27
- ];
28
- //# sourceMappingURL=office-psalms-roman.js.map
@@ -1,19 +0,0 @@
1
- export interface OfficeDay {
2
- feastId: string;
3
- doFile: string;
4
- invit: string | null;
5
- antMatutinum: string[];
6
- hymnMatutinum: string | null;
7
- respMatutinum: string[];
8
- antLaudes: string[];
9
- antBenedictus: string | null;
10
- hymnLaudes: string | null;
11
- respBreveTertia: string | null;
12
- respBreveSexta: string | null;
13
- respBreveNona: string | null;
14
- antVespera: string[];
15
- antMagnificat: string | null;
16
- hymnVespera: string | null;
17
- }
18
- export declare const OFFICE_ROMAN: OfficeDay[];
19
- //# sourceMappingURL=office-roman.d.ts.map