@helloao/tools 0.2.0 → 0.4.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.
- package/dist/cjs/generation/api.cjs +2213 -216
- package/dist/cjs/generation/api.cjs.map +3 -3
- package/dist/cjs/generation/audio.cjs +5 -5
- package/dist/cjs/generation/audio.cjs.map +1 -1
- package/dist/cjs/generation/book-order.cjs.map +1 -1
- package/dist/cjs/generation/common-types.cjs +782 -14
- package/dist/cjs/generation/common-types.cjs.map +2 -2
- package/dist/cjs/generation/dataset.cjs +13 -9
- package/dist/cjs/generation/dataset.cjs.map +2 -2
- package/dist/cjs/generation/index.cjs +8 -5
- package/dist/cjs/generation/index.cjs.map +2 -2
- package/dist/cjs/generation/simple.cjs +294 -0
- package/dist/cjs/generation/simple.cjs.map +7 -0
- package/dist/cjs/generation/theographic.cjs +446 -0
- package/dist/cjs/generation/theographic.cjs.map +7 -0
- package/dist/cjs/index.cjs +4 -4
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/log.cjs.map +1 -1
- package/dist/cjs/parser/codex-parser.cjs +3 -3
- package/dist/cjs/parser/codex-parser.cjs.map +3 -3
- package/dist/cjs/parser/commentary-csv-parser.cjs +14 -3
- package/dist/cjs/parser/commentary-csv-parser.cjs.map +3 -3
- package/dist/cjs/parser/index.cjs +1 -1
- package/dist/cjs/parser/iterators.cjs.map +1 -1
- package/dist/cjs/parser/lockman-parser.cjs +1 -1
- package/dist/cjs/parser/lockman-parser.cjs.map +1 -1
- package/dist/cjs/parser/tyndale-xml-parser.cjs +1 -1
- package/dist/cjs/parser/tyndale-xml-parser.cjs.map +1 -1
- package/dist/cjs/parser/types.cjs.map +1 -1
- package/dist/cjs/parser/usfm-parser.cjs +2 -2
- package/dist/cjs/parser/usfm-parser.cjs.map +1 -1
- package/dist/cjs/parser/usx-parser.cjs +122 -26
- package/dist/cjs/parser/usx-parser.cjs.map +2 -2
- package/dist/cjs/parser/words.cjs +187 -0
- package/dist/cjs/parser/words.cjs.map +7 -0
- package/dist/cjs/utils.cjs +1 -1
- package/dist/esm/generation/api.js +2155 -214
- package/dist/esm/generation/api.js.map +3 -3
- package/dist/esm/generation/audio.js +1 -1
- package/dist/esm/generation/audio.js.map +1 -1
- package/dist/esm/generation/book-order.js.map +1 -1
- package/dist/esm/generation/common-types.js +738 -14
- package/dist/esm/generation/common-types.js.map +2 -2
- package/dist/esm/generation/dataset.js +6 -2
- package/dist/esm/generation/dataset.js.map +2 -2
- package/dist/esm/generation/index.js +2 -1
- package/dist/esm/generation/index.js.map +2 -2
- package/dist/esm/generation/simple.js +260 -0
- package/dist/esm/generation/simple.js.map +7 -0
- package/dist/esm/generation/theographic.js +412 -0
- package/dist/esm/generation/theographic.js.map +7 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/log.js.map +1 -1
- package/dist/esm/parser/codex-parser.js +3 -3
- package/dist/esm/parser/codex-parser.js.map +3 -3
- package/dist/esm/parser/commentary-csv-parser.js +3 -2
- package/dist/esm/parser/commentary-csv-parser.js.map +2 -2
- package/dist/esm/parser/iterators.js.map +1 -1
- package/dist/esm/parser/lockman-parser.js +1 -1
- package/dist/esm/parser/lockman-parser.js.map +1 -1
- package/dist/esm/parser/tyndale-xml-parser.js +1 -1
- package/dist/esm/parser/tyndale-xml-parser.js.map +1 -1
- package/dist/esm/parser/usfm-parser.js +1 -1
- package/dist/esm/parser/usfm-parser.js.map +1 -1
- package/dist/esm/parser/usx-parser.js +130 -26
- package/dist/esm/parser/usx-parser.js.map +2 -2
- package/dist/esm/parser/words.js +149 -0
- package/dist/esm/parser/words.js.map +7 -0
- package/dist/types/generation/api.d.ts +9006 -1101
- package/dist/types/generation/common-types.d.ts +1318 -106
- package/dist/types/generation/dataset.d.ts +17 -1
- package/dist/types/generation/index.d.ts +2 -1
- package/dist/types/generation/simple.d.ts +110 -0
- package/dist/types/generation/theographic.d.ts +64 -0
- package/dist/types/parser/commentary-csv-parser.d.ts +1 -1
- package/dist/types/parser/lockman-parser.d.ts +1 -1
- package/dist/types/parser/tyndale-xml-parser.d.ts +1 -1
- package/dist/types/parser/types.d.ts +63 -0
- package/dist/types/parser/usx-parser.d.ts +6 -5
- package/dist/types/parser/words.d.ts +104 -0
- package/package.json +3 -2
|
@@ -31,19 +31,52 @@ __export(api_exports, {
|
|
|
31
31
|
ApiDatasetBookChapterSchema: () => ApiDatasetBookChapterSchema,
|
|
32
32
|
ApiDatasetBookSchema: () => ApiDatasetBookSchema,
|
|
33
33
|
ApiDatasetBooksSchema: () => ApiDatasetBooksSchema,
|
|
34
|
+
ApiDatasetChapterEventSchema: () => ApiDatasetChapterEventSchema,
|
|
35
|
+
ApiDatasetChapterPersonSchema: () => ApiDatasetChapterPersonSchema,
|
|
36
|
+
ApiDatasetChapterPlaceSchema: () => ApiDatasetChapterPlaceSchema,
|
|
37
|
+
ApiDatasetEntityBookChapterSchema: () => ApiDatasetEntityBookChapterSchema,
|
|
38
|
+
ApiDatasetEntityChapterDataSchema: () => ApiDatasetEntityChapterDataSchema,
|
|
39
|
+
ApiDatasetEventSchema: () => ApiDatasetEventSchema,
|
|
40
|
+
ApiDatasetEventSummarySchema: () => ApiDatasetEventSummarySchema,
|
|
41
|
+
ApiDatasetEventsSchema: () => ApiDatasetEventsSchema,
|
|
42
|
+
ApiDatasetPeopleGroupSchema: () => ApiDatasetPeopleGroupSchema,
|
|
43
|
+
ApiDatasetPeopleGroupSummarySchema: () => ApiDatasetPeopleGroupSummarySchema,
|
|
44
|
+
ApiDatasetPeopleGroupsSchema: () => ApiDatasetPeopleGroupsSchema,
|
|
45
|
+
ApiDatasetPeopleSchema: () => ApiDatasetPeopleSchema,
|
|
46
|
+
ApiDatasetPersonSchema: () => ApiDatasetPersonSchema,
|
|
47
|
+
ApiDatasetPersonSummarySchema: () => ApiDatasetPersonSummarySchema,
|
|
48
|
+
ApiDatasetPlaceSchema: () => ApiDatasetPlaceSchema,
|
|
49
|
+
ApiDatasetPlaceSummarySchema: () => ApiDatasetPlaceSummarySchema,
|
|
50
|
+
ApiDatasetPlacesSchema: () => ApiDatasetPlacesSchema,
|
|
34
51
|
ApiDatasetSchema: () => ApiDatasetSchema,
|
|
52
|
+
ApiSimpleCommentaryBookChapterSchema: () => ApiSimpleCommentaryBookChapterSchema,
|
|
53
|
+
ApiSimpleTranslationBookChapterSchema: () => ApiSimpleTranslationBookChapterSchema,
|
|
54
|
+
ApiSimpleTranslationBookChapterWordsSchema: () => ApiSimpleTranslationBookChapterWordsSchema,
|
|
55
|
+
ApiSimpleTranslationCompleteBookSchema: () => ApiSimpleTranslationCompleteBookSchema,
|
|
56
|
+
ApiSimpleTranslationCompleteSchema: () => ApiSimpleTranslationCompleteSchema,
|
|
35
57
|
ApiTranslationBookChapterAudioSchema: () => ApiTranslationBookChapterAudioSchema,
|
|
58
|
+
ApiTranslationBookChapterAudioTimingsSchema: () => ApiTranslationBookChapterAudioTimingsSchema,
|
|
36
59
|
ApiTranslationBookChapterSchema: () => ApiTranslationBookChapterSchema,
|
|
60
|
+
ApiTranslationBookChapterWordsSchema: () => ApiTranslationBookChapterWordsSchema,
|
|
37
61
|
ApiTranslationBookSchema: () => ApiTranslationBookSchema,
|
|
38
62
|
ApiTranslationBooksSchema: () => ApiTranslationBooksSchema,
|
|
39
63
|
ApiTranslationCompleteBookSchema: () => ApiTranslationCompleteBookSchema,
|
|
40
64
|
ApiTranslationCompleteSchema: () => ApiTranslationCompleteSchema,
|
|
41
65
|
ApiTranslationSchema: () => ApiTranslationSchema,
|
|
66
|
+
CommentaryChapterReferenceSchema: () => CommentaryChapterReferenceSchema,
|
|
67
|
+
DatasetChapterReferenceSchema: () => DatasetChapterReferenceSchema,
|
|
68
|
+
SIMPLE_JSON_EXTENSION: () => SIMPLE_JSON_EXTENSION,
|
|
69
|
+
SimpleTranslationCompleteChapterSchema: () => SimpleTranslationCompleteChapterSchema,
|
|
70
|
+
TranslationChapterReferenceSchema: () => TranslationChapterReferenceSchema,
|
|
71
|
+
TranslationCompleteChapterSchema: () => TranslationCompleteChapterSchema,
|
|
42
72
|
bookChapterApiLink: () => bookChapterApiLink,
|
|
43
73
|
bookChapterAudioApiLink: () => bookChapterAudioApiLink,
|
|
74
|
+
bookChapterAudioTimingsApiLink: () => bookChapterAudioTimingsApiLink,
|
|
75
|
+
bookChapterWordsApiLink: () => bookChapterWordsApiLink,
|
|
44
76
|
bookCommentaryChapterApiLink: () => bookCommentaryChapterApiLink,
|
|
45
77
|
bookDatasetChapterApiLink: () => bookDatasetChapterApiLink,
|
|
46
78
|
completeTranslationApiLink: () => completeTranslationApiLink,
|
|
79
|
+
datasetEntityApiLink: () => datasetEntityApiLink,
|
|
47
80
|
downloadedFile: () => downloadedFile,
|
|
48
81
|
generateApiForDataset: () => generateApiForDataset,
|
|
49
82
|
generateFilesForApi: () => generateFilesForApi,
|
|
@@ -52,6 +85,7 @@ __export(api_exports, {
|
|
|
52
85
|
listOfBooksApiLink: () => listOfBooksApiLink,
|
|
53
86
|
listOfCommentaryBooksApiLink: () => listOfCommentaryBooksApiLink,
|
|
54
87
|
listOfDatasetBooksApiLink: () => listOfDatasetBooksApiLink,
|
|
88
|
+
listOfDatasetEntitiesApiLink: () => listOfDatasetEntitiesApiLink,
|
|
55
89
|
profileCommentaryApiLink: () => profileCommentaryApiLink,
|
|
56
90
|
profilesCommentaryApiLink: () => profilesCommentaryApiLink,
|
|
57
91
|
replaceSpacesWithUnderscores: () => replaceSpacesWithUnderscores
|
|
@@ -59,7 +93,9 @@ __export(api_exports, {
|
|
|
59
93
|
module.exports = __toCommonJS(api_exports);
|
|
60
94
|
var import_zod = require("zod");
|
|
61
95
|
var import_common_types = require("./common-types.js");
|
|
62
|
-
var
|
|
96
|
+
var import_simple = require("./simple.js");
|
|
97
|
+
var import_utils = require("../utils.js");
|
|
98
|
+
var import_book_order = require("./book-order.js");
|
|
63
99
|
const ApiAvailableTranslationsSchema = import_zod.z.object({
|
|
64
100
|
/**
|
|
65
101
|
* The list of translations.
|
|
@@ -138,6 +174,62 @@ const ApiDatasetSchema = import_common_types.DatasetSchema.extend({
|
|
|
138
174
|
*/
|
|
139
175
|
languageEnglishName: import_zod.z.string().optional().meta({
|
|
140
176
|
description: "Gets the name of the language in English. Null or undefined if the language doesn't have an english name."
|
|
177
|
+
}),
|
|
178
|
+
/**
|
|
179
|
+
* The API link for the list of people for this dataset.
|
|
180
|
+
* Omitted if the dataset doesn't contain people.
|
|
181
|
+
*/
|
|
182
|
+
listOfPeopleApiLink: import_zod.z.string().optional().meta({
|
|
183
|
+
description: "The API link for the list of people for this dataset. Relative to the API origin. Omitted if the dataset doesn't contain people."
|
|
184
|
+
}),
|
|
185
|
+
/**
|
|
186
|
+
* The API link for the list of places for this dataset.
|
|
187
|
+
* Omitted if the dataset doesn't contain places.
|
|
188
|
+
*/
|
|
189
|
+
listOfPlacesApiLink: import_zod.z.string().optional().meta({
|
|
190
|
+
description: "The API link for the list of places for this dataset. Relative to the API origin. Omitted if the dataset doesn't contain places."
|
|
191
|
+
}),
|
|
192
|
+
/**
|
|
193
|
+
* The API link for the list of events for this dataset.
|
|
194
|
+
* Omitted if the dataset doesn't contain events.
|
|
195
|
+
*/
|
|
196
|
+
listOfEventsApiLink: import_zod.z.string().optional().meta({
|
|
197
|
+
description: "The API link for the list of events for this dataset. Relative to the API origin. Omitted if the dataset doesn't contain events."
|
|
198
|
+
}),
|
|
199
|
+
/**
|
|
200
|
+
* The API link for the list of people groups for this dataset.
|
|
201
|
+
* Omitted if the dataset doesn't contain people groups.
|
|
202
|
+
*/
|
|
203
|
+
listOfPeopleGroupsApiLink: import_zod.z.string().optional().meta({
|
|
204
|
+
description: "The API link for the list of people groups for this dataset. Relative to the API origin. Omitted if the dataset doesn't contain people groups."
|
|
205
|
+
}),
|
|
206
|
+
/**
|
|
207
|
+
* The total number of people that are contained in this dataset.
|
|
208
|
+
* Omitted if the dataset doesn't contain people.
|
|
209
|
+
*/
|
|
210
|
+
totalNumberOfPeople: import_zod.z.number().optional().meta({
|
|
211
|
+
description: "The total number of people that are contained in this dataset. Omitted if the dataset doesn't contain people."
|
|
212
|
+
}),
|
|
213
|
+
/**
|
|
214
|
+
* The total number of places that are contained in this dataset.
|
|
215
|
+
* Omitted if the dataset doesn't contain places.
|
|
216
|
+
*/
|
|
217
|
+
totalNumberOfPlaces: import_zod.z.number().optional().meta({
|
|
218
|
+
description: "The total number of places that are contained in this dataset. Omitted if the dataset doesn't contain places."
|
|
219
|
+
}),
|
|
220
|
+
/**
|
|
221
|
+
* The total number of events that are contained in this dataset.
|
|
222
|
+
* Omitted if the dataset doesn't contain events.
|
|
223
|
+
*/
|
|
224
|
+
totalNumberOfEvents: import_zod.z.number().optional().meta({
|
|
225
|
+
description: "The total number of events that are contained in this dataset. Omitted if the dataset doesn't contain events."
|
|
226
|
+
}),
|
|
227
|
+
/**
|
|
228
|
+
* The total number of people groups that are contained in this dataset.
|
|
229
|
+
* Omitted if the dataset doesn't contain people groups.
|
|
230
|
+
*/
|
|
231
|
+
totalNumberOfPeopleGroups: import_zod.z.number().optional().meta({
|
|
232
|
+
description: "The total number of people groups that are contained in this dataset. Omitted if the dataset doesn't contain people groups."
|
|
141
233
|
})
|
|
142
234
|
}).meta({
|
|
143
235
|
id: "ApiDataset",
|
|
@@ -217,6 +309,15 @@ const ApiTranslationSchema = import_common_types.TranslationSchema.extend({
|
|
|
217
309
|
*/
|
|
218
310
|
completeTranslationApiLink: import_zod.z.string().optional().meta({
|
|
219
311
|
description: "The API link for downloading the complete translation as a single JSON file. Relative to the API origin. Undefined if complete translation files are not available."
|
|
312
|
+
}),
|
|
313
|
+
/**
|
|
314
|
+
* The API link for downloading the complete translation as a single JSON file,
|
|
315
|
+
* using the simplified chapter format.
|
|
316
|
+
*
|
|
317
|
+
* Undefined if complete translation files are not available.
|
|
318
|
+
*/
|
|
319
|
+
simpleCompleteTranslationApiLink: import_zod.z.string().optional().meta({
|
|
320
|
+
description: "The API link for downloading the complete translation as a single JSON file, using the simplified chapter format. Relative to the API origin. Undefined if complete translation files are not available."
|
|
220
321
|
})
|
|
221
322
|
}).meta({
|
|
222
323
|
id: "ApiTranslation",
|
|
@@ -239,6 +340,42 @@ const ApiTranslationCompleteSchema = import_zod.z.object({
|
|
|
239
340
|
id: "ApiTranslationComplete",
|
|
240
341
|
description: "Defines the complete translation download data. Maps to the /api/:translationId/complete.json endpoint."
|
|
241
342
|
});
|
|
343
|
+
const TranslationCompleteChapterSchema = import_common_types.TranslationBookChapterSchema.omit({ thisChapterWords: true }).extend({
|
|
344
|
+
/**
|
|
345
|
+
* The number of verses that the chapter contains.
|
|
346
|
+
*/
|
|
347
|
+
numberOfVerses: import_zod.z.number().meta({
|
|
348
|
+
description: "The number of verses that the chapter contains."
|
|
349
|
+
}),
|
|
350
|
+
/**
|
|
351
|
+
* The link to the word-level annotations for the chapter.
|
|
352
|
+
* Omitted if the chapter doesn't have any word-level annotations.
|
|
353
|
+
*/
|
|
354
|
+
thisChapterWordsLink: import_zod.z.string().optional().meta({
|
|
355
|
+
description: "The link to the word-level annotations for this chapter. Relative to the API origin. Omitted if the chapter doesn't have any word-level annotations."
|
|
356
|
+
})
|
|
357
|
+
}).meta({
|
|
358
|
+
id: "TranslationCompleteChapter",
|
|
359
|
+
description: "A chapter in the complete translation download."
|
|
360
|
+
});
|
|
361
|
+
const SimpleTranslationCompleteChapterSchema = import_common_types.SimpleTranslationBookChapterSchema.omit({ thisChapterWords: true }).extend({
|
|
362
|
+
/**
|
|
363
|
+
* The number of verses that the chapter contains.
|
|
364
|
+
*/
|
|
365
|
+
numberOfVerses: import_zod.z.number().meta({
|
|
366
|
+
description: "The number of verses that the chapter contains."
|
|
367
|
+
}),
|
|
368
|
+
/**
|
|
369
|
+
* The link to the word-level annotations for the chapter.
|
|
370
|
+
* Omitted if the chapter doesn't have any word-level annotations.
|
|
371
|
+
*/
|
|
372
|
+
thisChapterWordsLink: import_zod.z.string().optional().meta({
|
|
373
|
+
description: "The link to the word-level annotations for this chapter. Relative to the API origin. Omitted if the chapter doesn't have any word-level annotations."
|
|
374
|
+
})
|
|
375
|
+
}).meta({
|
|
376
|
+
id: "SimpleTranslationCompleteChapter",
|
|
377
|
+
description: "A chapter in the complete translation download, using the simplified chapter format."
|
|
378
|
+
});
|
|
242
379
|
const ApiTranslationCompleteBookSchema = import_common_types.TranslationBookSchema.extend({
|
|
243
380
|
/**
|
|
244
381
|
* The number of chapters in the book.
|
|
@@ -255,13 +392,41 @@ const ApiTranslationCompleteBookSchema = import_common_types.TranslationBookSche
|
|
|
255
392
|
/**
|
|
256
393
|
* The complete list of chapters with all content.
|
|
257
394
|
*/
|
|
258
|
-
chapters: import_zod.z.array(
|
|
395
|
+
chapters: import_zod.z.array(TranslationCompleteChapterSchema).meta({
|
|
259
396
|
description: "The complete list of chapters with all content."
|
|
260
397
|
})
|
|
261
398
|
}).meta({
|
|
262
399
|
id: "ApiTranslationCompleteBook",
|
|
263
400
|
description: "A book in the complete translation download."
|
|
264
401
|
});
|
|
402
|
+
const ApiSimpleTranslationCompleteSchema = import_zod.z.object({
|
|
403
|
+
/**
|
|
404
|
+
* The translation metadata.
|
|
405
|
+
*/
|
|
406
|
+
translation: import_zod.z.lazy(() => ApiTranslationSchema).meta({
|
|
407
|
+
description: "The translation metadata."
|
|
408
|
+
}),
|
|
409
|
+
/**
|
|
410
|
+
* The complete list of books with all their chapters.
|
|
411
|
+
*/
|
|
412
|
+
books: import_zod.z.array(import_zod.z.lazy(() => ApiSimpleTranslationCompleteBookSchema)).meta({
|
|
413
|
+
description: "The complete list of books with all their chapters."
|
|
414
|
+
})
|
|
415
|
+
}).meta({
|
|
416
|
+
id: "ApiSimpleTranslationComplete",
|
|
417
|
+
description: "Defines the complete translation download data, using the simplified chapter format. Maps to the /api/:translationId/complete.simple.json endpoint."
|
|
418
|
+
});
|
|
419
|
+
const ApiSimpleTranslationCompleteBookSchema = ApiTranslationCompleteBookSchema.extend({
|
|
420
|
+
/**
|
|
421
|
+
* The complete list of chapters with all content.
|
|
422
|
+
*/
|
|
423
|
+
chapters: import_zod.z.array(SimpleTranslationCompleteChapterSchema).meta({
|
|
424
|
+
description: "The complete list of chapters with all content."
|
|
425
|
+
})
|
|
426
|
+
}).meta({
|
|
427
|
+
id: "ApiSimpleTranslationCompleteBook",
|
|
428
|
+
description: "A book in the complete translation download, using the simplified chapter format."
|
|
429
|
+
});
|
|
265
430
|
const ApiCommentarySchema = import_common_types.CommentarySchema.extend({
|
|
266
431
|
/**
|
|
267
432
|
* The API link for the list of available books for this translation.
|
|
@@ -380,253 +545,976 @@ const ApiDatasetBooksSchema = import_zod.z.object({
|
|
|
380
545
|
id: "ApiDatasetBooks",
|
|
381
546
|
description: "Defines an interface that contains information about the books that are available for a dataset."
|
|
382
547
|
});
|
|
383
|
-
const
|
|
548
|
+
const ApiDatasetPersonSummarySchema = import_zod.z.object({
|
|
384
549
|
/**
|
|
385
|
-
* The
|
|
550
|
+
* The ID of the person.
|
|
386
551
|
*/
|
|
387
|
-
|
|
388
|
-
description: "The
|
|
552
|
+
id: import_zod.z.string().meta({
|
|
553
|
+
description: "The ID of the person."
|
|
389
554
|
}),
|
|
390
555
|
/**
|
|
391
|
-
* The
|
|
556
|
+
* The name of the person.
|
|
392
557
|
*/
|
|
393
|
-
|
|
394
|
-
description: "The
|
|
558
|
+
name: import_zod.z.string().meta({
|
|
559
|
+
description: "The name of the person."
|
|
560
|
+
}),
|
|
561
|
+
/**
|
|
562
|
+
* Whether the name of the person is a proper name.
|
|
563
|
+
*/
|
|
564
|
+
isProperName: import_zod.z.boolean().optional().meta({
|
|
565
|
+
description: "Whether the name of the person is a proper name."
|
|
566
|
+
}),
|
|
567
|
+
/**
|
|
568
|
+
* The gender of the person.
|
|
569
|
+
*/
|
|
570
|
+
gender: import_zod.z.string().optional().meta({
|
|
571
|
+
description: "The gender of the person."
|
|
572
|
+
}),
|
|
573
|
+
/**
|
|
574
|
+
* The number of Bible references that mention the person.
|
|
575
|
+
*/
|
|
576
|
+
numberOfReferences: import_zod.z.number().meta({
|
|
577
|
+
description: "The number of Bible references that mention the person."
|
|
578
|
+
}),
|
|
579
|
+
/**
|
|
580
|
+
* The API link for the person.
|
|
581
|
+
*/
|
|
582
|
+
thisPersonApiLink: import_zod.z.string().meta({
|
|
583
|
+
description: "The API link for the person. Relative to the API origin."
|
|
395
584
|
})
|
|
396
585
|
}).meta({
|
|
397
|
-
id: "
|
|
398
|
-
description: "Defines
|
|
586
|
+
id: "ApiDatasetPersonSummary",
|
|
587
|
+
description: "Defines a summary of a person in a dataset."
|
|
399
588
|
});
|
|
400
|
-
const
|
|
589
|
+
const ApiDatasetPeopleSchema = import_zod.z.object({
|
|
401
590
|
/**
|
|
402
|
-
* The
|
|
591
|
+
* The dataset information for the people.
|
|
403
592
|
*/
|
|
404
|
-
|
|
405
|
-
description: "The
|
|
593
|
+
dataset: import_zod.z.lazy(() => ApiDatasetSchema).meta({
|
|
594
|
+
description: "The dataset information for the people."
|
|
406
595
|
}),
|
|
407
596
|
/**
|
|
408
|
-
* The
|
|
597
|
+
* The list of people that are available for the dataset.
|
|
409
598
|
*/
|
|
410
|
-
|
|
411
|
-
description: "The
|
|
599
|
+
people: import_zod.z.array(ApiDatasetPersonSummarySchema).meta({
|
|
600
|
+
description: "The list of people that are available for the dataset."
|
|
412
601
|
})
|
|
413
602
|
}).meta({
|
|
414
|
-
id: "
|
|
415
|
-
description: "
|
|
603
|
+
id: "ApiDatasetPeople",
|
|
604
|
+
description: "The list of people in a dataset. Maps to the /api/d/:datasetId/people.json endpoint."
|
|
416
605
|
});
|
|
417
|
-
const
|
|
606
|
+
const ApiDatasetPersonSchema = import_zod.z.object({
|
|
418
607
|
/**
|
|
419
|
-
* The
|
|
608
|
+
* The dataset information for the person.
|
|
420
609
|
*/
|
|
421
|
-
|
|
422
|
-
description: "The
|
|
610
|
+
dataset: import_zod.z.lazy(() => ApiDatasetSchema).meta({
|
|
611
|
+
description: "The dataset information for the person."
|
|
423
612
|
}),
|
|
424
613
|
/**
|
|
425
|
-
* The
|
|
614
|
+
* The information about the person.
|
|
426
615
|
*/
|
|
427
|
-
|
|
428
|
-
description: "The
|
|
616
|
+
person: import_common_types.DatasetPersonSchema.meta({
|
|
617
|
+
description: "The information about the person."
|
|
429
618
|
}),
|
|
430
619
|
/**
|
|
431
|
-
* The
|
|
620
|
+
* The API link for this person.
|
|
432
621
|
*/
|
|
433
|
-
|
|
434
|
-
description: "The
|
|
435
|
-
})
|
|
622
|
+
thisPersonApiLink: import_zod.z.string().meta({
|
|
623
|
+
description: "The API link for this person. Relative to the API origin."
|
|
624
|
+
})
|
|
625
|
+
}).meta({
|
|
626
|
+
id: "ApiDatasetPerson",
|
|
627
|
+
description: "The information about a person in a dataset. Maps to the /api/d/:datasetId/people/:personId.json endpoint."
|
|
628
|
+
});
|
|
629
|
+
const ApiDatasetPlaceSummarySchema = import_zod.z.object({
|
|
436
630
|
/**
|
|
437
|
-
* The
|
|
631
|
+
* The ID of the place.
|
|
438
632
|
*/
|
|
439
|
-
|
|
440
|
-
description: "The
|
|
633
|
+
id: import_zod.z.string().meta({
|
|
634
|
+
description: "The ID of the place."
|
|
441
635
|
}),
|
|
442
636
|
/**
|
|
443
|
-
* The
|
|
637
|
+
* The name of the place.
|
|
444
638
|
*/
|
|
445
|
-
|
|
446
|
-
description: "The
|
|
639
|
+
name: import_zod.z.string().meta({
|
|
640
|
+
description: "The name of the place."
|
|
447
641
|
}),
|
|
448
642
|
/**
|
|
449
|
-
* The
|
|
643
|
+
* The type of geographical feature that the place is.
|
|
450
644
|
*/
|
|
451
|
-
|
|
452
|
-
description:
|
|
453
|
-
})
|
|
454
|
-
}).meta({
|
|
455
|
-
id: "ApiTranslationBook",
|
|
456
|
-
description: "Defines a schema that contains information about a translation book."
|
|
457
|
-
});
|
|
458
|
-
const ApiCommentaryBookSchema = import_common_types.CommentaryBookSchema.extend({
|
|
645
|
+
featureType: import_zod.z.string().optional().meta({
|
|
646
|
+
description: 'The type of geographical feature that the place is. For example, "City", "Region", "Mountain", "Water", etc.'
|
|
647
|
+
}),
|
|
459
648
|
/**
|
|
460
|
-
* The
|
|
461
|
-
*
|
|
462
|
-
* Null if the comentary book has no chapters.
|
|
649
|
+
* The latitude of the place.
|
|
463
650
|
*/
|
|
464
|
-
|
|
465
|
-
description: "The
|
|
651
|
+
latitude: import_zod.z.number().optional().meta({
|
|
652
|
+
description: "The latitude of the place."
|
|
466
653
|
}),
|
|
467
654
|
/**
|
|
468
|
-
* The
|
|
469
|
-
*
|
|
470
|
-
* Null if the comentary book has no chapters.
|
|
655
|
+
* The longitude of the place.
|
|
471
656
|
*/
|
|
472
|
-
|
|
473
|
-
description: "The
|
|
657
|
+
longitude: import_zod.z.number().optional().meta({
|
|
658
|
+
description: "The longitude of the place."
|
|
474
659
|
}),
|
|
475
660
|
/**
|
|
476
|
-
* The number of
|
|
477
|
-
*
|
|
478
|
-
* Null if the comentary book has no chapters.
|
|
661
|
+
* The number of Bible references that mention the place.
|
|
479
662
|
*/
|
|
480
|
-
|
|
481
|
-
description: "The number of
|
|
663
|
+
numberOfReferences: import_zod.z.number().meta({
|
|
664
|
+
description: "The number of Bible references that mention the place."
|
|
482
665
|
}),
|
|
483
666
|
/**
|
|
484
|
-
* The link
|
|
485
|
-
*
|
|
486
|
-
* Null if the comentary book has no chapters.
|
|
667
|
+
* The API link for the place.
|
|
487
668
|
*/
|
|
488
|
-
|
|
489
|
-
description: "The link
|
|
490
|
-
})
|
|
669
|
+
thisPlaceApiLink: import_zod.z.string().meta({
|
|
670
|
+
description: "The API link for the place. Relative to the API origin."
|
|
671
|
+
})
|
|
672
|
+
}).meta({
|
|
673
|
+
id: "ApiDatasetPlaceSummary",
|
|
674
|
+
description: "Defines a summary of a place in a dataset."
|
|
675
|
+
});
|
|
676
|
+
const ApiDatasetPlacesSchema = import_zod.z.object({
|
|
491
677
|
/**
|
|
492
|
-
* The
|
|
678
|
+
* The dataset information for the places.
|
|
493
679
|
*/
|
|
494
|
-
|
|
495
|
-
description: "The
|
|
680
|
+
dataset: import_zod.z.lazy(() => ApiDatasetSchema).meta({
|
|
681
|
+
description: "The dataset information for the places."
|
|
496
682
|
}),
|
|
497
683
|
/**
|
|
498
|
-
* The
|
|
684
|
+
* The list of places that are available for the dataset.
|
|
499
685
|
*/
|
|
500
|
-
|
|
501
|
-
description: "The
|
|
686
|
+
places: import_zod.z.array(ApiDatasetPlaceSummarySchema).meta({
|
|
687
|
+
description: "The list of places that are available for the dataset."
|
|
502
688
|
})
|
|
503
689
|
}).meta({
|
|
504
|
-
id: "
|
|
505
|
-
description: "
|
|
690
|
+
id: "ApiDatasetPlaces",
|
|
691
|
+
description: "The list of places in a dataset. Maps to the /api/d/:datasetId/places.json endpoint."
|
|
506
692
|
});
|
|
507
|
-
const
|
|
693
|
+
const ApiDatasetPlaceSchema = import_zod.z.object({
|
|
508
694
|
/**
|
|
509
|
-
* The
|
|
695
|
+
* The dataset information for the place.
|
|
510
696
|
*/
|
|
511
|
-
|
|
512
|
-
description: "The
|
|
697
|
+
dataset: import_zod.z.lazy(() => ApiDatasetSchema).meta({
|
|
698
|
+
description: "The dataset information for the place."
|
|
513
699
|
}),
|
|
514
700
|
/**
|
|
515
|
-
* The
|
|
701
|
+
* The information about the place.
|
|
516
702
|
*/
|
|
517
|
-
|
|
518
|
-
description: "The
|
|
703
|
+
place: import_common_types.DatasetPlaceSchema.meta({
|
|
704
|
+
description: "The information about the place."
|
|
519
705
|
}),
|
|
520
706
|
/**
|
|
521
|
-
* The
|
|
707
|
+
* The API link for this place.
|
|
522
708
|
*/
|
|
523
|
-
|
|
524
|
-
description: "The
|
|
709
|
+
thisPlaceApiLink: import_zod.z.string().meta({
|
|
710
|
+
description: "The API link for this place. Relative to the API origin."
|
|
711
|
+
})
|
|
712
|
+
}).meta({
|
|
713
|
+
id: "ApiDatasetPlace",
|
|
714
|
+
description: "The information about a place in a dataset. Maps to the /api/d/:datasetId/places/:placeId.json endpoint."
|
|
715
|
+
});
|
|
716
|
+
const ApiDatasetEventSummarySchema = import_zod.z.object({
|
|
717
|
+
/**
|
|
718
|
+
* The ID of the event.
|
|
719
|
+
*/
|
|
720
|
+
id: import_zod.z.string().meta({
|
|
721
|
+
description: "The ID of the event."
|
|
525
722
|
}),
|
|
526
723
|
/**
|
|
527
|
-
* The
|
|
724
|
+
* The name of the event.
|
|
528
725
|
*/
|
|
529
|
-
|
|
530
|
-
description: "The
|
|
726
|
+
name: import_zod.z.string().meta({
|
|
727
|
+
description: "The name of the event."
|
|
531
728
|
}),
|
|
532
729
|
/**
|
|
533
|
-
* The
|
|
730
|
+
* The date that the event started at.
|
|
534
731
|
*/
|
|
535
|
-
|
|
536
|
-
description: "The
|
|
732
|
+
startDate: import_zod.z.string().optional().meta({
|
|
733
|
+
description: "The date that the event started at. Negative numbers are years BC. Positive numbers are years AD. More specific dates use the `YYYY-MM-DD` format."
|
|
537
734
|
}),
|
|
538
735
|
/**
|
|
539
|
-
* The number of
|
|
736
|
+
* The number of Bible references that describe the event.
|
|
540
737
|
*/
|
|
541
|
-
|
|
542
|
-
description: "The number of
|
|
738
|
+
numberOfReferences: import_zod.z.number().meta({
|
|
739
|
+
description: "The number of Bible references that describe the event."
|
|
543
740
|
}),
|
|
544
741
|
/**
|
|
545
|
-
* The
|
|
742
|
+
* The API link for the event.
|
|
546
743
|
*/
|
|
547
|
-
|
|
548
|
-
description: "The
|
|
744
|
+
thisEventApiLink: import_zod.z.string().meta({
|
|
745
|
+
description: "The API link for the event. Relative to the API origin."
|
|
549
746
|
})
|
|
550
747
|
}).meta({
|
|
551
|
-
id: "
|
|
552
|
-
description: "Defines a
|
|
748
|
+
id: "ApiDatasetEventSummary",
|
|
749
|
+
description: "Defines a summary of an event in a dataset."
|
|
553
750
|
});
|
|
554
|
-
const
|
|
751
|
+
const ApiDatasetEventsSchema = import_zod.z.object({
|
|
555
752
|
/**
|
|
556
|
-
* The
|
|
753
|
+
* The dataset information for the events.
|
|
557
754
|
*/
|
|
558
|
-
|
|
559
|
-
description: "The
|
|
755
|
+
dataset: import_zod.z.lazy(() => ApiDatasetSchema).meta({
|
|
756
|
+
description: "The dataset information for the events."
|
|
560
757
|
}),
|
|
561
758
|
/**
|
|
562
|
-
* The
|
|
759
|
+
* The list of events that are available for the dataset.
|
|
563
760
|
*/
|
|
564
|
-
|
|
565
|
-
description: "The
|
|
566
|
-
})
|
|
761
|
+
events: import_zod.z.array(ApiDatasetEventSummarySchema).meta({
|
|
762
|
+
description: "The list of events that are available for the dataset."
|
|
763
|
+
})
|
|
764
|
+
}).meta({
|
|
765
|
+
id: "ApiDatasetEvents",
|
|
766
|
+
description: "The list of events in a dataset. Maps to the /api/d/:datasetId/events.json endpoint."
|
|
767
|
+
});
|
|
768
|
+
const ApiDatasetEventSchema = import_zod.z.object({
|
|
567
769
|
/**
|
|
568
|
-
* The
|
|
770
|
+
* The dataset information for the event.
|
|
569
771
|
*/
|
|
570
|
-
|
|
571
|
-
description: "The
|
|
772
|
+
dataset: import_zod.z.lazy(() => ApiDatasetSchema).meta({
|
|
773
|
+
description: "The dataset information for the event."
|
|
572
774
|
}),
|
|
573
775
|
/**
|
|
574
|
-
* The
|
|
575
|
-
* Null if this is the last chapter in the translation.
|
|
776
|
+
* The information about the event.
|
|
576
777
|
*/
|
|
577
|
-
|
|
578
|
-
description: "The
|
|
778
|
+
event: import_common_types.DatasetEventSchema.meta({
|
|
779
|
+
description: "The information about the event."
|
|
579
780
|
}),
|
|
580
781
|
/**
|
|
581
|
-
* The
|
|
582
|
-
* Null if this is the last chapter in the translation.
|
|
782
|
+
* The API link for this event.
|
|
583
783
|
*/
|
|
584
|
-
|
|
585
|
-
description: "The
|
|
784
|
+
thisEventApiLink: import_zod.z.string().meta({
|
|
785
|
+
description: "The API link for this event. Relative to the API origin."
|
|
786
|
+
})
|
|
787
|
+
}).meta({
|
|
788
|
+
id: "ApiDatasetEvent",
|
|
789
|
+
description: "The information about an event in a dataset. Maps to the /api/d/:datasetId/events/:eventId.json endpoint."
|
|
790
|
+
});
|
|
791
|
+
const ApiDatasetPeopleGroupSummarySchema = import_zod.z.object({
|
|
792
|
+
/**
|
|
793
|
+
* The ID of the people group.
|
|
794
|
+
*/
|
|
795
|
+
id: import_zod.z.string().meta({
|
|
796
|
+
description: "The ID of the people group."
|
|
586
797
|
}),
|
|
587
798
|
/**
|
|
588
|
-
* The
|
|
589
|
-
* Null if this is the first chapter in the translation.
|
|
799
|
+
* The name of the people group.
|
|
590
800
|
*/
|
|
591
|
-
|
|
592
|
-
description: "The
|
|
801
|
+
name: import_zod.z.string().meta({
|
|
802
|
+
description: "The name of the people group."
|
|
593
803
|
}),
|
|
594
804
|
/**
|
|
595
|
-
* The
|
|
596
|
-
* Null if this is the first chapter in the translation.
|
|
805
|
+
* The number of people that are members of the people group.
|
|
597
806
|
*/
|
|
598
|
-
|
|
599
|
-
description: "The
|
|
807
|
+
numberOfMembers: import_zod.z.number().meta({
|
|
808
|
+
description: "The number of people that are members of the people group."
|
|
600
809
|
}),
|
|
601
810
|
/**
|
|
602
|
-
* The
|
|
811
|
+
* The API link for the people group.
|
|
603
812
|
*/
|
|
604
|
-
|
|
605
|
-
description: "The
|
|
813
|
+
thisPeopleGroupApiLink: import_zod.z.string().meta({
|
|
814
|
+
description: "The API link for the people group. Relative to the API origin."
|
|
606
815
|
})
|
|
607
816
|
}).meta({
|
|
608
|
-
id: "
|
|
609
|
-
description: "Defines
|
|
817
|
+
id: "ApiDatasetPeopleGroupSummary",
|
|
818
|
+
description: "Defines a summary of a people group in a dataset."
|
|
610
819
|
});
|
|
611
|
-
const
|
|
820
|
+
const ApiDatasetPeopleGroupsSchema = import_zod.z.object({
|
|
612
821
|
/**
|
|
613
|
-
* The
|
|
822
|
+
* The dataset information for the people groups.
|
|
614
823
|
*/
|
|
615
|
-
|
|
616
|
-
description: "The
|
|
824
|
+
dataset: import_zod.z.lazy(() => ApiDatasetSchema).meta({
|
|
825
|
+
description: "The dataset information for the people groups."
|
|
617
826
|
}),
|
|
618
827
|
/**
|
|
619
|
-
* The
|
|
828
|
+
* The list of people groups that are available for the dataset.
|
|
620
829
|
*/
|
|
621
|
-
|
|
622
|
-
description: "The
|
|
623
|
-
})
|
|
830
|
+
groups: import_zod.z.array(ApiDatasetPeopleGroupSummarySchema).meta({
|
|
831
|
+
description: "The list of people groups that are available for the dataset."
|
|
832
|
+
})
|
|
833
|
+
}).meta({
|
|
834
|
+
id: "ApiDatasetPeopleGroups",
|
|
835
|
+
description: "The list of people groups in a dataset. Maps to the /api/d/:datasetId/groups.json endpoint."
|
|
836
|
+
});
|
|
837
|
+
const ApiDatasetPeopleGroupSchema = import_zod.z.object({
|
|
624
838
|
/**
|
|
625
|
-
* The
|
|
839
|
+
* The dataset information for the people group.
|
|
626
840
|
*/
|
|
627
|
-
|
|
628
|
-
description: "The
|
|
841
|
+
dataset: import_zod.z.lazy(() => ApiDatasetSchema).meta({
|
|
842
|
+
description: "The dataset information for the people group."
|
|
629
843
|
}),
|
|
844
|
+
/**
|
|
845
|
+
* The information about the people group.
|
|
846
|
+
*/
|
|
847
|
+
group: import_common_types.DatasetPeopleGroupSchema.meta({
|
|
848
|
+
description: "The information about the people group."
|
|
849
|
+
}),
|
|
850
|
+
/**
|
|
851
|
+
* The API link for this people group.
|
|
852
|
+
*/
|
|
853
|
+
thisPeopleGroupApiLink: import_zod.z.string().meta({
|
|
854
|
+
description: "The API link for this people group. Relative to the API origin."
|
|
855
|
+
})
|
|
856
|
+
}).meta({
|
|
857
|
+
id: "ApiDatasetPeopleGroup",
|
|
858
|
+
description: "The information about a people group in a dataset. Maps to the /api/d/:datasetId/groups/:groupId.json endpoint."
|
|
859
|
+
});
|
|
860
|
+
const ApiDatasetChapterPersonSchema = import_zod.z.object({
|
|
861
|
+
/**
|
|
862
|
+
* The ID of the person.
|
|
863
|
+
*/
|
|
864
|
+
id: import_zod.z.string().meta({
|
|
865
|
+
description: "The ID of the person."
|
|
866
|
+
}),
|
|
867
|
+
/**
|
|
868
|
+
* The name of the person.
|
|
869
|
+
*/
|
|
870
|
+
name: import_zod.z.string().meta({
|
|
871
|
+
description: "The name of the person."
|
|
872
|
+
}),
|
|
873
|
+
/**
|
|
874
|
+
* Whether the name of the person is a proper name.
|
|
875
|
+
*/
|
|
876
|
+
isProperName: import_zod.z.boolean().optional().meta({
|
|
877
|
+
description: "Whether the name of the person is a proper name."
|
|
878
|
+
}),
|
|
879
|
+
/**
|
|
880
|
+
* The gender of the person.
|
|
881
|
+
*/
|
|
882
|
+
gender: import_zod.z.string().optional().meta({
|
|
883
|
+
description: "The gender of the person."
|
|
884
|
+
}),
|
|
885
|
+
/**
|
|
886
|
+
* The year that the person was born.
|
|
887
|
+
* Negative numbers are years BC. Positive numbers are years AD.
|
|
888
|
+
*/
|
|
889
|
+
birthYear: import_zod.z.number().optional().meta({
|
|
890
|
+
description: "The year that the person was born. Negative numbers are years BC. Positive numbers are years AD."
|
|
891
|
+
}),
|
|
892
|
+
/**
|
|
893
|
+
* The year that the person died.
|
|
894
|
+
* Negative numbers are years BC. Positive numbers are years AD.
|
|
895
|
+
*/
|
|
896
|
+
deathYear: import_zod.z.number().optional().meta({
|
|
897
|
+
description: "The year that the person died. Negative numbers are years BC. Positive numbers are years AD."
|
|
898
|
+
}),
|
|
899
|
+
/**
|
|
900
|
+
* The API link for the person.
|
|
901
|
+
*/
|
|
902
|
+
apiLink: import_zod.z.string().meta({
|
|
903
|
+
description: "The API link for the person. Relative to the API origin."
|
|
904
|
+
}),
|
|
905
|
+
/**
|
|
906
|
+
* The numbers of the verses in the chapter that mention the person.
|
|
907
|
+
* Sorted in ascending order.
|
|
908
|
+
*/
|
|
909
|
+
verses: import_zod.z.array(import_zod.z.number()).meta({
|
|
910
|
+
description: "The numbers of the verses in the chapter that mention the person. Sorted in ascending order."
|
|
911
|
+
})
|
|
912
|
+
}).meta({
|
|
913
|
+
id: "ApiDatasetChapterPerson",
|
|
914
|
+
description: "Defines a person that appears in a chapter of a dataset."
|
|
915
|
+
});
|
|
916
|
+
const ApiDatasetChapterPlaceSchema = import_zod.z.object({
|
|
917
|
+
/**
|
|
918
|
+
* The ID of the place.
|
|
919
|
+
*/
|
|
920
|
+
id: import_zod.z.string().meta({
|
|
921
|
+
description: "The ID of the place."
|
|
922
|
+
}),
|
|
923
|
+
/**
|
|
924
|
+
* The name of the place.
|
|
925
|
+
*/
|
|
926
|
+
name: import_zod.z.string().meta({
|
|
927
|
+
description: "The name of the place."
|
|
928
|
+
}),
|
|
929
|
+
/**
|
|
930
|
+
* The type of geographical feature that the place is.
|
|
931
|
+
*/
|
|
932
|
+
featureType: import_zod.z.string().optional().meta({
|
|
933
|
+
description: 'The type of geographical feature that the place is. For example, "City", "Region", "Mountain", "Water", etc.'
|
|
934
|
+
}),
|
|
935
|
+
/**
|
|
936
|
+
* The latitude of the place.
|
|
937
|
+
*/
|
|
938
|
+
latitude: import_zod.z.number().optional().meta({
|
|
939
|
+
description: "The latitude of the place."
|
|
940
|
+
}),
|
|
941
|
+
/**
|
|
942
|
+
* The longitude of the place.
|
|
943
|
+
*/
|
|
944
|
+
longitude: import_zod.z.number().optional().meta({
|
|
945
|
+
description: "The longitude of the place."
|
|
946
|
+
}),
|
|
947
|
+
/**
|
|
948
|
+
* The API link for the place.
|
|
949
|
+
*/
|
|
950
|
+
apiLink: import_zod.z.string().meta({
|
|
951
|
+
description: "The API link for the place. Relative to the API origin."
|
|
952
|
+
}),
|
|
953
|
+
/**
|
|
954
|
+
* The numbers of the verses in the chapter that mention the place.
|
|
955
|
+
* Sorted in ascending order.
|
|
956
|
+
*/
|
|
957
|
+
verses: import_zod.z.array(import_zod.z.number()).meta({
|
|
958
|
+
description: "The numbers of the verses in the chapter that mention the place. Sorted in ascending order."
|
|
959
|
+
})
|
|
960
|
+
}).meta({
|
|
961
|
+
id: "ApiDatasetChapterPlace",
|
|
962
|
+
description: "Defines a place that appears in a chapter of a dataset."
|
|
963
|
+
});
|
|
964
|
+
const ApiDatasetChapterEventSchema = import_zod.z.object({
|
|
965
|
+
/**
|
|
966
|
+
* The ID of the event.
|
|
967
|
+
*/
|
|
968
|
+
id: import_zod.z.string().meta({
|
|
969
|
+
description: "The ID of the event."
|
|
970
|
+
}),
|
|
971
|
+
/**
|
|
972
|
+
* The name of the event.
|
|
973
|
+
*/
|
|
974
|
+
name: import_zod.z.string().meta({
|
|
975
|
+
description: "The name of the event."
|
|
976
|
+
}),
|
|
977
|
+
/**
|
|
978
|
+
* The date that the event started at.
|
|
979
|
+
*/
|
|
980
|
+
startDate: import_zod.z.string().optional().meta({
|
|
981
|
+
description: "The date that the event started at. Negative numbers are years BC. Positive numbers are years AD. More specific dates use the `YYYY-MM-DD` format."
|
|
982
|
+
}),
|
|
983
|
+
/**
|
|
984
|
+
* The API link for the event.
|
|
985
|
+
*/
|
|
986
|
+
apiLink: import_zod.z.string().meta({
|
|
987
|
+
description: "The API link for the event. Relative to the API origin."
|
|
988
|
+
}),
|
|
989
|
+
/**
|
|
990
|
+
* The numbers of the verses in the chapter that describe the event.
|
|
991
|
+
* Sorted in ascending order.
|
|
992
|
+
*/
|
|
993
|
+
verses: import_zod.z.array(import_zod.z.number()).meta({
|
|
994
|
+
description: "The numbers of the verses in the chapter that describe the event. Sorted in ascending order."
|
|
995
|
+
})
|
|
996
|
+
}).meta({
|
|
997
|
+
id: "ApiDatasetChapterEvent",
|
|
998
|
+
description: "Defines an event that appears in a chapter of a dataset."
|
|
999
|
+
});
|
|
1000
|
+
const ApiDatasetEntityChapterDataSchema = import_zod.z.object({
|
|
1001
|
+
/**
|
|
1002
|
+
* The number of the chapter.
|
|
1003
|
+
*/
|
|
1004
|
+
number: import_zod.z.number().meta({
|
|
1005
|
+
description: "The number of the chapter."
|
|
1006
|
+
}),
|
|
1007
|
+
/**
|
|
1008
|
+
* The people that appear in the chapter.
|
|
1009
|
+
* Sorted by the first verse that they appear in.
|
|
1010
|
+
*/
|
|
1011
|
+
people: import_zod.z.array(ApiDatasetChapterPersonSchema).meta({
|
|
1012
|
+
description: "The people that appear in the chapter. Sorted by the first verse that they appear in."
|
|
1013
|
+
}),
|
|
1014
|
+
/**
|
|
1015
|
+
* The places that appear in the chapter.
|
|
1016
|
+
* Sorted by the first verse that they appear in.
|
|
1017
|
+
*/
|
|
1018
|
+
places: import_zod.z.array(ApiDatasetChapterPlaceSchema).meta({
|
|
1019
|
+
description: "The places that appear in the chapter. Sorted by the first verse that they appear in."
|
|
1020
|
+
}),
|
|
1021
|
+
/**
|
|
1022
|
+
* The events that appear in the chapter.
|
|
1023
|
+
* Sorted by the first verse that they appear in.
|
|
1024
|
+
*/
|
|
1025
|
+
events: import_zod.z.array(ApiDatasetChapterEventSchema).meta({
|
|
1026
|
+
description: "The events that appear in the chapter. Sorted by the first verse that they appear in."
|
|
1027
|
+
})
|
|
1028
|
+
}).meta({
|
|
1029
|
+
id: "ApiDatasetEntityChapterData",
|
|
1030
|
+
description: "Defines the entity data for a chapter in a dataset. Contains the people, places, and events that appear in the chapter."
|
|
1031
|
+
});
|
|
1032
|
+
const ApiDatasetEntityBookChapterSchema = import_zod.z.object({
|
|
1033
|
+
/**
|
|
1034
|
+
* The dataset information for the book chapter.
|
|
1035
|
+
*/
|
|
1036
|
+
dataset: import_zod.z.lazy(() => ApiDatasetSchema).meta({
|
|
1037
|
+
description: "The dataset information for the book chapter."
|
|
1038
|
+
}),
|
|
1039
|
+
/**
|
|
1040
|
+
* The book information for the book chapter.
|
|
1041
|
+
*/
|
|
1042
|
+
book: import_zod.z.lazy(() => ApiDatasetBookSchema).meta({
|
|
1043
|
+
description: "The book information for the book chapter."
|
|
1044
|
+
}),
|
|
1045
|
+
/**
|
|
1046
|
+
* The entity data for the chapter.
|
|
1047
|
+
*/
|
|
1048
|
+
chapter: ApiDatasetEntityChapterDataSchema.meta({
|
|
1049
|
+
description: "The entity data for the chapter."
|
|
1050
|
+
}),
|
|
1051
|
+
/**
|
|
1052
|
+
* The link to this chapter.
|
|
1053
|
+
*/
|
|
1054
|
+
thisChapterLink: import_zod.z.string().meta({
|
|
1055
|
+
description: "The link to this chapter. Relative to the API origin."
|
|
1056
|
+
}),
|
|
1057
|
+
/**
|
|
1058
|
+
* The reference for this chapter.
|
|
1059
|
+
*/
|
|
1060
|
+
thisChapterReference: import_zod.z.lazy(() => DatasetChapterReferenceSchema).meta({
|
|
1061
|
+
description: "The reference for this chapter."
|
|
1062
|
+
}),
|
|
1063
|
+
/**
|
|
1064
|
+
* The link to the next chapter.
|
|
1065
|
+
* Null if this is the last chapter in the dataset.
|
|
1066
|
+
*/
|
|
1067
|
+
nextChapterApiLink: import_zod.z.string().nullable().meta({
|
|
1068
|
+
description: "The link to the next chapter. Relative to the API origin. Null if this is the last chapter in the dataset."
|
|
1069
|
+
}),
|
|
1070
|
+
/**
|
|
1071
|
+
* The reference for the next chapter.
|
|
1072
|
+
* Null if this is the last chapter in the dataset.
|
|
1073
|
+
*/
|
|
1074
|
+
nextChapterReference: import_zod.z.lazy(() => DatasetChapterReferenceSchema).nullable().meta({
|
|
1075
|
+
description: "The reference for the next chapter. Null if this is the last chapter in the dataset."
|
|
1076
|
+
}),
|
|
1077
|
+
/**
|
|
1078
|
+
* The link to the previous chapter.
|
|
1079
|
+
* Null if this is the first chapter in the dataset.
|
|
1080
|
+
*/
|
|
1081
|
+
previousChapterApiLink: import_zod.z.string().nullable().meta({
|
|
1082
|
+
description: "The link to the previous chapter. Relative to the API origin. Null if this is the first chapter in the dataset."
|
|
1083
|
+
}),
|
|
1084
|
+
/**
|
|
1085
|
+
* The reference for the previous chapter.
|
|
1086
|
+
* Null if this is the first chapter in the dataset.
|
|
1087
|
+
*/
|
|
1088
|
+
previousChapterReference: import_zod.z.lazy(() => DatasetChapterReferenceSchema).nullable().meta({
|
|
1089
|
+
description: "The reference for the previous chapter. Null if this is the first chapter in the dataset."
|
|
1090
|
+
}),
|
|
1091
|
+
/**
|
|
1092
|
+
* The number of people that appear in the chapter.
|
|
1093
|
+
*/
|
|
1094
|
+
numberOfPeople: import_zod.z.number().meta({
|
|
1095
|
+
description: "The number of people that appear in the chapter."
|
|
1096
|
+
}),
|
|
1097
|
+
/**
|
|
1098
|
+
* The number of places that appear in the chapter.
|
|
1099
|
+
*/
|
|
1100
|
+
numberOfPlaces: import_zod.z.number().meta({
|
|
1101
|
+
description: "The number of places that appear in the chapter."
|
|
1102
|
+
}),
|
|
1103
|
+
/**
|
|
1104
|
+
* The number of events that appear in the chapter.
|
|
1105
|
+
*/
|
|
1106
|
+
numberOfEvents: import_zod.z.number().meta({
|
|
1107
|
+
description: "The number of events that appear in the chapter."
|
|
1108
|
+
})
|
|
1109
|
+
}).meta({
|
|
1110
|
+
id: "ApiDatasetEntityBookChapter",
|
|
1111
|
+
description: "The entities (people, places, and events) that appear in a chapter of a book for a dataset. Maps to the /api/d/:datasetId/:bookId/:chapterNumber.json endpoint for datasets that contain entities."
|
|
1112
|
+
});
|
|
1113
|
+
const ApiCommentaryProfilesSchema = import_zod.z.object({
|
|
1114
|
+
/**
|
|
1115
|
+
* The commentary information for the books.
|
|
1116
|
+
*/
|
|
1117
|
+
commentary: import_zod.z.lazy(() => ApiCommentarySchema).meta({
|
|
1118
|
+
description: "The commentary information for the profiles."
|
|
1119
|
+
}),
|
|
1120
|
+
/**
|
|
1121
|
+
* The list of profiles that are available for the commentary.
|
|
1122
|
+
*/
|
|
1123
|
+
profiles: import_zod.z.array(import_zod.z.lazy(() => ApiCommentaryProfileSchema)).meta({
|
|
1124
|
+
description: "The list of profiles that are available for the commentary."
|
|
1125
|
+
})
|
|
1126
|
+
}).meta({
|
|
1127
|
+
id: "ApiCommentaryProfiles",
|
|
1128
|
+
description: "Defines an interface that contains information about the profiles that are available for a commentary."
|
|
1129
|
+
});
|
|
1130
|
+
const ApiCommentaryProfileSchema = import_common_types.CommentaryProfileSchema.extend({
|
|
1131
|
+
/**
|
|
1132
|
+
* The link to this profile.
|
|
1133
|
+
*/
|
|
1134
|
+
thisProfileLink: import_zod.z.string().meta({
|
|
1135
|
+
description: "The API link for this profile. Relative to the API origin."
|
|
1136
|
+
}),
|
|
1137
|
+
/**
|
|
1138
|
+
* The link to the chapter that this profile references in the commentary.
|
|
1139
|
+
*/
|
|
1140
|
+
referenceChapterLink: import_zod.z.string().nullable().meta({
|
|
1141
|
+
description: "The API link to the chapter that this profile references in the commentary. Relative to the API origin. Null if the profile doesn't reference a specific chapter."
|
|
1142
|
+
})
|
|
1143
|
+
}).meta({
|
|
1144
|
+
id: "ApiCommentaryProfile",
|
|
1145
|
+
description: "Defines an interface that contains information about a profile."
|
|
1146
|
+
});
|
|
1147
|
+
const TranslationChapterReferenceSchema = import_zod.z.object({
|
|
1148
|
+
translationId: import_zod.z.string().meta({
|
|
1149
|
+
description: "The ID of the translation that the chapter reference is for."
|
|
1150
|
+
}),
|
|
1151
|
+
book: import_utils.BookIdSchema,
|
|
1152
|
+
chapter: import_zod.z.int().positive().meta({
|
|
1153
|
+
description: "The chapter number of the chapter reference."
|
|
1154
|
+
})
|
|
1155
|
+
}).meta({
|
|
1156
|
+
id: "TranslationChapterReference",
|
|
1157
|
+
description: "Defines a reference to a chapter in a translation."
|
|
1158
|
+
});
|
|
1159
|
+
const CommentaryChapterReferenceSchema = import_zod.z.object({
|
|
1160
|
+
commentaryId: import_zod.z.string().meta({
|
|
1161
|
+
description: "The ID of the commentary that the chapter reference is for."
|
|
1162
|
+
}),
|
|
1163
|
+
book: import_utils.BookIdSchema,
|
|
1164
|
+
chapter: import_zod.z.int().positive().meta({
|
|
1165
|
+
description: "The chapter number of the chapter reference."
|
|
1166
|
+
})
|
|
1167
|
+
}).meta({
|
|
1168
|
+
id: "CommentaryChapterReference",
|
|
1169
|
+
description: "Defines a reference to a chapter in a commentary."
|
|
1170
|
+
});
|
|
1171
|
+
const DatasetChapterReferenceSchema = import_zod.z.object({
|
|
1172
|
+
datasetId: import_zod.z.string().meta({
|
|
1173
|
+
description: "The ID of the dataset that the chapter reference is for."
|
|
1174
|
+
}),
|
|
1175
|
+
book: import_utils.BookIdSchema,
|
|
1176
|
+
chapter: import_zod.z.int().positive().meta({
|
|
1177
|
+
description: "The chapter number of the chapter reference."
|
|
1178
|
+
})
|
|
1179
|
+
}).meta({
|
|
1180
|
+
id: "DatasetChapterReference",
|
|
1181
|
+
description: "Defines a reference to a chapter in a dataset."
|
|
1182
|
+
});
|
|
1183
|
+
const ApiTranslationBookSchema = import_common_types.TranslationBookSchema.extend({
|
|
1184
|
+
/**
|
|
1185
|
+
* The number of the first chapter in the book.
|
|
1186
|
+
*/
|
|
1187
|
+
firstChapterNumber: import_zod.z.number().meta({
|
|
1188
|
+
description: "The number of the first chapter in the book."
|
|
1189
|
+
}),
|
|
1190
|
+
/**
|
|
1191
|
+
* The link to the first chapter of the book.
|
|
1192
|
+
*/
|
|
1193
|
+
firstChapterApiLink: import_zod.z.string().meta({
|
|
1194
|
+
description: "The link to the first chapter of the book."
|
|
1195
|
+
}),
|
|
1196
|
+
/**
|
|
1197
|
+
* The reference for the first chapter in the book.
|
|
1198
|
+
*/
|
|
1199
|
+
firstChapterReference: TranslationChapterReferenceSchema,
|
|
1200
|
+
/**
|
|
1201
|
+
* The number of the last chapter in the book.
|
|
1202
|
+
*/
|
|
1203
|
+
lastChapterNumber: import_zod.z.number().meta({
|
|
1204
|
+
description: "The number of the last chapter in the book."
|
|
1205
|
+
}),
|
|
1206
|
+
/**
|
|
1207
|
+
* The link to the last chapter of the book.
|
|
1208
|
+
*/
|
|
1209
|
+
lastChapterApiLink: import_zod.z.string().meta({
|
|
1210
|
+
description: "The link to the last chapter of the book."
|
|
1211
|
+
}),
|
|
1212
|
+
/**
|
|
1213
|
+
* The reference for the last chapter in the book.
|
|
1214
|
+
*/
|
|
1215
|
+
lastChapterReference: TranslationChapterReferenceSchema,
|
|
1216
|
+
/**
|
|
1217
|
+
* The number of chapters that the book contains.
|
|
1218
|
+
*/
|
|
1219
|
+
numberOfChapters: import_zod.z.number().meta({
|
|
1220
|
+
description: "The number of chapters that the book contains."
|
|
1221
|
+
}),
|
|
1222
|
+
/**
|
|
1223
|
+
* The number of verses that the book contains.
|
|
1224
|
+
*/
|
|
1225
|
+
totalNumberOfVerses: import_zod.z.number().meta({
|
|
1226
|
+
description: "The number of verses that the book contains."
|
|
1227
|
+
})
|
|
1228
|
+
}).meta({
|
|
1229
|
+
id: "ApiTranslationBook",
|
|
1230
|
+
description: "Defines a schema that contains information about a translation book."
|
|
1231
|
+
});
|
|
1232
|
+
const ApiCommentaryBookSchema = import_common_types.CommentaryBookSchema.extend({
|
|
1233
|
+
/**
|
|
1234
|
+
* The number of the first chapter in the book.
|
|
1235
|
+
*
|
|
1236
|
+
* Null if the comentary book has no chapters.
|
|
1237
|
+
*/
|
|
1238
|
+
firstChapterNumber: import_zod.z.number().nullable().meta({
|
|
1239
|
+
description: "The number of the first chapter in the book. Null if the comentary book has no chapters."
|
|
1240
|
+
}),
|
|
1241
|
+
/**
|
|
1242
|
+
* The link to the first chapter of the book.
|
|
1243
|
+
*
|
|
1244
|
+
* Null if the comentary book has no chapters.
|
|
1245
|
+
*/
|
|
1246
|
+
firstChapterApiLink: import_zod.z.string().nullable().meta({
|
|
1247
|
+
description: "The link to the first chapter of the book. Null if the comentary book has no chapters."
|
|
1248
|
+
}),
|
|
1249
|
+
/**
|
|
1250
|
+
* The reference for the first chapter in the book.
|
|
1251
|
+
*/
|
|
1252
|
+
firstChapterReference: CommentaryChapterReferenceSchema.nullable().meta({
|
|
1253
|
+
description: "The reference for the first chapter in the book. Null if the comentary book has no chapters."
|
|
1254
|
+
}),
|
|
1255
|
+
/**
|
|
1256
|
+
* The number of the last chapter in the book.
|
|
1257
|
+
*
|
|
1258
|
+
* Null if the comentary book has no chapters.
|
|
1259
|
+
*/
|
|
1260
|
+
lastChapterNumber: import_zod.z.number().nullable().meta({
|
|
1261
|
+
description: "The number of the last chapter in the book. Null if the comentary book has no chapters."
|
|
1262
|
+
}),
|
|
1263
|
+
/**
|
|
1264
|
+
* The link to the last chapter of the book.
|
|
1265
|
+
*
|
|
1266
|
+
* Null if the comentary book has no chapters.
|
|
1267
|
+
*/
|
|
1268
|
+
lastChapterApiLink: import_zod.z.string().nullable().meta({
|
|
1269
|
+
description: "The link to the last chapter of the book. Null if the comentary book has no chapters."
|
|
1270
|
+
}),
|
|
1271
|
+
/**
|
|
1272
|
+
* The reference for the last chapter in the book.
|
|
1273
|
+
*/
|
|
1274
|
+
lastChapterReference: CommentaryChapterReferenceSchema.nullable().meta({
|
|
1275
|
+
description: "The reference for the last chapter in the book. Null if the comentary book has no chapters."
|
|
1276
|
+
}),
|
|
1277
|
+
/**
|
|
1278
|
+
* The number of chapters that the book contains.
|
|
1279
|
+
*/
|
|
1280
|
+
numberOfChapters: import_zod.z.number().meta({
|
|
1281
|
+
description: "The number of chapters that the book contains."
|
|
1282
|
+
}),
|
|
1283
|
+
/**
|
|
1284
|
+
* The number of verses that the book contains.
|
|
1285
|
+
*/
|
|
1286
|
+
totalNumberOfVerses: import_zod.z.number().meta({
|
|
1287
|
+
description: "The number of verses that the book contains."
|
|
1288
|
+
})
|
|
1289
|
+
}).meta({
|
|
1290
|
+
id: "ApiCommentaryBook",
|
|
1291
|
+
description: "Defines a schema that contains information about a commentary book."
|
|
1292
|
+
});
|
|
1293
|
+
const ApiDatasetBookSchema = import_common_types.DatasetBookSchema.extend({
|
|
1294
|
+
/**
|
|
1295
|
+
* The number of the first chapter in the book.
|
|
1296
|
+
*/
|
|
1297
|
+
firstChapterNumber: import_zod.z.number().meta({
|
|
1298
|
+
description: "The number of the first chapter in the book."
|
|
1299
|
+
}),
|
|
1300
|
+
/**
|
|
1301
|
+
* The link to the first chapter of the book.
|
|
1302
|
+
*/
|
|
1303
|
+
firstChapterApiLink: import_zod.z.string().meta({
|
|
1304
|
+
description: "The link to the first chapter of the book."
|
|
1305
|
+
}),
|
|
1306
|
+
/**
|
|
1307
|
+
* The reference for the first chapter in the book.
|
|
1308
|
+
*/
|
|
1309
|
+
firstChapterReference: DatasetChapterReferenceSchema,
|
|
1310
|
+
/**
|
|
1311
|
+
* The number of the last chapter in the book.
|
|
1312
|
+
*/
|
|
1313
|
+
lastChapterNumber: import_zod.z.number().meta({
|
|
1314
|
+
description: "The number of the last chapter in the book."
|
|
1315
|
+
}),
|
|
1316
|
+
/**
|
|
1317
|
+
* The link to the last chapter of the book.
|
|
1318
|
+
*/
|
|
1319
|
+
lastChapterApiLink: import_zod.z.string().meta({
|
|
1320
|
+
description: "The link to the last chapter of the book."
|
|
1321
|
+
}),
|
|
1322
|
+
/**
|
|
1323
|
+
* The reference for the last chapter in the book.
|
|
1324
|
+
*/
|
|
1325
|
+
lastChapterReference: DatasetChapterReferenceSchema,
|
|
1326
|
+
/**
|
|
1327
|
+
* The number of chapters that the book contains.
|
|
1328
|
+
*/
|
|
1329
|
+
numberOfChapters: import_zod.z.number().meta({
|
|
1330
|
+
description: "The number of chapters that the book contains."
|
|
1331
|
+
}),
|
|
1332
|
+
/**
|
|
1333
|
+
* The number of verses that the book contains.
|
|
1334
|
+
*/
|
|
1335
|
+
totalNumberOfVerses: import_zod.z.number().meta({
|
|
1336
|
+
description: "The number of verses that the book contains."
|
|
1337
|
+
}),
|
|
1338
|
+
/**
|
|
1339
|
+
* The number of references that the book contains.
|
|
1340
|
+
*/
|
|
1341
|
+
totalNumberOfReferences: import_zod.z.number().meta({
|
|
1342
|
+
description: "The number of references that the book contains."
|
|
1343
|
+
})
|
|
1344
|
+
}).meta({
|
|
1345
|
+
id: "ApiDatasetBook",
|
|
1346
|
+
description: "Defines a schema that contains information about a book in a dataset."
|
|
1347
|
+
});
|
|
1348
|
+
const ApiTranslationBookChapterBaseSchema = import_common_types.TranslationBookChapterSchema.omit({
|
|
1349
|
+
thisChapterWords: true
|
|
1350
|
+
});
|
|
1351
|
+
const ApiTranslationBookChapterSchema = ApiTranslationBookChapterBaseSchema.extend({
|
|
1352
|
+
/**
|
|
1353
|
+
* The translation information for the book chapter.
|
|
1354
|
+
*/
|
|
1355
|
+
translation: import_zod.z.lazy(() => ApiTranslationSchema).meta({
|
|
1356
|
+
description: "The translation information for the book chapter."
|
|
1357
|
+
}),
|
|
1358
|
+
/**
|
|
1359
|
+
* The book information for the book chapter.
|
|
1360
|
+
*/
|
|
1361
|
+
book: import_zod.z.lazy(() => ApiTranslationBookSchema).meta({
|
|
1362
|
+
description: "The book information for the book chapter."
|
|
1363
|
+
}),
|
|
1364
|
+
/**
|
|
1365
|
+
* The link to this chapter.
|
|
1366
|
+
*/
|
|
1367
|
+
thisChapterLink: import_zod.z.string().meta({
|
|
1368
|
+
description: "The API link for this chapter. Relative to the API origin."
|
|
1369
|
+
}),
|
|
1370
|
+
/**
|
|
1371
|
+
* The reference for this chapter.
|
|
1372
|
+
*/
|
|
1373
|
+
thisChapterReference: TranslationChapterReferenceSchema,
|
|
1374
|
+
/**
|
|
1375
|
+
* The link to the next chapter.
|
|
1376
|
+
* Null if this is the last chapter in the translation.
|
|
1377
|
+
*/
|
|
1378
|
+
nextChapterApiLink: import_zod.z.string().nullable().meta({
|
|
1379
|
+
description: "The API link to the next chapter. Relative to the API origin. Null if this is the last chapter in the translation."
|
|
1380
|
+
}),
|
|
1381
|
+
/**
|
|
1382
|
+
* The reference for the next chapter.
|
|
1383
|
+
* Null if this is the last chapter in the translation.
|
|
1384
|
+
*/
|
|
1385
|
+
nextChapterReference: TranslationChapterReferenceSchema.nullable().meta(
|
|
1386
|
+
{
|
|
1387
|
+
description: "The reference for the next chapter. Null if this is the last chapter in the translation."
|
|
1388
|
+
}
|
|
1389
|
+
),
|
|
1390
|
+
/**
|
|
1391
|
+
* The links to the audio versions for the next chapter.
|
|
1392
|
+
* Null if this is the last chapter in the translation.
|
|
1393
|
+
*/
|
|
1394
|
+
nextChapterAudioLinks: import_zod.z.record(import_zod.z.string(), import_zod.z.string()).nullable().meta({
|
|
1395
|
+
description: "The links to the audio versions for the next chapter. Relative to the API origin. Null if this is the last chapter in the translation."
|
|
1396
|
+
}),
|
|
1397
|
+
/**
|
|
1398
|
+
* The links to the audio timings for different audio versions for the chapter.
|
|
1399
|
+
*/
|
|
1400
|
+
thisChapterAudioTimings: import_zod.z.record(import_zod.z.string(), import_zod.z.string()).meta({
|
|
1401
|
+
description: "The links to the audio timings for different audio versions for the chapter. Relative to the API origin."
|
|
1402
|
+
}),
|
|
1403
|
+
/**
|
|
1404
|
+
* The links to the audio timings for different audio versions for the next chapter.
|
|
1405
|
+
* Null if this is the last chapter in the translation.
|
|
1406
|
+
*/
|
|
1407
|
+
nextChapterAudioTimings: import_zod.z.record(import_zod.z.string(), import_zod.z.string()).nullable().meta({
|
|
1408
|
+
description: "The links to the audio timings for different audio versions for the next chapter. Relative to the API origin. Null if this is the last chapter in the translation."
|
|
1409
|
+
}),
|
|
1410
|
+
/**
|
|
1411
|
+
* The links to the audio timings for different audio versions for the previous chapter.
|
|
1412
|
+
* Null if this is the first chapter in the translation.
|
|
1413
|
+
*/
|
|
1414
|
+
previousChapterAudioTimings: import_zod.z.record(import_zod.z.string(), import_zod.z.string()).nullable().meta({
|
|
1415
|
+
description: "The links to the audio timings for different audio versions for the previous chapter. Relative to the API origin. Null if this is the first chapter in the translation."
|
|
1416
|
+
}),
|
|
1417
|
+
/**
|
|
1418
|
+
* The link to the previous chapter.
|
|
1419
|
+
* Null if this is the first chapter in the translation.
|
|
1420
|
+
*/
|
|
1421
|
+
previousChapterApiLink: import_zod.z.string().nullable().meta({
|
|
1422
|
+
description: "The API link to the previous chapter. Relative to the API origin. Null if this is the first chapter in the translation."
|
|
1423
|
+
}),
|
|
1424
|
+
/**
|
|
1425
|
+
* The reference for the previous chapter.
|
|
1426
|
+
* Null if this is the first chapter in the translation.
|
|
1427
|
+
*/
|
|
1428
|
+
previousChapterReference: TranslationChapterReferenceSchema.nullable().meta({
|
|
1429
|
+
description: "The reference for the previous chapter. Null if this is the first chapter in the translation."
|
|
1430
|
+
}),
|
|
1431
|
+
/**
|
|
1432
|
+
* The links to the audio versions for the previous chapter.
|
|
1433
|
+
* Null if this is the first chapter in the translation.
|
|
1434
|
+
*/
|
|
1435
|
+
previousChapterAudioLinks: import_zod.z.record(import_zod.z.string(), import_zod.z.string()).nullable().meta({
|
|
1436
|
+
description: "The links to the audio versions for the previous chapter. Relative to the API origin. Null if this is the first chapter in the translation."
|
|
1437
|
+
}),
|
|
1438
|
+
/**
|
|
1439
|
+
* The link to the word-level annotations for the chapter.
|
|
1440
|
+
* Omitted if the chapter doesn't have any word-level annotations.
|
|
1441
|
+
*/
|
|
1442
|
+
thisChapterWordsLink: import_zod.z.string().optional().meta({
|
|
1443
|
+
description: "The link to the word-level annotations for this chapter. Relative to the API origin. Omitted if the chapter doesn't have any word-level annotations."
|
|
1444
|
+
}),
|
|
1445
|
+
/**
|
|
1446
|
+
* The link to the word-level annotations for the next chapter.
|
|
1447
|
+
* Omitted if this is the last chapter in the translation, or if the next
|
|
1448
|
+
* chapter doesn't have any word-level annotations.
|
|
1449
|
+
*/
|
|
1450
|
+
nextChapterWordsLink: import_zod.z.string().optional().meta({
|
|
1451
|
+
description: "The link to the word-level annotations for the next chapter. Relative to the API origin. Omitted if this is the last chapter in the translation, or if the next chapter doesn't have any word-level annotations."
|
|
1452
|
+
}),
|
|
1453
|
+
/**
|
|
1454
|
+
* The link to the word-level annotations for the previous chapter.
|
|
1455
|
+
* Omitted if this is the first chapter in the translation, or if the
|
|
1456
|
+
* previous chapter doesn't have any word-level annotations.
|
|
1457
|
+
*/
|
|
1458
|
+
previousChapterWordsLink: import_zod.z.string().optional().meta({
|
|
1459
|
+
description: "The link to the word-level annotations for the previous chapter. Relative to the API origin. Omitted if this is the first chapter in the translation, or if the previous chapter doesn't have any word-level annotations."
|
|
1460
|
+
}),
|
|
1461
|
+
/**
|
|
1462
|
+
* The number of verses that the chapter contains.
|
|
1463
|
+
*/
|
|
1464
|
+
numberOfVerses: import_zod.z.number().meta({
|
|
1465
|
+
description: "The number of verses that the chapter contains."
|
|
1466
|
+
}),
|
|
1467
|
+
/**
|
|
1468
|
+
* The link to the simplified version of this chapter.
|
|
1469
|
+
* Omitted if simplified chapters were not generated.
|
|
1470
|
+
*/
|
|
1471
|
+
simpleChapterApiLink: import_zod.z.string().optional().meta({
|
|
1472
|
+
description: "The API link to the simplified version of this chapter. Relative to the API origin. Omitted if simplified chapters are not available."
|
|
1473
|
+
})
|
|
1474
|
+
}).meta({
|
|
1475
|
+
id: "ApiTranslationBookChapter",
|
|
1476
|
+
description: "Defines an interface that contains information about a book chapter in a translation."
|
|
1477
|
+
});
|
|
1478
|
+
const ApiSimpleTranslationBookChapterSchema = ApiTranslationBookChapterSchema.omit({
|
|
1479
|
+
chapter: true,
|
|
1480
|
+
simpleChapterApiLink: true
|
|
1481
|
+
}).extend({
|
|
1482
|
+
/**
|
|
1483
|
+
* The simplified information for the chapter.
|
|
1484
|
+
*/
|
|
1485
|
+
chapter: import_zod.z.lazy(() => import_common_types.SimpleChapterDataSchema).meta({
|
|
1486
|
+
description: "The simplified information for the chapter. Each verse contains a single text string, and the footnotes and formatting are represented by offsets into that string."
|
|
1487
|
+
}),
|
|
1488
|
+
/**
|
|
1489
|
+
* The link to the regular version of this chapter.
|
|
1490
|
+
*/
|
|
1491
|
+
fullChapterApiLink: import_zod.z.string().meta({
|
|
1492
|
+
description: "The API link to the regular (non-simplified) version of this chapter. Relative to the API origin."
|
|
1493
|
+
})
|
|
1494
|
+
}).meta({
|
|
1495
|
+
id: "ApiSimpleTranslationBookChapter",
|
|
1496
|
+
description: "Defines an interface that contains information about a book chapter in a translation, using the simplified chapter format."
|
|
1497
|
+
});
|
|
1498
|
+
const ApiCommentaryBookChapterSchema = import_common_types.CommentaryBookChapterSchema.extend({
|
|
1499
|
+
/**
|
|
1500
|
+
* The commentary information for the book chapter.
|
|
1501
|
+
*/
|
|
1502
|
+
commentary: import_zod.z.lazy(() => ApiCommentarySchema).meta({
|
|
1503
|
+
description: "The commentary information for the book chapter."
|
|
1504
|
+
}),
|
|
1505
|
+
/**
|
|
1506
|
+
* The book information for the book chapter.
|
|
1507
|
+
*/
|
|
1508
|
+
book: import_zod.z.lazy(() => ApiCommentaryBookSchema).meta({
|
|
1509
|
+
description: "The book information for the book chapter."
|
|
1510
|
+
}),
|
|
1511
|
+
/**
|
|
1512
|
+
* The link to this chapter.
|
|
1513
|
+
*/
|
|
1514
|
+
thisChapterLink: import_zod.z.string().meta({
|
|
1515
|
+
description: "The API link for this chapter. Relative to the API origin."
|
|
1516
|
+
}),
|
|
1517
|
+
thisChapterReference: CommentaryChapterReferenceSchema,
|
|
630
1518
|
/**
|
|
631
1519
|
* The link to the next chapter.
|
|
632
1520
|
* Null if this is the last chapter in the translation.
|
|
@@ -634,6 +1522,9 @@ const ApiCommentaryBookChapterSchema = import_common_types.CommentaryBookChapter
|
|
|
634
1522
|
nextChapterApiLink: import_zod.z.string().nullable().meta({
|
|
635
1523
|
description: "The API link to the next chapter. Relative to the API origin. Null if this is the last chapter in the commentary."
|
|
636
1524
|
}),
|
|
1525
|
+
nextChapterReference: CommentaryChapterReferenceSchema.nullable().meta({
|
|
1526
|
+
description: "The reference for the next chapter. Null if this is the last chapter in the commentary."
|
|
1527
|
+
}),
|
|
637
1528
|
/**
|
|
638
1529
|
* The link to the previous chapter.
|
|
639
1530
|
* Null if this is the first chapter in the translation.
|
|
@@ -641,84 +1532,284 @@ const ApiCommentaryBookChapterSchema = import_common_types.CommentaryBookChapter
|
|
|
641
1532
|
previousChapterApiLink: import_zod.z.string().nullable().meta({
|
|
642
1533
|
description: "The API link to the previous chapter. Relative to the API origin. Null if this is the first chapter in the commentary."
|
|
643
1534
|
}),
|
|
1535
|
+
previousChapterReference: CommentaryChapterReferenceSchema.nullable().meta({
|
|
1536
|
+
description: "The reference for the previous chapter. Null if this is the first chapter in the commentary."
|
|
1537
|
+
}),
|
|
1538
|
+
/**
|
|
1539
|
+
* The number of verses that the chapter contains.
|
|
1540
|
+
*/
|
|
1541
|
+
numberOfVerses: import_zod.z.number().meta({
|
|
1542
|
+
description: "The number of verses that the chapter contains."
|
|
1543
|
+
}),
|
|
1544
|
+
/**
|
|
1545
|
+
* The link to the simplified version of this chapter.
|
|
1546
|
+
* Omitted if simplified chapters were not generated.
|
|
1547
|
+
*/
|
|
1548
|
+
simpleChapterApiLink: import_zod.z.string().optional().meta({
|
|
1549
|
+
description: "The API link to the simplified version of this chapter. Relative to the API origin. Omitted if simplified chapters are not available."
|
|
1550
|
+
})
|
|
1551
|
+
}).meta({
|
|
1552
|
+
id: "ApiCommentaryBookChapter",
|
|
1553
|
+
description: "Defines a schema that contains information about a book chapter in a commentary."
|
|
1554
|
+
});
|
|
1555
|
+
const ApiSimpleCommentaryBookChapterSchema = ApiCommentaryBookChapterSchema.omit({
|
|
1556
|
+
chapter: true,
|
|
1557
|
+
simpleChapterApiLink: true
|
|
1558
|
+
}).extend({
|
|
1559
|
+
/**
|
|
1560
|
+
* The simplified information for the chapter.
|
|
1561
|
+
*/
|
|
1562
|
+
chapter: import_zod.z.lazy(() => import_common_types.SimpleCommentaryChapterDataSchema).meta({
|
|
1563
|
+
description: "The simplified information for the chapter. Each verse contains a single text string, and the footnotes and formatting are represented by offsets into that string."
|
|
1564
|
+
}),
|
|
1565
|
+
/**
|
|
1566
|
+
* The link to the regular version of this chapter.
|
|
1567
|
+
*/
|
|
1568
|
+
fullChapterApiLink: import_zod.z.string().meta({
|
|
1569
|
+
description: "The API link to the regular (non-simplified) version of this chapter. Relative to the API origin."
|
|
1570
|
+
})
|
|
1571
|
+
}).meta({
|
|
1572
|
+
id: "ApiSimpleCommentaryBookChapter",
|
|
1573
|
+
description: "Defines a schema that contains information about a book chapter in a commentary, using the simplified chapter format."
|
|
1574
|
+
});
|
|
1575
|
+
const ApiDatasetBookChapterSchema = import_common_types.DatasetBookChapterSchema.extend({
|
|
1576
|
+
/**
|
|
1577
|
+
* The dataset information for the book chapter.
|
|
1578
|
+
*/
|
|
1579
|
+
dataset: import_zod.z.lazy(() => ApiDatasetSchema).meta({
|
|
1580
|
+
description: "The dataset information for the book chapter."
|
|
1581
|
+
}),
|
|
1582
|
+
/**
|
|
1583
|
+
* The book information for the book chapter.
|
|
1584
|
+
*/
|
|
1585
|
+
book: import_zod.z.lazy(() => ApiDatasetBookSchema).meta({
|
|
1586
|
+
description: "The book information for the book chapter."
|
|
1587
|
+
}),
|
|
1588
|
+
/**
|
|
1589
|
+
* The link to this chapter.
|
|
1590
|
+
*/
|
|
1591
|
+
thisChapterLink: import_zod.z.string().meta({
|
|
1592
|
+
description: "The API link for this chapter. Relative to the API origin."
|
|
1593
|
+
}),
|
|
1594
|
+
thisChapterReference: DatasetChapterReferenceSchema,
|
|
1595
|
+
/**
|
|
1596
|
+
* The link to the next chapter.
|
|
1597
|
+
* Null if this is the last chapter in the translation.
|
|
1598
|
+
*/
|
|
1599
|
+
nextChapterApiLink: import_zod.z.string().nullable().meta({
|
|
1600
|
+
description: "The API link to the next chapter. Relative to the API origin. Null if this is the last chapter in the dataset."
|
|
1601
|
+
}),
|
|
1602
|
+
nextChapterReference: DatasetChapterReferenceSchema.nullable().meta({
|
|
1603
|
+
description: "The reference for the next chapter. Null if this is the last chapter in the dataset."
|
|
1604
|
+
}),
|
|
1605
|
+
/**
|
|
1606
|
+
* The link to the previous chapter.
|
|
1607
|
+
* Null if this is the first chapter in the translation.
|
|
1608
|
+
*/
|
|
1609
|
+
previousChapterApiLink: import_zod.z.string().nullable().meta({
|
|
1610
|
+
description: "The API link to the previous chapter. Relative to the API origin. Null if this is the first chapter in the dataset."
|
|
1611
|
+
}),
|
|
1612
|
+
previousChapterReference: DatasetChapterReferenceSchema.nullable().meta({
|
|
1613
|
+
description: "The reference for the previous chapter. Null if this is the first chapter in the dataset."
|
|
1614
|
+
}),
|
|
1615
|
+
/**
|
|
1616
|
+
* The number of verses that the chapter contains.
|
|
1617
|
+
*/
|
|
1618
|
+
numberOfVerses: import_zod.z.number().meta({
|
|
1619
|
+
description: "The number of verses that the chapter contains."
|
|
1620
|
+
}),
|
|
1621
|
+
/**
|
|
1622
|
+
* The number of references that the chapter contains.
|
|
1623
|
+
*/
|
|
1624
|
+
numberOfReferences: import_zod.z.number().meta({
|
|
1625
|
+
description: "The number of references that the chapter contains."
|
|
1626
|
+
})
|
|
1627
|
+
}).meta({
|
|
1628
|
+
id: "ApiDatasetBookChapter",
|
|
1629
|
+
description: "Defines a schema that contains information about a book chapter in a dataset."
|
|
1630
|
+
});
|
|
1631
|
+
const ApiTranslationBookChapterAudioSchema = import_zod.z.object({
|
|
1632
|
+
/**
|
|
1633
|
+
* The chapter that the audio is for.
|
|
1634
|
+
*/
|
|
1635
|
+
chapter: import_zod.z.lazy(() => ApiTranslationBookChapterSchema).meta({
|
|
1636
|
+
description: "The chapter that the audio is for."
|
|
1637
|
+
}),
|
|
1638
|
+
/**
|
|
1639
|
+
* The link that the audio should be placed at.
|
|
1640
|
+
*/
|
|
1641
|
+
link: import_zod.z.string().meta({
|
|
1642
|
+
description: "The link that the audio should be placed at. Relative to the API origin."
|
|
1643
|
+
}),
|
|
1644
|
+
/**
|
|
1645
|
+
* The original URL of the audio.
|
|
1646
|
+
*/
|
|
1647
|
+
originalUrl: import_zod.z.string().meta({
|
|
1648
|
+
description: "The original URL of the audio."
|
|
1649
|
+
})
|
|
1650
|
+
});
|
|
1651
|
+
const ApiTranslationBookChapterAudioTimingsSchema = import_zod.z.object({
|
|
1652
|
+
/**
|
|
1653
|
+
* The ID of the translation.
|
|
1654
|
+
*/
|
|
1655
|
+
translationId: import_zod.z.string().meta({
|
|
1656
|
+
description: "The ID of the translation."
|
|
1657
|
+
}),
|
|
1658
|
+
/**
|
|
1659
|
+
* The ID of the book.
|
|
1660
|
+
*/
|
|
1661
|
+
bookId: import_zod.z.string().meta({
|
|
1662
|
+
description: "The ID of the book."
|
|
1663
|
+
}),
|
|
1664
|
+
/**
|
|
1665
|
+
* The number of the chapter.
|
|
1666
|
+
*/
|
|
1667
|
+
chapterNumber: import_zod.z.number().meta({
|
|
1668
|
+
description: "The number of the chapter."
|
|
1669
|
+
}),
|
|
1670
|
+
/**
|
|
1671
|
+
* The reader for the chapter.
|
|
1672
|
+
*/
|
|
1673
|
+
reader: import_zod.z.string().meta({
|
|
1674
|
+
description: "The reader for the chapter."
|
|
1675
|
+
}),
|
|
1676
|
+
/**
|
|
1677
|
+
* The link to the audio for these timings.
|
|
1678
|
+
*/
|
|
1679
|
+
audioLink: import_zod.z.string().meta({
|
|
1680
|
+
description: "The link to the audio for these timings."
|
|
1681
|
+
}),
|
|
1682
|
+
/**
|
|
1683
|
+
* The link to the information for this chapter.
|
|
1684
|
+
*/
|
|
1685
|
+
thisChapterLink: import_zod.z.string().meta({
|
|
1686
|
+
description: "The link to the information for this chapter."
|
|
1687
|
+
}),
|
|
1688
|
+
/**
|
|
1689
|
+
* The link to the information for the next chapter.
|
|
1690
|
+
* Null if this is the last chapter in the translation.
|
|
1691
|
+
*/
|
|
1692
|
+
nextChapterLink: import_zod.z.string().nullable().meta({
|
|
1693
|
+
description: "The link to the information for the next chapter. Null if this is the last chapter in the translation."
|
|
1694
|
+
}),
|
|
1695
|
+
/**
|
|
1696
|
+
* The link to the information for the previous chapter.
|
|
1697
|
+
* Null if this is the first chapter in the translation.
|
|
1698
|
+
*/
|
|
1699
|
+
previousChapterLink: import_zod.z.string().nullable().meta({
|
|
1700
|
+
description: "The link to the information for the previous chapter. Null if this is the first chapter in the translation."
|
|
1701
|
+
}),
|
|
1702
|
+
/**
|
|
1703
|
+
* The link to this audio timings file.
|
|
1704
|
+
*/
|
|
1705
|
+
thisChapterAudioTimingsLink: import_zod.z.string().meta({
|
|
1706
|
+
description: "The link to this audio timings file."
|
|
1707
|
+
}),
|
|
1708
|
+
/**
|
|
1709
|
+
* The link to the timings for the next chapter.
|
|
1710
|
+
* Null if this is the last chapter in the translation.
|
|
1711
|
+
*/
|
|
1712
|
+
nextChapterAudioTimingsLink: import_zod.z.string().nullable().meta({
|
|
1713
|
+
description: "The link to the timings for the next chapter. Null if this is the last chapter in the translation."
|
|
1714
|
+
}),
|
|
1715
|
+
/**
|
|
1716
|
+
* The link to the timings for the previous chapter.
|
|
1717
|
+
* Null if this is the first chapter in the translation.
|
|
1718
|
+
*/
|
|
1719
|
+
previousChapterAudioTimingsLink: import_zod.z.string().nullable().meta({
|
|
1720
|
+
description: "The link to the timings for the previous chapter. Null if this is the first chapter in the translation."
|
|
1721
|
+
}),
|
|
644
1722
|
/**
|
|
645
|
-
* The
|
|
1723
|
+
* The times in seconds at which each verse starts, in order.
|
|
646
1724
|
*/
|
|
647
|
-
|
|
648
|
-
description: "The number
|
|
1725
|
+
verses: import_zod.z.array(import_zod.z.number()).meta({
|
|
1726
|
+
description: "The times in seconds at which each verse starts, in order. The first number (index 0) is the time in the recording at which the first verse starts."
|
|
649
1727
|
})
|
|
650
1728
|
}).meta({
|
|
651
|
-
id: "
|
|
652
|
-
description: "Defines
|
|
1729
|
+
id: "ApiTranslationBookChapterAudioTimings",
|
|
1730
|
+
description: "Defines an interface that contains the audio timings for a book chapter, for a specific reader."
|
|
653
1731
|
});
|
|
654
|
-
const
|
|
1732
|
+
const ApiTranslationBookChapterWordsSchema = import_zod.z.object({
|
|
655
1733
|
/**
|
|
656
|
-
* The
|
|
1734
|
+
* The ID of the translation.
|
|
657
1735
|
*/
|
|
658
|
-
|
|
659
|
-
description: "The
|
|
1736
|
+
translationId: import_zod.z.string().meta({
|
|
1737
|
+
description: "The ID of the translation."
|
|
660
1738
|
}),
|
|
661
1739
|
/**
|
|
662
|
-
* The
|
|
1740
|
+
* The ID of the book.
|
|
663
1741
|
*/
|
|
664
|
-
|
|
665
|
-
description: "The
|
|
1742
|
+
bookId: import_zod.z.string().meta({
|
|
1743
|
+
description: "The ID of the book."
|
|
666
1744
|
}),
|
|
667
1745
|
/**
|
|
668
|
-
* The
|
|
1746
|
+
* The number of the chapter.
|
|
1747
|
+
*/
|
|
1748
|
+
chapterNumber: import_zod.z.number().meta({
|
|
1749
|
+
description: "The number of the chapter."
|
|
1750
|
+
}),
|
|
1751
|
+
/**
|
|
1752
|
+
* The link to the information for this chapter.
|
|
669
1753
|
*/
|
|
670
1754
|
thisChapterLink: import_zod.z.string().meta({
|
|
671
|
-
description: "The
|
|
1755
|
+
description: "The link to the information for this chapter."
|
|
672
1756
|
}),
|
|
673
1757
|
/**
|
|
674
|
-
* The link to the next chapter.
|
|
1758
|
+
* The link to the information for the next chapter.
|
|
675
1759
|
* Null if this is the last chapter in the translation.
|
|
676
1760
|
*/
|
|
677
|
-
|
|
678
|
-
description: "The
|
|
1761
|
+
nextChapterLink: import_zod.z.string().nullable().meta({
|
|
1762
|
+
description: "The link to the information for the next chapter. Null if this is the last chapter in the translation."
|
|
679
1763
|
}),
|
|
680
1764
|
/**
|
|
681
|
-
* The link to the previous chapter.
|
|
1765
|
+
* The link to the information for the previous chapter.
|
|
682
1766
|
* Null if this is the first chapter in the translation.
|
|
683
1767
|
*/
|
|
684
|
-
|
|
685
|
-
description: "The
|
|
1768
|
+
previousChapterLink: import_zod.z.string().nullable().meta({
|
|
1769
|
+
description: "The link to the information for the previous chapter. Null if this is the first chapter in the translation."
|
|
686
1770
|
}),
|
|
687
1771
|
/**
|
|
688
|
-
* The
|
|
1772
|
+
* The link to this words file.
|
|
689
1773
|
*/
|
|
690
|
-
|
|
691
|
-
description: "The
|
|
1774
|
+
thisChapterWordsLink: import_zod.z.string().meta({
|
|
1775
|
+
description: "The link to this words file."
|
|
692
1776
|
}),
|
|
693
1777
|
/**
|
|
694
|
-
* The
|
|
1778
|
+
* The link to the words for the next chapter.
|
|
1779
|
+
* Null if this is the last chapter in the translation, or if the next chapter
|
|
1780
|
+
* doesn't have any word-level annotations.
|
|
695
1781
|
*/
|
|
696
|
-
|
|
697
|
-
description: "The
|
|
698
|
-
})
|
|
699
|
-
}).meta({
|
|
700
|
-
id: "ApiDatasetBookChapter",
|
|
701
|
-
description: "Defines a schema that contains information about a book chapter in a dataset."
|
|
702
|
-
});
|
|
703
|
-
const ApiTranslationBookChapterAudioSchema = import_zod.z.object({
|
|
1782
|
+
nextChapterWordsLink: import_zod.z.string().nullable().meta({
|
|
1783
|
+
description: "The link to the words for the next chapter. Null if this is the last chapter in the translation, or if the next chapter doesn't have any word-level annotations."
|
|
1784
|
+
}),
|
|
704
1785
|
/**
|
|
705
|
-
* The
|
|
1786
|
+
* The link to the words for the previous chapter.
|
|
1787
|
+
* Null if this is the first chapter in the translation, or if the previous
|
|
1788
|
+
* chapter doesn't have any word-level annotations.
|
|
706
1789
|
*/
|
|
707
|
-
|
|
708
|
-
description: "The
|
|
1790
|
+
previousChapterWordsLink: import_zod.z.string().nullable().meta({
|
|
1791
|
+
description: "The link to the words for the previous chapter. Null if this is the first chapter in the translation, or if the previous chapter doesn't have any word-level annotations."
|
|
709
1792
|
}),
|
|
710
1793
|
/**
|
|
711
|
-
* The
|
|
1794
|
+
* The annotated words for each verse in the chapter.
|
|
712
1795
|
*/
|
|
713
|
-
|
|
714
|
-
description: "The
|
|
715
|
-
})
|
|
1796
|
+
verses: import_zod.z.record(import_zod.z.string(), import_zod.z.array(import_zod.z.lazy(() => import_common_types.ChapterWordSchema))).meta({
|
|
1797
|
+
description: "The annotated words for each verse in the chapter, keyed by verse number. Each list is in the order that the words occur in the verse."
|
|
1798
|
+
})
|
|
1799
|
+
}).meta({
|
|
1800
|
+
id: "ApiTranslationBookChapterWords",
|
|
1801
|
+
description: "Defines an interface that contains the word-level annotations for a book chapter."
|
|
1802
|
+
});
|
|
1803
|
+
const ApiSimpleTranslationBookChapterWordsSchema = ApiTranslationBookChapterWordsSchema.extend({
|
|
716
1804
|
/**
|
|
717
|
-
* The
|
|
1805
|
+
* The annotated words for each verse in the chapter.
|
|
718
1806
|
*/
|
|
719
|
-
|
|
720
|
-
description: "The
|
|
1807
|
+
verses: import_zod.z.record(import_zod.z.string(), import_zod.z.array(import_zod.z.lazy(() => import_common_types.SimpleChapterWordSchema))).meta({
|
|
1808
|
+
description: "The annotated words for each verse in the chapter, keyed by verse number. Each list is in the order that the words occur in the verse. The offsets are into the text of the simplified verse."
|
|
721
1809
|
})
|
|
1810
|
+
}).meta({
|
|
1811
|
+
id: "ApiSimpleTranslationBookChapterWords",
|
|
1812
|
+
description: "Defines an interface that contains the word-level annotations for a book chapter, with their offsets remapped onto the text of each simplified verse."
|
|
722
1813
|
});
|
|
723
1814
|
const ApiCommentaryProfileContentSchema = import_zod.z.object({
|
|
724
1815
|
/**
|
|
@@ -743,6 +1834,7 @@ const ApiCommentaryProfileContentSchema = import_zod.z.object({
|
|
|
743
1834
|
function generateApiForDataset(dataset, options = {}) {
|
|
744
1835
|
const { useCommonName, pathPrefix } = options;
|
|
745
1836
|
const apiPathPrefix = pathPrefix ? pathPrefix : "";
|
|
1837
|
+
const generateSimpleChapterFiles = !!options.generateSimpleChapterFiles;
|
|
746
1838
|
let api = {
|
|
747
1839
|
availableTranslations: {
|
|
748
1840
|
translations: []
|
|
@@ -750,7 +1842,10 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
750
1842
|
translationBooks: [],
|
|
751
1843
|
translationBookChapters: [],
|
|
752
1844
|
translationBookChapterAudio: [],
|
|
1845
|
+
translationBookChapterAudioTimings: [],
|
|
1846
|
+
translationBookChapterWords: [],
|
|
753
1847
|
translationComplete: [],
|
|
1848
|
+
simpleTranslationComplete: [],
|
|
754
1849
|
availableCommentaries: {
|
|
755
1850
|
commentaries: []
|
|
756
1851
|
},
|
|
@@ -760,9 +1855,21 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
760
1855
|
commentaryProfileContents: [],
|
|
761
1856
|
pathPrefix: apiPathPrefix
|
|
762
1857
|
};
|
|
1858
|
+
if (generateSimpleChapterFiles) {
|
|
1859
|
+
api.simpleTranslationBookChapters = [];
|
|
1860
|
+
api.simpleCommentaryBookChapters = [];
|
|
1861
|
+
}
|
|
1862
|
+
if (generateSimpleChapterFiles || options.generateCompleteTranslationFiles) {
|
|
1863
|
+
api.simpleTranslationBookChapterWords = [];
|
|
1864
|
+
}
|
|
763
1865
|
const getNativeName = options.getNativeName;
|
|
764
1866
|
const getEnglishName = options.getEnglishName;
|
|
765
1867
|
for (let { books, ...translation } of dataset.translations) {
|
|
1868
|
+
let hasSimpleWords2 = function(chapter) {
|
|
1869
|
+
const words = simplifiedChapters.get(chapter)?.words;
|
|
1870
|
+
return !!words && Object.keys(words).length > 0;
|
|
1871
|
+
};
|
|
1872
|
+
var hasSimpleWords = hasSimpleWords2;
|
|
766
1873
|
let numberOfBooks = 0;
|
|
767
1874
|
let numberOfApocryphalBooks = 0;
|
|
768
1875
|
for (let book of books) {
|
|
@@ -780,6 +1887,11 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
780
1887
|
apiPathPrefix
|
|
781
1888
|
),
|
|
782
1889
|
completeTranslationApiLink: options.generateCompleteTranslationFiles ? completeTranslationApiLink(translation.id, apiPathPrefix) : void 0,
|
|
1890
|
+
simpleCompleteTranslationApiLink: options.generateCompleteTranslationFiles ? completeTranslationApiLink(
|
|
1891
|
+
translation.id,
|
|
1892
|
+
apiPathPrefix,
|
|
1893
|
+
SIMPLE_JSON_EXTENSION
|
|
1894
|
+
) : void 0,
|
|
783
1895
|
numberOfBooks,
|
|
784
1896
|
totalNumberOfChapters: 0,
|
|
785
1897
|
totalNumberOfVerses: 0,
|
|
@@ -794,6 +1906,9 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
794
1906
|
books: []
|
|
795
1907
|
};
|
|
796
1908
|
let translationChapters = [];
|
|
1909
|
+
let pendingAudioTimings = [];
|
|
1910
|
+
let rawAudioTimingsByChapter = /* @__PURE__ */ new Map();
|
|
1911
|
+
let rawWordsByChapter = /* @__PURE__ */ new Map();
|
|
797
1912
|
for (let { chapters, ...book } of books) {
|
|
798
1913
|
const firstChapterNumber = chapters[0]?.chapter.number;
|
|
799
1914
|
const lastChapterNumber = chapters[chapters.length - 1]?.chapter.number;
|
|
@@ -807,6 +1922,11 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
807
1922
|
"json",
|
|
808
1923
|
apiPathPrefix
|
|
809
1924
|
),
|
|
1925
|
+
firstChapterReference: {
|
|
1926
|
+
translationId: translation.id,
|
|
1927
|
+
book: book.id,
|
|
1928
|
+
chapter: firstChapterNumber
|
|
1929
|
+
},
|
|
810
1930
|
lastChapterNumber,
|
|
811
1931
|
lastChapterApiLink: bookChapterApiLink(
|
|
812
1932
|
translation.id,
|
|
@@ -815,11 +1935,22 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
815
1935
|
"json",
|
|
816
1936
|
apiPathPrefix
|
|
817
1937
|
),
|
|
1938
|
+
lastChapterReference: {
|
|
1939
|
+
translationId: translation.id,
|
|
1940
|
+
book: book.id,
|
|
1941
|
+
chapter: lastChapterNumber
|
|
1942
|
+
},
|
|
818
1943
|
numberOfChapters: chapters.length,
|
|
819
1944
|
totalNumberOfVerses: 0
|
|
820
1945
|
};
|
|
821
|
-
for (let {
|
|
1946
|
+
for (let {
|
|
1947
|
+
chapter,
|
|
1948
|
+
thisChapterAudioLinks,
|
|
1949
|
+
thisChapterAudioTimings,
|
|
1950
|
+
thisChapterWords
|
|
1951
|
+
} of chapters) {
|
|
822
1952
|
const audio = {};
|
|
1953
|
+
const audioTimings = {};
|
|
823
1954
|
const apiBookChapter = {
|
|
824
1955
|
translation: apiTranslation,
|
|
825
1956
|
book: apiBook,
|
|
@@ -831,12 +1962,29 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
831
1962
|
"json",
|
|
832
1963
|
apiPathPrefix
|
|
833
1964
|
),
|
|
1965
|
+
thisChapterReference: {
|
|
1966
|
+
translationId: translation.id,
|
|
1967
|
+
book: book.id,
|
|
1968
|
+
chapter: chapter.number
|
|
1969
|
+
},
|
|
834
1970
|
thisChapterAudioLinks: audio,
|
|
835
1971
|
nextChapterApiLink: null,
|
|
1972
|
+
nextChapterReference: null,
|
|
836
1973
|
nextChapterAudioLinks: null,
|
|
837
1974
|
previousChapterApiLink: null,
|
|
1975
|
+
previousChapterReference: null,
|
|
838
1976
|
previousChapterAudioLinks: null,
|
|
839
|
-
|
|
1977
|
+
thisChapterAudioTimings: audioTimings,
|
|
1978
|
+
nextChapterAudioTimings: null,
|
|
1979
|
+
previousChapterAudioTimings: null,
|
|
1980
|
+
numberOfVerses: 0,
|
|
1981
|
+
simpleChapterApiLink: generateSimpleChapterFiles ? bookChapterApiLink(
|
|
1982
|
+
translation.id,
|
|
1983
|
+
getBookLink(book),
|
|
1984
|
+
chapter.number,
|
|
1985
|
+
SIMPLE_JSON_EXTENSION,
|
|
1986
|
+
apiPathPrefix
|
|
1987
|
+
) : void 0
|
|
840
1988
|
};
|
|
841
1989
|
for (let reader in thisChapterAudioLinks) {
|
|
842
1990
|
if (options.generateAudioFiles) {
|
|
@@ -857,6 +2005,34 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
857
2005
|
audio[reader] = thisChapterAudioLinks[reader];
|
|
858
2006
|
}
|
|
859
2007
|
}
|
|
2008
|
+
rawAudioTimingsByChapter.set(
|
|
2009
|
+
apiBookChapter,
|
|
2010
|
+
thisChapterAudioTimings
|
|
2011
|
+
);
|
|
2012
|
+
if (thisChapterWords) {
|
|
2013
|
+
apiBookChapter.thisChapterWordsLink = bookChapterWordsApiLink(
|
|
2014
|
+
translation.id,
|
|
2015
|
+
getBookLink(book),
|
|
2016
|
+
chapter.number,
|
|
2017
|
+
apiPathPrefix
|
|
2018
|
+
);
|
|
2019
|
+
rawWordsByChapter.set(apiBookChapter, thisChapterWords);
|
|
2020
|
+
}
|
|
2021
|
+
for (let reader in thisChapterAudioTimings) {
|
|
2022
|
+
const verses = thisChapterAudioTimings[reader];
|
|
2023
|
+
audioTimings[reader] = bookChapterAudioTimingsApiLink(
|
|
2024
|
+
translation.id,
|
|
2025
|
+
getBookLink(book),
|
|
2026
|
+
chapter.number,
|
|
2027
|
+
reader,
|
|
2028
|
+
apiPathPrefix
|
|
2029
|
+
);
|
|
2030
|
+
pendingAudioTimings.push({
|
|
2031
|
+
reader,
|
|
2032
|
+
verses,
|
|
2033
|
+
apiBookChapter
|
|
2034
|
+
});
|
|
2035
|
+
}
|
|
860
2036
|
for (let c of chapter.content) {
|
|
861
2037
|
if (c.type === "verse") {
|
|
862
2038
|
apiBookChapter.numberOfVerses++;
|
|
@@ -882,54 +2058,228 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
882
2058
|
}
|
|
883
2059
|
}
|
|
884
2060
|
for (let i = 0; i < translationChapters.length; i++) {
|
|
2061
|
+
const currentChapter = translationChapters[i];
|
|
885
2062
|
if (i > 0) {
|
|
886
|
-
translationChapters[i
|
|
2063
|
+
const previousChapter = translationChapters[i - 1];
|
|
2064
|
+
currentChapter.previousChapterApiLink = bookChapterApiLink(
|
|
887
2065
|
translation.id,
|
|
888
|
-
getBookLink(
|
|
889
|
-
|
|
2066
|
+
getBookLink(previousChapter.book),
|
|
2067
|
+
previousChapter.chapter.number,
|
|
890
2068
|
"json",
|
|
891
2069
|
apiPathPrefix
|
|
892
2070
|
);
|
|
893
|
-
|
|
2071
|
+
currentChapter.previousChapterReference = {
|
|
2072
|
+
translationId: translation.id,
|
|
2073
|
+
book: previousChapter.book.id,
|
|
2074
|
+
chapter: previousChapter.chapter.number
|
|
2075
|
+
};
|
|
2076
|
+
currentChapter.previousChapterAudioLinks = previousChapter.thisChapterAudioLinks;
|
|
2077
|
+
currentChapter.previousChapterAudioTimings = previousChapter.thisChapterAudioTimings;
|
|
2078
|
+
if (previousChapter.thisChapterWordsLink) {
|
|
2079
|
+
currentChapter.previousChapterWordsLink = previousChapter.thisChapterWordsLink;
|
|
2080
|
+
}
|
|
894
2081
|
}
|
|
895
2082
|
if (i < translationChapters.length - 1) {
|
|
896
|
-
translationChapters[i
|
|
2083
|
+
const nextChapter = translationChapters[i + 1];
|
|
2084
|
+
currentChapter.nextChapterApiLink = bookChapterApiLink(
|
|
897
2085
|
translation.id,
|
|
898
|
-
getBookLink(
|
|
899
|
-
|
|
2086
|
+
getBookLink(nextChapter.book),
|
|
2087
|
+
nextChapter.chapter.number,
|
|
900
2088
|
"json",
|
|
901
2089
|
apiPathPrefix
|
|
902
2090
|
);
|
|
903
|
-
|
|
2091
|
+
currentChapter.nextChapterReference = {
|
|
2092
|
+
translationId: translation.id,
|
|
2093
|
+
book: nextChapter.book.id,
|
|
2094
|
+
chapter: nextChapter.chapter.number
|
|
2095
|
+
};
|
|
2096
|
+
currentChapter.nextChapterAudioLinks = nextChapter.thisChapterAudioLinks;
|
|
2097
|
+
currentChapter.nextChapterAudioTimings = nextChapter.thisChapterAudioTimings;
|
|
2098
|
+
if (nextChapter.thisChapterWordsLink) {
|
|
2099
|
+
currentChapter.nextChapterWordsLink = nextChapter.thisChapterWordsLink;
|
|
2100
|
+
}
|
|
2101
|
+
}
|
|
2102
|
+
}
|
|
2103
|
+
const simplifiedChapters = /* @__PURE__ */ new Map();
|
|
2104
|
+
if (generateSimpleChapterFiles || options.generateCompleteTranslationFiles) {
|
|
2105
|
+
for (let chapter of translationChapters) {
|
|
2106
|
+
simplifiedChapters.set(
|
|
2107
|
+
chapter,
|
|
2108
|
+
(0, import_simple.simplifyChapter)(
|
|
2109
|
+
chapter.chapter,
|
|
2110
|
+
rawWordsByChapter.get(chapter)
|
|
2111
|
+
)
|
|
2112
|
+
);
|
|
2113
|
+
}
|
|
2114
|
+
}
|
|
2115
|
+
const simpleChapterLink = (chapter) => bookChapterApiLink(
|
|
2116
|
+
translation.id,
|
|
2117
|
+
getBookLink(chapter.book),
|
|
2118
|
+
chapter.chapter.number,
|
|
2119
|
+
SIMPLE_JSON_EXTENSION,
|
|
2120
|
+
apiPathPrefix
|
|
2121
|
+
);
|
|
2122
|
+
const simpleWordsLink = (chapter) => hasSimpleWords2(chapter) ? bookChapterWordsApiLink(
|
|
2123
|
+
translation.id,
|
|
2124
|
+
getBookLink(chapter.book),
|
|
2125
|
+
chapter.chapter.number,
|
|
2126
|
+
apiPathPrefix,
|
|
2127
|
+
SIMPLE_JSON_EXTENSION
|
|
2128
|
+
) : void 0;
|
|
2129
|
+
if (api.simpleTranslationBookChapters || api.simpleTranslationBookChapterWords) {
|
|
2130
|
+
for (let i = 0; i < translationChapters.length; i++) {
|
|
2131
|
+
const currentChapter = translationChapters[i];
|
|
2132
|
+
const previousChapter = translationChapters[i - 1];
|
|
2133
|
+
const nextChapter = translationChapters[i + 1];
|
|
2134
|
+
const simplified = simplifiedChapters.get(currentChapter);
|
|
2135
|
+
let simpleChapter;
|
|
2136
|
+
if (api.simpleTranslationBookChapters) {
|
|
2137
|
+
const {
|
|
2138
|
+
chapter,
|
|
2139
|
+
simpleChapterApiLink,
|
|
2140
|
+
thisChapterWordsLink,
|
|
2141
|
+
nextChapterWordsLink,
|
|
2142
|
+
previousChapterWordsLink,
|
|
2143
|
+
...rest
|
|
2144
|
+
} = currentChapter;
|
|
2145
|
+
simpleChapter = {
|
|
2146
|
+
...rest,
|
|
2147
|
+
chapter: simplified.chapter,
|
|
2148
|
+
thisChapterLink: simpleChapterLink(currentChapter),
|
|
2149
|
+
fullChapterApiLink: rest.thisChapterLink,
|
|
2150
|
+
previousChapterApiLink: previousChapter ? simpleChapterLink(previousChapter) : null,
|
|
2151
|
+
nextChapterApiLink: nextChapter ? simpleChapterLink(nextChapter) : null
|
|
2152
|
+
};
|
|
2153
|
+
}
|
|
2154
|
+
const thisWordsLink = simpleWordsLink(currentChapter);
|
|
2155
|
+
if (thisWordsLink) {
|
|
2156
|
+
if (simpleChapter) {
|
|
2157
|
+
simpleChapter.thisChapterWordsLink = thisWordsLink;
|
|
2158
|
+
}
|
|
2159
|
+
api.simpleTranslationBookChapterWords?.push({
|
|
2160
|
+
translationId: translation.id,
|
|
2161
|
+
bookId: currentChapter.book.id,
|
|
2162
|
+
chapterNumber: currentChapter.chapter.number,
|
|
2163
|
+
thisChapterLink: simpleChapter?.thisChapterLink ?? currentChapter.thisChapterLink,
|
|
2164
|
+
nextChapterLink: simpleChapter?.nextChapterApiLink ?? currentChapter.nextChapterApiLink,
|
|
2165
|
+
previousChapterLink: simpleChapter?.previousChapterApiLink ?? currentChapter.previousChapterApiLink,
|
|
2166
|
+
thisChapterWordsLink: thisWordsLink,
|
|
2167
|
+
nextChapterWordsLink: nextChapter ? simpleWordsLink(nextChapter) ?? null : null,
|
|
2168
|
+
previousChapterWordsLink: previousChapter ? simpleWordsLink(previousChapter) ?? null : null,
|
|
2169
|
+
verses: simplified.words
|
|
2170
|
+
});
|
|
2171
|
+
}
|
|
2172
|
+
if (simpleChapter) {
|
|
2173
|
+
const nextWordsLink = nextChapter ? simpleWordsLink(nextChapter) : void 0;
|
|
2174
|
+
if (nextWordsLink) {
|
|
2175
|
+
simpleChapter.nextChapterWordsLink = nextWordsLink;
|
|
2176
|
+
}
|
|
2177
|
+
const previousWordsLink = previousChapter ? simpleWordsLink(previousChapter) : void 0;
|
|
2178
|
+
if (previousWordsLink) {
|
|
2179
|
+
simpleChapter.previousChapterWordsLink = previousWordsLink;
|
|
2180
|
+
}
|
|
2181
|
+
api.simpleTranslationBookChapters.push(simpleChapter);
|
|
2182
|
+
}
|
|
2183
|
+
}
|
|
2184
|
+
}
|
|
2185
|
+
for (let { reader, verses, apiBookChapter } of pendingAudioTimings) {
|
|
2186
|
+
api.translationBookChapterAudioTimings.push({
|
|
2187
|
+
translationId: translation.id,
|
|
2188
|
+
bookId: apiBookChapter.book.id,
|
|
2189
|
+
chapterNumber: apiBookChapter.chapter.number,
|
|
2190
|
+
reader,
|
|
2191
|
+
audioLink: apiBookChapter.thisChapterAudioLinks[reader] ?? "",
|
|
2192
|
+
thisChapterLink: apiBookChapter.thisChapterLink,
|
|
2193
|
+
nextChapterLink: apiBookChapter.nextChapterApiLink,
|
|
2194
|
+
previousChapterLink: apiBookChapter.previousChapterApiLink,
|
|
2195
|
+
thisChapterAudioTimingsLink: apiBookChapter.thisChapterAudioTimings[reader],
|
|
2196
|
+
nextChapterAudioTimingsLink: apiBookChapter.nextChapterAudioTimings?.[reader] ?? null,
|
|
2197
|
+
previousChapterAudioTimingsLink: apiBookChapter.previousChapterAudioTimings?.[reader] ?? null,
|
|
2198
|
+
verses
|
|
2199
|
+
});
|
|
2200
|
+
}
|
|
2201
|
+
for (let apiBookChapter of translationChapters) {
|
|
2202
|
+
const words = rawWordsByChapter.get(apiBookChapter);
|
|
2203
|
+
if (!words || !apiBookChapter.thisChapterWordsLink) {
|
|
2204
|
+
continue;
|
|
904
2205
|
}
|
|
2206
|
+
api.translationBookChapterWords.push({
|
|
2207
|
+
translationId: translation.id,
|
|
2208
|
+
bookId: apiBookChapter.book.id,
|
|
2209
|
+
chapterNumber: apiBookChapter.chapter.number,
|
|
2210
|
+
thisChapterLink: apiBookChapter.thisChapterLink,
|
|
2211
|
+
nextChapterLink: apiBookChapter.nextChapterApiLink,
|
|
2212
|
+
previousChapterLink: apiBookChapter.previousChapterApiLink,
|
|
2213
|
+
thisChapterWordsLink: apiBookChapter.thisChapterWordsLink,
|
|
2214
|
+
nextChapterWordsLink: apiBookChapter.nextChapterWordsLink ?? null,
|
|
2215
|
+
previousChapterWordsLink: apiBookChapter.previousChapterWordsLink ?? null,
|
|
2216
|
+
verses: words
|
|
2217
|
+
});
|
|
905
2218
|
}
|
|
906
2219
|
api.availableTranslations.translations.push(apiTranslation);
|
|
907
2220
|
api.translationBooks.push(translationBooks);
|
|
908
2221
|
if (options.generateCompleteTranslationFiles) {
|
|
2222
|
+
const completeBooks = translationBooks.books.map((book) => ({
|
|
2223
|
+
book,
|
|
2224
|
+
chapters: translationChapters.filter(
|
|
2225
|
+
(ch) => ch.book.id === book.id
|
|
2226
|
+
)
|
|
2227
|
+
}));
|
|
2228
|
+
const completeBook = (book, chapters) => ({
|
|
2229
|
+
id: book.id,
|
|
2230
|
+
name: book.name,
|
|
2231
|
+
commonName: book.commonName,
|
|
2232
|
+
title: book.title,
|
|
2233
|
+
order: book.order,
|
|
2234
|
+
numberOfChapters: book.numberOfChapters,
|
|
2235
|
+
totalNumberOfVerses: book.totalNumberOfVerses,
|
|
2236
|
+
isApocryphal: book.isApocryphal,
|
|
2237
|
+
chapters
|
|
2238
|
+
});
|
|
2239
|
+
const completeChapter = (chapter) => ({
|
|
2240
|
+
numberOfVerses: chapter.numberOfVerses,
|
|
2241
|
+
thisChapterAudioLinks: chapter.thisChapterAudioLinks,
|
|
2242
|
+
// The complete files contain the raw audio timings rather than links
|
|
2243
|
+
// to them, since the point is to have everything in one file.
|
|
2244
|
+
thisChapterAudioTimings: rawAudioTimingsByChapter.get(chapter) ?? {}
|
|
2245
|
+
});
|
|
909
2246
|
const completeTranslation = {
|
|
910
2247
|
translation: apiTranslation,
|
|
911
|
-
books:
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
totalNumberOfVerses: book.totalNumberOfVerses,
|
|
923
|
-
isApocryphal: book.isApocryphal,
|
|
924
|
-
chapters: bookChapters.map((ch) => ({
|
|
925
|
-
numberOfVerses: ch.numberOfVerses,
|
|
926
|
-
thisChapterAudioLinks: ch.thisChapterAudioLinks,
|
|
2248
|
+
books: completeBooks.map(
|
|
2249
|
+
({ book, chapters }) => completeBook(
|
|
2250
|
+
book,
|
|
2251
|
+
chapters.map((ch) => ({
|
|
2252
|
+
...completeChapter(ch),
|
|
2253
|
+
// The complete files link to the word annotations
|
|
2254
|
+
// rather than embedding them, same as the regular
|
|
2255
|
+
// per-chapter endpoint.
|
|
2256
|
+
...ch.thisChapterWordsLink ? {
|
|
2257
|
+
thisChapterWordsLink: ch.thisChapterWordsLink
|
|
2258
|
+
} : {},
|
|
927
2259
|
chapter: ch.chapter
|
|
928
2260
|
}))
|
|
929
|
-
|
|
930
|
-
|
|
2261
|
+
)
|
|
2262
|
+
)
|
|
931
2263
|
};
|
|
932
2264
|
api.translationComplete.push(completeTranslation);
|
|
2265
|
+
const simpleCompleteTranslation = {
|
|
2266
|
+
translation: apiTranslation,
|
|
2267
|
+
books: completeBooks.map(
|
|
2268
|
+
({ book, chapters }) => completeBook(
|
|
2269
|
+
book,
|
|
2270
|
+
chapters.map((ch) => {
|
|
2271
|
+
const simplified = simplifiedChapters.get(ch);
|
|
2272
|
+
const wordsLink = simpleWordsLink(ch);
|
|
2273
|
+
return {
|
|
2274
|
+
...completeChapter(ch),
|
|
2275
|
+
...wordsLink ? { thisChapterWordsLink: wordsLink } : {},
|
|
2276
|
+
chapter: simplified.chapter
|
|
2277
|
+
};
|
|
2278
|
+
})
|
|
2279
|
+
)
|
|
2280
|
+
)
|
|
2281
|
+
};
|
|
2282
|
+
api.simpleTranslationComplete.push(simpleCompleteTranslation);
|
|
933
2283
|
}
|
|
934
2284
|
}
|
|
935
2285
|
for (let { books, profiles, ...commentary } of dataset.commentaries) {
|
|
@@ -974,6 +2324,11 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
974
2324
|
"json",
|
|
975
2325
|
apiPathPrefix
|
|
976
2326
|
) : null,
|
|
2327
|
+
firstChapterReference: firstChapterNumber ? {
|
|
2328
|
+
commentaryId: commentary.id,
|
|
2329
|
+
book: book.id,
|
|
2330
|
+
chapter: firstChapterNumber
|
|
2331
|
+
} : null,
|
|
977
2332
|
lastChapterNumber,
|
|
978
2333
|
lastChapterApiLink: lastChapterNumber ? bookCommentaryChapterApiLink(
|
|
979
2334
|
commentary.id,
|
|
@@ -982,6 +2337,11 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
982
2337
|
"json",
|
|
983
2338
|
apiPathPrefix
|
|
984
2339
|
) : null,
|
|
2340
|
+
lastChapterReference: lastChapterNumber ? {
|
|
2341
|
+
commentaryId: commentary.id,
|
|
2342
|
+
book: book.id,
|
|
2343
|
+
chapter: lastChapterNumber
|
|
2344
|
+
} : null,
|
|
985
2345
|
numberOfChapters: chapters.length,
|
|
986
2346
|
totalNumberOfVerses: 0
|
|
987
2347
|
};
|
|
@@ -997,9 +2357,23 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
997
2357
|
"json",
|
|
998
2358
|
apiPathPrefix
|
|
999
2359
|
),
|
|
2360
|
+
thisChapterReference: {
|
|
2361
|
+
commentaryId: commentary.id,
|
|
2362
|
+
book: book.id,
|
|
2363
|
+
chapter: chapter.number
|
|
2364
|
+
},
|
|
1000
2365
|
nextChapterApiLink: null,
|
|
2366
|
+
nextChapterReference: null,
|
|
1001
2367
|
previousChapterApiLink: null,
|
|
1002
|
-
|
|
2368
|
+
previousChapterReference: null,
|
|
2369
|
+
numberOfVerses: 0,
|
|
2370
|
+
simpleChapterApiLink: generateSimpleChapterFiles ? bookCommentaryChapterApiLink(
|
|
2371
|
+
commentary.id,
|
|
2372
|
+
getBookLink(book),
|
|
2373
|
+
chapter.number,
|
|
2374
|
+
SIMPLE_JSON_EXTENSION,
|
|
2375
|
+
apiPathPrefix
|
|
2376
|
+
) : void 0
|
|
1003
2377
|
};
|
|
1004
2378
|
for (let c of chapter.content) {
|
|
1005
2379
|
if (c.type === "verse") {
|
|
@@ -1053,6 +2427,11 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
1053
2427
|
"json",
|
|
1054
2428
|
apiPathPrefix
|
|
1055
2429
|
);
|
|
2430
|
+
commentaryChapters[i].previousChapterReference = {
|
|
2431
|
+
commentaryId: commentary.id,
|
|
2432
|
+
book: commentaryChapters[i - 1].book.id,
|
|
2433
|
+
chapter: commentaryChapters[i - 1].chapter.number
|
|
2434
|
+
};
|
|
1056
2435
|
}
|
|
1057
2436
|
if (i < commentaryChapters.length - 1) {
|
|
1058
2437
|
commentaryChapters[i].nextChapterApiLink = bookCommentaryChapterApiLink(
|
|
@@ -1062,13 +2441,47 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
1062
2441
|
"json",
|
|
1063
2442
|
apiPathPrefix
|
|
1064
2443
|
);
|
|
2444
|
+
commentaryChapters[i].nextChapterReference = {
|
|
2445
|
+
commentaryId: commentary.id,
|
|
2446
|
+
book: commentaryChapters[i + 1].book.id,
|
|
2447
|
+
chapter: commentaryChapters[i + 1].chapter.number
|
|
2448
|
+
};
|
|
2449
|
+
}
|
|
2450
|
+
}
|
|
2451
|
+
if (api.simpleCommentaryBookChapters) {
|
|
2452
|
+
const simpleChapterLink = (chapter) => bookCommentaryChapterApiLink(
|
|
2453
|
+
commentary.id,
|
|
2454
|
+
getBookLink(chapter.book),
|
|
2455
|
+
chapter.chapter.number,
|
|
2456
|
+
SIMPLE_JSON_EXTENSION,
|
|
2457
|
+
apiPathPrefix
|
|
2458
|
+
);
|
|
2459
|
+
for (let i = 0; i < commentaryChapters.length; i++) {
|
|
2460
|
+
const { chapter, simpleChapterApiLink, ...currentChapter } = commentaryChapters[i];
|
|
2461
|
+
const previousChapter = commentaryChapters[i - 1];
|
|
2462
|
+
const nextChapter = commentaryChapters[i + 1];
|
|
2463
|
+
api.simpleCommentaryBookChapters.push({
|
|
2464
|
+
...currentChapter,
|
|
2465
|
+
chapter: (0, import_simple.simplifyCommentaryChapter)(chapter),
|
|
2466
|
+
thisChapterLink: simpleChapterLink(commentaryChapters[i]),
|
|
2467
|
+
fullChapterApiLink: currentChapter.thisChapterLink,
|
|
2468
|
+
previousChapterApiLink: previousChapter ? simpleChapterLink(previousChapter) : null,
|
|
2469
|
+
nextChapterApiLink: nextChapter ? simpleChapterLink(nextChapter) : null
|
|
2470
|
+
});
|
|
1065
2471
|
}
|
|
1066
2472
|
}
|
|
1067
2473
|
api.availableCommentaries.commentaries.push(apiCommentary);
|
|
1068
2474
|
api.commentaryBooks.push(commentaryBooks);
|
|
1069
2475
|
api.commentaryProfiles.push(commentaryProfiles);
|
|
1070
2476
|
}
|
|
1071
|
-
for (let {
|
|
2477
|
+
for (let {
|
|
2478
|
+
books,
|
|
2479
|
+
people,
|
|
2480
|
+
places,
|
|
2481
|
+
events,
|
|
2482
|
+
peopleGroups,
|
|
2483
|
+
...datasetInfo
|
|
2484
|
+
} of dataset.datasets ?? []) {
|
|
1072
2485
|
const apiDataset = {
|
|
1073
2486
|
...datasetInfo,
|
|
1074
2487
|
availableFormats: ["json"],
|
|
@@ -1101,6 +2514,11 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
1101
2514
|
"json",
|
|
1102
2515
|
apiPathPrefix
|
|
1103
2516
|
),
|
|
2517
|
+
firstChapterReference: {
|
|
2518
|
+
datasetId: datasetInfo.id,
|
|
2519
|
+
book: book.id,
|
|
2520
|
+
chapter: firstChapterNumber
|
|
2521
|
+
},
|
|
1104
2522
|
lastChapterNumber,
|
|
1105
2523
|
lastChapterApiLink: bookDatasetChapterApiLink(
|
|
1106
2524
|
datasetInfo.id,
|
|
@@ -1109,6 +2527,11 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
1109
2527
|
"json",
|
|
1110
2528
|
apiPathPrefix
|
|
1111
2529
|
),
|
|
2530
|
+
lastChapterReference: {
|
|
2531
|
+
datasetId: datasetInfo.id,
|
|
2532
|
+
book: book.id,
|
|
2533
|
+
chapter: lastChapterNumber
|
|
2534
|
+
},
|
|
1112
2535
|
numberOfChapters: chapters.length,
|
|
1113
2536
|
totalNumberOfVerses: 0,
|
|
1114
2537
|
totalNumberOfReferences: 0
|
|
@@ -1125,8 +2548,15 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
1125
2548
|
"json",
|
|
1126
2549
|
apiPathPrefix
|
|
1127
2550
|
),
|
|
2551
|
+
thisChapterReference: {
|
|
2552
|
+
datasetId: datasetInfo.id,
|
|
2553
|
+
book: book.id,
|
|
2554
|
+
chapter: chapter.number
|
|
2555
|
+
},
|
|
1128
2556
|
nextChapterApiLink: null,
|
|
2557
|
+
nextChapterReference: null,
|
|
1129
2558
|
previousChapterApiLink: null,
|
|
2559
|
+
previousChapterReference: null,
|
|
1130
2560
|
numberOfVerses: chapter.content.length,
|
|
1131
2561
|
numberOfReferences: 0
|
|
1132
2562
|
};
|
|
@@ -1155,6 +2585,11 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
1155
2585
|
"json",
|
|
1156
2586
|
apiPathPrefix
|
|
1157
2587
|
);
|
|
2588
|
+
datasetChapters[i].previousChapterReference = {
|
|
2589
|
+
datasetId: datasetInfo.id,
|
|
2590
|
+
book: datasetChapters[i - 1].book.id,
|
|
2591
|
+
chapter: datasetChapters[i - 1].chapter.number
|
|
2592
|
+
};
|
|
1158
2593
|
}
|
|
1159
2594
|
if (i < datasetChapters.length - 1) {
|
|
1160
2595
|
datasetChapters[i].nextChapterApiLink = bookDatasetChapterApiLink(
|
|
@@ -1164,6 +2599,452 @@ function generateApiForDataset(dataset, options = {}) {
|
|
|
1164
2599
|
"json",
|
|
1165
2600
|
apiPathPrefix
|
|
1166
2601
|
);
|
|
2602
|
+
datasetChapters[i].nextChapterReference = {
|
|
2603
|
+
datasetId: datasetInfo.id,
|
|
2604
|
+
book: datasetChapters[i + 1].book.id,
|
|
2605
|
+
chapter: datasetChapters[i + 1].chapter.number
|
|
2606
|
+
};
|
|
2607
|
+
}
|
|
2608
|
+
}
|
|
2609
|
+
const linkEntityRef = (collection, ref) => ref ? {
|
|
2610
|
+
...ref,
|
|
2611
|
+
type: collection,
|
|
2612
|
+
apiLink: datasetEntityApiLink(
|
|
2613
|
+
datasetInfo.id,
|
|
2614
|
+
collection,
|
|
2615
|
+
ref.id,
|
|
2616
|
+
"json",
|
|
2617
|
+
apiPathPrefix
|
|
2618
|
+
)
|
|
2619
|
+
} : void 0;
|
|
2620
|
+
const linkEntityRefs = (collection, refs) => refs?.map((ref) => linkEntityRef(collection, ref));
|
|
2621
|
+
if (people) {
|
|
2622
|
+
const datasetPeople = {
|
|
2623
|
+
dataset: apiDataset,
|
|
2624
|
+
people: []
|
|
2625
|
+
};
|
|
2626
|
+
for (let person of people) {
|
|
2627
|
+
const thisPersonApiLink = datasetEntityApiLink(
|
|
2628
|
+
datasetInfo.id,
|
|
2629
|
+
"people",
|
|
2630
|
+
person.id,
|
|
2631
|
+
"json",
|
|
2632
|
+
apiPathPrefix
|
|
2633
|
+
);
|
|
2634
|
+
datasetPeople.people.push({
|
|
2635
|
+
id: person.id,
|
|
2636
|
+
name: person.name,
|
|
2637
|
+
isProperName: person.isProperName,
|
|
2638
|
+
gender: person.gender,
|
|
2639
|
+
numberOfReferences: person.references.length,
|
|
2640
|
+
thisPersonApiLink
|
|
2641
|
+
});
|
|
2642
|
+
const apiPerson = {
|
|
2643
|
+
dataset: apiDataset,
|
|
2644
|
+
person: {
|
|
2645
|
+
...person,
|
|
2646
|
+
birthPlace: linkEntityRef("places", person.birthPlace),
|
|
2647
|
+
deathPlace: linkEntityRef("places", person.deathPlace),
|
|
2648
|
+
father: linkEntityRefs("people", person.father),
|
|
2649
|
+
mother: linkEntityRefs("people", person.mother),
|
|
2650
|
+
partners: linkEntityRefs("people", person.partners),
|
|
2651
|
+
children: linkEntityRefs("people", person.children),
|
|
2652
|
+
siblings: linkEntityRefs("people", person.siblings),
|
|
2653
|
+
halfSiblingsSameMother: linkEntityRefs(
|
|
2654
|
+
"people",
|
|
2655
|
+
person.halfSiblingsSameMother
|
|
2656
|
+
),
|
|
2657
|
+
halfSiblingsSameFather: linkEntityRefs(
|
|
2658
|
+
"people",
|
|
2659
|
+
person.halfSiblingsSameFather
|
|
2660
|
+
),
|
|
2661
|
+
memberOf: linkEntityRefs("groups", person.memberOf),
|
|
2662
|
+
events: linkEntityRefs("events", person.events)
|
|
2663
|
+
},
|
|
2664
|
+
thisPersonApiLink
|
|
2665
|
+
};
|
|
2666
|
+
if (!api.datasetPeopleContents) {
|
|
2667
|
+
api.datasetPeopleContents = [];
|
|
2668
|
+
}
|
|
2669
|
+
api.datasetPeopleContents.push(apiPerson);
|
|
2670
|
+
}
|
|
2671
|
+
apiDataset.listOfPeopleApiLink = listOfDatasetEntitiesApiLink(
|
|
2672
|
+
datasetInfo.id,
|
|
2673
|
+
"people",
|
|
2674
|
+
"json",
|
|
2675
|
+
apiPathPrefix
|
|
2676
|
+
);
|
|
2677
|
+
apiDataset.totalNumberOfPeople = people.length;
|
|
2678
|
+
if (!api.datasetPeople) {
|
|
2679
|
+
api.datasetPeople = [];
|
|
2680
|
+
}
|
|
2681
|
+
api.datasetPeople.push(datasetPeople);
|
|
2682
|
+
}
|
|
2683
|
+
if (places) {
|
|
2684
|
+
const datasetPlaces = {
|
|
2685
|
+
dataset: apiDataset,
|
|
2686
|
+
places: []
|
|
2687
|
+
};
|
|
2688
|
+
for (let place of places) {
|
|
2689
|
+
const thisPlaceApiLink = datasetEntityApiLink(
|
|
2690
|
+
datasetInfo.id,
|
|
2691
|
+
"places",
|
|
2692
|
+
place.id,
|
|
2693
|
+
"json",
|
|
2694
|
+
apiPathPrefix
|
|
2695
|
+
);
|
|
2696
|
+
datasetPlaces.places.push({
|
|
2697
|
+
id: place.id,
|
|
2698
|
+
name: place.name,
|
|
2699
|
+
featureType: place.featureType,
|
|
2700
|
+
latitude: place.latitude,
|
|
2701
|
+
longitude: place.longitude,
|
|
2702
|
+
numberOfReferences: place.references.length,
|
|
2703
|
+
thisPlaceApiLink
|
|
2704
|
+
});
|
|
2705
|
+
const apiPlace = {
|
|
2706
|
+
dataset: apiDataset,
|
|
2707
|
+
place: {
|
|
2708
|
+
...place,
|
|
2709
|
+
rootPlace: linkEntityRef("places", place.rootPlace),
|
|
2710
|
+
duplicateOf: linkEntityRef("places", place.duplicateOf),
|
|
2711
|
+
people: linkEntityRefs("people", place.people),
|
|
2712
|
+
peopleBorn: linkEntityRefs("people", place.peopleBorn),
|
|
2713
|
+
peopleDied: linkEntityRefs("people", place.peopleDied),
|
|
2714
|
+
events: linkEntityRefs("events", place.events)
|
|
2715
|
+
},
|
|
2716
|
+
thisPlaceApiLink
|
|
2717
|
+
};
|
|
2718
|
+
if (!api.datasetPlaceContents) {
|
|
2719
|
+
api.datasetPlaceContents = [];
|
|
2720
|
+
}
|
|
2721
|
+
api.datasetPlaceContents.push(apiPlace);
|
|
2722
|
+
}
|
|
2723
|
+
apiDataset.listOfPlacesApiLink = listOfDatasetEntitiesApiLink(
|
|
2724
|
+
datasetInfo.id,
|
|
2725
|
+
"places",
|
|
2726
|
+
"json",
|
|
2727
|
+
apiPathPrefix
|
|
2728
|
+
);
|
|
2729
|
+
apiDataset.totalNumberOfPlaces = places.length;
|
|
2730
|
+
if (!api.datasetPlaces) {
|
|
2731
|
+
api.datasetPlaces = [];
|
|
2732
|
+
}
|
|
2733
|
+
api.datasetPlaces.push(datasetPlaces);
|
|
2734
|
+
}
|
|
2735
|
+
if (events) {
|
|
2736
|
+
const datasetEvents = {
|
|
2737
|
+
dataset: apiDataset,
|
|
2738
|
+
events: []
|
|
2739
|
+
};
|
|
2740
|
+
for (let event of events) {
|
|
2741
|
+
const thisEventApiLink = datasetEntityApiLink(
|
|
2742
|
+
datasetInfo.id,
|
|
2743
|
+
"events",
|
|
2744
|
+
event.id,
|
|
2745
|
+
"json",
|
|
2746
|
+
apiPathPrefix
|
|
2747
|
+
);
|
|
2748
|
+
datasetEvents.events.push({
|
|
2749
|
+
id: event.id,
|
|
2750
|
+
name: event.name,
|
|
2751
|
+
startDate: event.startDate,
|
|
2752
|
+
numberOfReferences: event.references.length,
|
|
2753
|
+
thisEventApiLink
|
|
2754
|
+
});
|
|
2755
|
+
const apiEvent = {
|
|
2756
|
+
dataset: apiDataset,
|
|
2757
|
+
event: {
|
|
2758
|
+
...event,
|
|
2759
|
+
participants: linkEntityRefs(
|
|
2760
|
+
"people",
|
|
2761
|
+
event.participants
|
|
2762
|
+
),
|
|
2763
|
+
locations: linkEntityRefs("places", event.locations),
|
|
2764
|
+
groups: linkEntityRefs("groups", event.groups),
|
|
2765
|
+
partOf: linkEntityRef("events", event.partOf),
|
|
2766
|
+
predecessor: linkEntityRef("events", event.predecessor)
|
|
2767
|
+
},
|
|
2768
|
+
thisEventApiLink
|
|
2769
|
+
};
|
|
2770
|
+
if (!api.datasetEventContents) {
|
|
2771
|
+
api.datasetEventContents = [];
|
|
2772
|
+
}
|
|
2773
|
+
api.datasetEventContents.push(apiEvent);
|
|
2774
|
+
}
|
|
2775
|
+
apiDataset.listOfEventsApiLink = listOfDatasetEntitiesApiLink(
|
|
2776
|
+
datasetInfo.id,
|
|
2777
|
+
"events",
|
|
2778
|
+
"json",
|
|
2779
|
+
apiPathPrefix
|
|
2780
|
+
);
|
|
2781
|
+
apiDataset.totalNumberOfEvents = events.length;
|
|
2782
|
+
if (!api.datasetEvents) {
|
|
2783
|
+
api.datasetEvents = [];
|
|
2784
|
+
}
|
|
2785
|
+
api.datasetEvents.push(datasetEvents);
|
|
2786
|
+
}
|
|
2787
|
+
if (peopleGroups) {
|
|
2788
|
+
const datasetPeopleGroups = {
|
|
2789
|
+
dataset: apiDataset,
|
|
2790
|
+
groups: []
|
|
2791
|
+
};
|
|
2792
|
+
for (let group of peopleGroups) {
|
|
2793
|
+
const thisPeopleGroupApiLink = datasetEntityApiLink(
|
|
2794
|
+
datasetInfo.id,
|
|
2795
|
+
"groups",
|
|
2796
|
+
group.id,
|
|
2797
|
+
"json",
|
|
2798
|
+
apiPathPrefix
|
|
2799
|
+
);
|
|
2800
|
+
datasetPeopleGroups.groups.push({
|
|
2801
|
+
id: group.id,
|
|
2802
|
+
name: group.name,
|
|
2803
|
+
numberOfMembers: group.members?.length ?? 0,
|
|
2804
|
+
thisPeopleGroupApiLink
|
|
2805
|
+
});
|
|
2806
|
+
const apiGroup = {
|
|
2807
|
+
dataset: apiDataset,
|
|
2808
|
+
group: {
|
|
2809
|
+
...group,
|
|
2810
|
+
members: linkEntityRefs("people", group.members),
|
|
2811
|
+
events: linkEntityRefs("events", group.events)
|
|
2812
|
+
},
|
|
2813
|
+
thisPeopleGroupApiLink
|
|
2814
|
+
};
|
|
2815
|
+
if (!api.datasetPeopleGroupContents) {
|
|
2816
|
+
api.datasetPeopleGroupContents = [];
|
|
2817
|
+
}
|
|
2818
|
+
api.datasetPeopleGroupContents.push(apiGroup);
|
|
2819
|
+
}
|
|
2820
|
+
apiDataset.listOfPeopleGroupsApiLink = listOfDatasetEntitiesApiLink(
|
|
2821
|
+
datasetInfo.id,
|
|
2822
|
+
"groups",
|
|
2823
|
+
"json",
|
|
2824
|
+
apiPathPrefix
|
|
2825
|
+
);
|
|
2826
|
+
apiDataset.totalNumberOfPeopleGroups = peopleGroups.length;
|
|
2827
|
+
if (!api.datasetPeopleGroups) {
|
|
2828
|
+
api.datasetPeopleGroups = [];
|
|
2829
|
+
}
|
|
2830
|
+
api.datasetPeopleGroups.push(datasetPeopleGroups);
|
|
2831
|
+
}
|
|
2832
|
+
if (books.length <= 0 && (people || places || events)) {
|
|
2833
|
+
let addEntityVerses2 = function(collection, references, createEntry) {
|
|
2834
|
+
for (let reference of references) {
|
|
2835
|
+
let bookChapters = chapterMap.get(reference.book);
|
|
2836
|
+
if (!bookChapters) {
|
|
2837
|
+
bookChapters = /* @__PURE__ */ new Map();
|
|
2838
|
+
chapterMap.set(reference.book, bookChapters);
|
|
2839
|
+
}
|
|
2840
|
+
let chapterEntities = bookChapters.get(reference.chapter);
|
|
2841
|
+
if (!chapterEntities) {
|
|
2842
|
+
chapterEntities = {
|
|
2843
|
+
people: /* @__PURE__ */ new Map(),
|
|
2844
|
+
places: /* @__PURE__ */ new Map(),
|
|
2845
|
+
events: /* @__PURE__ */ new Map()
|
|
2846
|
+
};
|
|
2847
|
+
bookChapters.set(reference.chapter, chapterEntities);
|
|
2848
|
+
}
|
|
2849
|
+
const entry = createEntry();
|
|
2850
|
+
const entities = chapterEntities[collection];
|
|
2851
|
+
let existing = entities.get(entry.id);
|
|
2852
|
+
if (!existing) {
|
|
2853
|
+
existing = { ...entry, verses: [] };
|
|
2854
|
+
entities.set(entry.id, existing);
|
|
2855
|
+
}
|
|
2856
|
+
const endVerse = reference.endVerse ?? reference.verse;
|
|
2857
|
+
for (let verse = reference.verse; verse <= endVerse; verse++) {
|
|
2858
|
+
existing.verses.push(verse);
|
|
2859
|
+
}
|
|
2860
|
+
}
|
|
2861
|
+
}, sortEntities2 = function(entities) {
|
|
2862
|
+
const list = [...entities.values()];
|
|
2863
|
+
for (let entity of list) {
|
|
2864
|
+
entity.verses.sort((a, b) => a - b);
|
|
2865
|
+
}
|
|
2866
|
+
return list.sort(
|
|
2867
|
+
(a, b) => a.verses[0] - b.verses[0] || a.id.localeCompare(b.id)
|
|
2868
|
+
);
|
|
2869
|
+
};
|
|
2870
|
+
var addEntityVerses = addEntityVerses2, sortEntities = sortEntities2;
|
|
2871
|
+
const chapterMap = /* @__PURE__ */ new Map();
|
|
2872
|
+
for (let person of people ?? []) {
|
|
2873
|
+
addEntityVerses2(
|
|
2874
|
+
"people",
|
|
2875
|
+
person.references,
|
|
2876
|
+
() => ({
|
|
2877
|
+
id: person.id,
|
|
2878
|
+
name: person.name,
|
|
2879
|
+
isProperName: person.isProperName,
|
|
2880
|
+
gender: person.gender,
|
|
2881
|
+
birthYear: person.birthYear,
|
|
2882
|
+
deathYear: person.deathYear,
|
|
2883
|
+
apiLink: datasetEntityApiLink(
|
|
2884
|
+
datasetInfo.id,
|
|
2885
|
+
"people",
|
|
2886
|
+
person.id,
|
|
2887
|
+
"json",
|
|
2888
|
+
apiPathPrefix
|
|
2889
|
+
)
|
|
2890
|
+
})
|
|
2891
|
+
);
|
|
2892
|
+
}
|
|
2893
|
+
for (let place of places ?? []) {
|
|
2894
|
+
addEntityVerses2(
|
|
2895
|
+
"places",
|
|
2896
|
+
place.references,
|
|
2897
|
+
() => ({
|
|
2898
|
+
id: place.id,
|
|
2899
|
+
name: place.name,
|
|
2900
|
+
featureType: place.featureType,
|
|
2901
|
+
latitude: place.latitude,
|
|
2902
|
+
longitude: place.longitude,
|
|
2903
|
+
apiLink: datasetEntityApiLink(
|
|
2904
|
+
datasetInfo.id,
|
|
2905
|
+
"places",
|
|
2906
|
+
place.id,
|
|
2907
|
+
"json",
|
|
2908
|
+
apiPathPrefix
|
|
2909
|
+
)
|
|
2910
|
+
})
|
|
2911
|
+
);
|
|
2912
|
+
}
|
|
2913
|
+
for (let event of events ?? []) {
|
|
2914
|
+
addEntityVerses2(
|
|
2915
|
+
"events",
|
|
2916
|
+
event.references,
|
|
2917
|
+
() => ({
|
|
2918
|
+
id: event.id,
|
|
2919
|
+
name: event.name,
|
|
2920
|
+
startDate: event.startDate,
|
|
2921
|
+
apiLink: datasetEntityApiLink(
|
|
2922
|
+
datasetInfo.id,
|
|
2923
|
+
"events",
|
|
2924
|
+
event.id,
|
|
2925
|
+
"json",
|
|
2926
|
+
apiPathPrefix
|
|
2927
|
+
)
|
|
2928
|
+
})
|
|
2929
|
+
);
|
|
2930
|
+
}
|
|
2931
|
+
const sortedBooks = [...chapterMap.keys()].sort(
|
|
2932
|
+
(a, b) => (import_book_order.bookOrderMap.get(a) ?? 9999) - (import_book_order.bookOrderMap.get(b) ?? 9999)
|
|
2933
|
+
);
|
|
2934
|
+
const entityChapters = [];
|
|
2935
|
+
for (let bookId of sortedBooks) {
|
|
2936
|
+
const bookChapters = chapterMap.get(bookId);
|
|
2937
|
+
const chapterNumbers = [...bookChapters.keys()].sort(
|
|
2938
|
+
(a, b) => a - b
|
|
2939
|
+
);
|
|
2940
|
+
const firstChapterNumber = chapterNumbers[0];
|
|
2941
|
+
const lastChapterNumber = chapterNumbers[chapterNumbers.length - 1];
|
|
2942
|
+
const apiBook = {
|
|
2943
|
+
id: bookId,
|
|
2944
|
+
order: import_book_order.bookOrderMap.get(bookId) ?? 9999,
|
|
2945
|
+
firstChapterNumber,
|
|
2946
|
+
firstChapterApiLink: bookDatasetChapterApiLink(
|
|
2947
|
+
datasetInfo.id,
|
|
2948
|
+
bookId,
|
|
2949
|
+
firstChapterNumber,
|
|
2950
|
+
"json",
|
|
2951
|
+
apiPathPrefix
|
|
2952
|
+
),
|
|
2953
|
+
firstChapterReference: {
|
|
2954
|
+
datasetId: datasetInfo.id,
|
|
2955
|
+
book: bookId,
|
|
2956
|
+
chapter: firstChapterNumber
|
|
2957
|
+
},
|
|
2958
|
+
lastChapterNumber,
|
|
2959
|
+
lastChapterApiLink: bookDatasetChapterApiLink(
|
|
2960
|
+
datasetInfo.id,
|
|
2961
|
+
bookId,
|
|
2962
|
+
lastChapterNumber,
|
|
2963
|
+
"json",
|
|
2964
|
+
apiPathPrefix
|
|
2965
|
+
),
|
|
2966
|
+
lastChapterReference: {
|
|
2967
|
+
datasetId: datasetInfo.id,
|
|
2968
|
+
book: bookId,
|
|
2969
|
+
chapter: lastChapterNumber
|
|
2970
|
+
},
|
|
2971
|
+
numberOfChapters: chapterNumbers.length,
|
|
2972
|
+
totalNumberOfVerses: 0,
|
|
2973
|
+
totalNumberOfReferences: 0
|
|
2974
|
+
};
|
|
2975
|
+
for (let chapterNumber of chapterNumbers) {
|
|
2976
|
+
const chapterEntities = bookChapters.get(chapterNumber);
|
|
2977
|
+
const chapterPeople = sortEntities2(chapterEntities.people);
|
|
2978
|
+
const chapterPlaces = sortEntities2(chapterEntities.places);
|
|
2979
|
+
const chapterEvents = sortEntities2(chapterEntities.events);
|
|
2980
|
+
const distinctVerses = /* @__PURE__ */ new Set();
|
|
2981
|
+
let numberOfReferences = 0;
|
|
2982
|
+
for (let list of [
|
|
2983
|
+
chapterPeople,
|
|
2984
|
+
chapterPlaces,
|
|
2985
|
+
chapterEvents
|
|
2986
|
+
]) {
|
|
2987
|
+
for (let entity of list) {
|
|
2988
|
+
numberOfReferences += entity.verses.length;
|
|
2989
|
+
for (let verse of entity.verses) {
|
|
2990
|
+
distinctVerses.add(verse);
|
|
2991
|
+
}
|
|
2992
|
+
}
|
|
2993
|
+
}
|
|
2994
|
+
apiBook.totalNumberOfVerses += distinctVerses.size;
|
|
2995
|
+
apiBook.totalNumberOfReferences += numberOfReferences;
|
|
2996
|
+
const apiChapter = {
|
|
2997
|
+
dataset: apiDataset,
|
|
2998
|
+
book: apiBook,
|
|
2999
|
+
chapter: {
|
|
3000
|
+
number: chapterNumber,
|
|
3001
|
+
people: chapterPeople,
|
|
3002
|
+
places: chapterPlaces,
|
|
3003
|
+
events: chapterEvents
|
|
3004
|
+
},
|
|
3005
|
+
thisChapterLink: bookDatasetChapterApiLink(
|
|
3006
|
+
datasetInfo.id,
|
|
3007
|
+
bookId,
|
|
3008
|
+
chapterNumber,
|
|
3009
|
+
"json",
|
|
3010
|
+
apiPathPrefix
|
|
3011
|
+
),
|
|
3012
|
+
thisChapterReference: {
|
|
3013
|
+
datasetId: datasetInfo.id,
|
|
3014
|
+
book: bookId,
|
|
3015
|
+
chapter: chapterNumber
|
|
3016
|
+
},
|
|
3017
|
+
nextChapterApiLink: null,
|
|
3018
|
+
nextChapterReference: null,
|
|
3019
|
+
previousChapterApiLink: null,
|
|
3020
|
+
previousChapterReference: null,
|
|
3021
|
+
numberOfPeople: chapterPeople.length,
|
|
3022
|
+
numberOfPlaces: chapterPlaces.length,
|
|
3023
|
+
numberOfEvents: chapterEvents.length
|
|
3024
|
+
};
|
|
3025
|
+
entityChapters.push(apiChapter);
|
|
3026
|
+
}
|
|
3027
|
+
datasetBooks.books.push(apiBook);
|
|
3028
|
+
apiDataset.totalNumberOfChapters += apiBook.numberOfChapters;
|
|
3029
|
+
apiDataset.totalNumberOfVerses += apiBook.totalNumberOfVerses;
|
|
3030
|
+
apiDataset.totalNumberOfReferences += apiBook.totalNumberOfReferences;
|
|
3031
|
+
}
|
|
3032
|
+
apiDataset.numberOfBooks = datasetBooks.books.length;
|
|
3033
|
+
for (let i = 0; i < entityChapters.length; i++) {
|
|
3034
|
+
if (i > 0) {
|
|
3035
|
+
entityChapters[i].previousChapterApiLink = entityChapters[i - 1].thisChapterLink;
|
|
3036
|
+
entityChapters[i].previousChapterReference = entityChapters[i - 1].thisChapterReference;
|
|
3037
|
+
}
|
|
3038
|
+
if (i < entityChapters.length - 1) {
|
|
3039
|
+
entityChapters[i].nextChapterApiLink = entityChapters[i + 1].thisChapterLink;
|
|
3040
|
+
entityChapters[i].nextChapterReference = entityChapters[i + 1].thisChapterReference;
|
|
3041
|
+
}
|
|
3042
|
+
}
|
|
3043
|
+
if (entityChapters.length > 0) {
|
|
3044
|
+
if (!api.datasetEntityBookChapters) {
|
|
3045
|
+
api.datasetEntityBookChapters = [];
|
|
3046
|
+
}
|
|
3047
|
+
api.datasetEntityBookChapters.push(...entityChapters);
|
|
1167
3048
|
}
|
|
1168
3049
|
}
|
|
1169
3050
|
if (!api.availableDatasets) {
|
|
@@ -1202,9 +3083,21 @@ function generateFilesForApi(api) {
|
|
|
1202
3083
|
for (let bookChapter of api.translationBookChapters) {
|
|
1203
3084
|
files.push(jsonFile(bookChapter.thisChapterLink, bookChapter));
|
|
1204
3085
|
}
|
|
3086
|
+
for (let bookChapter of api.simpleTranslationBookChapters ?? []) {
|
|
3087
|
+
files.push(jsonFile(bookChapter.thisChapterLink, bookChapter));
|
|
3088
|
+
}
|
|
1205
3089
|
for (let audio of api.translationBookChapterAudio) {
|
|
1206
3090
|
files.push(downloadedFile(audio.link, audio.originalUrl));
|
|
1207
3091
|
}
|
|
3092
|
+
for (let timings of api.translationBookChapterAudioTimings) {
|
|
3093
|
+
files.push(jsonFile(timings.thisChapterAudioTimingsLink, timings));
|
|
3094
|
+
}
|
|
3095
|
+
for (let words of api.translationBookChapterWords) {
|
|
3096
|
+
files.push(jsonFile(words.thisChapterWordsLink, words));
|
|
3097
|
+
}
|
|
3098
|
+
for (let words of api.simpleTranslationBookChapterWords ?? []) {
|
|
3099
|
+
files.push(jsonFile(words.thisChapterWordsLink, words));
|
|
3100
|
+
}
|
|
1208
3101
|
for (let complete of api.translationComplete) {
|
|
1209
3102
|
if (complete.translation.completeTranslationApiLink) {
|
|
1210
3103
|
files.push(
|
|
@@ -1215,6 +3108,16 @@ function generateFilesForApi(api) {
|
|
|
1215
3108
|
);
|
|
1216
3109
|
}
|
|
1217
3110
|
}
|
|
3111
|
+
for (let complete of api.simpleTranslationComplete) {
|
|
3112
|
+
if (complete.translation.simpleCompleteTranslationApiLink) {
|
|
3113
|
+
files.push(
|
|
3114
|
+
jsonFile(
|
|
3115
|
+
complete.translation.simpleCompleteTranslationApiLink,
|
|
3116
|
+
complete
|
|
3117
|
+
)
|
|
3118
|
+
);
|
|
3119
|
+
}
|
|
3120
|
+
}
|
|
1218
3121
|
files.push(
|
|
1219
3122
|
jsonFile(
|
|
1220
3123
|
`${api.pathPrefix}/api/available_commentaries.json`,
|
|
@@ -1246,6 +3149,9 @@ function generateFilesForApi(api) {
|
|
|
1246
3149
|
for (let bookChapter of api.commentaryBookChapters) {
|
|
1247
3150
|
files.push(jsonFile(bookChapter.thisChapterLink, bookChapter));
|
|
1248
3151
|
}
|
|
3152
|
+
for (let bookChapter of api.simpleCommentaryBookChapters ?? []) {
|
|
3153
|
+
files.push(jsonFile(bookChapter.thisChapterLink, bookChapter));
|
|
3154
|
+
}
|
|
1249
3155
|
if (api.availableDatasets) {
|
|
1250
3156
|
files.push(
|
|
1251
3157
|
jsonFile(
|
|
@@ -1269,6 +3175,44 @@ function generateFilesForApi(api) {
|
|
|
1269
3175
|
);
|
|
1270
3176
|
}
|
|
1271
3177
|
}
|
|
3178
|
+
for (let entityChapter of api.datasetEntityBookChapters ?? []) {
|
|
3179
|
+
files.push(jsonFile(entityChapter.thisChapterLink, entityChapter));
|
|
3180
|
+
}
|
|
3181
|
+
for (let datasetPeople of api.datasetPeople ?? []) {
|
|
3182
|
+
files.push(
|
|
3183
|
+
jsonFile(datasetPeople.dataset.listOfPeopleApiLink, datasetPeople)
|
|
3184
|
+
);
|
|
3185
|
+
}
|
|
3186
|
+
for (let person of api.datasetPeopleContents ?? []) {
|
|
3187
|
+
files.push(jsonFile(person.thisPersonApiLink, person));
|
|
3188
|
+
}
|
|
3189
|
+
for (let datasetPlaces of api.datasetPlaces ?? []) {
|
|
3190
|
+
files.push(
|
|
3191
|
+
jsonFile(datasetPlaces.dataset.listOfPlacesApiLink, datasetPlaces)
|
|
3192
|
+
);
|
|
3193
|
+
}
|
|
3194
|
+
for (let place of api.datasetPlaceContents ?? []) {
|
|
3195
|
+
files.push(jsonFile(place.thisPlaceApiLink, place));
|
|
3196
|
+
}
|
|
3197
|
+
for (let datasetEvents of api.datasetEvents ?? []) {
|
|
3198
|
+
files.push(
|
|
3199
|
+
jsonFile(datasetEvents.dataset.listOfEventsApiLink, datasetEvents)
|
|
3200
|
+
);
|
|
3201
|
+
}
|
|
3202
|
+
for (let event of api.datasetEventContents ?? []) {
|
|
3203
|
+
files.push(jsonFile(event.thisEventApiLink, event));
|
|
3204
|
+
}
|
|
3205
|
+
for (let datasetPeopleGroups of api.datasetPeopleGroups ?? []) {
|
|
3206
|
+
files.push(
|
|
3207
|
+
jsonFile(
|
|
3208
|
+
datasetPeopleGroups.dataset.listOfPeopleGroupsApiLink,
|
|
3209
|
+
datasetPeopleGroups
|
|
3210
|
+
)
|
|
3211
|
+
);
|
|
3212
|
+
}
|
|
3213
|
+
for (let group of api.datasetPeopleGroupContents ?? []) {
|
|
3214
|
+
files.push(jsonFile(group.thisPeopleGroupApiLink, group));
|
|
3215
|
+
}
|
|
1272
3216
|
return files;
|
|
1273
3217
|
}
|
|
1274
3218
|
async function* generateOutputFilesFromDatasets(datasets, options) {
|
|
@@ -1281,8 +3225,8 @@ async function* generateOutputFilesFromDatasets(datasets, options) {
|
|
|
1281
3225
|
function listOfBooksApiLink(translationId, prefix = "") {
|
|
1282
3226
|
return `${prefix}/api/${translationId}/books.json`;
|
|
1283
3227
|
}
|
|
1284
|
-
function completeTranslationApiLink(translationId, prefix = "") {
|
|
1285
|
-
return `${prefix}/api/${translationId}/complete
|
|
3228
|
+
function completeTranslationApiLink(translationId, prefix = "", extension = "json") {
|
|
3229
|
+
return `${prefix}/api/${translationId}/complete.${extension}`;
|
|
1286
3230
|
}
|
|
1287
3231
|
function listOfCommentaryBooksApiLink(commentaryId, prefix = "") {
|
|
1288
3232
|
return `${prefix}/api/c/${commentaryId}/books.json`;
|
|
@@ -1290,6 +3234,15 @@ function listOfCommentaryBooksApiLink(commentaryId, prefix = "") {
|
|
|
1290
3234
|
function listOfDatasetBooksApiLink(datasetId, prefix = "") {
|
|
1291
3235
|
return `${prefix}/api/d/${datasetId}/books.json`;
|
|
1292
3236
|
}
|
|
3237
|
+
function listOfDatasetEntitiesApiLink(datasetId, collection, extension = "json", prefix = "") {
|
|
3238
|
+
return `${prefix}/api/d/${datasetId}/${collection}.${extension}`;
|
|
3239
|
+
}
|
|
3240
|
+
function datasetEntityApiLink(datasetId, collection, entityId, extension = "json", prefix = "") {
|
|
3241
|
+
return `${prefix}/api/d/${datasetId}/${collection}/${replaceSpacesWithUnderscores(
|
|
3242
|
+
entityId
|
|
3243
|
+
)}.${extension}`;
|
|
3244
|
+
}
|
|
3245
|
+
const SIMPLE_JSON_EXTENSION = "simple.json";
|
|
1293
3246
|
function bookChapterApiLink(translationId, commonName, chapterNumber, extension, prefix = "") {
|
|
1294
3247
|
return `${prefix}/api/${translationId}/${replaceSpacesWithUnderscores(
|
|
1295
3248
|
commonName
|
|
@@ -1305,6 +3258,16 @@ function bookChapterAudioApiLink(translationId, bookId, chapterNumber, reader, p
|
|
|
1305
3258
|
bookId
|
|
1306
3259
|
)}/${chapterNumber}.${reader}.mp3`;
|
|
1307
3260
|
}
|
|
3261
|
+
function bookChapterAudioTimingsApiLink(translationId, bookId, chapterNumber, reader, prefix = "") {
|
|
3262
|
+
return `${prefix}/api/${translationId}/${replaceSpacesWithUnderscores(
|
|
3263
|
+
bookId
|
|
3264
|
+
)}/${chapterNumber}.${reader}.audioTimings.json`;
|
|
3265
|
+
}
|
|
3266
|
+
function bookChapterWordsApiLink(translationId, bookId, chapterNumber, prefix = "", extension = "json") {
|
|
3267
|
+
return `${prefix}/api/${translationId}/${replaceSpacesWithUnderscores(
|
|
3268
|
+
bookId
|
|
3269
|
+
)}/${chapterNumber}.words.${extension}`;
|
|
3270
|
+
}
|
|
1308
3271
|
function bookDatasetChapterApiLink(translationId, commonName, chapterNumber, extension, prefix = "") {
|
|
1309
3272
|
return `${prefix}/api/d/${translationId}/${replaceSpacesWithUnderscores(
|
|
1310
3273
|
commonName
|
|
@@ -1349,19 +3312,52 @@ function replaceSpacesWithUnderscores(str) {
|
|
|
1349
3312
|
ApiDatasetBookChapterSchema,
|
|
1350
3313
|
ApiDatasetBookSchema,
|
|
1351
3314
|
ApiDatasetBooksSchema,
|
|
3315
|
+
ApiDatasetChapterEventSchema,
|
|
3316
|
+
ApiDatasetChapterPersonSchema,
|
|
3317
|
+
ApiDatasetChapterPlaceSchema,
|
|
3318
|
+
ApiDatasetEntityBookChapterSchema,
|
|
3319
|
+
ApiDatasetEntityChapterDataSchema,
|
|
3320
|
+
ApiDatasetEventSchema,
|
|
3321
|
+
ApiDatasetEventSummarySchema,
|
|
3322
|
+
ApiDatasetEventsSchema,
|
|
3323
|
+
ApiDatasetPeopleGroupSchema,
|
|
3324
|
+
ApiDatasetPeopleGroupSummarySchema,
|
|
3325
|
+
ApiDatasetPeopleGroupsSchema,
|
|
3326
|
+
ApiDatasetPeopleSchema,
|
|
3327
|
+
ApiDatasetPersonSchema,
|
|
3328
|
+
ApiDatasetPersonSummarySchema,
|
|
3329
|
+
ApiDatasetPlaceSchema,
|
|
3330
|
+
ApiDatasetPlaceSummarySchema,
|
|
3331
|
+
ApiDatasetPlacesSchema,
|
|
1352
3332
|
ApiDatasetSchema,
|
|
3333
|
+
ApiSimpleCommentaryBookChapterSchema,
|
|
3334
|
+
ApiSimpleTranslationBookChapterSchema,
|
|
3335
|
+
ApiSimpleTranslationBookChapterWordsSchema,
|
|
3336
|
+
ApiSimpleTranslationCompleteBookSchema,
|
|
3337
|
+
ApiSimpleTranslationCompleteSchema,
|
|
1353
3338
|
ApiTranslationBookChapterAudioSchema,
|
|
3339
|
+
ApiTranslationBookChapterAudioTimingsSchema,
|
|
1354
3340
|
ApiTranslationBookChapterSchema,
|
|
3341
|
+
ApiTranslationBookChapterWordsSchema,
|
|
1355
3342
|
ApiTranslationBookSchema,
|
|
1356
3343
|
ApiTranslationBooksSchema,
|
|
1357
3344
|
ApiTranslationCompleteBookSchema,
|
|
1358
3345
|
ApiTranslationCompleteSchema,
|
|
1359
3346
|
ApiTranslationSchema,
|
|
3347
|
+
CommentaryChapterReferenceSchema,
|
|
3348
|
+
DatasetChapterReferenceSchema,
|
|
3349
|
+
SIMPLE_JSON_EXTENSION,
|
|
3350
|
+
SimpleTranslationCompleteChapterSchema,
|
|
3351
|
+
TranslationChapterReferenceSchema,
|
|
3352
|
+
TranslationCompleteChapterSchema,
|
|
1360
3353
|
bookChapterApiLink,
|
|
1361
3354
|
bookChapterAudioApiLink,
|
|
3355
|
+
bookChapterAudioTimingsApiLink,
|
|
3356
|
+
bookChapterWordsApiLink,
|
|
1362
3357
|
bookCommentaryChapterApiLink,
|
|
1363
3358
|
bookDatasetChapterApiLink,
|
|
1364
3359
|
completeTranslationApiLink,
|
|
3360
|
+
datasetEntityApiLink,
|
|
1365
3361
|
downloadedFile,
|
|
1366
3362
|
generateApiForDataset,
|
|
1367
3363
|
generateFilesForApi,
|
|
@@ -1370,6 +3366,7 @@ function replaceSpacesWithUnderscores(str) {
|
|
|
1370
3366
|
listOfBooksApiLink,
|
|
1371
3367
|
listOfCommentaryBooksApiLink,
|
|
1372
3368
|
listOfDatasetBooksApiLink,
|
|
3369
|
+
listOfDatasetEntitiesApiLink,
|
|
1373
3370
|
profileCommentaryApiLink,
|
|
1374
3371
|
profilesCommentaryApiLink,
|
|
1375
3372
|
replaceSpacesWithUnderscores
|