@venite/components 0.16.8 → 0.16.14

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 (105) hide show
  1. package/dist/cjs/{index-5e2cc9e9.js → book-1a92678a.js} +1 -92
  2. package/dist/cjs/{heading-d3809e59.js → heading-5afc2b24.js} +2 -2
  3. package/dist/cjs/{image-f0ace076.js → image-3bee3e73.js} +2 -2
  4. package/dist/cjs/ion-button_13.cjs.entry.js +1 -2
  5. package/dist/cjs/ion-card-content_6.cjs.entry.js +2 -3
  6. package/dist/cjs/ion-checkbox_3.cjs.entry.js +1 -2
  7. package/dist/cjs/ion-input_2.cjs.entry.js +1 -1
  8. package/dist/cjs/ion-segment_16.cjs.entry.js +38 -32
  9. package/dist/cjs/ldf-day-name_5.cjs.entry.js +69 -66
  10. package/dist/cjs/ldf-editable-add-block-menu.cjs.entry.js +9 -10
  11. package/dist/cjs/ldf-editable-condition-piece.cjs.entry.js +5 -6
  12. package/dist/cjs/ldf-editable-condition.cjs.entry.js +3 -4
  13. package/dist/cjs/ldf-editable-filter-documents.cjs.entry.js +10 -11
  14. package/dist/cjs/ldf-editable-lookup_2.cjs.entry.js +8 -9
  15. package/dist/cjs/ldf-editable-metadata.cjs.entry.js +9 -10
  16. package/dist/cjs/ldf-editable-preference-option.cjs.entry.js +1 -2
  17. package/dist/cjs/ldf-editable-preference.cjs.entry.js +1 -2
  18. package/dist/cjs/ldf-editable-preferences.cjs.entry.js +1 -2
  19. package/dist/cjs/ldf-editable-string-list.cjs.entry.js +1 -2
  20. package/dist/cjs/ldf-editor.cjs.entry.js +12 -12
  21. package/dist/cjs/{option-1ebd4514.js → option-24f3d13a.js} +7 -2
  22. package/dist/cjs/{refrain-a605892e.js → refrain-91fb446b.js} +2 -2
  23. package/dist/cjs/{rubric-662d8baa.js → rubric-5b467a6a.js} +8 -8
  24. package/dist/cjs/{specific-class-d80d272a.js → specific-class-a1112e78.js} +5 -5
  25. package/dist/cjs/{text-c5e8ca0a.js → text-5edb80f3.js} +2 -2
  26. package/dist/collection/components/bible-reading/bible-reading.js +15 -9
  27. package/dist/collection/components/bible-reading/dist/bible-reading.js +355 -0
  28. package/dist/collection/components/psalm/dist/psalm.js +3 -3
  29. package/dist/collection/components/psalm/psalm.css +8 -1
  30. package/dist/collection/components/psalm/psalm.js +3 -3
  31. package/dist/collection/components/text/dist/text.js +2 -1
  32. package/dist/collection/components/text/text.js +5 -2
  33. package/dist/esm/{index-f5b9b789.js → book-31b8cdde.js} +1 -92
  34. package/dist/esm/{heading-c9eb7d89.js → heading-cc5ffa8a.js} +1 -1
  35. package/dist/esm/{image-f0e35b01.js → image-c6a3f0c5.js} +1 -1
  36. package/dist/esm/ion-button_13.entry.js +1 -2
  37. package/dist/esm/ion-card-content_6.entry.js +2 -3
  38. package/dist/esm/ion-checkbox_3.entry.js +1 -2
  39. package/dist/esm/ion-input_2.entry.js +1 -1
  40. package/dist/esm/ion-segment_16.entry.js +25 -19
  41. package/dist/esm/ldf-day-name_5.entry.js +8 -5
  42. package/dist/esm/ldf-editable-add-block-menu.entry.js +7 -8
  43. package/dist/esm/ldf-editable-condition-piece.entry.js +1 -2
  44. package/dist/esm/ldf-editable-condition.entry.js +1 -2
  45. package/dist/esm/ldf-editable-filter-documents.entry.js +2 -3
  46. package/dist/esm/ldf-editable-lookup_2.entry.js +7 -8
  47. package/dist/esm/ldf-editable-metadata.entry.js +7 -8
  48. package/dist/esm/ldf-editable-preference-option.entry.js +1 -2
  49. package/dist/esm/ldf-editable-preference.entry.js +1 -2
  50. package/dist/esm/ldf-editable-preferences.entry.js +1 -2
  51. package/dist/esm/ldf-editable-string-list.entry.js +1 -2
  52. package/dist/esm/ldf-editor.entry.js +1 -1
  53. package/dist/esm/{option-47d50244.js → option-da8390ad.js} +6 -1
  54. package/dist/esm/{refrain-810c4de5.js → refrain-75a412cb.js} +1 -1
  55. package/dist/esm/{rubric-2330a030.js → rubric-91bf7fed.js} +1 -1
  56. package/dist/esm/{specific-class-28e26e40.js → specific-class-ef83cfb6.js} +5 -5
  57. package/dist/esm/{text-ce1ed17d.js → text-ed75fbd4.js} +1 -1
  58. package/dist/ldf/ldf.esm.js +1 -1
  59. package/dist/ldf/p-03afc8cb.entry.js +1 -0
  60. package/dist/ldf/p-1902f41e.entry.js +1 -0
  61. package/dist/ldf/p-1e8c8a66.entry.js +1 -0
  62. package/dist/ldf/p-1ff665a7.entry.js +1 -0
  63. package/dist/ldf/{p-db435131.entry.js → p-23af1bc3.entry.js} +1 -1
  64. package/dist/ldf/p-2ae548b3.entry.js +1 -0
  65. package/dist/ldf/p-3f8ef67b.entry.js +1 -0
  66. package/dist/ldf/p-476327d6.js +1 -0
  67. package/dist/ldf/p-4aa9a6f2.js +1 -0
  68. package/dist/ldf/p-594fa9d4.entry.js +1 -0
  69. package/dist/ldf/{p-937ffc85.js → p-5b43e6be.js} +1 -1
  70. package/dist/ldf/p-5ea6de28.entry.js +1 -0
  71. package/dist/ldf/p-65563763.entry.js +1 -0
  72. package/dist/ldf/p-65d26c45.js +1 -0
  73. package/dist/ldf/p-65ea7ab3.entry.js +1 -0
  74. package/dist/ldf/p-800a115c.entry.js +1 -0
  75. package/dist/ldf/{p-9e82b403.js → p-8f67abb8.js} +1 -1
  76. package/dist/ldf/p-9155f066.js +1 -0
  77. package/dist/ldf/p-9c1973a6.entry.js +1 -0
  78. package/dist/ldf/p-a1729dbd.js +1 -0
  79. package/dist/ldf/p-bdcf2b02.entry.js +1 -0
  80. package/dist/ldf/p-c60a875b.js +1 -0
  81. package/dist/ldf/p-e4f0cd91.entry.js +1 -0
  82. package/dist/ldf/p-f0de7628.entry.js +1 -0
  83. package/dist/ldf/{p-c1bcd0a9.entry.js → p-fa191f47.entry.js} +1 -1
  84. package/package.json +2 -2
  85. package/dist/ldf/p-0651768a.entry.js +0 -1
  86. package/dist/ldf/p-0f69db87.entry.js +0 -1
  87. package/dist/ldf/p-1504379f.entry.js +0 -1
  88. package/dist/ldf/p-2fa1c501.entry.js +0 -1
  89. package/dist/ldf/p-37f356a4.entry.js +0 -1
  90. package/dist/ldf/p-4d392128.entry.js +0 -1
  91. package/dist/ldf/p-53c807a4.js +0 -1
  92. package/dist/ldf/p-5bf20b51.js +0 -1
  93. package/dist/ldf/p-698a3399.entry.js +0 -1
  94. package/dist/ldf/p-73a16936.entry.js +0 -1
  95. package/dist/ldf/p-7df11f48.entry.js +0 -1
  96. package/dist/ldf/p-8ee9ccd3.js +0 -1
  97. package/dist/ldf/p-91b61b55.entry.js +0 -1
  98. package/dist/ldf/p-972e4f2a.entry.js +0 -1
  99. package/dist/ldf/p-9cf557f9.js +0 -1
  100. package/dist/ldf/p-a98c89d1.entry.js +0 -1
  101. package/dist/ldf/p-b355bfa2.js +0 -1
  102. package/dist/ldf/p-ca7e0de9.entry.js +0 -1
  103. package/dist/ldf/p-d49a739d.js +0 -1
  104. package/dist/ldf/p-d7fa99cc.entry.js +0 -1
  105. package/dist/ldf/p-ff51dbd0.entry.js +0 -1
@@ -1,7 +1,5 @@
1
1
  'use strict';
2
2
 
3
- const _commonjsHelpers = require('./_commonjsHelpers-bcc1208a.js');
4
-
5
3
  // strip away everything but year, month, day
6
4
  function dateOnly(d) {
7
5
  d.setHours(0);
@@ -147,7 +145,7 @@ const TYPES = [
147
145
  'parallel',
148
146
  ];
149
147
  const LOOKUP_TYPES = ['lectionary', 'canticle', 'category', 'slug', 'collect'];
150
- const DISPLAY_FORMATS = ['default', 'omit', 'unison', 'abbreviated'];
148
+ const DISPLAY_FORMATS = ['default', 'omit', 'unison', 'abbreviated', 'force_dropcap'];
151
149
  /** Represents a liturgy of any scope and concreteness, from a complete bullletin to a single prayer. */
152
150
  class LiturgicalDocument {
153
151
  //** Constructor takes a Javascript object containing the class's properties */
@@ -283,95 +281,6 @@ var Book;
283
281
  Book["Bel"] = "Bel";
284
282
  })(Book || (Book = {}));
285
283
 
286
- _commonjsHelpers.createCommonjsModule(function (module, exports) {
287
- // Reference: https://www.geeksforgeeks.org/jaro-and-jaro-winkler-similarity/
288
- Object.defineProperty(exports, "__esModule", { value: true });
289
- exports.jaroWinkler = exports.jaro = void 0;
290
- /**
291
- *
292
- * @param str1 String 1 for compare
293
- * @param str2 String 2 for compare
294
- * @param options to control case sensitive or not
295
- */
296
- function jaro(str1, str2, options) {
297
- // Exit early if either are empty.
298
- if (str1.length === 0 || str2.length === 0) {
299
- return 0;
300
- }
301
- // Convert to upper if case-sensitive is false.
302
- if (options && !options.caseSensitive) {
303
- str1 = str1.toUpperCase();
304
- str2 = str2.toUpperCase();
305
- }
306
- // Exact match
307
- if (str1 === str2) {
308
- return 1;
309
- }
310
- // Number of matches
311
- var m = 0;
312
- // Length of two Strings
313
- var len1 = str1.length;
314
- var len2 = str2.length;
315
- // Maximum distance
316
- var window = Math.floor(Math.max(len1, len2) / 2) - 1;
317
- // Hash for matches
318
- var str1Hash = new Array(len1);
319
- var str2Hash = new Array(len2);
320
- for (var i = 0; i < len1; i++) {
321
- for (var j = Math.max(0, i - window); j <= Math.min(len2, i + window + 1); j++) {
322
- if (!str1Hash[i] && !str2Hash[j] && str1[i] === str2[j]) {
323
- ++m;
324
- str1Hash[i] = str2Hash[j] = true;
325
- break;
326
- }
327
- }
328
- }
329
- // Exit early if no matches were found.
330
- if (m === 0) {
331
- return 0;
332
- }
333
- // Count the transpositions.
334
- var t = 0;
335
- var point = 0;
336
- for (var i = 0; i < len1; i++) {
337
- if (str1Hash[i]) {
338
- while (!str2Hash[point]) {
339
- point++;
340
- }
341
- if (str1.charAt(i) !== str2.charAt(point++)) {
342
- t++;
343
- }
344
- }
345
- }
346
- t /= 2;
347
- return (m / len1 + m / len2 + (m - t) / m) / 3;
348
- }
349
- exports.jaro = jaro;
350
- /**
351
- *
352
- * @param str1 String 1 for compare
353
- * @param str2 String 2 for compare
354
- * @param options to control case sensitive or not
355
- */
356
- function jaroWinkler(str1, str2, options) {
357
- // Jaro Distance
358
- var jaroDist = jaro(str1, str2, options);
359
- // Same prefix length, maxium is 4
360
- var prefix = 0;
361
- if (jaroDist > 0.7) {
362
- var minIndex = Math.min(str1.length, str2.length);
363
- var i = 0;
364
- while (str1[i] === str2[i] && i < 4 && i < minIndex) {
365
- ++prefix;
366
- i++;
367
- }
368
- jaroDist += 0.1 * prefix * (1 - jaroDist);
369
- }
370
- return jaroDist;
371
- }
372
- exports.jaroWinkler = jaroWinkler;
373
- });
374
-
375
284
  exports.Condition = Condition;
376
285
  exports.LiturgicalDocument = LiturgicalDocument;
377
286
  exports.dateFromYMDString = dateFromYMDString;
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- const index = require('./index-5e2cc9e9.js');
3
+ const book = require('./book-1a92678a.js');
4
4
 
5
5
  const STYLES = ['text', 'day', 'date'];
6
- class Heading extends index.LiturgicalDocument {
6
+ class Heading extends book.LiturgicalDocument {
7
7
  //** Constructor takes a Javascript object containing the class's properties */
8
8
  constructor(data = {}) {
9
9
  super(data);
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- const index = require('./index-5e2cc9e9.js');
3
+ const book = require('./book-1a92678a.js');
4
4
 
5
5
  const STYLES = ['normal', 'slideshow', 'carousel'];
6
6
  /** Refrain represents a short text like the Gloria Patri, Hail Mary, or an Antiphon */
7
- class Image extends index.LiturgicalDocument {
7
+ class Image extends book.LiturgicalDocument {
8
8
  //** Constructor takes a Javascript object containing the class's properties */
9
9
  constructor(data = {}) {
10
10
  super(data);
@@ -7,11 +7,10 @@ const ionicGlobal = require('./ionic-global-581fb4f8.js');
7
7
  const helpers = require('./helpers-41dfb43a.js');
8
8
  const theme = require('./theme-81caa5b0.js');
9
9
  const overlays = require('./overlays-eb464d6d.js');
10
- require('./index-5e2cc9e9.js');
10
+ require('./book-1a92678a.js');
11
11
  const change = require('./change-cdb1e8c0.js');
12
12
  const locale = require('./locale-d4e925b1.js');
13
13
  require('./hardware-back-button-8c2f48d2.js');
14
- require('./_commonjsHelpers-bcc1208a.js');
15
14
 
16
15
  const buttonIosCss = ":host{--overflow:hidden;--ripple-color:currentColor;--border-width:initial;--border-color:initial;--border-style:initial;--color-activated:var(--color);--color-focused:var(--color);--color-hover:var(--color);--box-shadow:none;display:inline-block;width:auto;color:var(--color);font-family:var(--ion-font-family, inherit);text-align:center;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;user-select:none;vertical-align:top;vertical-align:-webkit-baseline-middle;pointer-events:auto;font-kerning:none}:host(.button-disabled){cursor:default;opacity:0.5;pointer-events:none}:host(.button-solid){--background:var(--ion-color-primary, #3880ff);--color:var(--ion-color-primary-contrast, #fff)}:host(.button-outline){--border-color:var(--ion-color-primary, #3880ff);--background:transparent;--color:var(--ion-color-primary, #3880ff)}:host(.button-clear){--border-width:0;--background:transparent;--color:var(--ion-color-primary, #3880ff)}:host(.button-block){display:block}:host(.button-block) .button-native{margin-left:0;margin-right:0;display:block;width:100%;clear:both;contain:content}:host(.button-block) .button-native::after{clear:both}:host(.button-full){display:block}:host(.button-full) .button-native{margin-left:0;margin-right:0;display:block;width:100%;contain:content}:host(.button-full:not(.button-round)) .button-native{border-radius:0;border-right-width:0;border-left-width:0}.button-native{border-radius:var(--border-radius);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;display:block;position:relative;width:100%;height:100%;transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);outline:none;background:var(--background);line-height:1;box-shadow:var(--box-shadow);contain:layout style;cursor:pointer;opacity:var(--opacity);overflow:var(--overflow);z-index:0;box-sizing:border-box;appearance:none}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.button-native{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}.button-native::-moz-focus-inner{border:0}.button-inner{display:flex;position:relative;flex-flow:row nowrap;flex-shrink:0;align-items:center;justify-content:center;width:100%;height:100%;z-index:1}::slotted(ion-icon){font-size:1.4em;pointer-events:none}::slotted(ion-icon[slot=start]){margin-left:-0.3em;margin-right:0.3em;margin-top:0;margin-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted(ion-icon[slot=start]){margin-left:unset;margin-right:unset;-webkit-margin-start:-0.3em;margin-inline-start:-0.3em;-webkit-margin-end:0.3em;margin-inline-end:0.3em}}::slotted(ion-icon[slot=end]){margin-left:0.3em;margin-right:-0.2em;margin-top:0;margin-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted(ion-icon[slot=end]){margin-left:unset;margin-right:unset;-webkit-margin-start:0.3em;margin-inline-start:0.3em;-webkit-margin-end:-0.2em;margin-inline-end:-0.2em}}::slotted(ion-icon[slot=icon-only]){font-size:1.8em}ion-ripple-effect{color:var(--ripple-color)}.button-native::after{left:0;right:0;top:0;bottom:0;position:absolute;content:\"\";opacity:0}:host(.ion-activated){color:var(--color-activated)}:host(.ion-activated) .button-native::after{background:var(--background-activated);opacity:var(--background-activated-opacity)}:host(.ion-focused){color:var(--color-focused)}:host(.ion-focused) .button-native::after{background:var(--background-focused);opacity:var(--background-focused-opacity)}@media (any-hover: hover){:host(:hover){color:var(--color-hover)}:host(:hover) .button-native::after{background:var(--background-hover);opacity:var(--background-hover-opacity)}}:host(.button-solid.ion-color) .button-native{background:var(--ion-color-base);color:var(--ion-color-contrast)}:host(.button-outline.ion-color) .button-native{border-color:var(--ion-color-base);background:transparent;color:var(--ion-color-base)}:host(.button-clear.ion-color) .button-native{background:transparent;color:var(--ion-color-base)}:host(.in-toolbar:not(.ion-color):not(.in-toolbar-color)) .button-native{color:var(--ion-toolbar-color, var(--color))}:host(.button-outline.in-toolbar:not(.ion-color):not(.in-toolbar-color)) .button-native{border-color:var(--ion-toolbar-color, var(--color, var(--border-color)))}:host(.button-solid.in-toolbar:not(.ion-color):not(.in-toolbar-color)) .button-native{background:var(--ion-toolbar-color, var(--background));color:var(--ion-toolbar-background, var(--color))}:host{--border-radius:10px;--padding-top:0;--padding-bottom:0;--padding-start:1em;--padding-end:1em;--transition:background-color, opacity 100ms linear;margin-left:2px;margin-right:2px;margin-top:4px;margin-bottom:4px;height:2.8em;font-size:16px;font-weight:500;letter-spacing:-0.03em}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{margin-left:unset;margin-right:unset;-webkit-margin-start:2px;margin-inline-start:2px;-webkit-margin-end:2px;margin-inline-end:2px}}:host(.button-solid){--background-activated:var(--ion-color-primary-shade, #3171e0);--background-focused:var(--ion-color-primary-shade, #3171e0);--background-hover:var(--ion-color-primary-tint, #4c8dff);--background-activated-opacity:1;--background-focused-opacity:1;--background-hover-opacity:1}:host(.button-outline){--border-radius:10px;--border-width:1px;--border-style:solid;--background-activated:var(--ion-color-primary, #3880ff);--background-focused:var(--ion-color-primary, #3880ff);--background-hover:transparent;--background-focused-opacity:.1;--color-activated:var(--ion-color-primary-contrast, #fff)}:host(.button-clear){--background-activated:transparent;--background-focused:var(--ion-color-primary, #3880ff);--background-hover:transparent;--background-focused-opacity:.1;font-size:17px;font-weight:normal;letter-spacing:0}:host(.button-large){--border-radius:12px;--padding-top:0;--padding-start:1em;--padding-end:1em;--padding-bottom:0;height:2.8em;font-size:20px}:host(.button-small){--border-radius:6px;--padding-top:0;--padding-start:0.9em;--padding-end:0.9em;--padding-bottom:0;height:2.1em;font-size:13px}:host(.button-round){--border-radius:64px;--padding-top:0;--padding-start:26px;--padding-end:26px;--padding-bottom:0}:host(.button-strong){font-weight:600}:host(.button-clear.ion-activated){opacity:0.4}:host(.button-outline.ion-activated.ion-color) .button-native{color:var(--ion-color-contrast)}:host(.button-outline.ion-activated.ion-color) .button-native::after{background:var(--ion-color-base)}:host(.button-solid.ion-color.ion-activated) .button-native::after{background:var(--ion-color-shade)}:host(.button-outline.ion-focused.ion-color) .button-native,:host(.button-clear.ion-focused.ion-color) .button-native{color:var(--ion-color-base)}:host(.button-outline.ion-focused.ion-color) .button-native::after,:host(.button-clear.ion-focused.ion-color) .button-native::after{background:var(--ion-color-base)}:host(.button-solid.ion-color.ion-focused) .button-native::after{background:var(--ion-color-shade)}@media (any-hover: hover){:host(.button-clear:hover),:host(.button-outline:hover){opacity:0.6}:host(.button-clear.ion-color:hover) .button-native,:host(.button-outline.ion-color:hover) .button-native{color:var(--ion-color-base)}:host(.button-clear.ion-color:hover) .button-native::after,:host(.button-outline.ion-color:hover) .button-native::after{background:transparent}:host(.button-solid.ion-color:hover) .button-native::after{background:var(--ion-color-tint)}:host(:hover.button-solid.in-toolbar:not(.ion-color):not(.in-toolbar-color)) .button-native::after{background:#fff;opacity:0.1}}";
17
16
 
@@ -6,12 +6,11 @@ const index = require('./index-8fe0df8d.js');
6
6
  const ionicGlobal = require('./ionic-global-581fb4f8.js');
7
7
  const theme = require('./theme-81caa5b0.js');
8
8
  const overlays = require('./overlays-eb464d6d.js');
9
- require('./index-5e2cc9e9.js');
10
- const refrain = require('./refrain-a605892e.js');
9
+ require('./book-1a92678a.js');
10
+ const refrain = require('./refrain-91fb446b.js');
11
11
  const change = require('./change-cdb1e8c0.js');
12
12
  const locale = require('./locale-d4e925b1.js');
13
13
  require('./hardware-back-button-8c2f48d2.js');
14
- require('./_commonjsHelpers-bcc1208a.js');
15
14
 
16
15
  const cardContentIosCss = "ion-card-content{display:block;position:relative}.card-content-ios{padding-left:20px;padding-right:20px;padding-top:20px;padding-bottom:20px;font-size:16px;line-height:1.4}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.card-content-ios{padding-left:unset;padding-right:unset;-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:20px;padding-inline-end:20px}}.card-content-ios h1{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:24px;font-weight:normal}.card-content-ios h2{margin-left:0;margin-right:0;margin-top:2px;margin-bottom:2px;font-size:16px;font-weight:normal}.card-content-ios h3,.card-content-ios h4,.card-content-ios h5,.card-content-ios h6{margin-left:0;margin-right:0;margin-top:2px;margin-bottom:2px;font-size:14px;font-weight:normal}.card-content-ios p{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:14px}ion-card-header+.card-content-ios{padding-top:0}";
17
16
 
@@ -6,11 +6,10 @@ const index = require('./index-8fe0df8d.js');
6
6
  const ionicGlobal = require('./ionic-global-581fb4f8.js');
7
7
  const helpers = require('./helpers-41dfb43a.js');
8
8
  const theme = require('./theme-81caa5b0.js');
9
- require('./index-5e2cc9e9.js');
9
+ require('./book-1a92678a.js');
10
10
  const change = require('./change-cdb1e8c0.js');
11
11
  const overlays = require('./overlays-eb464d6d.js');
12
12
  const locale = require('./locale-d4e925b1.js');
13
- require('./_commonjsHelpers-bcc1208a.js');
14
13
  require('./hardware-back-button-8c2f48d2.js');
15
14
 
16
15
  const checkboxIosCss = ":host{--background-checked:var(--ion-color-primary, #3880ff);--border-color-checked:var(--ion-color-primary, #3880ff);--checkmark-color:var(--ion-color-primary-contrast, #fff);--checkmark-width:1;--transition:none;display:inline-block;position:relative;user-select:none;z-index:2}:host(.ion-color){--background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}button{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;appearance:none;outline:none}[dir=rtl] button,:host-context([dir=rtl]) button{left:unset;right:unset;right:0}button::-moz-focus-inner{border:0}.checkbox-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:50%;--border-width:1px;--border-style:solid;--border-color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.23);--background:var(--ion-item-background, var(--ion-background-color, #fff));--size:26px;width:var(--size);height:var(--size)}:host(.checkbox-disabled){opacity:0.3}:host(.in-item){margin-left:0;margin-right:8px;margin-top:10px;margin-bottom:9px;display:block;position:static}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.in-item){margin-left:unset;margin-right:unset;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:8px;margin-inline-end:8px}}:host(.in-item[slot=start]){margin-left:2px;margin-right:20px;margin-top:8px;margin-bottom:8px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.in-item[slot=start]){margin-left:unset;margin-right:unset;-webkit-margin-start:2px;margin-inline-start:2px;-webkit-margin-end:20px;margin-inline-end:20px}}";
@@ -7,7 +7,7 @@ const ionicGlobal = require('./ionic-global-581fb4f8.js');
7
7
  const helpers = require('./helpers-41dfb43a.js');
8
8
  const theme = require('./theme-81caa5b0.js');
9
9
  const index$1 = require('./index-7aa21373.js');
10
- require('./index-5e2cc9e9.js');
10
+ require('./book-1a92678a.js');
11
11
  const cursor = require('./cursor-81bfd01e.js');
12
12
  const change = require('./change-cdb1e8c0.js');
13
13
  const _commonjsHelpers = require('./_commonjsHelpers-bcc1208a.js');
@@ -7,15 +7,15 @@ const ionicGlobal = require('./ionic-global-581fb4f8.js');
7
7
  const helpers = require('./helpers-41dfb43a.js');
8
8
  const theme = require('./theme-81caa5b0.js');
9
9
  const overlays = require('./overlays-eb464d6d.js');
10
- const index$1 = require('./index-5e2cc9e9.js');
11
- const rubric = require('./rubric-662d8baa.js');
12
- const heading$1 = require('./heading-d3809e59.js');
13
- const option$1 = require('./option-1ebd4514.js');
10
+ const book$1 = require('./book-1a92678a.js');
11
+ const rubric = require('./rubric-5b467a6a.js');
12
+ const heading$1 = require('./heading-5afc2b24.js');
13
+ const option$1 = require('./option-24f3d13a.js');
14
14
  const change = require('./change-cdb1e8c0.js');
15
15
  const locale = require('./locale-d4e925b1.js');
16
- const image = require('./image-f0ace076.js');
17
- const index$2 = require('./index-7aa21373.js');
18
- const refrain = require('./refrain-a605892e.js');
16
+ const image = require('./image-3bee3e73.js');
17
+ const index$1 = require('./index-7aa21373.js');
18
+ const refrain = require('./refrain-91fb446b.js');
19
19
  require('./hardware-back-button-8c2f48d2.js');
20
20
  require('./_commonjsHelpers-bcc1208a.js');
21
21
 
@@ -622,19 +622,25 @@ const BibleReadingComponent = class {
622
622
  else {
623
623
  responseNode = index.h("span", { class: "response" }, " ", this.obj.metadata.response);
624
624
  }
625
- return (index.h(index.Host, null, ((_l = this.obj) === null || _l === void 0 ? void 0 : _l.label) && index.h("ldf-heading", { doc: new heading$1.Heading({ type: 'heading', metadata: { level: 3 }, value: [this.obj.label] }) }), index.h("div", { lang: (_m = this.obj) === null || _m === void 0 ? void 0 : _m.language, class: `bible-reading ${((_o = this.obj) === null || _o === void 0 ? void 0 : _o.display_format) || 'default'}` }, index.h("p", null, this.verses.map(verse => verse.hasOwnProperty('type') && verse.type === 'heading'
626
- ? index.h("ldf-heading", { doc: new heading$1.Heading(verse) })
627
- : index.h("ldf-string", { citation: { book: verse.book, chapter: verse.chapter, verse: verse.verse }, id: this.obj.uid, text: verse.text, fragment: this.path })), shortResponse && !((_q = (_p = this.obj) === null || _p === void 0 ? void 0 : _p.metadata) === null || _q === void 0 ? void 0 : _q.omit_response) && responseNode, index.h("span", { class: "citation" }, this.obj.citation)), !shortResponse && !((_s = (_r = this.obj) === null || _r === void 0 ? void 0 : _r.metadata) === null || _s === void 0 ? void 0 : _s.omit_response) && index.h("p", null, responseNode))));
625
+ return (index.h(index.Host, null, ((_l = this.obj) === null || _l === void 0 ? void 0 : _l.label) && index.h("ldf-heading", { doc: new heading$1.Heading({ type: 'heading', metadata: { level: 3 }, value: [this.obj.label] }) }), index.h("div", { lang: (_m = this.obj) === null || _m === void 0 ? void 0 : _m.language, class: `bible-reading ${((_o = this.obj) === null || _o === void 0 ? void 0 : _o.display_format) || 'default'}` }, index.h("p", null, this.verses.map((verse, verseIndex) => {
626
+ var _a;
627
+ return verse.hasOwnProperty('type') && verse.type === 'heading'
628
+ ? index.h("ldf-heading", { doc: new heading$1.Heading(verse) })
629
+ : index.h("ldf-string", { citation: { book: verse.book, chapter: verse.chapter, verse: verse.verse }, id: this.obj.uid, text: verse.text, fragment: this.path, dropcap: ((_a = this.obj) === null || _a === void 0 ? void 0 : _a.display_format) == "force_dropcap" && verseIndex === 0 ? "force" : "disabled" });
630
+ }), shortResponse && !((_q = (_p = this.obj) === null || _p === void 0 ? void 0 : _p.metadata) === null || _q === void 0 ? void 0 : _q.omit_response) && responseNode, index.h("span", { class: "citation" }, this.obj.citation)), !shortResponse && !((_s = (_r = this.obj) === null || _r === void 0 ? void 0 : _r.metadata) === null || _s === void 0 ? void 0 : _s.omit_response) && index.h("p", null, responseNode))));
628
631
  }
629
632
  /* `long` render a typical Bible reading in the liturgy */
630
633
  else {
631
634
  const paragraphs = this.paragraphs();
632
- return (index.h("div", { lang: (_t = this.obj) === null || _t === void 0 ? void 0 : _t.language, class: `bible-reading ${((_u = this.obj) === null || _u === void 0 ? void 0 : _u.display_format) || 'default'}` }, index.h("ldf-heading", { doc: new heading$1.Heading({ type: 'heading', metadata: { level: 3 }, value: [this.obj.label], citation: this.obj.citation }) }), ((_w = (_v = this.obj) === null || _v === void 0 ? void 0 : _v.metadata) === null || _w === void 0 ? void 0 : _w.compiled_intro) && index.h("ldf-liturgical-document", { doc: this.obj.metadata.compiled_intro }), paragraphs.map((paragraph, paragraphIndex) => index.h("p", { lang: this.obj.language }, paragraph.map((verse, verseIndex) => verse.hasOwnProperty('type') && verse.type === 'heading'
633
- ? index.h("ldf-heading", { doc: new heading$1.Heading(verse) })
634
- : [
635
- index.h("sup", null, verse.verse),
636
- index.h("ldf-string", { citation: verse, dropcap: paragraphIndex == 0 && verseIndex == 0 ? 'force' : 'disabled', id: `${verse.chapter}-${verse.book}-${verse.verse}`, text: verse.text, index: verseIndex, fragment: this.path })
637
- ])))));
635
+ return (index.h("div", { lang: (_t = this.obj) === null || _t === void 0 ? void 0 : _t.language, class: `bible-reading ${((_u = this.obj) === null || _u === void 0 ? void 0 : _u.display_format) || 'default'}` }, index.h("ldf-heading", { doc: new heading$1.Heading({ type: 'heading', metadata: { level: 3 }, value: [this.obj.label], citation: this.obj.citation }) }), ((_w = (_v = this.obj) === null || _v === void 0 ? void 0 : _v.metadata) === null || _w === void 0 ? void 0 : _w.compiled_intro) && index.h("ldf-liturgical-document", { doc: this.obj.metadata.compiled_intro }), paragraphs.map((paragraph, paragraphIndex) => index.h("p", { lang: this.obj.language }, paragraph.map((verse, verseIndex) => {
636
+ var _a;
637
+ return verse.hasOwnProperty('type') && verse.type === 'heading'
638
+ ? index.h("ldf-heading", { doc: new heading$1.Heading(verse) })
639
+ : [
640
+ index.h("sup", null, verse.verse),
641
+ index.h("ldf-string", { citation: verse, dropcap: paragraphIndex == 0 && verseIndex == 0 && ((_a = this.obj) === null || _a === void 0 ? void 0 : _a.language) !== 'iu' ? 'force' : 'disabled', id: `${verse.chapter}-${verse.book}-${verse.verse}`, text: verse.text, index: verseIndex, fragment: this.path })
642
+ ];
643
+ })))));
638
644
  }
639
645
  }
640
646
  else {
@@ -796,19 +802,19 @@ const EditableMetadataButtonsComponent = class {
796
802
  {
797
803
  name: 'value',
798
804
  type: 'radio',
799
- value: index$1.Responsive.AllSizes,
805
+ value: book$1.Responsive.AllSizes,
800
806
  label: this.localeStrings.responsiveAll
801
807
  },
802
808
  {
803
809
  name: 'value',
804
810
  type: 'radio',
805
- value: index$1.Responsive.SmallOnly,
811
+ value: book$1.Responsive.SmallOnly,
806
812
  label: this.localeStrings.responsiveSmallOnly
807
813
  },
808
814
  {
809
815
  name: 'value',
810
816
  type: 'radio',
811
- value: index$1.Responsive.SmallHidden,
817
+ value: book$1.Responsive.SmallHidden,
812
818
  label: this.localeStrings.responsiveSmallHidden
813
819
  }
814
820
  ],
@@ -1164,7 +1170,7 @@ const ImageComponent = class {
1164
1170
  }; }
1165
1171
  };
1166
1172
  __decorate([
1167
- index$2.Debounce(250)
1173
+ index$1.Debounce(250)
1168
1174
  ], ImageComponent.prototype, "updateDoc", null);
1169
1175
  ImageComponent.style = imageCss;
1170
1176
 
@@ -1440,17 +1446,17 @@ const LiturgicalDocumentComponent = class {
1440
1446
  let provisionalObj;
1441
1447
  try {
1442
1448
  if (typeof newDoc == 'string') {
1443
- provisionalObj = new index$1.LiturgicalDocument(JSON.parse(newDoc));
1449
+ provisionalObj = new book$1.LiturgicalDocument(JSON.parse(newDoc));
1444
1450
  }
1445
1451
  else {
1446
- provisionalObj = new index$1.LiturgicalDocument(newDoc);
1452
+ provisionalObj = new book$1.LiturgicalDocument(newDoc);
1447
1453
  }
1448
1454
  }
1449
1455
  catch (e) {
1450
1456
  console.warn(e);
1451
- provisionalObj = new index$1.LiturgicalDocument();
1457
+ provisionalObj = new book$1.LiturgicalDocument();
1452
1458
  }
1453
- this.obj = provisionalObj || new index$1.LiturgicalDocument();
1459
+ this.obj = provisionalObj || new book$1.LiturgicalDocument();
1454
1460
  }
1455
1461
  // Listeners
1456
1462
  onDragOver() {
@@ -1610,9 +1616,9 @@ const LiturgicalDocumentComponent = class {
1610
1616
  return (node && index.h(index.Host, { lang: ((_a = this.obj) === null || _a === void 0 ? void 0 : _a.language) || 'en' }, index.h("div", { class: {
1611
1617
  container: true,
1612
1618
  editable: this.editable || this.preview,
1613
- "small-only": !this.editable && !this.preview && ((_b = this.obj) === null || _b === void 0 ? void 0 : _b.responsive) !== undefined && ((_c = this.obj) === null || _c === void 0 ? void 0 : _c.responsive) == index$1.Responsive.SmallOnly,
1614
- "small-hidden": !this.editable && !this.preview && ((_d = this.obj) === null || _d === void 0 ? void 0 : _d.responsive) !== undefined && ((_e = this.obj) === null || _e === void 0 ? void 0 : _e.responsive) == index$1.Responsive.SmallHidden,
1615
- } }, (this.editable || this.preview) && index.h("ldf-editable-metadata-buttons", { visible: this.hasFocus, base: this.base, index: this.index, obj: this.obj, parentType: this.parentType, preview: this.preview, onLdfTogglePreview: (e) => this.setPreview(e.detail), class: { 'top-level': ((_f = this.obj) === null || _f === void 0 ? void 0 : _f.type) === 'liturgy' || ((_g = this.obj) === null || _g === void 0 ? void 0 : _g.type) === 'option' } }), (this.editable || this.preview) && (((_h = this.obj) === null || _h === void 0 ? void 0 : _h.responsive) === index$1.Responsive.SmallHidden || ((_j = this.obj) === null || _j === void 0 ? void 0 : _j.responsive) === index$1.Responsive.SmallOnly) && index.h("ion-chip", { class: "responsive-banner" }, index.h("ion-icon", { name: "phone-portrait-outline" }), ((_k = this.obj) === null || _k === void 0 ? void 0 : _k.responsive) === index$1.Responsive.SmallOnly && index.h("ion-label", null, this.localeStrings.smallOnly), ((_l = this.obj) === null || _l === void 0 ? void 0 : _l.responsive) === index$1.Responsive.SmallHidden && index.h("ion-label", null, this.localeStrings.smallHidden)), index.h("div", { id: (this.path || '').replace(/\//g, '-'), class: {
1619
+ "small-only": !this.editable && !this.preview && ((_b = this.obj) === null || _b === void 0 ? void 0 : _b.responsive) !== undefined && ((_c = this.obj) === null || _c === void 0 ? void 0 : _c.responsive) == book$1.Responsive.SmallOnly,
1620
+ "small-hidden": !this.editable && !this.preview && ((_d = this.obj) === null || _d === void 0 ? void 0 : _d.responsive) !== undefined && ((_e = this.obj) === null || _e === void 0 ? void 0 : _e.responsive) == book$1.Responsive.SmallHidden,
1621
+ } }, (this.editable || this.preview) && index.h("ldf-editable-metadata-buttons", { visible: this.hasFocus, base: this.base, index: this.index, obj: this.obj, parentType: this.parentType, preview: this.preview, onLdfTogglePreview: (e) => this.setPreview(e.detail), class: { 'top-level': ((_f = this.obj) === null || _f === void 0 ? void 0 : _f.type) === 'liturgy' || ((_g = this.obj) === null || _g === void 0 ? void 0 : _g.type) === 'option' } }), (this.editable || this.preview) && (((_h = this.obj) === null || _h === void 0 ? void 0 : _h.responsive) === book$1.Responsive.SmallHidden || ((_j = this.obj) === null || _j === void 0 ? void 0 : _j.responsive) === book$1.Responsive.SmallOnly) && index.h("ion-chip", { class: "responsive-banner" }, index.h("ion-icon", { name: "phone-portrait-outline" }), ((_k = this.obj) === null || _k === void 0 ? void 0 : _k.responsive) === book$1.Responsive.SmallOnly && index.h("ion-label", null, this.localeStrings.smallOnly), ((_l = this.obj) === null || _l === void 0 ? void 0 : _l.responsive) === book$1.Responsive.SmallHidden && index.h("ion-label", null, this.localeStrings.smallHidden)), index.h("div", { id: (this.path || '').replace(/\//g, '-'), class: {
1616
1622
  doc: true,
1617
1623
  editable: this.editable || this.preview
1618
1624
  }, style: { padding: this.padding } }, node))));
@@ -2054,7 +2060,7 @@ const EN$1 = {
2054
2060
  source_citation: source_citation
2055
2061
  };
2056
2062
 
2057
- const psalmCss = "ldf-psalm.sc-ldf-psalm,.sc-ldf-psalm-h{font-family:var(--ldf-font-face);--ldf-drop-margin-right:var(--ldf-drop-psalm-margin-right)}.psalm-set.sc-ldf-psalm{margin-top:0.5em;margin-bottom:0.5em}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm{display:var(--ldf-psalm-grid-display);grid-template-columns:var(--ldf-psalm-grid-template-columns);grid-template-rows:auto;grid-template-areas:var(--ldf-psalm-grid-template-areas);margin:0;text-indent:var(--ldf-psalm-verse-indentation)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm br.sc-ldf-psalm{display:var(--ldf-psalm-line-break-display)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm sup.sc-ldf-psalm{float:var(--ldf-psalm-number-float);display:var(--ldf-psalm-number-display);grid-area:var(--ldf-psalm-number-grid-area);margin-right:var(--ldf-psalm-number-margin-right)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm .text.sc-ldf-psalm{display:var(--ldf-psalm-text-display);grid-area:var(--ldf-psalm-text-grid-area)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm .halfverse.sc-ldf-psalm{margin-left:var(--ldf-psalm-halfverse-margin-left)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm .verse.sc-ldf-psalm,.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm .halfverse.sc-ldf-psalm{display:var(--ldf-psalm-verse-display);display:var(--ldf-psalm-verse-display)}.editable.sc-ldf-psalm .verse.sc-ldf-psalm,.editable.sc-ldf-psalm .halfverse.sc-ldf-psalm{width:100%}.psalm-parent.no-numbers.sc-ldf-psalm{display:block;text-align:left;grid-template-columns:none;grid-template-rows:none;grid-template-areas:none}.psalm-parent.no-numbers.sc-ldf-psalm .psalm.sc-ldf-psalm{display:block;grid-template-columns:none;grid-template-rows:none;grid-template-areas:none}.psalm-parent.no-numbers.sc-ldf-psalm .psalm.sc-ldf-psalm .text.sc-ldf-psalm{text-align:left;grid-area:none;display:var(--ldf-psalm-text-display);width:100%}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm:nth-of-type(1) sup.sc-ldf-psalm{display:var(--ldf-psalm-set-first-verse-number-display)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm:nth-of-type(1) .text.sc-ldf-psalm:nth-of-type(1) .verse.sc-ldf-psalm:nth-of-type(1){display:var(--ldf-psalm-set-first-verse-display)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm:nth-of-type(1) .text.sc-ldf-psalm:nth-of-type(1) .halfverse.sc-ldf-psalm:nth-of-type(2){display:var(--ldf-psalm-set-first-half-verse-display, inline-block)}.psalm-set.sc-ldf-psalm:nth-of-type(1) .psalm.sc-ldf-psalm:nth-of-type(1) sup.sc-ldf-psalm{display:var(--ldf-psalm-first-verse-number-display)}.psalm-set.sc-ldf-psalm:nth-of-type(1) .psalm.sc-ldf-psalm:nth-of-type(1) .text.sc-ldf-psalm:nth-of-type(1) .verse.sc-ldf-psalm:nth-of-type(1){display:var(--ldf-psalm-first-verse-display)}.psalm-set.sc-ldf-psalm:nth-of-type(1) .psalm.sc-ldf-psalm:nth-of-type(1) .text.sc-ldf-psalm:nth-of-type(1) .halfverse.sc-ldf-psalm:nth-of-type(2){display:var(--ldf-psalm-first-half-verse-display, inline-block)}.antiphon.sc-ldf-psalm{display:var(--ldf-psalm-antiphon-display);font-style:var(--ldf-antiphon-font-style);font-weight:var(--ldf-antiphon-font-weight);margin-top:0.5em}.repeat-antiphon.sc-ldf-psalm{display:var(--ldf-psalm-repeat-antiphon-display)}h5.sc-ldf-psalm{font-size:1em;font-style:italic;font-weight:normal;margin-right:1em}.psalm.unison.sc-ldf-psalm .text.sc-ldf-psalm{font-weight:var(--ldf-unison-font-weight);font-style:var(--ldf-unison-font-style)}.psalm.omit.sc-ldf-psalm .text.sc-ldf-psalm{display:none}.psalm.wholeverse.sc-ldf-psalm .psalm.sc-ldf-psalm:nth-child(even),.psalm-parent.wholeverse.sc-ldf-psalm .psalm.sc-ldf-psalm:nth-child(even){font-weight:var(--ldf-response-font-weight);font-style:var(--ldf-response-font-style)}.psalm.halfverse.sc-ldf-psalm .halfverse.sc-ldf-psalm,.psalm-parent.halfverse.sc-ldf-psalm .halfverse.sc-ldf-psalm{font-weight:var(--ldf-response-font-weight);font-style:var(--ldf-response-font-style)}h3.editable-label.sc-ldf-psalm{text-align:var(--ldf-h3-text-align);font-weight:var(--ldf-h3-font-weight);font-style:var(--ldf-h3-font-style);font-variant:var(--ldf-h3-font-variant);font-size:var(--ldf-h3-font-size);text-transform:var(--ldf-h3-text-transform)}.section-break.sc-ldf-psalm{display:block;text-align:center;width:100%}.section-break.hidden.sc-ldf-psalm{display:none}";
2063
+ const psalmCss = "ldf-psalm.sc-ldf-psalm,.sc-ldf-psalm-h{font-family:var(--ldf-font-face);--ldf-drop-margin-right:var(--ldf-drop-psalm-margin-right)}ldf-psalm[lang=he].sc-ldf-psalm .verse.sc-ldf-psalm,[lang=he].sc-ldf-psalm-h .verse.sc-ldf-psalm{text-align:right;--ldf-drop-float:right}.psalm-set.sc-ldf-psalm{margin-top:0.5em;margin-bottom:0.5em}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm{display:var(--ldf-psalm-grid-display);grid-template-columns:var(--ldf-psalm-grid-template-columns);grid-template-rows:auto;grid-template-areas:var(--ldf-psalm-grid-template-areas);margin:0;text-indent:var(--ldf-psalm-verse-indentation)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm br.sc-ldf-psalm{display:var(--ldf-psalm-line-break-display)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm sup.sc-ldf-psalm{float:var(--ldf-psalm-number-float);display:var(--ldf-psalm-number-display);grid-area:var(--ldf-psalm-number-grid-area);margin-right:var(--ldf-psalm-number-margin-right)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm .text.sc-ldf-psalm{display:var(--ldf-psalm-text-display);grid-area:var(--ldf-psalm-text-grid-area)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm .halfverse.sc-ldf-psalm{margin-left:var(--ldf-psalm-halfverse-margin-left)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm .verse.sc-ldf-psalm,.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm .halfverse.sc-ldf-psalm{display:var(--ldf-psalm-verse-display)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm .halfverse.sc-ldf-psalm{display:var(--ldf-psalm-halfverse-display, var(--ldf-psalm-verse-display))}.editable.sc-ldf-psalm .verse.sc-ldf-psalm,.editable.sc-ldf-psalm .halfverse.sc-ldf-psalm{width:100%}.psalm-parent.no-numbers.sc-ldf-psalm{display:block;text-align:left;grid-template-columns:none;grid-template-rows:none;grid-template-areas:none}.psalm-parent.no-numbers.sc-ldf-psalm .psalm.sc-ldf-psalm{display:block;grid-template-columns:none;grid-template-rows:none;grid-template-areas:none}.psalm-parent.no-numbers.sc-ldf-psalm .psalm.sc-ldf-psalm .text.sc-ldf-psalm{text-align:left;grid-area:none;display:var(--ldf-psalm-text-display);width:100%}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm:nth-of-type(1) sup.sc-ldf-psalm{display:var(--ldf-psalm-set-first-verse-number-display)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm:nth-of-type(1) .text.sc-ldf-psalm:nth-of-type(1) .verse.sc-ldf-psalm:nth-of-type(1){display:var(--ldf-psalm-set-first-verse-display)}.psalm-set.sc-ldf-psalm .psalm.sc-ldf-psalm:nth-of-type(1) .text.sc-ldf-psalm:nth-of-type(1) .halfverse.sc-ldf-psalm:nth-of-type(2){display:var(--ldf-psalm-set-first-half-verse-display, inline-block)}.psalm-set.sc-ldf-psalm:nth-of-type(1) .psalm.sc-ldf-psalm:nth-of-type(1) sup.sc-ldf-psalm{display:var(--ldf-psalm-first-verse-number-display)}.psalm-set.sc-ldf-psalm:nth-of-type(1) .psalm.sc-ldf-psalm:nth-of-type(1) .text.sc-ldf-psalm:nth-of-type(1) .verse.sc-ldf-psalm:nth-of-type(1){display:var(--ldf-psalm-first-verse-display)}.psalm-set.sc-ldf-psalm:nth-of-type(1) .psalm.sc-ldf-psalm:nth-of-type(1) .text.sc-ldf-psalm:nth-of-type(1) .halfverse.sc-ldf-psalm:nth-of-type(2){display:var(--ldf-psalm-first-half-verse-display, inline-block)}.antiphon.sc-ldf-psalm{display:var(--ldf-psalm-antiphon-display);font-style:var(--ldf-antiphon-font-style);font-weight:var(--ldf-antiphon-font-weight);margin-top:0.5em}.repeat-antiphon.sc-ldf-psalm{display:var(--ldf-psalm-repeat-antiphon-display)}h5.sc-ldf-psalm{font-size:1em;font-style:italic;font-weight:normal;margin-right:1em}.psalm.unison.sc-ldf-psalm .text.sc-ldf-psalm{font-weight:var(--ldf-unison-font-weight);font-style:var(--ldf-unison-font-style)}.psalm.omit.sc-ldf-psalm .text.sc-ldf-psalm{display:none}.psalm.wholeverse.sc-ldf-psalm .psalm.sc-ldf-psalm:nth-child(even),.psalm-parent.wholeverse.sc-ldf-psalm .psalm.sc-ldf-psalm:nth-child(even){font-weight:var(--ldf-response-font-weight);font-style:var(--ldf-response-font-style)}.psalm.halfverse.sc-ldf-psalm .halfverse.sc-ldf-psalm,.psalm-parent.halfverse.sc-ldf-psalm .halfverse.sc-ldf-psalm{font-weight:var(--ldf-response-font-weight);font-style:var(--ldf-response-font-style)}h3.editable-label.sc-ldf-psalm{text-align:var(--ldf-h3-text-align);font-weight:var(--ldf-h3-font-weight);font-style:var(--ldf-h3-font-style);font-variant:var(--ldf-h3-font-variant);font-size:var(--ldf-h3-font-size);text-transform:var(--ldf-h3-text-transform)}.section-break.sc-ldf-psalm{display:block;text-align:center;width:100%}.section-break.hidden.sc-ldf-psalm{display:none}";
2058
2064
 
2059
2065
  const LOCALE$1 = {
2060
2066
  'en': EN$1,
@@ -2135,7 +2141,7 @@ const PsalmComponent = class {
2135
2141
  // antiphon is something like an O antiphon tree:
2136
2142
  // dates can be either MM/DD or MM-DD
2137
2143
  // { '12/23': '...', '12/24': '...' }
2138
- const date = this.obj.day ? index$1.dateFromYMDString((_b = (_a = this.obj) === null || _a === void 0 ? void 0 : _a.day) === null || _b === void 0 ? void 0 : _b.date) : new Date();
2144
+ const date = this.obj.day ? book$1.dateFromYMDString((_b = (_a = this.obj) === null || _a === void 0 ? void 0 : _a.day) === null || _b === void 0 ? void 0 : _b.date) : new Date();
2139
2145
  return this.antiphonNode(antiphon[`${date.getMonth() + 1}/${date.getDate()}`] || antiphon[`${date.getMonth() + 1}-${date.getDate()}`], true);
2140
2146
  }
2141
2147
  }
@@ -2244,7 +2250,7 @@ const PsalmComponent = class {
2244
2250
  section.label && ((_a = section.value) === null || _a === void 0 ? void 0 : _a.length) > 0 && this.headingNode(section.label, 4, false, true, true),
2245
2251
  // build a set of verses
2246
2252
  index.h("div", { class: 'psalm-set' }, section.value.map((verse, verseIndex) => {
2247
- var _a, _b, _c, _d, _e, _f, _g, _h;
2253
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
2248
2254
  // build each verse
2249
2255
  if (verse instanceof heading$1.Heading) {
2250
2256
  // for e.g., the Benedicite, Heading passed at head of section
@@ -2256,12 +2262,12 @@ const PsalmComponent = class {
2256
2262
  // 1st half of verse
2257
2263
  nodes.push(index.h("div", { class: 'verse' }, this.editable ?
2258
2264
  index.h("ldf-editable-text", { id: `${this.obj.uid || this.obj.slug}-${sectionIndex}-${verseIndex}-verse`, text: verse.verse, path: `${this.path}/value/${sectionIndex}/value/${verseIndex}/verse`, placeholder: 'Lorem ipsum sit dolor amet, *', template: pattern, templateMaker: templateMaker }) :
2259
- index.h("ldf-string", { text: verse.verse, citation: { label: (_a = this.obj) === null || _a === void 0 ? void 0 : _a.label, book: ((_b = this.obj) === null || _b === void 0 ? void 0 : _b.style) === 'psalm' ? 'Psalm' : undefined, chapter: (_d = (_c = this.obj) === null || _c === void 0 ? void 0 : _c.metadata) === null || _d === void 0 ? void 0 : _d.number, verse: verse.number }, dropcap: verseIndex == 0 ? 'force' : 'disabled', index: verseIndex, fragment: this.path })));
2265
+ index.h("ldf-string", { text: verse.verse, citation: { label: (_a = this.obj) === null || _a === void 0 ? void 0 : _a.label, book: ((_b = this.obj) === null || _b === void 0 ? void 0 : _b.style) === 'psalm' ? 'Psalm' : undefined, chapter: (_d = (_c = this.obj) === null || _c === void 0 ? void 0 : _c.metadata) === null || _d === void 0 ? void 0 : _d.number, verse: verse.number }, dropcap: (verseIndex == 0 && ((_e = this.obj) === null || _e === void 0 ? void 0 : _e.language) !== "he" && ((_f = this.obj) === null || _f === void 0 ? void 0 : _f.language) !== "iu") ? 'force' : 'disabled', index: verseIndex, fragment: this.path })));
2260
2266
  nodes.push(index.h("br", null));
2261
2267
  // 2nd half of verse
2262
2268
  nodes.push(index.h("div", { class: 'halfverse' }, this.editable ?
2263
2269
  index.h("ldf-editable-text", { id: `${this.obj.uid || this.obj.slug}-${sectionIndex}-${verseIndex}-halfverse`, text: verse.halfverse, path: `${this.path}/value/${sectionIndex}/value/${verseIndex}/halfverse`, placeholder: 'consectetur adipiscing elit.', template: pattern }) :
2264
- index.h("ldf-string", { text: verse.halfverse, citation: { label: (_e = this.obj) === null || _e === void 0 ? void 0 : _e.label, book: ((_f = this.obj) === null || _f === void 0 ? void 0 : _f.style) === 'psalm' ? 'Psalm' : undefined, chapter: (_h = (_g = this.obj) === null || _g === void 0 ? void 0 : _g.metadata) === null || _h === void 0 ? void 0 : _h.number, verse: verse.number }, dropcap: 'disabled', fragment: this.path })));
2270
+ index.h("ldf-string", { text: verse.halfverse, citation: { label: (_g = this.obj) === null || _g === void 0 ? void 0 : _g.label, book: ((_h = this.obj) === null || _h === void 0 ? void 0 : _h.style) === 'psalm' ? 'Psalm' : undefined, chapter: (_k = (_j = this.obj) === null || _j === void 0 ? void 0 : _j.metadata) === null || _k === void 0 ? void 0 : _k.number, verse: verse.number }, dropcap: 'disabled', fragment: this.path })));
2265
2271
  // render the verse
2266
2272
  return (index.h("p", { class: this.editable ? 'psalm editable' : 'psalm', onClick: () => {
2267
2273
  this.focusedVerse = verseIndex;