@helloao/tools 0.0.6 → 0.0.9
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 +240 -0
- package/dist/cjs/generation/api.cjs.map +7 -0
- package/dist/cjs/generation/audio.cjs +83 -0
- package/dist/cjs/generation/audio.cjs.map +7 -0
- package/dist/cjs/generation/book-order.cjs +508 -0
- package/dist/cjs/generation/book-order.cjs.map +7 -0
- package/dist/cjs/generation/common-types.cjs +17 -0
- package/dist/cjs/generation/common-types.cjs.map +7 -0
- package/dist/cjs/generation/dataset.cjs +158 -0
- package/dist/cjs/generation/dataset.cjs.map +7 -0
- package/dist/cjs/generation/index.cjs +51 -0
- package/dist/cjs/generation/index.cjs.map +7 -0
- package/dist/cjs/index.cjs +45 -0
- package/dist/cjs/index.cjs.map +7 -0
- package/dist/cjs/parser/codex-parser.cjs +176 -0
- package/dist/cjs/parser/codex-parser.cjs.map +7 -0
- package/dist/cjs/parser/index.cjs +48 -0
- package/dist/cjs/parser/index.cjs.map +7 -0
- package/dist/cjs/parser/iterators.cjs +204 -0
- package/dist/cjs/parser/iterators.cjs.map +7 -0
- package/dist/cjs/parser/types.cjs +17 -0
- package/dist/cjs/parser/types.cjs.map +7 -0
- package/dist/cjs/parser/usfm-parser.cjs +791 -0
- package/dist/cjs/parser/usfm-parser.cjs.map +7 -0
- package/dist/cjs/parser/usx-parser.cjs +471 -0
- package/dist/cjs/parser/usx-parser.cjs.map +7 -0
- package/dist/cjs/utils.cjs +85 -0
- package/dist/cjs/utils.cjs.map +7 -0
- package/dist/esm/generation/api.js +198 -0
- package/dist/esm/generation/api.js.map +7 -0
- package/dist/esm/generation/audio.js +53 -0
- package/dist/esm/generation/audio.js.map +7 -0
- package/dist/esm/generation/book-order.js +478 -0
- package/dist/esm/generation/book-order.js.map +7 -0
- package/dist/esm/generation/common-types.js +2 -0
- package/dist/esm/generation/common-types.js.map +7 -0
- package/dist/esm/generation/dataset.js +132 -0
- package/dist/esm/generation/dataset.js.map +7 -0
- package/dist/esm/generation/index.js +8 -0
- package/dist/esm/generation/index.js.map +7 -0
- package/dist/esm/index.js +6 -0
- package/dist/esm/index.js.map +7 -0
- package/dist/esm/parser/codex-parser.js +144 -0
- package/dist/esm/parser/codex-parser.js.map +7 -0
- package/dist/esm/parser/index.js +8 -0
- package/dist/esm/parser/index.js.map +7 -0
- package/dist/esm/parser/iterators.js +152 -0
- package/dist/esm/parser/iterators.js.map +7 -0
- package/dist/esm/parser/types.js +2 -0
- package/dist/esm/parser/types.js.map +7 -0
- package/dist/esm/parser/usfm-parser.js +749 -0
- package/dist/esm/parser/usfm-parser.js.map +7 -0
- package/dist/esm/parser/usx-parser.js +447 -0
- package/dist/esm/parser/usx-parser.js.map +7 -0
- package/dist/esm/utils.js +51 -0
- package/dist/esm/utils.js.map +7 -0
- package/{generation → dist/types/generation}/api.d.ts +2 -2
- package/{generation → dist/types/generation}/audio.d.ts +1 -1
- package/{generation → dist/types/generation}/dataset.d.ts +1 -1
- package/dist/types/generation/index.d.ts +7 -0
- package/dist/types/index.d.ts +5 -0
- package/{parser → dist/types/parser}/codex-parser.d.ts +1 -1
- package/dist/types/parser/index.d.ts +7 -0
- package/{parser → dist/types/parser}/usfm-parser.d.ts +1 -1
- package/{parser → dist/types/parser}/usx-parser.d.ts +2 -2
- package/package.json +25 -3
- package/generation/api.js +0 -187
- package/generation/api.spec.d.ts +0 -2
- package/generation/api.spec.js +0 -620
- package/generation/audio.js +0 -60
- package/generation/audio.spec.d.ts +0 -2
- package/generation/audio.spec.js +0 -36
- package/generation/book-order.js +0 -494
- package/generation/book-order.spec.d.ts +0 -2
- package/generation/book-order.spec.js +0 -8
- package/generation/common-types.js +0 -2
- package/generation/dataset.js +0 -106
- package/generation/index.d.ts +0 -7
- package/generation/index.js +0 -38
- package/index.d.ts +0 -5
- package/index.js +0 -32
- package/parser/codex-parser.js +0 -160
- package/parser/codex-parser.spec.d.ts +0 -2
- package/parser/codex-parser.spec.js +0 -645
- package/parser/index.d.ts +0 -7
- package/parser/index.js +0 -35
- package/parser/iterators.js +0 -222
- package/parser/iterators.spec.d.ts +0 -2
- package/parser/iterators.spec.js +0 -174
- package/parser/types.js +0 -2
- package/parser/usfm-parser.js +0 -840
- package/parser/usfm-parser.spec.d.ts +0 -2
- package/parser/usfm-parser.spec.js +0 -1593
- package/parser/usx-parser.js +0 -486
- package/parser/usx-parser.spec.d.ts +0 -2
- package/parser/usx-parser.spec.js +0 -1260
- package/utils.js +0 -73
- package/utils.spec.d.ts +0 -2
- package/utils.spec.js +0 -42
- /package/{generation → dist/types/generation}/book-order.d.ts +0 -0
- /package/{generation → dist/types/generation}/common-types.d.ts +0 -0
- /package/{parser → dist/types/parser}/iterators.d.ts +0 -0
- /package/{parser → dist/types/parser}/types.d.ts +0 -0
- /package/{utils.d.ts → dist/types/utils.d.ts} +0 -0
|
@@ -1,645 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const codex_parser_1 = require("./codex-parser");
|
|
7
|
-
const codex_simple_example_codex_1 = __importDefault(require("./test/codex-simple-example.codex"));
|
|
8
|
-
describe('CodexParser', () => {
|
|
9
|
-
let parser;
|
|
10
|
-
beforeEach(() => {
|
|
11
|
-
parser = new codex_parser_1.CodexParser();
|
|
12
|
-
});
|
|
13
|
-
describe('parse', () => {
|
|
14
|
-
it('should parse a scripture cell into verses', () => {
|
|
15
|
-
const tree = parser.parse(JSON.stringify({
|
|
16
|
-
cells: [
|
|
17
|
-
{
|
|
18
|
-
kind: 2,
|
|
19
|
-
language: 'scripture',
|
|
20
|
-
value: [
|
|
21
|
-
'JON 1:1 إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:',
|
|
22
|
-
'JON 1:2 «كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».',
|
|
23
|
-
'JON 1:3 داي إيكّر يونان، أد يرول زݣ داث ن ربّي غر ترشيش، إيݣّزد غر يافا يافن ديس يان لباطو إيوجدن إ ثوادا غر ترشيش، أها إيش الخلاص نّس إيݣز غر الباطو أد إيمون د إيمسافرغر ترشيش إيرول زݣ داث ن ربّي.',
|
|
24
|
-
].join('\n')
|
|
25
|
-
}
|
|
26
|
-
]
|
|
27
|
-
}));
|
|
28
|
-
expect(tree).toEqual({
|
|
29
|
-
type: 'root',
|
|
30
|
-
id: 'JON',
|
|
31
|
-
content: [
|
|
32
|
-
{
|
|
33
|
-
type: 'chapter',
|
|
34
|
-
number: 1,
|
|
35
|
-
content: [
|
|
36
|
-
{
|
|
37
|
-
type: 'verse',
|
|
38
|
-
number: 1,
|
|
39
|
-
content: ['إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:']
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
type: 'verse',
|
|
43
|
-
number: 2,
|
|
44
|
-
content: ['«كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».'],
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
type: 'verse',
|
|
48
|
-
number: 3,
|
|
49
|
-
content: ['داي إيكّر يونان، أد يرول زݣ داث ن ربّي غر ترشيش، إيݣّزد غر يافا يافن ديس يان لباطو إيوجدن إ ثوادا غر ترشيش، أها إيش الخلاص نّس إيݣز غر الباطو أد إيمون د إيمسافرغر ترشيش إيرول زݣ داث ن ربّي.']
|
|
50
|
-
},
|
|
51
|
-
],
|
|
52
|
-
footnotes: [],
|
|
53
|
-
}
|
|
54
|
-
]
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
it('should parse a scripture cell into multiple chapters', () => {
|
|
58
|
-
const tree = parser.parse(JSON.stringify({
|
|
59
|
-
cells: [
|
|
60
|
-
{
|
|
61
|
-
kind: 2,
|
|
62
|
-
language: 'scripture',
|
|
63
|
-
value: [
|
|
64
|
-
'JON 1:1 إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:',
|
|
65
|
-
'JON 1:2 «كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».',
|
|
66
|
-
'JON 1:3 داي إيكّر يونان، أد يرول زݣ داث ن ربّي غر ترشيش، إيݣّزد غر يافا يافن ديس يان لباطو إيوجدن إ ثوادا غر ترشيش، أها إيش الخلاص نّس إيݣز غر الباطو أد إيمون د إيمسافرغر ترشيش إيرول زݣ داث ن ربّي.',
|
|
67
|
-
'JON 2:1 داي إيژّال يونان إتّر إ ربّي نّس زݣ أوديس ن-وسلم.',
|
|
68
|
-
'JON 2:2 إينّا: «غريخ إ يهويه ربّي ݣ-ثمارانو إيجَاوبِي، زݣ آيث ليخرا سغُويّخاشن أيهويه ربّي نو، تسفلت إ تغُويّيت إينو.'
|
|
69
|
-
].join('\n')
|
|
70
|
-
}
|
|
71
|
-
]
|
|
72
|
-
}));
|
|
73
|
-
expect(tree).toEqual({
|
|
74
|
-
type: 'root',
|
|
75
|
-
id: 'JON',
|
|
76
|
-
content: [
|
|
77
|
-
{
|
|
78
|
-
type: 'chapter',
|
|
79
|
-
number: 1,
|
|
80
|
-
content: [
|
|
81
|
-
{
|
|
82
|
-
type: 'verse',
|
|
83
|
-
number: 1,
|
|
84
|
-
content: ['إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:']
|
|
85
|
-
},
|
|
86
|
-
{
|
|
87
|
-
type: 'verse',
|
|
88
|
-
number: 2,
|
|
89
|
-
content: ['«كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».'],
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
type: 'verse',
|
|
93
|
-
number: 3,
|
|
94
|
-
content: ['داي إيكّر يونان، أد يرول زݣ داث ن ربّي غر ترشيش، إيݣّزد غر يافا يافن ديس يان لباطو إيوجدن إ ثوادا غر ترشيش، أها إيش الخلاص نّس إيݣز غر الباطو أد إيمون د إيمسافرغر ترشيش إيرول زݣ داث ن ربّي.']
|
|
95
|
-
},
|
|
96
|
-
],
|
|
97
|
-
footnotes: [],
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
type: 'chapter',
|
|
101
|
-
number: 2,
|
|
102
|
-
content: [
|
|
103
|
-
{
|
|
104
|
-
type: 'verse',
|
|
105
|
-
number: 1,
|
|
106
|
-
content: ['داي إيژّال يونان إتّر إ ربّي نّس زݣ أوديس ن-وسلم.']
|
|
107
|
-
},
|
|
108
|
-
{
|
|
109
|
-
type: 'verse',
|
|
110
|
-
number: 2,
|
|
111
|
-
content: ['إينّا: «غريخ إ يهويه ربّي ݣ-ثمارانو إيجَاوبِي، زݣ آيث ليخرا سغُويّخاشن أيهويه ربّي نو، تسفلت إ تغُويّيت إينو.']
|
|
112
|
-
},
|
|
113
|
-
],
|
|
114
|
-
footnotes: [],
|
|
115
|
-
}
|
|
116
|
-
]
|
|
117
|
-
});
|
|
118
|
-
});
|
|
119
|
-
it('should interpret multiple newlines as a line break', () => {
|
|
120
|
-
const tree = parser.parse(JSON.stringify({
|
|
121
|
-
cells: [
|
|
122
|
-
{
|
|
123
|
-
kind: 2,
|
|
124
|
-
language: 'scripture',
|
|
125
|
-
value: [
|
|
126
|
-
'JON 1:1 إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:',
|
|
127
|
-
'',
|
|
128
|
-
'JON 1:2 «كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».',
|
|
129
|
-
].join('\n')
|
|
130
|
-
}
|
|
131
|
-
]
|
|
132
|
-
}));
|
|
133
|
-
expect(tree).toEqual({
|
|
134
|
-
type: 'root',
|
|
135
|
-
id: 'JON',
|
|
136
|
-
content: [
|
|
137
|
-
{
|
|
138
|
-
type: 'chapter',
|
|
139
|
-
number: 1,
|
|
140
|
-
content: [
|
|
141
|
-
{
|
|
142
|
-
type: 'verse',
|
|
143
|
-
number: 1,
|
|
144
|
-
content: ['إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:']
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
type: 'line_break'
|
|
148
|
-
},
|
|
149
|
-
{
|
|
150
|
-
type: 'verse',
|
|
151
|
-
number: 2,
|
|
152
|
-
content: ['«كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».'],
|
|
153
|
-
},
|
|
154
|
-
],
|
|
155
|
-
footnotes: [],
|
|
156
|
-
},
|
|
157
|
-
]
|
|
158
|
-
});
|
|
159
|
-
});
|
|
160
|
-
it('should be able to have a line break inside a verse', () => {
|
|
161
|
-
const tree = parser.parse(JSON.stringify({
|
|
162
|
-
cells: [
|
|
163
|
-
{
|
|
164
|
-
kind: 2,
|
|
165
|
-
language: 'scripture',
|
|
166
|
-
value: [
|
|
167
|
-
'JON 1:1 إيسيول ربّي إ يُونان ممّيس ن\n\n أمتّاي إنّاياس:',
|
|
168
|
-
'JON 1:2 «كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».',
|
|
169
|
-
].join('\n')
|
|
170
|
-
}
|
|
171
|
-
]
|
|
172
|
-
}));
|
|
173
|
-
expect(tree).toEqual({
|
|
174
|
-
type: 'root',
|
|
175
|
-
id: 'JON',
|
|
176
|
-
content: [
|
|
177
|
-
{
|
|
178
|
-
type: 'chapter',
|
|
179
|
-
number: 1,
|
|
180
|
-
content: [
|
|
181
|
-
{
|
|
182
|
-
type: 'verse',
|
|
183
|
-
number: 1,
|
|
184
|
-
content: [
|
|
185
|
-
'إيسيول ربّي إ يُونان ممّيس ن',
|
|
186
|
-
{ lineBreak: true },
|
|
187
|
-
' أمتّاي إنّاياس:'
|
|
188
|
-
]
|
|
189
|
-
},
|
|
190
|
-
{
|
|
191
|
-
type: 'verse',
|
|
192
|
-
number: 2,
|
|
193
|
-
content: ['«كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».'],
|
|
194
|
-
},
|
|
195
|
-
],
|
|
196
|
-
footnotes: [],
|
|
197
|
-
},
|
|
198
|
-
]
|
|
199
|
-
});
|
|
200
|
-
});
|
|
201
|
-
it('should be able to support chapter headings', () => {
|
|
202
|
-
const tree = parser.parse(JSON.stringify({
|
|
203
|
-
cells: [
|
|
204
|
-
{
|
|
205
|
-
kind: 1,
|
|
206
|
-
language: 'markdown',
|
|
207
|
-
value: '# Jonah 1',
|
|
208
|
-
"metadata": {
|
|
209
|
-
"type": "chapter-heading",
|
|
210
|
-
"data": {
|
|
211
|
-
"chapter": "1"
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
},
|
|
215
|
-
{
|
|
216
|
-
kind: 2,
|
|
217
|
-
language: 'scripture',
|
|
218
|
-
value: [
|
|
219
|
-
'JON 1:1 إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:',
|
|
220
|
-
'JON 1:2 «كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».',
|
|
221
|
-
].join('\n')
|
|
222
|
-
},
|
|
223
|
-
{
|
|
224
|
-
kind: 1,
|
|
225
|
-
language: 'markdown',
|
|
226
|
-
value: '# Jonah 2',
|
|
227
|
-
"metadata": {
|
|
228
|
-
"type": "chapter-heading",
|
|
229
|
-
"data": {
|
|
230
|
-
"chapter": "2"
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
},
|
|
234
|
-
{
|
|
235
|
-
kind: 2,
|
|
236
|
-
language: 'scripture',
|
|
237
|
-
value: [
|
|
238
|
-
'JON 2:1 داي إيژّال يونان إتّر إ ربّي نّس زݣ أوديس ن-وسلم.',
|
|
239
|
-
'JON 2:2 إينّا: «غريخ إ يهويه ربّي ݣ-ثمارانو إيجَاوبِي، زݣ آيث ليخرا سغُويّخاشن أيهويه ربّي نو، تسفلت إ تغُويّيت إينو.'
|
|
240
|
-
].join('\n')
|
|
241
|
-
}
|
|
242
|
-
]
|
|
243
|
-
}));
|
|
244
|
-
expect(tree).toEqual({
|
|
245
|
-
type: 'root',
|
|
246
|
-
id: 'JON',
|
|
247
|
-
content: [
|
|
248
|
-
{
|
|
249
|
-
type: 'chapter',
|
|
250
|
-
number: 1,
|
|
251
|
-
content: [
|
|
252
|
-
{
|
|
253
|
-
type: 'heading',
|
|
254
|
-
content: ['# Jonah 1']
|
|
255
|
-
},
|
|
256
|
-
{
|
|
257
|
-
type: 'verse',
|
|
258
|
-
number: 1,
|
|
259
|
-
content: [
|
|
260
|
-
'إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:'
|
|
261
|
-
]
|
|
262
|
-
},
|
|
263
|
-
{
|
|
264
|
-
type: 'verse',
|
|
265
|
-
number: 2,
|
|
266
|
-
content: ['«كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».'],
|
|
267
|
-
},
|
|
268
|
-
],
|
|
269
|
-
footnotes: [],
|
|
270
|
-
},
|
|
271
|
-
{
|
|
272
|
-
type: 'chapter',
|
|
273
|
-
number: 2,
|
|
274
|
-
content: [
|
|
275
|
-
{
|
|
276
|
-
type: 'heading',
|
|
277
|
-
content: ['# Jonah 2']
|
|
278
|
-
},
|
|
279
|
-
{
|
|
280
|
-
type: 'verse',
|
|
281
|
-
number: 1,
|
|
282
|
-
content: ['داي إيژّال يونان إتّر إ ربّي نّس زݣ أوديس ن-وسلم.'],
|
|
283
|
-
},
|
|
284
|
-
{
|
|
285
|
-
type: 'verse',
|
|
286
|
-
number: 2,
|
|
287
|
-
content: ['إينّا: «غريخ إ يهويه ربّي ݣ-ثمارانو إيجَاوبِي، زݣ آيث ليخرا سغُويّخاشن أيهويه ربّي نو، تسفلت إ تغُويّيت إينو.'],
|
|
288
|
-
}
|
|
289
|
-
],
|
|
290
|
-
footnotes: [],
|
|
291
|
-
}
|
|
292
|
-
]
|
|
293
|
-
});
|
|
294
|
-
});
|
|
295
|
-
it('should be able to ignore cells that dont have the right language', () => {
|
|
296
|
-
const tree = parser.parse(JSON.stringify({
|
|
297
|
-
cells: [
|
|
298
|
-
{
|
|
299
|
-
kind: 1,
|
|
300
|
-
language: 'markdown',
|
|
301
|
-
value: '# Jonah 1',
|
|
302
|
-
"metadata": {
|
|
303
|
-
"type": "chapter-heading",
|
|
304
|
-
"data": {
|
|
305
|
-
"chapter": "1"
|
|
306
|
-
}
|
|
307
|
-
}
|
|
308
|
-
},
|
|
309
|
-
{
|
|
310
|
-
kind: 2,
|
|
311
|
-
language: 'scripture',
|
|
312
|
-
value: [
|
|
313
|
-
'JON 1:1 إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:',
|
|
314
|
-
'JON 1:2 «كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».',
|
|
315
|
-
].join('\n')
|
|
316
|
-
},
|
|
317
|
-
{
|
|
318
|
-
kind: 1,
|
|
319
|
-
language: 'anything',
|
|
320
|
-
value: '# Jonah 2',
|
|
321
|
-
"metadata": {
|
|
322
|
-
"type": "chapter-heading",
|
|
323
|
-
"data": {
|
|
324
|
-
"chapter": "2"
|
|
325
|
-
}
|
|
326
|
-
}
|
|
327
|
-
},
|
|
328
|
-
{
|
|
329
|
-
kind: 2,
|
|
330
|
-
language: 'anything',
|
|
331
|
-
value: [
|
|
332
|
-
'JON 2:1 داي إيژّال يونان إتّر إ ربّي نّس زݣ أوديس ن-وسلم.',
|
|
333
|
-
'JON 2:2 إينّا: «غريخ إ يهويه ربّي ݣ-ثمارانو إيجَاوبِي، زݣ آيث ليخرا سغُويّخاشن أيهويه ربّي نو، تسفلت إ تغُويّيت إينو.'
|
|
334
|
-
].join('\n')
|
|
335
|
-
}
|
|
336
|
-
]
|
|
337
|
-
}));
|
|
338
|
-
expect(tree).toEqual({
|
|
339
|
-
type: 'root',
|
|
340
|
-
id: 'JON',
|
|
341
|
-
content: [
|
|
342
|
-
{
|
|
343
|
-
type: 'chapter',
|
|
344
|
-
number: 1,
|
|
345
|
-
content: [
|
|
346
|
-
{
|
|
347
|
-
type: 'heading',
|
|
348
|
-
content: ['# Jonah 1']
|
|
349
|
-
},
|
|
350
|
-
{
|
|
351
|
-
type: 'verse',
|
|
352
|
-
number: 1,
|
|
353
|
-
content: [
|
|
354
|
-
'إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:'
|
|
355
|
-
]
|
|
356
|
-
},
|
|
357
|
-
{
|
|
358
|
-
type: 'verse',
|
|
359
|
-
number: 2,
|
|
360
|
-
content: ['«كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».'],
|
|
361
|
-
},
|
|
362
|
-
],
|
|
363
|
-
footnotes: [],
|
|
364
|
-
},
|
|
365
|
-
]
|
|
366
|
-
});
|
|
367
|
-
});
|
|
368
|
-
it('should be able to parse markdown notes', () => {
|
|
369
|
-
const tree = parser.parse(JSON.stringify({
|
|
370
|
-
cells: [
|
|
371
|
-
{
|
|
372
|
-
kind: 1,
|
|
373
|
-
language: 'markdown',
|
|
374
|
-
value: '# Jonah 1',
|
|
375
|
-
"metadata": {
|
|
376
|
-
"type": "chapter-heading",
|
|
377
|
-
"data": {
|
|
378
|
-
"chapter": "1"
|
|
379
|
-
}
|
|
380
|
-
}
|
|
381
|
-
},
|
|
382
|
-
{
|
|
383
|
-
kind: 2,
|
|
384
|
-
language: 'markdown',
|
|
385
|
-
value: '### note1'
|
|
386
|
-
},
|
|
387
|
-
{
|
|
388
|
-
kind: 2,
|
|
389
|
-
language: 'scripture',
|
|
390
|
-
value: [
|
|
391
|
-
'JON 1:1 إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:',
|
|
392
|
-
'JON 1:2 «كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».',
|
|
393
|
-
].join('\n')
|
|
394
|
-
},
|
|
395
|
-
{
|
|
396
|
-
kind: 2,
|
|
397
|
-
language: 'markdown',
|
|
398
|
-
value: '### note2'
|
|
399
|
-
},
|
|
400
|
-
]
|
|
401
|
-
}));
|
|
402
|
-
expect(tree).toEqual({
|
|
403
|
-
type: 'root',
|
|
404
|
-
id: 'JON',
|
|
405
|
-
content: [
|
|
406
|
-
{
|
|
407
|
-
type: 'chapter',
|
|
408
|
-
number: 1,
|
|
409
|
-
content: [
|
|
410
|
-
{
|
|
411
|
-
type: 'heading',
|
|
412
|
-
content: ['# Jonah 1']
|
|
413
|
-
},
|
|
414
|
-
{
|
|
415
|
-
type: 'verse',
|
|
416
|
-
number: 1,
|
|
417
|
-
content: [
|
|
418
|
-
'إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:'
|
|
419
|
-
]
|
|
420
|
-
},
|
|
421
|
-
{
|
|
422
|
-
type: 'verse',
|
|
423
|
-
number: 2,
|
|
424
|
-
content: ['«كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».'],
|
|
425
|
-
},
|
|
426
|
-
],
|
|
427
|
-
footnotes: [
|
|
428
|
-
{
|
|
429
|
-
noteId: 0,
|
|
430
|
-
text: '### note1',
|
|
431
|
-
caller: null,
|
|
432
|
-
},
|
|
433
|
-
{
|
|
434
|
-
noteId: 1,
|
|
435
|
-
text: '### note2',
|
|
436
|
-
caller: null,
|
|
437
|
-
}
|
|
438
|
-
],
|
|
439
|
-
},
|
|
440
|
-
]
|
|
441
|
-
});
|
|
442
|
-
});
|
|
443
|
-
it.skip('should be able to transform markdown into regular text', () => {
|
|
444
|
-
// parser.preserveMarkdown = false;
|
|
445
|
-
const tree = parser.parse(JSON.stringify({
|
|
446
|
-
cells: [
|
|
447
|
-
{
|
|
448
|
-
kind: 1,
|
|
449
|
-
language: 'markdown',
|
|
450
|
-
value: '# Jonah 1',
|
|
451
|
-
"metadata": {
|
|
452
|
-
"type": "chapter-heading",
|
|
453
|
-
"data": {
|
|
454
|
-
"chapter": "1"
|
|
455
|
-
}
|
|
456
|
-
}
|
|
457
|
-
},
|
|
458
|
-
{
|
|
459
|
-
kind: 2,
|
|
460
|
-
language: 'markdown',
|
|
461
|
-
value: '### note1'
|
|
462
|
-
},
|
|
463
|
-
{
|
|
464
|
-
kind: 2,
|
|
465
|
-
language: 'scripture',
|
|
466
|
-
value: [
|
|
467
|
-
'JON 1:1 إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:',
|
|
468
|
-
'JON 1:2 «كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».',
|
|
469
|
-
].join('\n')
|
|
470
|
-
},
|
|
471
|
-
{
|
|
472
|
-
kind: 2,
|
|
473
|
-
language: 'markdown',
|
|
474
|
-
value: '### note2'
|
|
475
|
-
},
|
|
476
|
-
]
|
|
477
|
-
}));
|
|
478
|
-
expect(tree).toEqual({
|
|
479
|
-
type: 'root',
|
|
480
|
-
id: 'JON',
|
|
481
|
-
content: [
|
|
482
|
-
{
|
|
483
|
-
type: 'chapter',
|
|
484
|
-
number: 1,
|
|
485
|
-
content: [
|
|
486
|
-
{
|
|
487
|
-
type: 'heading',
|
|
488
|
-
content: ['Jonah 1']
|
|
489
|
-
},
|
|
490
|
-
{
|
|
491
|
-
type: 'verse',
|
|
492
|
-
number: 1,
|
|
493
|
-
content: [
|
|
494
|
-
'إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:'
|
|
495
|
-
]
|
|
496
|
-
},
|
|
497
|
-
{
|
|
498
|
-
type: 'verse',
|
|
499
|
-
number: 2,
|
|
500
|
-
content: ['«كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».'],
|
|
501
|
-
},
|
|
502
|
-
],
|
|
503
|
-
footnotes: [
|
|
504
|
-
{
|
|
505
|
-
noteId: 0,
|
|
506
|
-
text: 'note1',
|
|
507
|
-
caller: null,
|
|
508
|
-
},
|
|
509
|
-
{
|
|
510
|
-
noteId: 1,
|
|
511
|
-
text: 'note2',
|
|
512
|
-
caller: null,
|
|
513
|
-
}
|
|
514
|
-
],
|
|
515
|
-
},
|
|
516
|
-
]
|
|
517
|
-
});
|
|
518
|
-
});
|
|
519
|
-
it('should parse a codex file', () => {
|
|
520
|
-
const tree = parser.parse(codex_simple_example_codex_1.default);
|
|
521
|
-
expect(tree).toEqual({
|
|
522
|
-
type: 'root',
|
|
523
|
-
id: 'JON',
|
|
524
|
-
content: [
|
|
525
|
-
{
|
|
526
|
-
type: 'chapter',
|
|
527
|
-
number: 1,
|
|
528
|
-
content: [
|
|
529
|
-
{
|
|
530
|
-
type: 'heading',
|
|
531
|
-
content: ['# Chapter 1']
|
|
532
|
-
},
|
|
533
|
-
{
|
|
534
|
-
type: 'verse',
|
|
535
|
-
number: 1,
|
|
536
|
-
content: ['إيسيول ربّي إ يُونان ممّيس ن أمتّاي إنّاياس:']
|
|
537
|
-
},
|
|
538
|
-
{
|
|
539
|
-
type: 'verse',
|
|
540
|
-
number: 2,
|
|
541
|
-
content: ['«كّر الدُّو غَر نِينَوى ثامدينث ثاخاثارث، أها ثسغويّد غيفسن هاثين ثوليد ثوخّوت نّسن د لمعصيّاث نّا دا تݣّان غر داثي».'],
|
|
542
|
-
},
|
|
543
|
-
{
|
|
544
|
-
type: 'verse',
|
|
545
|
-
number: 3,
|
|
546
|
-
content: ['داي إيكّر يونان، أد يرول زݣ داث ن ربّي غر ترشيش، إيݣّزد غر يافا يافن ديس يان لباطو إيوجدن إ ثوادا غر ترشيش، أها إيش الخلاص نّس إيݣز غر الباطو أد إيمون د إيمسافرغر ترشيش إيرول زݣ داث ن ربّي.']
|
|
547
|
-
},
|
|
548
|
-
],
|
|
549
|
-
footnotes: [
|
|
550
|
-
{
|
|
551
|
-
noteId: 0,
|
|
552
|
-
text: '### Notes for Chapter 1',
|
|
553
|
-
caller: null,
|
|
554
|
-
}
|
|
555
|
-
]
|
|
556
|
-
},
|
|
557
|
-
{
|
|
558
|
-
type: 'chapter',
|
|
559
|
-
number: 2,
|
|
560
|
-
content: [
|
|
561
|
-
{
|
|
562
|
-
type: 'heading',
|
|
563
|
-
content: ['# Chapter 2'],
|
|
564
|
-
},
|
|
565
|
-
{
|
|
566
|
-
type: 'verse',
|
|
567
|
-
number: 1,
|
|
568
|
-
content: ['داي إيژّال يونان إتّر إ ربّي نّس زݣ أوديس ن-وسلم.']
|
|
569
|
-
},
|
|
570
|
-
{
|
|
571
|
-
type: 'verse',
|
|
572
|
-
number: 2,
|
|
573
|
-
content: ['إينّا: «غريخ إ يهويه ربّي ݣ-ثمارانو إيجَاوبِي، زݣ آيث ليخرا سغُويّخاشن أيهويه ربّي نو، تسفلت إ تغُويّيت إينو.']
|
|
574
|
-
},
|
|
575
|
-
],
|
|
576
|
-
footnotes: [
|
|
577
|
-
{
|
|
578
|
-
noteId: 1,
|
|
579
|
-
text: '### Notes for Chapter 2',
|
|
580
|
-
caller: null,
|
|
581
|
-
}
|
|
582
|
-
]
|
|
583
|
-
},
|
|
584
|
-
{
|
|
585
|
-
type: 'chapter',
|
|
586
|
-
number: 3,
|
|
587
|
-
content: [
|
|
588
|
-
{
|
|
589
|
-
type: 'heading',
|
|
590
|
-
content: ['# Chapter 3',]
|
|
591
|
-
},
|
|
592
|
-
{
|
|
593
|
-
type: 'verse',
|
|
594
|
-
number: 1,
|
|
595
|
-
content: ['داي إيسيول ربّي إ يونان المرث ثيسناث إينّاس:']
|
|
596
|
-
},
|
|
597
|
-
{
|
|
598
|
-
type: 'line_break',
|
|
599
|
-
},
|
|
600
|
-
{
|
|
601
|
-
type: 'verse',
|
|
602
|
-
number: 2,
|
|
603
|
-
content: ['«كّر الدّو غرنينوى ثمدينث تاخاثارث، ثسغويث دييس سوينّا الدّيخ أداش إينيخ».']
|
|
604
|
-
}
|
|
605
|
-
],
|
|
606
|
-
footnotes: [
|
|
607
|
-
{
|
|
608
|
-
noteId: 2,
|
|
609
|
-
text: '### Notes for Chapter 3',
|
|
610
|
-
caller: null,
|
|
611
|
-
}
|
|
612
|
-
]
|
|
613
|
-
},
|
|
614
|
-
{
|
|
615
|
-
type: 'chapter',
|
|
616
|
-
number: 4,
|
|
617
|
-
content: [
|
|
618
|
-
{
|
|
619
|
-
type: 'heading',
|
|
620
|
-
content: ['# Chapter 4']
|
|
621
|
-
},
|
|
622
|
-
{
|
|
623
|
-
type: 'verse',
|
|
624
|
-
number: 1,
|
|
625
|
-
content: ['داي إسطّيراست أوينّا إيونان شيݣان، إيسغوس أُوولنس.']
|
|
626
|
-
},
|
|
627
|
-
{
|
|
628
|
-
type: 'verse',
|
|
629
|
-
number: 2,
|
|
630
|
-
content: ['أها إيژّال إتر إ ربّي إينّا: «عفاش أ يهويه ربّي إيس أوريد أوال إينو أيا النّا النّيخ أيللّيݣ سولخ يتمازيرت إينو أينّاخ أس الكّيخ ريخ أدرولخ غر ترشيش إتخ سنخ إيد شݣ ربّي أرحيم أحنين وريزربن ي الغظب نس إيعدّا ليخلاص نّش أرتسمهالث ثيثي خف أونّا يخّان.']
|
|
631
|
-
}
|
|
632
|
-
],
|
|
633
|
-
footnotes: [
|
|
634
|
-
{
|
|
635
|
-
noteId: 3,
|
|
636
|
-
text: '### Notes for Chapter 4',
|
|
637
|
-
caller: null,
|
|
638
|
-
}
|
|
639
|
-
]
|
|
640
|
-
}
|
|
641
|
-
]
|
|
642
|
-
});
|
|
643
|
-
});
|
|
644
|
-
});
|
|
645
|
-
});
|