Files
vu/vite.config.ts
will 5ebb856de7
Deploy / deploy (push) Successful in 1m54s
Bulk-import the Vulgate/Douay-Rheims scripture text
Adds ~1017 chapter YAML files under src/data/scripture/ carrying verified
bilingual (Latin Vulgate / Douay-Rheims English) verse text, closing out
the bulk scripture import TODO.md has tracked as pending bulk-content
work. Daniel 14 (the Greek deuterocanonical addition) has no counterpart
in the Latin source and stays unauthored.

Raises the PWA precache size cap (8 -> 24 MiB) to fit the larger bundle,
repoints scripture.test.ts's "unauthored chapter" case from Genesis 1
(now authored) to Daniel 14, and adds bulk-import.test.ts asserting every
imported chapter has verified, gap-free, ordered verse text in both
languages -- tolerating the pre-existing isa-33/sir-36 pointing-split
half-verses, whose English intentionally isn't split to match.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Je2mXNHoXmi1DS3xEL67rH
2026-09-03 05:31:11 -04:00

55 lines
2.0 KiB
TypeScript

/// <reference types="vitest/config" />
import { defineConfig } from 'vite';
import { VitePWA } from 'vite-plugin-pwa';
import yaml from '@rollup/plugin-yaml';
// Served under reground.org/vu (Caddy path_mount to the vu container) — every
// asset URL and the service worker's registration scope must be scoped to
// this path, or they'll resolve against the domain root instead.
const base = '/vu/';
export default defineConfig({
base,
plugins: [
yaml(),
VitePWA({
registerType: 'autoUpdate',
scope: base,
base,
manifest: {
name: 'vu',
short_name: 'vu',
start_url: base,
scope: base,
display: 'standalone',
background_color: '#f7f3ea',
theme_color: '#7a2e2e',
icons: [
{ src: 'icons/icon-192.png', sizes: '192x192', type: 'image/png' },
{ src: 'icons/icon-512.png', sizes: '512x512', type: 'image/png' },
],
},
workbox: {
// Precache everything the shell needs so a day's office renders
// fully offline once visited once.
globPatterns: ['**/*.{js,css,html,ico,png,svg,woff2}'],
// Default cap (2 MiB) is too small once the sanctoral pull's real
// propers/octave-reading text (all eagerly bundled, by design, for
// offline use) pushes the main chunk past it -- raised again
// (2026-08-28, was 6 MiB) once the movable-octave content (Ascension/
// Corpus Christi/Sacred Heart/Patronage of St. Joseph) pushed the
// bundle past the previous cap, then again (2026-09-02, was 8 MiB)
// once the bulk Vulgate/Douay-Rheims scripture import (~1000 new
// chapters under src/data/scripture/) pushed it past 16 MiB. Bump
// this again, with headroom, if a future content pull hits it --
// this is deliberate bundling, not bloat to trim (see CLAUDE.md).
maximumFileSizeToCacheInBytes: 24 * 1024 * 1024,
},
}),
],
test: {
environment: 'jsdom',
globals: false,
},
});