rotion 3.6.3 → 4.0.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.
Files changed (56) hide show
  1. package/README.ja.md +20 -12
  2. package/README.md +26 -17
  3. package/dist/exporter/api.d.ts +11 -1
  4. package/dist/exporter/api.js +35 -30
  5. package/dist/exporter/api.js.map +1 -1
  6. package/dist/exporter/bin.d.ts +2 -0
  7. package/dist/exporter/bin.js +4 -0
  8. package/dist/exporter/bin.js.map +1 -0
  9. package/dist/exporter/blocks.js +355 -322
  10. package/dist/exporter/blocks.js.map +1 -1
  11. package/dist/exporter/breadcrumbs.js +3 -3
  12. package/dist/exporter/breadcrumbs.js.map +1 -1
  13. package/dist/exporter/cli.d.ts +16 -0
  14. package/dist/exporter/cli.js +126 -0
  15. package/dist/exporter/cli.js.map +1 -0
  16. package/dist/exporter/database.js +82 -75
  17. package/dist/exporter/database.js.map +1 -1
  18. package/dist/exporter/dependencies.d.ts +38 -0
  19. package/dist/exporter/dependencies.js +102 -0
  20. package/dist/exporter/dependencies.js.map +1 -0
  21. package/dist/exporter/failures.d.ts +52 -0
  22. package/dist/exporter/failures.js +105 -0
  23. package/dist/exporter/failures.js.map +1 -0
  24. package/dist/exporter/files.d.ts +21 -0
  25. package/dist/exporter/files.js +164 -94
  26. package/dist/exporter/files.js.map +1 -1
  27. package/dist/exporter/github.d.ts +8 -0
  28. package/dist/exporter/github.js +22 -5
  29. package/dist/exporter/github.js.map +1 -1
  30. package/dist/exporter/index.d.ts +4 -0
  31. package/dist/exporter/index.js +2 -0
  32. package/dist/exporter/index.js.map +1 -1
  33. package/dist/exporter/log.d.ts +6 -0
  34. package/dist/exporter/log.js +15 -0
  35. package/dist/exporter/log.js.map +1 -0
  36. package/dist/exporter/mutex.js +55 -16
  37. package/dist/exporter/mutex.js.map +1 -1
  38. package/dist/exporter/page.js +51 -35
  39. package/dist/exporter/page.js.map +1 -1
  40. package/dist/exporter/prune.d.ts +27 -0
  41. package/dist/exporter/prune.js +95 -0
  42. package/dist/exporter/prune.js.map +1 -0
  43. package/dist/exporter/types.d.ts +13 -0
  44. package/dist/exporter/variables.d.ts +61 -17
  45. package/dist/exporter/variables.js +86 -23
  46. package/dist/exporter/variables.js.map +1 -1
  47. package/dist/ui/components/Gallery/GalleryCard/options.d.ts +11 -0
  48. package/dist/ui/esm/components/Gallery/GalleryCard/GalleryCard.js +2 -17
  49. package/dist/ui/esm/components/Gallery/GalleryCard/GalleryCard.js.map +1 -1
  50. package/dist/ui/esm/components/Gallery/GalleryCard/options.js +27 -0
  51. package/dist/ui/esm/components/Gallery/GalleryCard/options.js.map +1 -0
  52. package/dist/ui/esm/components/Page/CodeBlock/Code/Code.js +5 -0
  53. package/dist/ui/esm/components/Page/CodeBlock/Code/Code.js.map +1 -1
  54. package/dist/ui/index-without-dark.css +1 -1
  55. package/dist/ui/index.css +1 -1
  56. package/package.json +30 -24
@@ -1,5 +1,5 @@
1
1
  import fs from 'fs';
2
- import { mkdir, stat, unlink } from 'node:fs/promises';
2
+ import { mkdir, stat, unlink, utimes } from 'node:fs/promises';
3
3
  import { pipeline } from 'node:stream/promises';
4
4
  import https from 'https';
5
5
  import http from 'http';
@@ -9,12 +9,15 @@ import { promisify } from 'util';
9
9
  import sharp from 'sharp';
10
10
  import replaceExt from 'replace-ext';
11
11
  import heicConvert from 'heic-convert';
12
- import { docRoot, imageDir, fileDir, timeout, webpQuality, httpOptions, debug, googleMapKey, cacheAvailableDuration, maxRedirects, isSkipDownload, } from './variables.js';
12
+ import { config, httpOptions, isSkipDownload, } from './variables.js';
13
13
  import { withFileLock } from './mutex.js';
14
+ import { HTTPStatusError, reportExtraFailure } from './failures.js';
15
+ import { warn } from './log.js';
14
16
  // @ts-ignore
15
17
  https.get[promisify.custom] = function getAsync(url) {
18
+ const { timeout } = config();
16
19
  return new Promise((resolve, reject) => {
17
- const req = https.get(url, httpOptions, (res) => {
20
+ const req = https.get(url, httpOptions(), (res) => {
18
21
  // @ts-ignore
19
22
  res.end = new Promise((resolve) => res.on('end', resolve));
20
23
  resolve(res);
@@ -28,8 +31,9 @@ https.get[promisify.custom] = function getAsync(url) {
28
31
  };
29
32
  // @ts-ignore
30
33
  http.get[promisify.custom] = function getAsync(url) {
34
+ const { timeout } = config();
31
35
  return new Promise((resolve, reject) => {
32
- const req = http.get(url, httpOptions, (res) => {
36
+ const req = http.get(url, httpOptions(), (res) => {
33
37
  // @ts-ignore
34
38
  res.end = new Promise((resolve) => res.on('end', resolve));
35
39
  resolve(res);
@@ -52,7 +56,7 @@ export const findLocationUrl = (rawHeaders) => {
52
56
  return rawHeaders[i + next];
53
57
  }
54
58
  }
55
- if (debug) {
59
+ if (config().debug) {
56
60
  console.log('location header url is not found', rawHeaders);
57
61
  }
58
62
  return '';
@@ -61,35 +65,84 @@ async function httpsGetWithFollowRedirects(reqUrl, redirectCount) {
61
65
  if (!redirectCount) {
62
66
  redirectCount = 0;
63
67
  }
64
- const httpFunc = (reqUrl.includes('https://')) ? httpsGet : httpGet;
68
+ const httpFunc = new URL(reqUrl).protocol === 'https:' ? httpsGet : httpGet;
65
69
  const res = await httpFunc(reqUrl);
66
70
  const isIncludesLocationHeader = () => {
67
71
  return res.rawHeaders.includes('Location') || res.rawHeaders.includes('location');
68
72
  };
69
73
  if (res.statusCode >= 300 && res.statusCode < 400 && isIncludesLocationHeader()) {
70
- const redirectTo = findLocationUrl(res.rawHeaders);
71
74
  redirectCount++;
72
- if (maxRedirects < redirectCount) {
73
- if (debug) {
75
+ if (config().maxRedirects < redirectCount) {
76
+ if (config().debug) {
74
77
  console.log('maximum number of redirects exceeded');
75
78
  }
76
79
  return res;
77
80
  }
81
+ // The body of a redirect is not used; read it off so that the socket is
82
+ // released now instead of when it times out.
83
+ res.resume();
84
+ // A Location header may be relative to the URL that was requested
85
+ const redirectTo = new URL(findLocationUrl(res.rawHeaders), reqUrl).toString();
78
86
  return await httpsGetWithFollowRedirects(redirectTo, redirectCount);
79
87
  }
80
88
  else {
81
89
  return res;
82
90
  }
83
91
  }
92
+ const isSuccess = (statusCode) => statusCode >= 200 && statusCode < 300;
93
+ /**
94
+ * getHTTP returns the body of a successful response. Any other status is an
95
+ * error, so that an error page is never taken for the requested content.
96
+ */
84
97
  export async function getHTTP(reqUrl) {
85
- let body = '';
86
98
  const res = await httpsGetWithFollowRedirects(reqUrl);
99
+ if (!isSuccess(res.statusCode)) {
100
+ res.resume();
101
+ throw new HTTPStatusError(res.statusCode, reqUrl);
102
+ }
103
+ let body = '';
87
104
  // @ts-ignore
88
105
  for await (const chunk of res) {
89
106
  body += chunk;
90
107
  }
91
108
  return body;
92
109
  }
110
+ /**
111
+ * download saves the body of fileUrl to filePath. A URL whose query has
112
+ * expired (a signed URL, for example) answers with 4xx, so it is retried once
113
+ * without the query. Only a successful response is saved, and it is written
114
+ * to a temporary file first, so that filePath never holds an error page or a
115
+ * partial body: the callers treat an existing filePath as downloaded.
116
+ */
117
+ async function download(fileUrl, filePath) {
118
+ const urlWithoutQuerystring = fileUrl.split('?').shift() || '';
119
+ let reqUrl = fileUrl;
120
+ let res = await httpsGetWithFollowRedirects(reqUrl);
121
+ if (res.statusCode >= 400 && res.statusCode < 500 && fileUrl !== urlWithoutQuerystring) {
122
+ res.resume();
123
+ reqUrl = urlWithoutQuerystring;
124
+ res = await httpsGetWithFollowRedirects(reqUrl);
125
+ }
126
+ if (!isSuccess(res.statusCode)) {
127
+ res.resume();
128
+ throw new HTTPStatusError(res.statusCode, reqUrl);
129
+ }
130
+ const tmp = `${filePath}.${process.pid}.${Date.now()}.${Math.random().toString(36).slice(2, 8)}.tmp`;
131
+ try {
132
+ // Use stream.pipeline so that source-side errors (request abort, socket
133
+ // close, network stall after `req.setTimeout` fires) reject and clean up
134
+ // the write stream instead of leaving it dangling forever.
135
+ await pipeline(res, fs.createWriteStream(tmp));
136
+ await fs.promises.rename(tmp, filePath);
137
+ }
138
+ catch (e) {
139
+ try {
140
+ await unlink(tmp);
141
+ }
142
+ catch { }
143
+ throw e;
144
+ }
145
+ }
93
146
  export async function getJson(reqUrl, httpFunc) {
94
147
  const body = httpFunc ? await httpFunc(reqUrl) : await getHTTP(reqUrl);
95
148
  return JSON.parse(body);
@@ -102,13 +155,69 @@ export const atoh = (a) => {
102
155
  export const createDirWhenNotfound = async (dir) => {
103
156
  if (!fs.existsSync(dir)) {
104
157
  await mkdir(dir, { recursive: true });
105
- if (debug) {
158
+ if (config().debug) {
106
159
  console.log(`created direcotry: ${dir}`);
107
160
  }
108
161
  }
109
162
  };
163
+ const markedAt = new Map();
164
+ const markInterval = 10 * 60 * 1000;
165
+ /**
166
+ * markUsed sets the access time of files that Rotion has just used, so that
167
+ * pruneCache can tell them from files nothing uses any more. The modification
168
+ * time is kept, because it decides how long a cache file stays fresh. A file
169
+ * is marked at most once in markInterval by one process.
170
+ */
171
+ export async function markUsed(paths) {
172
+ const now = Date.now();
173
+ for (const p of paths) {
174
+ const last = markedAt.get(p);
175
+ if (last !== undefined && now - last < markInterval) {
176
+ continue;
177
+ }
178
+ try {
179
+ const { mtime } = await stat(p);
180
+ await utimes(p, new Date(now), mtime);
181
+ markedAt.set(p, now);
182
+ }
183
+ catch {
184
+ // A file that does not exist is not used
185
+ }
186
+ }
187
+ }
188
+ /**
189
+ * localFilesIn returns the paths of downloaded images and files that a cached
190
+ * result refers to, such as /images/block-...webp, relative to the docroot.
191
+ */
192
+ export function localFilesIn(data, prefixes) {
193
+ const found = new Set();
194
+ const walk = (v) => {
195
+ if (typeof v === 'string') {
196
+ if (prefixes.some(prefix => v.startsWith(prefix))) {
197
+ found.add(v);
198
+ }
199
+ }
200
+ else if (Array.isArray(v)) {
201
+ v.forEach(walk);
202
+ }
203
+ else if (v !== null && typeof v === 'object') {
204
+ Object.values(v).forEach(walk);
205
+ }
206
+ };
207
+ walk(data);
208
+ return [...found];
209
+ }
210
+ /**
211
+ * readCache returns a cached result. It marks the cache file and the images
212
+ * and files the result refers to as used: a page served from the cache still
213
+ * shows them, although nothing downloads them again.
214
+ */
110
215
  export async function readCache(f) {
111
- return JSON.parse(await readFile(f, 'utf8'));
216
+ const data = JSON.parse(await readFile(f, 'utf8'));
217
+ const { docRoot, imageDir, fileDir } = config();
218
+ const files = localFilesIn(data, [`/${imageDir}/`, `/${fileDir}/`]).map(p => `${docRoot}${p}`);
219
+ await markUsed([f, ...files]);
220
+ return data;
112
221
  }
113
222
  export async function writeCache(f, data) {
114
223
  const tmp = `${f}.${process.pid}.${Date.now()}.${Math.random().toString(36).slice(2, 8)}.tmp`;
@@ -117,9 +226,9 @@ export async function writeCache(f, data) {
117
226
  await fs.promises.rename(tmp, f);
118
227
  }
119
228
  catch (e) {
120
- if (debug) {
121
- console.log(`writeCache error -- path: ${f}, message: ${e}`);
122
- }
229
+ // Every later call asks the API again when the cache cannot be written,
230
+ // for example on a full disk
231
+ warn(`failed to write the cache ${f}`, e);
123
232
  try {
124
233
  await fs.promises.unlink(tmp);
125
234
  }
@@ -129,13 +238,14 @@ export async function writeCache(f, data) {
129
238
  export async function isAvailableCache(f, d) {
130
239
  const now = Date.now();
131
240
  const stats = await stat(f);
132
- const cache = stats.mtime.getTime() + (d || cacheAvailableDuration);
241
+ const cache = stats.mtime.getTime() + (d || config().cacheAvailableDuration);
133
242
  return now < cache;
134
243
  }
135
244
  export const sleep = (m) => {
136
245
  return new Promise((resolve) => setTimeout(resolve, m));
137
246
  };
138
247
  export async function saveFile(fileUrl, prefix) {
248
+ const { docRoot, fileDir, debug } = config();
139
249
  const urlWithoutQuerystring = fileUrl.split('?').shift() || '';
140
250
  const { ext, name } = path.parse(urlWithoutQuerystring);
141
251
  const basename = `${atoh(name)}${ext}`;
@@ -146,6 +256,7 @@ export async function saveFile(fileUrl, prefix) {
146
256
  await createDirWhenNotfound(dirPath);
147
257
  return withFileLock(lockKey, async () => {
148
258
  if (fs.existsSync(filePath)) {
259
+ await markUsed([filePath]);
149
260
  const stats = await stat(filePath);
150
261
  return {
151
262
  src: urlPath,
@@ -155,34 +266,14 @@ export async function saveFile(fileUrl, prefix) {
155
266
  }
156
267
  else {
157
268
  try {
158
- let res;
159
- res = await httpsGetWithFollowRedirects(fileUrl);
160
- if (res.statusCode >= 400 && res.statusCode < 500 && fileUrl !== urlWithoutQuerystring) {
161
- res = await httpsGetWithFollowRedirects(urlWithoutQuerystring);
162
- if (res.statusCode >= 400 && res.statusCode < 500) {
163
- throw new Error(`retry download to ${urlWithoutQuerystring} but failed`);
164
- }
165
- }
166
- // Use stream.pipeline so that source-side errors (request abort,
167
- // socket close, network stall after `req.setTimeout` fires) reject
168
- // and clean up the write stream instead of leaving the
169
- // `writeStream.on('finish')` promise dangling forever.
170
- const writeStream = fs.createWriteStream(filePath);
171
- await pipeline(res, writeStream);
269
+ await download(fileUrl, filePath);
172
270
  }
173
271
  catch (e) {
174
- // Best-effort cleanup of any partial bytes pipeline managed to write
175
- // before failing — otherwise the next call hits the existsSync()
176
- // fast-path and serves a corrupted cached file.
177
- try {
178
- await unlink(filePath);
179
- }
180
- catch { }
181
272
  const errorMessage = `saveFile download error -- path: ${filePath}, url: ${fileUrl}, message: ${e}`;
182
273
  if (debug) {
183
274
  console.log(errorMessage);
184
275
  }
185
- throw new Error(errorMessage);
276
+ throw new Error(errorMessage, { cause: e });
186
277
  }
187
278
  }
188
279
  const stats = await stat(filePath);
@@ -193,6 +284,7 @@ export async function saveFile(fileUrl, prefix) {
193
284
  });
194
285
  }
195
286
  export const saveImage = async (imageUrl, prefix) => {
287
+ const { docRoot, imageDir, webpQuality, debug } = config();
196
288
  const urlWithoutQuerystring = imageUrl.split('?').shift() || '';
197
289
  const { ext, name } = path.parse(urlWithoutQuerystring);
198
290
  const basename = `${atoh(name)}${ext}`;
@@ -202,9 +294,19 @@ export const saveImage = async (imageUrl, prefix) => {
202
294
  const webpUrlPath = replaceExt(urlPath, '.webp');
203
295
  const webpPath = `${docRoot}${webpUrlPath}`;
204
296
  const lockKey = `saveimage-${atoh(filePath)}`;
297
+ const isHeif = ext === '.heic' || ext === '.heif';
298
+ const pngUrlPath = replaceExt(urlPath, '.png');
299
+ const pngPath = `${docRoot}${pngUrlPath}`;
205
300
  await createDirWhenNotfound(dirPath);
206
301
  return withFileLock(lockKey, async () => {
207
- if (fs.existsSync(filePath)) {
302
+ // A HEIC/HEIF image is replaced by its PNG conversion, so the PNG is what
303
+ // an earlier call left on disk. Without this, every call downloads and
304
+ // converts it again.
305
+ const [storedPath, storedUrlPath] = isHeif && !fs.existsSync(filePath) && fs.existsSync(pngPath)
306
+ ? [pngPath, pngUrlPath]
307
+ : [filePath, urlPath];
308
+ if (fs.existsSync(storedPath)) {
309
+ await markUsed([storedPath, webpPath]);
208
310
  if (webpQuality > 0 && fs.existsSync(webpPath)) {
209
311
  try {
210
312
  const meta = await sharp(webpPath).metadata();
@@ -226,18 +328,18 @@ export const saveImage = async (imageUrl, prefix) => {
226
328
  return { path: urlPath };
227
329
  }
228
330
  try {
229
- const meta = await sharp(filePath).metadata();
331
+ const meta = await sharp(storedPath).metadata();
230
332
  return {
231
- path: urlPath,
333
+ path: storedUrlPath,
232
334
  width: meta.width,
233
335
  height: meta.height,
234
336
  };
235
337
  }
236
338
  catch (e) {
237
339
  if (debug) {
238
- console.log(`sharp.metadata() error -- path: ${urlPath}, message: ${e}`);
340
+ console.log(`sharp.metadata() error -- path: ${storedUrlPath}, message: ${e}`);
239
341
  }
240
- return { path: urlPath };
342
+ return { path: storedUrlPath };
241
343
  }
242
344
  }
243
345
  /* Download image */
@@ -247,34 +349,14 @@ export const saveImage = async (imageUrl, prefix) => {
247
349
  return { path: urlPath };
248
350
  }
249
351
  try {
250
- let res;
251
- res = await httpsGetWithFollowRedirects(imageUrl);
252
- if (res.statusCode >= 400 && res.statusCode < 500 && imageUrl !== urlWithoutQuerystring) {
253
- res = await httpsGetWithFollowRedirects(urlWithoutQuerystring);
254
- if (res.statusCode >= 400 && res.statusCode < 500) {
255
- throw new Error(`retry download to ${urlWithoutQuerystring} but failed`);
256
- }
257
- }
258
- // Use stream.pipeline so that source-side errors (request abort,
259
- // socket close, network stall after `req.setTimeout` fires) reject
260
- // and clean up the write stream instead of leaving the
261
- // `writeStream.on('finish')` promise dangling forever.
262
- const writeStream = fs.createWriteStream(filePath);
263
- await pipeline(res, writeStream);
352
+ await download(imageUrl, filePath);
264
353
  }
265
354
  catch (e) {
266
- // Best-effort cleanup of any partial bytes pipeline managed to write
267
- // before failing — otherwise the next call hits the existsSync()
268
- // fast-path and serves a corrupted cached file.
269
- try {
270
- await unlink(filePath);
271
- }
272
- catch { }
273
355
  const errorMessage = `saveImage download error -- path: ${filePath}, url: ${imageUrl}, message: ${e}`;
274
356
  if (debug) {
275
357
  console.log(errorMessage);
276
358
  }
277
- throw new Error(errorMessage);
359
+ throw new Error(errorMessage, { cause: e });
278
360
  }
279
361
  }
280
362
  if (ext === '.ico' || ext === '.svg') {
@@ -298,7 +380,7 @@ export const saveImage = async (imageUrl, prefix) => {
298
380
  /* Convert HEIC/HEIF to PNG first if needed */
299
381
  let processFilePath = filePath;
300
382
  let processUrlPath = urlPath;
301
- if (ext === '.heic' || ext === '.heif') {
383
+ if (isHeif) {
302
384
  try {
303
385
  if (debug) {
304
386
  console.log(`Converting HEIC/HEIF to PNG -- path: ${filePath}`);
@@ -309,20 +391,16 @@ export const saveImage = async (imageUrl, prefix) => {
309
391
  format: 'PNG',
310
392
  });
311
393
  const pngBuffer = Buffer.from(pngArrayBuffer);
312
- const pngPath = replaceExt(filePath, '.png');
313
394
  await writeFile(pngPath, pngBuffer);
314
395
  await unlink(filePath);
315
396
  processFilePath = pngPath;
316
- processUrlPath = replaceExt(urlPath, '.png');
397
+ processUrlPath = pngUrlPath;
317
398
  if (debug) {
318
399
  console.log(`Converted HEIC/HEIF to PNG -- from: ${filePath}, to: ${pngPath}`);
319
400
  }
320
401
  }
321
402
  catch (e) {
322
- const errorMessage = e instanceof Error ? e.message : String(e);
323
- if (debug) {
324
- console.log(`HEIC/HEIF to PNG conversion error -- path: ${filePath}, message: ${errorMessage}`);
325
- }
403
+ warn(`failed to convert ${filePath} to PNG; it may not display in browsers other than Safari`, e);
326
404
  }
327
405
  }
328
406
  /* Convert to webp */
@@ -367,14 +445,11 @@ export const saveImage = async (imageUrl, prefix) => {
367
445
  catch (e) {
368
446
  const errorMessage = e instanceof Error ? e.message : String(e);
369
447
  if (errorMessage.includes('Support for this compression format has not been built in')) {
370
- const unsupportedMessage = `HEIC/HEIF image with unsupported compression format detected -- path: ${processFilePath}, url: ${imageUrl}. This image may not display in browsers other than Safari. Consider using a different image format or re-encoding the HEIC file.`;
371
- if (debug) {
372
- console.log(unsupportedMessage);
373
- }
374
- console.warn(unsupportedMessage);
448
+ warn(`HEIC/HEIF image with unsupported compression format detected -- path: ${processFilePath}, url: ${imageUrl}. This image may not display in browsers other than Safari. Consider using a different image format or re-encoding the HEIC file.`);
375
449
  }
376
- else if (debug) {
377
- console.log(`saveImage webp convert error -- path: ${processFilePath}, url: ${imageUrl}, message: ${errorMessage}`);
450
+ else {
451
+ // The original is served instead, larger and possibly rotated
452
+ warn(`failed to convert ${processFilePath} to WebP`, e);
378
453
  }
379
454
  }
380
455
  return { path: processUrlPath };
@@ -504,7 +579,7 @@ export const getHtmlMeta = async (reqUrl, httpFunc, saveImageFunc) => {
504
579
  ipws = await saveImageToUse(imageUrl, 'html-image');
505
580
  }
506
581
  catch (e) {
507
- if (debug) {
582
+ if (config().debug) {
508
583
  console.log(`Failed to save html image: ${e}`);
509
584
  }
510
585
  }
@@ -522,7 +597,7 @@ export const getHtmlMeta = async (reqUrl, httpFunc, saveImageFunc) => {
522
597
  ipws2 = await saveImageToUse(iconUrl, `html-icon-${atoh(reqUrl)}`);
523
598
  }
524
599
  catch (e) {
525
- if (debug) {
600
+ if (config().debug) {
526
601
  console.log(`Failed to save html icon: ${e}`);
527
602
  }
528
603
  }
@@ -531,9 +606,7 @@ export const getHtmlMeta = async (reqUrl, httpFunc, saveImageFunc) => {
531
606
  return { title, desc, image, icon };
532
607
  }
533
608
  catch (e) {
534
- if (debug) {
535
- console.log(`getHtmlMeta failure: ${reqUrl} -- ${e}`);
536
- }
609
+ reportExtraFailure(`metadata of ${reqUrl}`, e);
537
610
  }
538
611
  return { title: '', desc: '', image: '', icon: '' };
539
612
  };
@@ -556,9 +629,7 @@ export const getVideoHtml = async (block, httpFunc) => {
556
629
  return json.html;
557
630
  }
558
631
  catch (e) {
559
- if (debug) {
560
- console.log(`getVideoHtml failure: ${reqUrl} - ${e}`);
561
- }
632
+ reportExtraFailure(`video embed of ${extUrl}`, e);
562
633
  }
563
634
  }
564
635
  return '';
@@ -593,7 +664,7 @@ export const getEmbedHtml = async (block, httpFunc) => {
593
664
  const id = src.split('/').pop();
594
665
  return `<iframe style="border-radius:12px" src="https://open.spotify.com/embed/${type}/${id}?utm_source=generator" width="100%" height="352" frameBorder="0" allowfullscreen="" allow="autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture" loading="lazy"></iframe>`;
595
666
  }
596
- console.log(`spotify url mismatched: ${src}`);
667
+ warn(`not embedding ${src}: unsupported Spotify URL`);
597
668
  }
598
669
  else if (url.includes('//music.apple.com')) {
599
670
  // Example: https://music.apple.com/us/album/paracosm-bonus-track-version/655768700
@@ -604,9 +675,10 @@ export const getEmbedHtml = async (block, httpFunc) => {
604
675
  const musicId = m[3];
605
676
  return `<iframe allow="autoplay *; encrypted-media *; fullscreen *; clipboard-write" frameborder="0" height="450" style="width:100%;max-width:660px;overflow:hidden;border-radius:10px;" sandbox="allow-forms allow-popups allow-same-origin allow-scripts allow-storage-access-by-user-activation allow-top-navigation-by-user-activation" src="https://embed.music.apple.com/${contry}/album/${albumName}/${musicId}"></iframe>`;
606
677
  }
607
- console.log(`apple music url mismatched: ${src}`);
678
+ warn(`not embedding ${src}: unsupported Apple Music URL`);
608
679
  }
609
680
  else if (url.includes('//www.google')) {
681
+ const { googleMapKey } = config();
610
682
  if (googleMapKey) {
611
683
  // Example:
612
684
  // https://www.google.com/maps/@33.5838302,130.3657052,14z?entry=ttu
@@ -637,10 +709,10 @@ export const getEmbedHtml = async (block, httpFunc) => {
637
709
  }
638
710
  return `<iframe width="100%" height="450" frameborder="0" style="border:0" referrerpolicy="no-referrer-when-downgrade" src="${url}" allowfullscreen> </iframe>`;
639
711
  }
640
- console.log(`map url mismatched: ${src}`);
712
+ warn(`not embedding ${src}: unsupported Google Maps URL`);
641
713
  }
642
714
  else {
643
- console.log('map is required: GOOGLEMAP_KEY');
715
+ warn(`not embedding ${src}: GOOGLEMAP_KEY is required for Google Maps`);
644
716
  }
645
717
  }
646
718
  else if (url.includes('//www.slideshare.net')) {
@@ -668,9 +740,7 @@ export const getEmbedHtml = async (block, httpFunc) => {
668
740
  return json.html;
669
741
  }
670
742
  catch (e) {
671
- if (debug) {
672
- console.log(`getEmbedHtml failure: ${oembedUrl} -- ${e}`);
673
- }
743
+ reportExtraFailure(`embed of ${url}`, e);
674
744
  }
675
745
  }
676
746
  return '';
@@ -1 +1 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/exporter/files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/exporter/files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AACnB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAChC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,UAAU,MAAM,aAAa,CAAA;AACpC,OAAO,WAAW,MAAM,cAAc,CAAA;AACtC,OAAO,EACL,MAAM,EACN,WAAW,EACX,cAAc,GACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AACnE,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAQ/B,aAAa;AACb,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,SAAS,QAAQ,CAAE,GAAQ;IACvD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CAAA;IAC5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;YAChD,aAAa;YACb,GAAG,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;YAC1D,OAAO,CAAC,GAAG,CAAC,CAAA;QACd,CAAC,CAAC,CAAA;QACF,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QACvB,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE;YAC3B,GAAG,CAAC,KAAK,EAAE,CAAA;YACX,MAAM,CAAC,IAAI,KAAK,CAAC,qBAAqB,OAAO,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAA;QAC9D,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,aAAa;AACb,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,SAAS,QAAQ,CAAE,GAAQ;IACtD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CAAA;IAC5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;YAC/C,aAAa;YACb,GAAG,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;YAC1D,OAAO,CAAC,GAAG,CAAC,CAAA;QACd,CAAC,CAAC,CAAA;QACF,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QACvB,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE;YAC3B,GAAG,CAAC,KAAK,EAAE,CAAA;YACX,MAAM,CAAC,IAAI,KAAK,CAAC,qBAAqB,OAAO,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAA;QAC9D,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAgID,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AACrC,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACnC,MAAM,QAAQ,GAAG,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAA;AACvC,MAAM,SAAS,GAAG,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,CAAA;AAEzC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,UAAoB,EAAU,EAAE;IAC9D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,UAAU,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,CAAC,CAAA;YACd,OAAO,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC;IACD,IAAI,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,kCAAkC,EAAE,UAAU,CAAC,CAAA;IAC7D,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAED,KAAK,UAAU,2BAA2B,CAAE,MAAc,EAAE,aAAsB;IAChF,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,aAAa,GAAG,CAAC,CAAA;IACnB,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAA;IAC3E,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,MAAM,CAA+B,CAAA;IAEhE,MAAM,wBAAwB,GAAG,GAAG,EAAE;QACpC,OAAO,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;IACnF,CAAC,CAAA;IAED,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU,GAAG,GAAG,IAAI,wBAAwB,EAAE,EAAE,CAAC;QAChF,aAAa,EAAE,CAAA;QACf,IAAI,MAAM,EAAE,CAAC,YAAY,GAAG,aAAa,EAAE,CAAC;YAC1C,IAAI,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAA;YACrD,CAAC;YACD,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,wEAAwE;QACxE,6CAA6C;QAC7C,GAAG,CAAC,MAAM,EAAE,CAAA;QACZ,kEAAkE;QAClE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAA;QAC9E,OAAO,MAAM,2BAA2B,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;IACrE,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAA;IACZ,CAAC;AACH,CAAC;AAED,MAAM,SAAS,GAAG,CAAC,UAAkB,EAAW,EAAE,CAAC,UAAU,IAAI,GAAG,IAAI,UAAU,GAAG,GAAG,CAAA;AAExF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAE,MAAc;IAC3C,MAAM,GAAG,GAAG,MAAM,2BAA2B,CAAC,MAAM,CAAC,CAAA;IACrD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,MAAM,EAAE,CAAA;QACZ,MAAM,IAAI,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IACnD,CAAC;IACD,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,aAAa;IACb,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;QAC9B,IAAI,IAAI,KAAK,CAAA;IACf,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,QAAQ,CAAE,OAAe,EAAE,QAAgB;IACxD,MAAM,qBAAqB,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAA;IAC9D,IAAI,MAAM,GAAG,OAAO,CAAA;IACpB,IAAI,GAAG,GAAG,MAAM,2BAA2B,CAAC,MAAM,CAAC,CAAA;IACnD,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU,GAAG,GAAG,IAAI,OAAO,KAAK,qBAAqB,EAAE,CAAC;QACvF,GAAG,CAAC,MAAM,EAAE,CAAA;QACZ,MAAM,GAAG,qBAAqB,CAAA;QAC9B,GAAG,GAAG,MAAM,2BAA2B,CAAC,MAAM,CAAC,CAAA;IACjD,CAAC;IACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,MAAM,EAAE,CAAA;QACZ,MAAM,IAAI,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IACnD,CAAC;IAED,MAAM,GAAG,GAAG,GAAG,QAAQ,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAA;IACpG,IAAI,CAAC;QACH,wEAAwE;QACxE,yEAAyE;QACzE,2DAA2D;QAC3D,MAAM,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAA;QAC9C,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IACzC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC;YAAC,MAAM,MAAM,CAAC,GAAG,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QAClC,MAAM,CAAC,CAAA;IACT,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAK,MAAc,EAAE,QAA8C;IAC9F,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IACtE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAA;AAC9B,CAAC;AAED,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,CAAS,EAAU,EAAE;IACxC,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IACxC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAChB,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC7B,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EAAE,GAAW,EAAiB,EAAE;IACxE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACrC,IAAI,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAA;AAC1C,MAAM,YAAY,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAEnC;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAE,KAAe;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAC5B,IAAI,IAAI,KAAK,SAAS,IAAI,GAAG,GAAG,IAAI,GAAG,YAAY,EAAE,CAAC;YACpD,SAAQ;QACV,CAAC;QACD,IAAI,CAAC;YACH,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,CAAA;YAC/B,MAAM,MAAM,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAA;YACrC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;QACtB,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAE,IAAa,EAAE,QAAkB;IAC7D,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAA;IAC/B,MAAM,IAAI,GAAG,CAAC,CAAU,EAAE,EAAE;QAC1B,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBAClD,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YACd,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5B,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACjB,CAAC;aAAM,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAChC,CAAC;IACH,CAAC,CAAA;IACD,IAAI,CAAC,IAAI,CAAC,CAAA;IACV,OAAO,CAAC,GAAG,KAAK,CAAC,CAAA;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAK,CAAS;IAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA;IAClD,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CAAA;IAC/C,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,GAAG,CAAC,EAAE,CAAC,CAAA;IAC9F,MAAM,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAA;IAC7B,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAE,CAAS,EAAE,IAAa;IACxD,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAA;IAC7F,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAA;QAClD,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;IAClC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,wEAAwE;QACxE,6BAA6B;QAC7B,IAAI,CAAC,6BAA6B,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QACzC,IAAI,CAAC;YAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IAChD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAE,CAAS,EAAE,CAAU;IAC3D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,CAAA;IAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,sBAAsB,CAAC,CAAA;IAC5E,OAAO,GAAG,GAAG,KAAK,CAAA;AACpB,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,CAAS,EAAE,EAAE;IACjC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;AACzD,CAAC,CAAA;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAE,OAAe,EAAE,MAAc;IAC7D,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,MAAM,EAAE,CAAA;IAC5C,MAAM,qBAAqB,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAA;IAC9D,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;IACvD,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;IACtC,MAAM,OAAO,GAAG,IAAI,OAAO,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAA;IACnD,MAAM,QAAQ,GAAG,GAAG,OAAO,GAAG,OAAO,EAAE,CAAA;IACvC,MAAM,OAAO,GAAG,GAAG,OAAO,IAAI,OAAO,EAAE,CAAA;IACvC,MAAM,OAAO,GAAG,YAAY,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAA;IAE5C,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAA;IAEpC,OAAO,YAAY,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;QACtC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,MAAM,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;YAC1B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAA;YAClC,OAAO;gBACL,GAAG,EAAE,OAAO;gBACZ,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAA;YAEH,mBAAmB;QACnB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;YACnC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,YAAY,GAAG,oCAAoC,QAAQ,UAAU,OAAO,cAAc,CAAC,EAAE,CAAA;gBACnG,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;gBAC3B,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;YAC7C,CAAC;QACH,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAA;QAClC,OAAO;YACL,GAAG,EAAE,OAAO;YACZ,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,QAAgB,EAAE,MAAc,EAA8B,EAAE;IAC9F,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,MAAM,EAAE,CAAA;IAC1D,MAAM,qBAAqB,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAA;IAC/D,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;IACvD,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;IACtC,MAAM,OAAO,GAAG,IAAI,QAAQ,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAA;IACpD,MAAM,QAAQ,GAAG,GAAG,OAAO,GAAG,OAAO,EAAE,CAAA;IACvC,MAAM,OAAO,GAAG,GAAG,OAAO,IAAI,QAAQ,EAAE,CAAA;IACxC,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAChD,MAAM,QAAQ,GAAG,GAAG,OAAO,GAAG,WAAW,EAAE,CAAA;IAC3C,MAAM,OAAO,GAAG,aAAa,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAA;IAC7C,MAAM,MAAM,GAAG,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,OAAO,CAAA;IACjD,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAC9C,MAAM,OAAO,GAAG,GAAG,OAAO,GAAG,UAAU,EAAE,CAAA;IAEzC,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAA;IAEpC,OAAO,YAAY,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;QACtC,0EAA0E;QAC1E,uEAAuE;QACvE,qBAAqB;QACrB,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;YAC9F,CAAC,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC;YACvB,CAAC,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAEvB,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,MAAM,QAAQ,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAA;YACtC,IAAI,WAAW,GAAG,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC/C,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAA;oBAC7C,OAAO;wBACL,IAAI,EAAE,WAAW;wBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;qBACpB,CAAA;gBACH,CAAC;gBAAC,OAAM,CAAC,EAAE,CAAC;oBACV,IAAI,KAAK,EAAE,CAAC;wBACV,OAAO,CAAC,GAAG,CAAC,mCAAmC,WAAW,cAAc,CAAC,EAAE,CAAC,CAAA;oBAC9E,CAAC;oBACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAA;gBAC9B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;oBACrC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;gBAC1B,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAA;oBAC/C,OAAO;wBACL,IAAI,EAAE,aAAa;wBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;qBACpB,CAAA;gBACH,CAAC;gBAAC,OAAM,CAAC,EAAE,CAAC;oBACV,IAAI,KAAK,EAAE,CAAC;wBACV,OAAO,CAAC,GAAG,CAAC,mCAAmC,aAAa,cAAc,CAAC,EAAE,CAAC,CAAA;oBAChF,CAAC;oBACD,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAA;gBAChC,CAAC;YACH,CAAC;YAEH,oBAAoB;QACpB,CAAC;aAAM,CAAC;YACN,IAAI,cAAc,EAAE,EAAE,CAAC;gBACrB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;YAC1B,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;YACpC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,YAAY,GAAG,qCAAqC,QAAQ,UAAU,QAAQ,cAAc,CAAC,EAAE,CAAA;gBACrG,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;gBAC3B,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;YAC7C,CAAC;QACH,CAAC;QAED,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;YACrC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;QAC1B,CAAC;QAED,wEAAwE;QACxE,0EAA0E;QAC1E,8DAA8D;QAC9D,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAA;gBAC7C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAA;YAClE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,CAAC,GAAG,CAAC,mCAAmC,OAAO,cAAc,CAAC,EAAE,CAAC,CAAA;gBAC1E,CAAC;gBACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;YAC1B,CAAC;QACH,CAAC;QAED,8CAA8C;QAC9C,IAAI,eAAe,GAAG,QAAQ,CAAA;QAC9B,IAAI,cAAc,GAAG,OAAO,CAAA;QAC5B,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC;gBACH,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,CAAC,GAAG,CAAC,wCAAwC,QAAQ,EAAE,CAAC,CAAA;gBACjE,CAAC;gBACD,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBAC3C,MAAM,cAAc,GAAG,MAAM,WAAW,CAAC;oBACvC,MAAM,EAAE,UAAU;oBAClB,MAAM,EAAE,KAAK;iBACd,CAAC,CAAA;gBACF,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;gBAC7C,MAAM,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;gBACnC,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAA;gBACtB,eAAe,GAAG,OAAO,CAAA;gBACzB,cAAc,GAAG,UAAU,CAAA;gBAC3B,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,CAAC,GAAG,CAAC,uCAAuC,QAAQ,SAAS,OAAO,EAAE,CAAC,CAAA;gBAChF,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,qBAAqB,QAAQ,2DAA2D,EAAE,CAAC,CAAC,CAAA;YACnG,CAAC;QACH,CAAC;QAED,qBAAqB;QACrB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAA;YACpD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;gBACpB,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;oBACzC,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;wBAC3D,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;wBAClF,MAAM,KAAK,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;wBAC1F,OAAO;4BACL,IAAI,EAAE,WAAW;4BACjB,KAAK,EAAE,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK;4BAClF,MAAM,EAAE,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM;yBACpF,CAAA;oBACH,CAAC;yBAAM,CAAC;wBACN,MAAM,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;wBAC5E,OAAO;4BACL,IAAI,EAAE,WAAW;4BACjB,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,MAAM,EAAE,IAAI,CAAC,MAAM;yBACpB,CAAA;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,OAAO;wBACL,IAAI,EAAE,cAAc;wBACpB,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;qBACpB,CAAA;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO;oBACL,IAAI,EAAE,cAAc;oBACpB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB,CAAA;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,YAAY,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YAE/D,IAAI,YAAY,CAAC,QAAQ,CAAC,2DAA2D,CAAC,EAAE,CAAC;gBACvF,IAAI,CAAC,yEAAyE,eAAe,UAAU,QAAQ,mIAAmI,CAAC,CAAA;YACrP,CAAC;iBAAM,CAAC;gBACN,8DAA8D;gBAC9D,IAAI,CAAC,qBAAqB,eAAe,UAAU,EAAE,CAAC,CAAC,CAAA;YACzD,CAAC;QACH,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,CAAA;IACjC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAU,EAAE;IACzD,OAAO,IAAI;SACR,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;SACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;SACrB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;SACvB,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;SACvB,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;SAC5E,OAAO,CAAC,qBAAqB,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;AAC3F,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAiB,EAAE,IAAY,EAAE,QAAQ,GAAY,KAAK,EAAiB,EAAE;IAC5G,IAAI,OAAO,GAA4B,IAAI,CAAA;IAE3C,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,GAAG,IAAI;aACR,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC;aAClC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC;aAC7B,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC;aACtC,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC;aACnC,OAAO,CAAC,mCAAmC,EAAE,EAAE,CAAC;aAChD,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;aACpC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;aACpC,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC;aACtC,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC;aACxC,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC;aAC3C,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC;aAC3C,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC;aACxC,OAAO,CAAC,4BAA4B,EAAE,EAAE,CAAC;aACzC,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAA;IAC3C,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QACrC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,OAAO,GAAG,MAAM,CAAA;YAChB,MAAK;QACP,CAAC;IACH,CAAC;IAED,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,IAAI,EAAE;SACN,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;SACzB,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC;SAClC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAEvB,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAA;AACnC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,0BAA0B;IAC1B,0CAA0C;IAC1C,yCAAyC;CAC1C,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,+CAA+C;IAC/C,+CAA+C;IAC/C,wCAAwC;IACxC,wCAAwC;IACxC,8BAA8B;IAC9B,oBAAoB;IACpB,yBAAyB;IACzB,wBAAwB;IACxB,6BAA6B;CAC9B,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,oDAAoD;IACpD,yCAAyC;IACzC,oDAAoD;IACpD,yCAAyC;IACzC,qCAAqC;IACrC,0CAA0C;CAC3C,CAAA;AAED,wEAAwE;AACxE,8DAA8D;AAC9D,0EAA0E;AAC1E,wEAAwE;AACxE,mEAAmE;AACnE,yCAAyC;AACzC,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,yDAAyD;IACzD,iEAAiE;IACjE,yDAAyD;IACzD,gGAAgG;IAChG,yEAAyE;IACzE,mHAAmH;IACnH,qGAAqG;IACrG,2DAA2D;IAC3D,iDAAiD;IACjD,0DAA0D;CAC3D,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAY,EAAiB,EAAE;IACvD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;IAC5C,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;QACrB,MAAM,UAAU,GAAG,aAAa,CAAA;QAChC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QACvC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;QAClB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,GAAG,CAAA;AAEzB,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,MAAc,EACd,QAA8C,EAC9C,aAAgF,EACzD,EAAE;IACzB,MAAM,cAAc,GAAG,aAAa,IAAI,SAAS,CAAA;IAEjD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;QACzE,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;QAExC,MAAM,KAAK,GAAG,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;QACxD,MAAM,OAAO,GAAG,gBAAgB,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;QAC/D,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAA;QACnG,MAAM,SAAS,GAAG,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;QAC5D,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,cAAc,CAAA;QAE5E,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAA;QAC3B,MAAM,QAAQ,GAAG,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,QAAQ,KAAK,GAAG,CAAC,QAAQ,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAC3I,IAAI,IAAI,GAAG,IAAI,CAAA;QACf,IAAI,SAAS,KAAK,EAAE,IAAI,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClD,IAAI,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;QAC5B,CAAC;aAAM,IAAI,QAAQ,KAAK,EAAE,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,IAAI,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;YACrD,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;oBACnB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAA;gBAChD,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;QACnC,MAAM,OAAO,GAAG,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,CAChC,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC/C,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,QAAQ,GAAG,QAAQ,EAAE,CAAC,CAAC;gBACxD,GAAG,GAAG,CAAC,QAAQ,KAAK,GAAG,CAAC,QAAQ,GAAG,QAAQ,EAAE,CAC9C,CAAC,CAAC,CAAC,EAAE,CAAA;QACN,IAAI,KAAK,GAAG,IAAI,CAAA;QAChB,IAAI,QAAQ,KAAK,EAAE,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChD,KAAK,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;QAC5B,CAAC;aAAM,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,KAAK,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,aAAa,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACpE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;oBACnB,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,EAAE,CAAC,CAAA;gBAC/C,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;QAEpC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;IACrC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,kBAAkB,CAAC,eAAe,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;IAChD,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;AACrD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,KAAiC,EAAE,QAA8C,EAAmB,EAAE;IACvI,IAAI,KAAK,CAAC,KAAK,EAAE,IAAI,KAAK,UAAU,EAAE,CAAC;QACrC,OAAO,EAAE,CAAA;IACX,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAa,CAAA;IAClD,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,IAAI,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACxE,MAAM,GAAG,sCAAsC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAA;IAC7E,CAAC;SAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QAC1C,MAAM,GAAG,yCAAyC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAA;IAChF,CAAC;IACD,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;YACzE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAgD,CAAA;YAC/E,OAAO,IAAI,CAAC,IAAI,CAAA;QAClB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,kBAAkB,CAAC,kBAAkB,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;QACnD,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAAE,GAAW;IACvD,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,4FAA4F,CAAC,CAAA;IACjH,OAAO,CAAC,CAAC,CAAC,CAAC,mDAAmD,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;AAC5E,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,KAAiC,EAAE,QAA8C,EAAmB,EAAE;IACvI,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;IACvB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAA;IACX,CAAC;IACD,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAA;IACrB,MAAM,GAAG,GAAG,GAAG,IAAI,EAAE,CAAA;IACrB,IAAI,SAAS,GAAG,EAAE,CAAA;IAElB,IAAI,GAAG,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAA;QACnC,mEAAmE;QACnE,OAAO,+DAA+D,IAAI,gZAAgZ,CAAA;IAE5d,CAAC;SAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;QACvF,IAAI,IAAI,EAAE,CAAC;YACT,0EAA0E;YAC1E,yEAAyE;YACzE,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;YAC/B,OAAO,0EAA0E,IAAI,IAAI,EAAE,iMAAiM,CAAA;QAC9R,CAAC;QACD,IAAI,CAAC,iBAAiB,GAAG,2BAA2B,CAAC,CAAA;IAEvD,CAAC;SAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC7C,mFAAmF;QACnF,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAA;QAC3D,IAAI,CAAC,EAAE,CAAC;YACN,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACnB,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACtB,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACpB,OAAO,0WAA0W,MAAM,UAAU,SAAS,IAAI,OAAO,aAAa,CAAA;QACpa,CAAC;QACD,IAAI,CAAC,iBAAiB,GAAG,+BAA+B,CAAC,CAAA;IAE3D,CAAC;SAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QACxC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,EAAE,CAAA;QACjC,IAAI,YAAY,EAAE,CAAC;YACjB,WAAW;YACX,oEAAoE;YACpE,sRAAsR;YACtR,qPAAqP;YACrP,gmBAAgmB;YAChmB,MAAM,KAAK,GAAG,iEAAiE,CAAA;YAC/E,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAC1B,IAAI,CAAC,EAAE,CAAC;gBACN,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBACjB,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBACjB,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBACrB,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBACtB,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBACjB,IAAI,GAAG,GAAG,sCAAsC,CAAA;gBAChD,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,KAAK;wBACR,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;wBACjC,GAAG,GAAG,GAAG,GAAG,mBAAmB,YAAY,WAAW,SAAS,CAAC,CAAC,CAAC,gBAAgB,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;wBAChG,MAAK;oBACP,KAAK,OAAO;wBACV,GAAG,GAAG,GAAG,GAAG,cAAc,YAAY,MAAM,IAAI,WAAW,QAAQ,IAAI,SAAS,SAAS,IAAI,EAAE,CAAA;wBAC/F,MAAK;oBACP,KAAK,MAAM,CAAC;oBACZ;wBACE,GAAG,GAAG,GAAG,GAAG,aAAa,YAAY,WAAW,QAAQ,IAAI,SAAS,SAAS,IAAI,EAAE,CAAA;wBACpF,MAAK;gBACT,CAAC;gBACD,OAAO,uHAAuH,GAAG,8BAA8B,CAAA;YACjK,CAAC;YACD,IAAI,CAAC,iBAAiB,GAAG,+BAA+B,CAAC,CAAA;QAC3D,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,iBAAiB,GAAG,6CAA6C,CAAC,CAAA;QACzE,CAAC;IAEH,CAAC;SAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAChD,SAAS,GAAG,+CAA+C,kBAAkB,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC,EAAE,CAAA;IAEpH,CAAC;SAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QACpE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3D,SAAS,GAAG,qDAAqD,OAAO,EAAE,CAAA;IAE5E,CAAC;SAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC7C,SAAS,GAAG,2CAA2C,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAA;IAElF,CAAC;SAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC5C,SAAS,GAAG,qCAAqC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAA;IAC5E,CAAC;IAED,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;QACrB;;;;WAIG;QACH,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,CAAA;YAC/E,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAwG,CAAA;YACvI,OAAO,IAAI,CAAC,IAAI,CAAA;QAClB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,kBAAkB,CAAC,YAAY,GAAG,EAAE,EAAE,CAAC,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;IAED,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,GAAW,EAAE,EAAE;IACrC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAA;AACjC,CAAC,CAAA;AAED,MAAM,UAAU,YAAY,CAAC,GAAW;IACtC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;IAC9C,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,KAAK;YACR,OAAO,WAAW,CAAA;QACpB,KAAK,MAAM;YACT,OAAO,YAAY,CAAA;QACrB,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,CAAC;QACX,KAAK,KAAK;YACR,OAAO,WAAW,CAAA;QACpB;YACE,OAAO,EAAE,CAAA;IACb,CAAC;AACH,CAAC"}
@@ -1,6 +1,14 @@
1
1
  export interface FetchFunc<T> {
2
2
  (input: RequestInfo, init?: RequestInit): Promise<T>;
3
3
  }
4
+ /**
5
+ * fetchGitHub returns the JSON body of a successful response from the GitHub
6
+ * API. Any other status throws an HTTPStatusError, instead of handing an
7
+ * error message to a caller that expects a repository or an issue. A request
8
+ * over the rate limit (403 or 429 with no requests remaining) is reported as
9
+ * 429, because it succeeds once the limit resets.
10
+ */
11
+ export declare function fetchGitHub<T>(url: string): Promise<T>;
4
12
  export interface GithubRepoArgs {
5
13
  owner: string;
6
14
  repo: string;