From 07ff6b58902b11049ba33a5f0c68856a63eb39db Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BD=D1=82=D0=BE=D0=BD=20=D0=A2=D1=80=D0=BE=D1=88?=
=?UTF-8?q?=D0=B8=D0=BD?=
Date: Sun, 26 Jul 2026 00:20:14 +0300
Subject: [PATCH] abandoned conversion from original Java Ponomar app, migrated
to own text storage format
---
package.json | 9 +++--
src/ui/bible-view.ts | 4 +--
src/ui/calendar-view.ts | 73 ++++++++++++++++++++++++++---------------
src/ui/service-view.ts | 70 ++++++++++++++++++++++++++++++++++-----
src/ui/settings-view.ts | 2 +-
5 files changed, 119 insertions(+), 39 deletions(-)
diff --git a/package.json b/package.json
index 4f6a573..72ba4b1 100644
--- a/package.json
+++ b/package.json
@@ -4,10 +4,15 @@
"version": "0.1.0",
"type": "module",
"scripts": {
- "dev": "npm run convert && vite dev",
- "build": "npm run convert && vite build",
+ "dev": "vite dev",
+ "build": "vite build",
"preview": "vite preview",
"convert": "tsx scripts/convert-all.ts",
+ "migrate": "tsx scripts/migrate-data.ts",
+ "migrate:dry": "tsx scripts/migrate-data.ts --dry-run",
+ "validate": "tsx scripts/validate-data.ts",
+ "search": "tsx scripts/tools/search-texts.ts",
+ "stats": "tsx scripts/tools/stats.ts",
"check": "svelte-kit sync 2>/dev/null; tsc --noEmit"
},
"devDependencies": {
diff --git a/src/ui/bible-view.ts b/src/ui/bible-view.ts
index e027467..a2c23e6 100644
--- a/src/ui/bible-view.ts
+++ b/src/ui/bible-view.ts
@@ -133,7 +133,7 @@ export class BibleView {
- ${this.t.bible.selectBook}
${this.t.bible.noTextFound}
`; } catch { textEl.innerHTML = ` diff --git a/src/ui/calendar-view.ts b/src/ui/calendar-view.ts index cdde05e..6ad8a3d 100644 --- a/src/ui/calendar-view.ts +++ b/src/ui/calendar-view.ts @@ -18,6 +18,8 @@ let sharedScriptureIndex: Record
${this.currentDate.toString()}
@@ -183,7 +183,7 @@ export class ServiceView {
try {
const tryFetch = async (lang: string) => {
- const url = `/data/${lang}/services/Octoecheos/Tone ${toneNum}/${weekday}.json`;
+ const url = `/data/${lang}/services/octoecheos/tone${toneNum}/${weekday.toLowerCase()}.json`;
const resp = await fetch(url);
if (!resp.ok) return null;
const nodes: ServiceNode[] = await resp.json();
@@ -214,9 +214,9 @@ export class ServiceView {
const resp = await fetch(url);
if (!resp.ok) return null;
const all = await resp.json();
- if (Array.isArray(all)) return all.map((e: Record${t.settings.title}