-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcreateDummyPages.js
694 lines (681 loc) · 39.5 KB
/
createDummyPages.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
let fs = require('fs')
let childProcess = require('child_process')
let blogPostBase = 'https://rescript-lang.org/blog'
let rescriptBase = 'https://rescript-lang.org'
let manualBase = `${rescriptBase}/docs/manual/latest`
let apiBase = `${rescriptBase}/docs/manual/latest/api`
let docLanguages = [
'en',
'es-ES',
'fr',
'ja',
'ko',
'pt-BR',
'ru',
'zh-CN',
'zh-TW',
]
let mainPages = {
'built-with-bucklescript.html': rescriptBase,
'built-with-bucklescript/index.html': rescriptBase,
'examples.html': `${manualBase}/newcomer-examples`,
'examples/index.html': `${manualBase}/newcomer-examples`,
'faq.html': `${manualBase}/faq`,
'faq/index.html': `${manualBase}/faq`,
'gettingStarted.html': `${manualBase}/introduction`,
'gettingStarted/index.html': `${manualBase}/introduction`,
'index.html': rescriptBase,
}
let docPages = {
'automatic-interface-generation.html': `${rescriptBase}/docs/manual/latest/introduction`,
'automatic-interface-generation/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'better-data-structures-printing-debug-mode.html': `${rescriptBase}/docs/manual/latest/shared-data-types`,
'better-data-structures-printing-debug-mode/index.html': `${rescriptBase}/docs/manual/latest/shared-data-types`,
'bind-to-global-values.html': `${rescriptBase}/docs/manual/latest/bind-to-global-js-values`,
'bind-to-global-values/index.html': `${rescriptBase}/docs/manual/latest/bind-to-global-js-values`,
'browser-support-polyfills.html': `${rescriptBase}/docs/manual/latest/browser-support-polyfills`,
'browser-support-polyfills/index.html': `${rescriptBase}/docs/manual/latest/browser-support-polyfills`,
'build-advanced.html': `${rescriptBase}/docs/manual/latest/build-advanced`,
'build-advanced/index.html': `${rescriptBase}/docs/manual/latest/build-advanced`,
'build-configuration.html': `${rescriptBase}/docs/manual/latest/build-configuration`,
'build-configuration/index.html': `${rescriptBase}/docs/manual/latest/build-configuration`,
'build-overview.html': `${rescriptBase}/docs/manual/latest/build-overview`,
'build-overview/index.html': `${rescriptBase}/docs/manual/latest/build-overview`,
'build-performance.html': `${rescriptBase}/docs/manual/latest/build-performance`,
'build-performance/index.html': `${rescriptBase}/docs/manual/latest/build-performance`,
'class.html': `${rescriptBase}/docs/manual/latest/bind-to-js-object#bind-to-a-js-object-thats-a-class`,
'class/index.html': `${rescriptBase}/docs/manual/latest/bind-to-js-object#bind-to-a-js-object-thats-a-class`,
'common-data-types.html': `${rescriptBase}/docs/manual/latest/shared-data-types`,
'common-data-types/index.html': `${rescriptBase}/docs/manual/latest/shared-data-types`,
'community.html': `${rescriptBase}/community`,
'community/index.html': `${rescriptBase}/community`,
'comparison-to-jsoo.html': `${rescriptBase}/docs/manual/latest/introduction`,
'comparison-to-jsoo/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'compiler-architecture-principles.html': `${rescriptBase}/docs/manual/latest/introduction`,
'compiler-architecture-principles/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'concepts-overview.html': `${rescriptBase}/docs/manual/latest/concepts-overview`,
'concepts-overview/index.html': `${rescriptBase}/docs/manual/latest/concepts-overview`,
'conditional-compilation.html': `${rescriptBase}/docs/manual/latest/introduction`,
'conditional-compilation/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'difference-from-native-ocaml.html': `${rescriptBase}/docs/manual/latest/introduction`,
'difference-from-native-ocaml/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'ecosystem.html': `${rescriptBase}/docs/manual/latest/libraries`,
'ecosystem/index.html': `${rescriptBase}/docs/manual/latest/libraries`,
'embed-raw-javascript.html': `${rescriptBase}/docs/manual/latest/embed-raw-javascript`,
'embed-raw-javascript/index.html': `${rescriptBase}/docs/manual/latest/embed-raw-javascript`,
'exceptions.html': `${rescriptBase}/docs/manual/latest/exception`,
'exceptions/index.html': `${rescriptBase}/docs/manual/latest/exception`,
'extended-compiler-options.html': `${rescriptBase}/docs/manual/latest/introduction`,
'extended-compiler-options/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'function.html': `${rescriptBase}/docs/manual/latest/function`,
'function/index.html': `${rescriptBase}/docs/manual/latest/function`,
'generate-converters-accessors.html': `${rescriptBase}/docs/manual/latest/introduction`,
'generate-converters-accessors/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'import-export.html': `${rescriptBase}/docs/manual/latest/import-from-export-to-js`,
'import-export/index.html': `${rescriptBase}/docs/manual/latest/import-from-export-to-js`,
'installation.html': `${rescriptBase}/docs/manual/latest/installation#new-project`,
'installation/index.html': `${rescriptBase}/docs/manual/latest/installation#new-project`,
'interop-cheatsheet.html': `${rescriptBase}/docs/manual/latest/interop-cheatsheet`,
'interop-cheatsheet/index.html': `${rescriptBase}/docs/manual/latest/interop-cheatsheet`,
'interop-misc.html': `${rescriptBase}/docs/manual/latest/introduction`,
'interop-misc/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'interop-overview.html': `${rescriptBase}/docs/manual/latest/introduction`,
'interop-overview/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'interop-with-js-build-systems.html': `${rescriptBase}/docs/manual/latest/interop-with-js-build-systems`,
'interop-with-js-build-systems/index.html': `${rescriptBase}/docs/manual/latest/interop-with-js-build-systems`,
'intro-to-external.html': `${rescriptBase}/docs/manual/latest/external`,
'intro-to-external/index.html': `${rescriptBase}/docs/manual/latest/external`,
'json.html': `${rescriptBase}/docs/manual/latest/json`,
'json/index.html': `${rescriptBase}/docs/manual/latest/json`,
'load-third-party-libraries.html': `${rescriptBase}/try`,
'load-third-party-libraries/index.html': `${rescriptBase}/try`,
'new-project.html': `${rescriptBase}/docs/manual/latest/installation#new-project`,
'new-project/index.html': `${rescriptBase}/docs/manual/latest/installation#new-project`,
'nodejs-special-variables.html': `${rescriptBase}/docs/manual/latest/bind-to-global-js-values#special-global-values`,
'nodejs-special-variables/index.html': `${rescriptBase}/docs/manual/latest/bind-to-global-js-values#special-global-values`,
'null-undefined-option.html': `${rescriptBase}/docs/manual/latest/null-undefined-option`,
'null-undefined-option/index.html': `${rescriptBase}/docs/manual/latest/null-undefined-option`,
'object-2.html': `${rescriptBase}/docs/manual/latest/bind-to-js-object`,
'object-2/index.html': `${rescriptBase}/docs/manual/latest/bind-to-js-object`,
'object.html': `${rescriptBase}/docs/manual/latest/bind-to-js-object`,
'object/index.html': `${rescriptBase}/docs/manual/latest/bind-to-js-object`,
'pipe-first.html': `${rescriptBase}/docs/manual/latest/pipe`,
'pipe-first/index.html': `${rescriptBase}/docs/manual/latest/pipe`,
'playground.html': `${rescriptBase}/try`,
'playground/index.html': `${rescriptBase}/try`,
'property-access.html': `${rescriptBase}/docs/manual/latest/bind-to-js-object#bind-using-special-bs-getters--setters`,
'property-access/index.html': `${rescriptBase}/docs/manual/latest/bind-to-js-object#bind-using-special-bs-getters--setters`,
'regular-expression.html': `${rescriptBase}/docs/manual/latest/primitive-types#regular-expression`,
'regular-expression/index.html': `${rescriptBase}/docs/manual/latest/primitive-types#regular-expression`,
'return-value-wrapping.html': `${rescriptBase}/docs/manual/latest/bind-to-js-function#function-nullable-return-value-wrapping`,
'return-value-wrapping/index.html': `${rescriptBase}/docs/manual/latest/bind-to-js-function#function-nullable-return-value-wrapping`,
'roadmap.html': `${rescriptBase}/docs/manual/latest/introduction`,
'roadmap/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'stdlib-overview.html': `${apiBase}`,
'stdlib-overview/index.html': `${apiBase}`,
'try.html': `${rescriptBase}/docs/manual/latest/try`,
'try/index.html': `${rescriptBase}/docs/manual/latest/try`,
'upgrade-to-v7.html': `${rescriptBase}/docs/manual/latest/introduction`,
'upgrade-to-v7/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'use-existing-ocaml-libraries.html': `${rescriptBase}/docs/manual/latest/introduction`,
'use-existing-ocaml-libraries/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'what-why.html': `${rescriptBase}/docs/manual/latest/introduction`,
'what-why/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
'why-bucklescript-matters-for-javascript-platform.html': `${rescriptBase}/docs/manual/latest/introduction`,
'why-bucklescript-matters-for-javascript-platform/index.html': `${rescriptBase}/docs/manual/latest/introduction`,
}
let blogPages = {
'2017/10/01/announcing-1-0.html': `${blogPostBase}/bucklescript-release-1-0`,
'2017/10/01/announcing-1-0/index.html': `${blogPostBase}/bucklescript-release-1-0`,
'2017/10/02/release-1-4-2.html': `${blogPostBase}/bucklescript-release-1-4-2`,
'2017/10/02/release-1-4-2/index.html': `${blogPostBase}/bucklescript-release-1-4-2`,
'2017/10/03/release-1-4-3.html': `${blogPostBase}/bucklescript-release-1-4-3`,
'2017/10/03/release-1-4-3/index.html': `${blogPostBase}/bucklescript-release-1-4-3`,
'2017/10/04/release-1-5-0.html': `${blogPostBase}/bucklescript-release-1-5-0`,
'2017/10/04/release-1-5-0/index.html': `${blogPostBase}/bucklescript-release-1-5-0`,
'2017/10/05/release-1-5-1.html': `${blogPostBase}/bucklescript-release-1-5-1`,
'2017/10/05/release-1-5-1/index.html': `${blogPostBase}/bucklescript-release-1-5-1`,
'2017/10/06/release-1-5-2.html': `${blogPostBase}/bucklescript-release-1-5-2`,
'2017/10/06/release-1-5-2/index.html': `${blogPostBase}/bucklescript-release-1-5-2`,
'2017/10/07/release-1-7-0.html': `${blogPostBase}/bucklescript-release-1-7-0`,
'2017/10/07/release-1-7-0/index.html': `${blogPostBase}/bucklescript-release-1-7-0`,
'2017/10/08/release-1-7-4.html': `${blogPostBase}/bucklescript-release-1-7-4`,
'2017/10/08/release-1-7-4/index.html': `${blogPostBase}/bucklescript-release-1-7-4`,
'2017/10/09/release-1-7-5.html': `${blogPostBase}/bucklescript-release-1-7-5`,
'2017/10/09/release-1-7-5/index.html': `${blogPostBase}/bucklescript-release-1-7-5`,
'2017/12/01/new-doc-site.html': `${blogPostBase}/new-doc-site`,
'2017/12/01/new-doc-site/index.html': `${blogPostBase}/new-doc-site`,
'2018/03/13/a-small-step-for-bucklescript.html': `${blogPostBase}/a-small-step-for-bucklescript`,
'2018/03/13/a-small-step-for-bucklescript/index.html': `${blogPostBase}/a-small-step-for-bucklescript`,
'2018/04/16/release-3-0-0.html': `${blogPostBase}/bucklescript-release-3-0-0`,
'2018/04/16/release-3-0-0/index.html': `${blogPostBase}/bucklescript-release-3-0-0`,
'2018/05/21/release-3-1-0.html': `${blogPostBase}/bucklescript-release-3-1-0`,
'2018/05/21/release-3-1-0/index.html': `${blogPostBase}/bucklescript-release-3-1-0`,
'2018/05/23/release-3-1-4.html': `${blogPostBase}/bucklescript-release-3-1-4`,
'2018/05/23/release-3-1-4/index.html': `${blogPostBase}/bucklescript-release-3-1-4`,
'2018/07/17/release-4-0-0.html': `${blogPostBase}/bucklescript-release-4-0-0-pt1`,
'2018/07/17/release-4-0-0/index.html': `${blogPostBase}/bucklescript-release-4-0-0-pt1`,
'2018/07/17/release-4-0-0II.html': `${blogPostBase}/bucklescript-release-4-0-0-pt2`,
'2018/07/17/release-4-0-0II/index.html': `${blogPostBase}/bucklescript-release-4-0-0-pt2`,
'2018/11/13/arity-zero.html': `${blogPostBase}/arity-zero`,
'2018/11/13/arity-zero/index.html': `${blogPostBase}/arity-zero`,
'2018/11/19/next-half.html': `${blogPostBase}/bucklescript-roadmap-q3-4-2018`,
'2018/11/19/next-half/index.html': `${blogPostBase}/bucklescript-roadmap-q3-4-2018`,
'2018/12/05/release-4-0-8.html': `${blogPostBase}/bucklescript-release-4-0-8`,
'2018/12/05/release-4-0-8/index.html': `${blogPostBase}/bucklescript-release-4-0-8`,
'2019/01/07/release-4-0-17.html': `${blogPostBase}/bucklescript-release-4-0-17`,
'2019/01/07/release-4-0-17/index.html': `${blogPostBase}/bucklescript-release-4-0-17`,
'2019/01/11/scalable.html': `${blogPostBase}/scalable`,
'2019/01/11/scalable/index.html': `${blogPostBase}/scalable`,
'2019/03/1/feature-preview.html': `${blogPostBase}/feature-preview-variadic`,
'2019/03/1/feature-preview/index.html': `${blogPostBase}/feature-preview-variadic`,
'2019/03/21/release-5-0.html': `${blogPostBase}/bucklescript-release-5-0`,
'2019/03/21/release-5-0/index.html': `${blogPostBase}/bucklescript-release-5-0`,
'2019/03/31/release-6-0.html': `${blogPostBase}/bucklescript-release-6-0`,
'2019/03/31/release-6-0/index.html': `${blogPostBase}/bucklescript-release-6-0`,
'2019/04/09/release-schedule.html': `${blogPostBase}/bucklescript-release-5-0-1`,
'2019/04/09/release-schedule/index.html': `${blogPostBase}/bucklescript-release-5-0-1`,
'2019/04/22/release-5-0-4.html': `${blogPostBase}/bucklescript-release-5-0-4`,
'2019/04/22/release-5-0-4/index.html': `${blogPostBase}/bucklescript-release-5-0-4`,
'2019/05/21/ffi-overview.html': `${blogPostBase}/ffi-overview`,
'2019/05/21/ffi-overview/index.html': `${blogPostBase}/ffi-overview`,
'2019/06/26/release-5-0-5.html': `${blogPostBase}/bucklescript-release-5-0-5`,
'2019/06/26/release-5-0-5/index.html': `${blogPostBase}/bucklescript-release-5-0-5`,
'2019/08/12/release-5-10-0.html': `${blogPostBase}/bucklescript-release-5-1-0`,
'2019/08/12/release-5-10-0/index.html': `${blogPostBase}/bucklescript-release-5-1-0`,
'2019/09/23/release-5-20-0.html': `${blogPostBase}/bucklescript-release-5-2-0`,
'2019/09/23/release-5-20-0/index.html': `${blogPostBase}/bucklescript-release-5-2-0`,
'2019/10/16/another-encoding.html': `${blogPostBase}/another-encoding`,
'2019/10/16/another-encoding/index.html': `${blogPostBase}/another-encoding`,
'2019/11/18/whats-new-in-7.html': `${blogPostBase}/whats-new-in-7-pt1`,
'2019/11/18/whats-new-in-7/index.html': `${blogPostBase}/whats-new-in-7-pt1`,
'2019/12/20/release-7-02.html': `${blogPostBase}/bucklescript-release-7-0-2`,
'2019/12/20/release-7-02/index.html': `${blogPostBase}/bucklescript-release-7-0-2`,
'2019/12/27/whats-new-in-7-cont.html': `${blogPostBase}/whats-new-in-7-pt2`,
'2019/12/27/whats-new-in-7-cont/index.html': `${blogPostBase}/whats-new-in-7-pt2`,
'2020/02/04/release-7-1-0.html': `${blogPostBase}/bucklescript-release-7-1-0`,
'2020/02/04/release-7-1-0/index.html': `${blogPostBase}/bucklescript-release-7-1-0`,
'2020/02/07/union-types-in-bucklescript.html': `${blogPostBase}/union-types-in-bucklescript`,
'2020/02/07/union-types-in-bucklescript/index.html': `${blogPostBase}/union-types-in-bucklescript`,
'2020/02/20/loading-stdlib-in-memory.html': `${blogPostBase}/loading-stdlib-in-memory`,
'2020/02/20/loading-stdlib-in-memory/index.html': `${blogPostBase}/loading-stdlib-in-memory`,
'2020/03/12/release-7-2.html': `${blogPostBase}/bucklescript-release-7-2`,
'2020/03/12/release-7-2/index.html': `${blogPostBase}/bucklescript-release-7-2`,
'2020/03/26/generalize-uncurry.html': `${blogPostBase}/generalize-uncurry`,
'2020/03/26/generalize-uncurry/index.html': `${blogPostBase}/generalize-uncurry`,
'2020/04/13/release-7-3.html': `${blogPostBase}/bucklescript-release-7-3`,
'2020/04/13/release-7-3/index.html': `${blogPostBase}/bucklescript-release-7-3`,
'2020/05/06/exception-encoding.html': `${blogPostBase}/a-story-of-exception-encoding`,
'2020/05/06/exception-encoding/index.html': `${blogPostBase}/a-story-of-exception-encoding`,
'index.html': `${rescriptBase}/blog`,
'page2/index.html': `${rescriptBase}/blog`,
'page3/index.html': `${rescriptBase}/blog`,
'page4/index.html': `${rescriptBase}/blog`,
'page5/index.html': `${rescriptBase}/blog`,
}
let apiPages = {
'Belt.Array.html': `${apiBase}/belt/array`,
'Belt.Debug.html': `${apiBase}/belt/debug`,
'Belt.Float.html': `${apiBase}/belt/float`,
'Belt.HashMap.html': `${apiBase}/belt/hash-map`,
'Belt.HashSet.html': `${apiBase}/belt/hash-set`,
'Belt.Id.html': `${apiBase}/belt/id`,
'Belt.Int.html': `${apiBase}/belt/int`,
'Belt.List.html': `${apiBase}/belt/list`,
'Belt.Map.html': `${apiBase}/belt/map`,
'Belt.MutableMap.html': `${apiBase}/belt/mutable-map`,
'Belt.MutableQueue.html': `${apiBase}/belt/mutable-queue`,
'Belt.MutableSet.html': `${apiBase}/belt/mutable-set`,
'Belt.MutableStack.html': `${apiBase}/belt/mutable-stack`,
'Belt.Option.html': `${apiBase}/belt/option`,
'Belt.Range.html': `${apiBase}/belt/range`,
'Belt.Result.html': `${apiBase}/belt/result`,
'Belt.Set.html': `${apiBase}/belt/set`,
'Belt.SortArray.html': `${apiBase}/belt/sort-array`,
'Belt.html': `${apiBase}/belt`,
'Belt_Array.html': `${apiBase}/belt/array`,
'Belt_Debug.html': `${apiBase}/belt/debug`,
'Belt_Float.html': `${apiBase}/belt/float`,
'Belt_HashMap.Int.html': `${apiBase}/belt/hash-map-int`,
'Belt_HashMap.String.html': `${apiBase}/belt/hash-map-string`,
'Belt_HashMap.html': `${apiBase}/belt/hash-map`,
'Belt_HashMapInt.html': `${apiBase}/belt/hash-map-int`,
'Belt_HashMapString.html': `${apiBase}/belt/hash-map-string`,
'Belt_HashSet.Int.html': `${apiBase}/belt/hash-set-int`,
'Belt_HashSet.String.html': `${apiBase}/belt/hash-set-string`,
'Belt_HashSet.html': `${apiBase}/belt/hash-set`,
'Belt_HashSetInt.html': `${apiBase}/belt/hash-set-int`,
'Belt_HashSetString.html': `${apiBase}/belt/hash-set-string`,
'Belt_Id.Comparable.html': `${apiBase}/belt/id`,
'Belt_Id.Hashable.html': `${apiBase}/belt/id`,
'Belt_Id.MakeComparable.html': `${apiBase}/belt/id`,
'Belt_Id.MakeComparableU.html': `${apiBase}/belt/id`,
'Belt_Id.MakeHashable.html': `${apiBase}/belt/id`,
'Belt_Id.MakeHashableU.html': `${apiBase}/belt/id`,
'Belt_Id.html': `${apiBase}/belt/id`,
'Belt_Int.html': `${apiBase}/belt/int`,
'Belt_List.html': `${apiBase}/belt/list`,
'Belt_Map.Dict.html': `${apiBase}/belt/map-dict`,
'Belt_Map.Int.html': `${apiBase}/belt/map-int`,
'Belt_Map.String.html': `${apiBase}/belt/map-string`,
'Belt_Map.html': `${apiBase}/belt/map`,
'Belt_MapDict.html': `${apiBase}/belt/map-dict`,
'Belt_MapInt.html': `${apiBase}/belt/map-int`,
'Belt_MapString.html': `${apiBase}/belt/map-string`,
'Belt_MutableMap.Int.html': `${apiBase}/belt/mutable-map-int`,
'Belt_MutableMap.String.html': `${apiBase}/belt/mutable-map-string`,
'Belt_MutableMap.html': `${apiBase}/belt/mutable-map`,
'Belt_MutableMapInt.html': `${apiBase}/belt/mutable-map-int`,
'Belt_MutableMapString.html': `${apiBase}/belt/mutable-map-string`,
'Belt_MutableQueue.html': `${apiBase}/belt/mutable-queue`,
'Belt_MutableSet.Int.html': `${apiBase}/belt/mutable-set-int`,
'Belt_MutableSet.String.html': `${apiBase}/belt/mutable-set-string`,
'Belt_MutableSet.html': `${apiBase}/belt/mutable-set`,
'Belt_MutableSetInt.html': `${apiBase}/belt/mutable-set-int`,
'Belt_MutableSetString.html': `${apiBase}/belt/mutable-set-string`,
'Belt_MutableStack.html': `${apiBase}/belt/mutable-stack`,
'Belt_Option.html': `${apiBase}/belt/option`,
'Belt_Range.html': `${apiBase}/belt/range`,
'Belt_Result.html': `${apiBase}/belt/result`,
'Belt_Set.Dict.html': `${apiBase}/belt/set-dict`,
'Belt_Set.Int.html': `${apiBase}/belt/set-int`,
'Belt_Set.String.html': `${apiBase}/belt/set-string`,
'Belt_Set.html': `${apiBase}/belt/set`,
'Belt_SetDict.html': `${apiBase}/belt/set-dict`,
'Belt_SetInt.html': `${apiBase}/belt/set-int`,
'Belt_SetString.html': `${apiBase}/belt/set-string`,
'Belt_SortArray.Int.html': `${apiBase}/belt/sort-array-int`,
'Belt_SortArray.String.html': `${apiBase}/belt/sort-array-string`,
'Belt_SortArray.html': `${apiBase}/belt/sort-array`,
'Belt_SortArrayInt.html': `${apiBase}/belt/sort-arrayInt`,
'Belt_SortArrayString.html': `${apiBase}/belt/sort-arrayString`,
'Belt_internalAVLset.html': `${apiBase}/belt`,
'Belt_internalAVLtree.html': `${apiBase}/belt`,
'Belt_internalBuckets.C.html': `${apiBase}/belt`,
'Belt_internalBuckets.html': `${apiBase}/belt`,
'Belt_internalBucketsType.html': `${apiBase}/belt`,
'Belt_internalMapInt.A.html': `${apiBase}/belt`,
'Belt_internalMapInt.N.html': `${apiBase}/belt`,
'Belt_internalMapInt.S.html': `${apiBase}/belt`,
'Belt_internalMapInt.html': `${apiBase}/belt`,
'Belt_internalMapString.A.html': `${apiBase}/belt`,
'Belt_internalMapString.N.html': `${apiBase}/belt`,
'Belt_internalMapString.S.html': `${apiBase}/belt`,
'Belt_internalMapString.html': `${apiBase}/belt`,
'Belt_internalMutableAVLMap.html': `${apiBase}/belt`,
'Belt_internalSetBuckets.C.html': `${apiBase}/belt`,
'Belt_internalSetBuckets.html': `${apiBase}/belt`,
'Belt_internalSetInt.A.html': `${apiBase}/belt`,
'Belt_internalSetInt.N.html': `${apiBase}/belt`,
'Belt_internalSetInt.S.html': `${apiBase}/belt`,
'Belt_internalSetInt.html': `${apiBase}/belt`,
'Belt_internalSetString.A.html': `${apiBase}/belt`,
'Belt_internalSetString.N.html': `${apiBase}/belt`,
'Belt_internalSetString.S.html': `${apiBase}/belt`,
'Belt_internalSetString.html': `${apiBase}/belt`,
'Dom.Storage.html': apiBase,
'Dom.Storage2.html': apiBase,
'Dom.html': apiBase,
'Dom_storage.html': apiBase,
'Dom_storage2.html': apiBase,
'Js.Array.html': `${apiBase}/js/array-2`,
'Js.Array2.html': `${apiBase}/js/array-2`,
'Js.Console.html': `${apiBase}/js/console`,
'Js.Date.html': `${apiBase}/js/date`,
'Js.Dict.html': `${apiBase}/js/dict`,
'Js.Exn.html': `${apiBase}/js/exn`,
'Js.Float.html': `${apiBase}/js/float`,
'Js.Fn.html': `${apiBase}/js/fn`,
'Js.Global.html': `${apiBase}/js/global`,
'Js.Int.html': `${apiBase}/js/int`,
'Js.Json.html': `${apiBase}/js/json`,
'Js.List.html': `${apiBase}/js/list`,
'Js.Math.html': `${apiBase}/js/math`,
'Js.Null.html': `${apiBase}/js/null`,
'Js.Null_undefined.html': `${apiBase}/js/null-undefined`,
'Js.Nullable.html': `${apiBase}/js/nullable`,
'Js.Obj.html': `${apiBase}/js/obj`,
'Js.Option.html': `${apiBase}/js/option`,
'Js.Promise.html': `${apiBase}/js/promise`,
'Js.Re.html': `${apiBase}/js/re`,
'Js.Result.html': `${apiBase}/js/result`,
'Js.String.html': `${apiBase}/js/string-2`,
'Js.String2.html': `${apiBase}/js/string-2`,
'Js.TypedArray2.html': `${apiBase}/js/typed-array-2`,
'Js.Typed_array.html': `${apiBase}/js/typed-array-2`,
'Js.Types.html': `${apiBase}/js/types`,
'Js.Undefined.html': `${apiBase}/js/undefined`,
'Js.Vector.html': `${apiBase}/js/vector`,
'Js.html': `${apiBase}/js`,
'Js_OO.Callback.html': `${apiBase}/js`,
'Js_OO.Meth.html': `${apiBase}/js`,
'Js_OO.html': `${apiBase}/js`,
'Js_array.html': `${apiBase}/js/array-2`,
'Js_array2.html': `${apiBase}/js/array-2`,
'Js_cast.html': `${apiBase}/js/cast`,
'Js_console.html': `${apiBase}/js/console`,
'Js_date.html': `${apiBase}/js/date`,
'Js_dict.html': `${apiBase}/js/dict`,
'Js_exn.html': `${apiBase}/js/exn`,
'Js_float.html': `${apiBase}/js/float`,
'Js_global.html': `${apiBase}/js/global`,
'Js_int.html': `${apiBase}/js/int`,
'Js_int64.html': `${apiBase}/js/int-64`,
'Js_internal.html': `${apiBase}/js/internal`,
'Js_internalRaw.html': `${apiBase}/js/internalRaw`,
'Js_json.html': `${apiBase}/js/json`,
'Js_list.html': `${apiBase}/js/list`,
'Js_mapperRt.html': `${apiBase}/js/mapperRt`,
'Js_math.html': `${apiBase}/js/math`,
'Js_nativeint.html': `${apiBase}/js/nativeint`,
'Js_null.html': `${apiBase}/js/null`,
'Js_null_undefined.html': `${apiBase}/js/null-undefined`,
'Js_obj.html': `${apiBase}/js/obj`,
'Js_option.html': `${apiBase}/js/option`,
'Js_primitive.html': `${apiBase}/js/primitive`,
'Js_promise.html': `${apiBase}/js/promise`,
'Js_re.html': `${apiBase}/js/re`,
'Js_result.html': `${apiBase}/js/result`,
'Js_string.html': `${apiBase}/js/string-2`,
'Js_string2.html': `${apiBase}/js/string-2`,
'Js_typed_array.ArrayBuffer.html': `${apiBase}/js/typed-array-2-array-buffer`,
'Js_typed_array.DataView.html': `${apiBase}/js/typed-array-2-data-view`,
'Js_typed_array.Float32Array.html': `${apiBase}/js/typed-array-2-float-32-array`,
'Js_typed_array.Float32_array.html': `${apiBase}/js/typed-array-2-float-32-array`,
'Js_typed_array.Float64Array.html': `${apiBase}/js/typed-array-2-float-64-array`,
'Js_typed_array.Float64_array.html': `${apiBase}/js/typed-array-2-float-64-array`,
'Js_typed_array.Int16Array.html': `${apiBase}/js/typed-array-2-int-16-array`,
'Js_typed_array.Int32Array.html': `${apiBase}/js/typed-array-2-int-32-array`,
'Js_typed_array.Int32_array.html': `${apiBase}/js/typed-array-2-int-32-array`,
'Js_typed_array.Int8Array.html': `${apiBase}/js/typed-array-2-int-8-array`,
'Js_typed_array.S.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array.Type.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array.Uint16Array.html': `${apiBase}/js/typed-array-2-uint-16-array`,
'Js_typed_array.Uint32Array.html': `${apiBase}/js/typed-array-2-uint-32-array`,
'Js_typed_array.Uint8Array.html': `${apiBase}/js/typed-array-2-uint-8-array`,
'Js_typed_array.Uint8ClampedArray.html': `${apiBase}/js/typed-array-2-uint-8-clamped-array`,
'Js_typed_array.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array2.ArrayBuffer.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array2.DataView.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array2.Float32Array.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array2.Float64Array.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array2.Int16Array.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array2.Int32Array.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array2.Int8Array.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array2.Uint16Array.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array2.Uint32Array.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array2.Uint8Array.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array2.Uint8ClampedArray.html': `${apiBase}/js/typed-array-2`,
'Js_typed_array2.html': `${apiBase}/js/typed-array-2`,
'Js_types.html': `${apiBase}/js/types`,
'Js_undefined.html': `${apiBase}/js/undefined`,
'Js_unsafe.html': `${apiBase}/js/unsafe`,
'Js_vector.html': `${apiBase}/js/vector`,
'Node.Buffer.html': apiBase,
'Node.Child_process.html': apiBase,
'Node.Fs.html': apiBase,
'Node.Module.html': apiBase,
'Node.Path.html': apiBase,
'Node.Process.html': apiBase,
'Node.html': apiBase,
'Node_buffer.html': apiBase,
'Node_child_process.html': apiBase,
'Node_fs.Watch.html': apiBase,
'Node_fs.html': apiBase,
'Node_module.html': apiBase,
'Node_path.html': apiBase,
'Node_process.html': apiBase,
'index.html': `${apiBase}/js`,
'index_attributes.html': `${apiBase}/js`,
'index_class_types.html': `${apiBase}/js`,
'index_classes.html': `${apiBase}/js`,
'index_exceptions.html': `${apiBase}/js`,
'index_extensions.html': `${apiBase}/js`,
'index_methods.html': `${apiBase}/js`,
'index_module_types.html': `${apiBase}/js`,
'index_modules.html': `${apiBase}/js`,
'index_types.html': `${apiBase}/js`,
'index_values.html': `${apiBase}/js`,
'type_Belt.Array.html': `${apiBase}/belt/array`,
'type_Belt.Debug.html': `${apiBase}/belt/debug`,
'type_Belt.Float.html': `${apiBase}/belt/float`,
'type_Belt.HashMap.html': `${apiBase}/belt/hash`,
'type_Belt.HashSet.html': `${apiBase}/belt/hash-set`,
'type_Belt.Id.html': `${apiBase}/belt/id`,
'type_Belt.Int.html': `${apiBase}/belt/int`,
'type_Belt.List.html': `${apiBase}/belt/list`,
'type_Belt.Map.html': `${apiBase}/belt/map`,
'type_Belt.MutableMap.html': `${apiBase}/belt/mutable-map`,
'type_Belt.MutableQueue.html': `${apiBase}/belt/mutable-queue`,
'type_Belt.MutableSet.html': `${apiBase}/belt/mutable-set`,
'type_Belt.MutableStack.html': `${apiBase}/belt/mutable-stack`,
'type_Belt.Option.html': `${apiBase}/belt/option`,
'type_Belt.Range.html': `${apiBase}/belt/range`,
'type_Belt.Result.html': `${apiBase}/belt/result`,
'type_Belt.Set.html': `${apiBase}/belt/set`,
'type_Belt.SortArray.html': `${apiBase}/belt/sortArray`,
'type_Belt.html': `${apiBase}/belt`,
'type_Belt_Array.html': `${apiBase}/belt/array`,
'type_Belt_Debug.html': `${apiBase}/belt/debug`,
'type_Belt_Float.html': `${apiBase}/belt/float`,
'type_Belt_HashMap.Int.html': `${apiBase}/belt/hash-map-int`,
'type_Belt_HashMap.String.html': `${apiBase}/belt/hash-map-string`,
'type_Belt_HashMap.html': `${apiBase}/belt/hash-map`,
'type_Belt_HashMapInt.html': `${apiBase}/belt/hash-map-int`,
'type_Belt_HashMapString.html': `${apiBase}/belt/hash-map-string`,
'type_Belt_HashSet.Int.html': `${apiBase}/belt/hash-set-int`,
'type_Belt_HashSet.String.html': `${apiBase}/belt/hash-set-string`,
'type_Belt_HashSet.html': `${apiBase}/belt/hash-set`,
'type_Belt_HashSetInt.html': `${apiBase}/belt/hash-set-int`,
'type_Belt_HashSetString.html': `${apiBase}/belt/hash-set-string`,
'type_Belt_Id.Comparable.html': `${apiBase}/belt/id`,
'type_Belt_Id.Hashable.html': `${apiBase}/belt/id`,
'type_Belt_Id.MakeComparable.html': `${apiBase}/belt/id`,
'type_Belt_Id.MakeComparableU.html': `${apiBase}/belt/id`,
'type_Belt_Id.MakeHashable.html': `${apiBase}/belt/id`,
'type_Belt_Id.MakeHashableU.html': `${apiBase}/belt/id`,
'type_Belt_Id.html': `${apiBase}/belt/id`,
'type_Belt_Int.html': `${apiBase}/belt/int`,
'type_Belt_List.html': `${apiBase}/belt/list`,
'type_Belt_Map.Dict.html': `${apiBase}/belt/map-dict`,
'type_Belt_Map.Int.html': `${apiBase}/belt/map-int`,
'type_Belt_Map.String.html': `${apiBase}/belt/map-string`,
'type_Belt_Map.html': `${apiBase}/belt/map`,
'type_Belt_MapDict.html': `${apiBase}/belt/map-dict`,
'type_Belt_MapInt.html': `${apiBase}/belt/map-int`,
'type_Belt_MapString.html': `${apiBase}/belt/map-string`,
'type_Belt_MutableMap.Int.html': `${apiBase}/belt/mutable-map`,
'type_Belt_MutableMap.String.html': `${apiBase}/belt/mutable-map`,
'type_Belt_MutableMap.html': `${apiBase}/belt/mutable-map`,
'type_Belt_MutableMapInt.html': `${apiBase}/belt/mutable-map-int`,
'type_Belt_MutableMapString.html': `${apiBase}/belt/mutable-map-string`,
'type_Belt_MutableQueue.html': `${apiBase}/belt/mutable-queue`,
'type_Belt_MutableSet.Int.html': `${apiBase}/belt/mutable-set`,
'type_Belt_MutableSet.String.html': `${apiBase}/belt/mutable-set`,
'type_Belt_MutableSet.html': `${apiBase}/belt/mutable-set`,
'type_Belt_MutableSetInt.html': `${apiBase}/belt/mutable-set-int`,
'type_Belt_MutableSetString.html': `${apiBase}/belt/mutable-set-string`,
'type_Belt_MutableStack.html': `${apiBase}/belt/mutable-stack`,
'type_Belt_Option.html': `${apiBase}/belt/option`,
'type_Belt_Range.html': `${apiBase}/belt/range`,
'type_Belt_Result.html': `${apiBase}/belt/result`,
'type_Belt_Set.Dict.html': `${apiBase}/belt/set-dict`,
'type_Belt_Set.Int.html': `${apiBase}/belt/set-int`,
'type_Belt_Set.String.html': `${apiBase}/belt/set-string`,
'type_Belt_Set.html': `${apiBase}/belt/set`,
'type_Belt_SetDict.html': `${apiBase}/belt/set-dict`,
'type_Belt_SetInt.html': `${apiBase}/belt/set-int`,
'type_Belt_SetString.html': `${apiBase}/belt/set-string`,
'type_Belt_SortArray.Int.html': `${apiBase}/belt/sort-array`,
'type_Belt_SortArray.String.html': `${apiBase}/belt/sort-array`,
'type_Belt_SortArray.html': `${apiBase}/belt/sort-array`,
'type_Belt_SortArrayInt.html': `${apiBase}/belt/sort-array-int`,
'type_Belt_SortArrayString.html': `${apiBase}/belt/sort-array-string`,
'type_Belt_internalAVLset.html': `${apiBase}/belt`,
'type_Belt_internalAVLtree.html': `${apiBase}/belt`,
'type_Belt_internalBuckets.C.html': `${apiBase}/belt`,
'type_Belt_internalBuckets.html': `${apiBase}/belt`,
'type_Belt_internalBucketsType.html': `${apiBase}/belt`,
'type_Belt_internalMapInt.A.html': `${apiBase}/belt`,
'type_Belt_internalMapInt.N.html': `${apiBase}/belt`,
'type_Belt_internalMapInt.S.html': `${apiBase}/belt`,
'type_Belt_internalMapInt.html': `${apiBase}/belt`,
'type_Belt_internalMapString.A.html': `${apiBase}/belt`,
'type_Belt_internalMapString.N.html': `${apiBase}/belt`,
'type_Belt_internalMapString.S.html': `${apiBase}/belt`,
'type_Belt_internalMapString.html': `${apiBase}/belt`,
'type_Belt_internalMutableAVLMap.html': `${apiBase}/belt`,
'type_Belt_internalSetBuckets.C.html': `${apiBase}/belt`,
'type_Belt_internalSetBuckets.html': `${apiBase}/belt`,
'type_Belt_internalSetInt.A.html': `${apiBase}/belt`,
'type_Belt_internalSetInt.N.html': `${apiBase}/belt`,
'type_Belt_internalSetInt.S.html': `${apiBase}/belt`,
'type_Belt_internalSetInt.html': `${apiBase}/belt`,
'type_Belt_internalSetString.A.html': `${apiBase}/belt`,
'type_Belt_internalSetString.N.html': `${apiBase}/belt`,
'type_Belt_internalSetString.S.html': `${apiBase}/belt`,
'type_Belt_internalSetString.html': `${apiBase}/belt`,
'type_Dom.Storage.html': apiBase,
'type_Dom.Storage2.html': apiBase,
'type_Dom.html': apiBase,
'type_Dom_storage.html': apiBase,
'type_Dom_storage2.html': apiBase,
'type_Js.Array.html': `${apiBase}/js/array-2`,
'type_Js.Array2.html': `${apiBase}/js/array-2`,
'type_Js.Console.html': `${apiBase}/js/console`,
'type_Js.Date.html': `${apiBase}/js/date`,
'type_Js.Dict.html': `${apiBase}/js/dict`,
'type_Js.Exn.html': `${apiBase}/js/exn`,
'type_Js.Float.html': `${apiBase}/js/float`,
'type_Js.Fn.html': `${apiBase}/js/fn`,
'type_Js.Global.html': `${apiBase}/js/global`,
'type_Js.Int.html': `${apiBase}/js/int`,
'type_Js.Json.html': `${apiBase}/js/json`,
'type_Js.List.html': `${apiBase}/js/list`,
'type_Js.Math.html': `${apiBase}/js/math`,
'type_Js.Null.html': `${apiBase}/js/null`,
'type_Js.Null_undefined.html': `${apiBase}/js/null-undefined`,
'type_Js.Nullable.html': `${apiBase}/js/nullable`,
'type_Js.Obj.html': `${apiBase}/js/obj`,
'type_Js.Option.html': `${apiBase}/js/option`,
'type_Js.Promise.html': `${apiBase}/js/promise`,
'type_Js.Re.html': `${apiBase}/js/re`,
'type_Js.Result.html': `${apiBase}/js/result`,
'type_Js.String.html': `${apiBase}/js/string-2`,
'type_Js.String2.html': `${apiBase}/js/string-2`,
'type_Js.TypedArray2.html': `${apiBase}/js/typed-array-2`,
'type_Js.Typed_array.html': `${apiBase}/js/typed-array-2`,
'type_Js.Types.html': `${apiBase}/js/types`,
'type_Js.Undefined.html': `${apiBase}/js/undefined`,
'type_Js.Vector.html': `${apiBase}/js/vector`,
'type_Js.html': `${apiBase}/js`,
'type_Js_OO.Callback.html': `${apiBase}/js`,
'type_Js_OO.Meth.html': `${apiBase}/js`,
'type_Js_OO.html': `${apiBase}/js`,
'type_Js_array.html': `${apiBase}/js/array-2`,
'type_Js_array2.html': `${apiBase}/js/array-2`,
'type_Js_cast.html': `${apiBase}/js/cast`,
'type_Js_console.html': `${apiBase}/js/console`,
'type_Js_date.html': `${apiBase}/js/date`,
'type_Js_dict.html': `${apiBase}/js/dict`,
'type_Js_exn.html': `${apiBase}/js/exn`,
'type_Js_float.html': `${apiBase}/js/float`,
'type_Js_global.html': `${apiBase}/js/global`,
'type_Js_int.html': `${apiBase}/js/int`,
'type_Js_int64.html': `${apiBase}/js/int-64`,
'type_Js_internal.html': `${apiBase}/js`,
'type_Js_internalRaw.html': `${apiBase}/js`,
'type_Js_json.html': `${apiBase}/js/json`,
'type_Js_list.html': `${apiBase}/js/list`,
'type_Js_mapperRt.html': `${apiBase}/js`,
'type_Js_math.html': `${apiBase}/js/math`,
'type_Js_nativeint.html': `${apiBase}/js`,
'type_Js_null.html': `${apiBase}/js/null`,
'type_Js_null_undefined.html': `${apiBase}/js/null-undefined`,
'type_Js_obj.html': `${apiBase}/js/obj`,
'type_Js_option.html': `${apiBase}/js/option`,
'type_Js_primitive.html': `${apiBase}/js/primitive`,
'type_Js_promise.html': `${apiBase}/js/promise`,
'type_Js_re.html': `${apiBase}/js/re`,
'type_Js_result.html': `${apiBase}/js/result`,
'type_Js_string.html': `${apiBase}/js/string-2`,
'type_Js_string2.html': `${apiBase}/js/string-2`,
'type_Js_typed_array.ArrayBuffer.html': `${apiBase}/js/typed-array-2-array-buffer`,
'type_Js_typed_array.DataView.html': `${apiBase}/js/typed-array-2-data-view`,
'type_Js_typed_array.Float32Array.html': `${apiBase}/js/typed-array-2-float-32-array`,
'type_Js_typed_array.Float32_array.html': `${apiBase}/js/typed-array-2-float-32-array`,
'type_Js_typed_array.Float64Array.html': `${apiBase}/js/typed-array-2-float-64-array`,
'type_Js_typed_array.Float64_array.html': `${apiBase}/js/typed-array-2-float-64-array`,
'type_Js_typed_array.Int16Array.html': `${apiBase}/js/typed-array-2-int-16-array`,
'type_Js_typed_array.Int32Array.html': `${apiBase}/js/typed-array-2-int-32-array`,
'type_Js_typed_array.Int32_array.html': `${apiBase}/js/typed-array-2-int-32-array`,
'type_Js_typed_array.Int8Array.html': `${apiBase}/js/typed-array-2-int-8-array`,
'type_Js_typed_array.S.html': `${apiBase}/js/typed-array-2`,
'type_Js_typed_array.Type.html': `${apiBase}/js/typed-array-2`,
'type_Js_typed_array.Uint16Array.html': `${apiBase}/js/typed-array-2-uint-16-array`,
'type_Js_typed_array.Uint32Array.html': `${apiBase}/js/typed-array-2-uint-32-array`,
'type_Js_typed_array.Uint8Array.html': `${apiBase}/js/typed-array-2-uint-8-array`,
'type_Js_typed_array.Uint8ClampedArray.html': `${apiBase}/js/typed-array-2-uint-8-clamped-array`,
'type_Js_typed_array.html': `${apiBase}/js/typed-array-2`,
'type_Js_typed_array2.ArrayBuffer.html': `${apiBase}/js/typed-array-2-array-buffer`,
'type_Js_typed_array2.DataView.html': `${apiBase}/js/typed-array-2-data-view`,
'type_Js_typed_array2.Float32Array.html': `${apiBase}/js/typed-array-2-float-32-array`,
'type_Js_typed_array2.Float64Array.html': `${apiBase}/js/typed-array-2-float-64-array`,
'type_Js_typed_array2.Int16Array.html': `${apiBase}/js/typed-array-2-int-16-array`,
'type_Js_typed_array2.Int32Array.html': `${apiBase}/js/typed-array-2-int-32-array`,
'type_Js_typed_array2.Int8Array.html': `${apiBase}/js/typed-array-2-int-8-array`,
'type_Js_typed_array2.Uint16Array.html': `${apiBase}/js/typed-array-2-uint-16-array`,
'type_Js_typed_array2.Uint32Array.html': `${apiBase}/js/typed-array-2-uint-32-array`,
'type_Js_typed_array2.Uint8Array.html': `${apiBase}/js/typed-array-2-uint-8-array`,
'type_Js_typed_array2.Uint8ClampedArray.html': `${apiBase}/js/typed-array-2-uint-8-clamped-array`,
'type_Js_typed_array2.html': `${apiBase}/js/typed-array-2`,
'type_Js_types.html': `${apiBase}/js/types`,
'type_Js_undefined.html': `${apiBase}/js/undefined`,
'type_Js_unsafe.html': `${apiBase}/js/unsafe`,
'type_Js_vector.html': `${apiBase}/js/vector`,
'type_Node.Buffer.html': apiBase,
'type_Node.Child_process.html': apiBase,
'type_Node.Fs.html': apiBase,
'type_Node.Module.html': apiBase,
'type_Node.Path.html': apiBase,
'type_Node.Process.html': apiBase,
'type_Node.html': apiBase,
'type_Node_buffer.html': apiBase,
'type_Node_child_process.html': apiBase,
'type_Node_fs.Watch.html': apiBase,
'type_Node_fs.html': apiBase,
'type_Node_module.html': apiBase,
'type_Node_path.html': apiBase,
'type_Node_process.html': apiBase,
}
let createFile = (filePath, redirectLink) => {
let p = filePath.split('/')
if (p.length > 1) {
let dirs = p.slice(0, p.length - 1).join('/')
childProcess.execFileSync('mkdir', ['-p', dirs])
}
let content = `
<link rel="canonical" href="${redirectLink}"/>
<meta http-equiv="refresh" content="0; url=${redirectLink}" />
`
fs.writeFileSync(filePath, content)
}
Object.entries(blogPages).forEach(([pathSpec, redirectLink]) => {
createFile('blog/' + pathSpec, redirectLink)
})
Object.entries(mainPages).forEach(([pathSpec, redirectLink]) => {
createFile(pathSpec, redirectLink)
docLanguages.forEach(language => {
createFile(language + '/' + pathSpec, redirectLink)
})
})
Object.entries(docPages).forEach(([pathSpec, redirectLink]) => {
createFile('docs/' + pathSpec, redirectLink)
docLanguages.forEach(language => {
createFile('docs/' + language + '/' + pathSpec, redirectLink)
})
})
Object.entries(apiPages).forEach(([pathSpec, redirectLink]) => {
createFile('bucklescript/api/' + pathSpec, redirectLink)
})
createFile('Manual.html', rescriptBase)