@nuxtjs/sitemap 7.2.3 → 7.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/200.html +128 -128
- package/dist/client/404.html +128 -128
- package/dist/client/_nuxt/-71hrkjd.js +1 -0
- package/dist/client/_nuxt/0BrjI7ue.js +1 -0
- package/dist/client/_nuxt/{C-nORZOA.js → 2V0Ap-uE.js} +1 -1
- package/dist/client/_nuxt/8jXJkYXT.js +1 -0
- package/dist/client/_nuxt/{C3ExS8zO.js → AObogYnP.js} +1 -1
- package/dist/client/_nuxt/B-_AxZdj.js +1 -0
- package/dist/client/_nuxt/{wI6OXr6j.js → B6U2uXNT.js} +1 -1
- package/dist/client/_nuxt/BAxNRJcx.js +1 -0
- package/dist/client/_nuxt/{COK4E0Yg.js → BBT0u3iQ.js} +1 -1
- package/dist/client/_nuxt/BCMa2Tx6.js +1 -0
- package/dist/client/_nuxt/BDiHrqA7.js +1 -0
- package/dist/client/_nuxt/BHyGnp0Z.js +1 -0
- package/dist/client/_nuxt/BLCLeV30.js +1 -0
- package/dist/client/_nuxt/BLmoVg8f.js +1 -0
- package/dist/client/_nuxt/BR4n0CG2.js +1 -0
- package/dist/client/_nuxt/{Deuh7S70.js → BWx0ALLs.js} +1 -1
- package/dist/client/_nuxt/BXl-Qilg.js +1 -0
- package/dist/client/_nuxt/BZ4qjH1z.js +1 -0
- package/dist/client/_nuxt/B_7mSSNY.js +1 -0
- package/dist/client/_nuxt/{BlxRB_8X.js → Ba6QCfRf.js} +1 -1
- package/dist/client/_nuxt/{BQwtg7Y-.js → Bbt-fWo2.js} +1 -1
- package/dist/client/_nuxt/{COcR7UxN.js → BcOcwvcX.js} +1 -1
- package/dist/client/_nuxt/{e4jU7D2d.js → BceOnUsB.js} +1 -1
- package/dist/client/_nuxt/BekpkmYp.js +1 -0
- package/dist/client/_nuxt/{DDtJtuOZ.js → Bi2Xjx-o.js} +1 -1
- package/dist/client/_nuxt/{BE9QQhgF.js → BixDBq5F.js} +1 -1
- package/dist/client/_nuxt/Bjjh7dxw.js +1 -0
- package/dist/client/_nuxt/BkR1g5rb.js +1 -0
- package/dist/client/_nuxt/Blx2zv3z.js +1 -0
- package/dist/client/_nuxt/{B-k3dvlD.js → BnLMxUhr.js} +1 -1
- package/dist/client/_nuxt/{D8mZ0lfy.js → BnZ6J9ez.js} +1 -1
- package/dist/client/_nuxt/Bw1r3vCz.js +1 -0
- package/dist/client/_nuxt/BxugDVxS.js +1 -0
- package/dist/client/_nuxt/BzEH12SI.js +1 -0
- package/dist/client/_nuxt/C1YtDkjL.js +1 -0
- package/dist/client/_nuxt/C3TFZlTA.js +1 -0
- package/dist/client/_nuxt/C4-SGcC-.js +1 -0
- package/dist/client/_nuxt/C5AohmeQ.js +1 -0
- package/dist/client/_nuxt/{3kbuJQcV.js → C8E1IXHE.js} +1 -1
- package/dist/client/_nuxt/C9e09xm7.js +1 -0
- package/dist/client/_nuxt/{CZe0XNBd.js → CCQEdssC.js} +1 -1
- package/dist/client/_nuxt/CCbUEAxs.js +1 -0
- package/dist/client/_nuxt/CHVitPdg.js +1 -0
- package/dist/client/_nuxt/CLEBXJYW.js +1 -0
- package/dist/client/_nuxt/{Cza_XSSt.js → COl1u60l.js} +1 -1
- package/dist/client/_nuxt/CQ5q8R2W.js +1 -0
- package/dist/client/_nuxt/CQPZbkWf.js +1 -0
- package/dist/client/_nuxt/CR_dl2Bk.js +1 -0
- package/dist/client/_nuxt/{BLhTXw86.js → CSHvh9SD.js} +1 -1
- package/dist/client/_nuxt/CV3OApzZ.js +32 -0
- package/dist/client/_nuxt/{atvbtKCR.js → CWGUrYGm.js} +1 -1
- package/dist/client/_nuxt/CWgbWrzg.js +1 -0
- package/dist/client/_nuxt/CX-D33aM.js +1 -0
- package/dist/client/_nuxt/CXkZqcqC.js +1 -0
- package/dist/client/_nuxt/Cbu_jgUK.js +1 -0
- package/dist/client/_nuxt/CeaQPKDP.js +1 -0
- package/dist/client/_nuxt/Cg69lM4A.js +1 -0
- package/dist/client/_nuxt/{BNHBcdi1.js → CiNAsHKU.js} +1 -1
- package/dist/client/_nuxt/CjTSRSzG.js +1 -0
- package/dist/client/_nuxt/Cksrkzhi.js +1 -0
- package/dist/client/_nuxt/Cl11rDh_.js +1 -0
- package/dist/client/_nuxt/{DRNBmV_Q.js → ClJifeiK.js} +1 -1
- package/dist/client/_nuxt/{DRhBOlRY.js → CsiB4_CF.js} +1 -1
- package/dist/client/_nuxt/CucaAMjX.js +1 -0
- package/dist/client/_nuxt/{CSp6iqVD.js → CyZx4btO.js} +1 -1
- package/dist/client/_nuxt/D08_rs9c.js +1 -0
- package/dist/client/_nuxt/{BVr_1_27.js → D33VVPhb.js} +1 -1
- package/dist/client/_nuxt/D3T736Ml.js +1 -0
- package/dist/client/_nuxt/D8P4R8x9.js +1 -0
- package/dist/client/_nuxt/DBPt_AfP.js +1 -0
- package/dist/client/_nuxt/{sacFqUAJ.js → DBtIRQT_.js} +1 -1
- package/dist/client/_nuxt/{CYgUR4L5.js → DDhM2Lry.js} +1 -1
- package/dist/client/_nuxt/{UL5zprDm.js → DEEqWFGm.js} +1 -1
- package/dist/client/_nuxt/{BgYniUM_.js → DERFIACx.js} +1 -1
- package/dist/client/_nuxt/{BVz_zdnA.js → DFAwn6Qs.js} +1 -1
- package/dist/client/_nuxt/DFERiEu9.js +1 -0
- package/dist/client/_nuxt/{din0uRiO.js → DLdrzW0n.js} +1 -1
- package/dist/client/_nuxt/{C-wny61x.js → DNTbO5Kf.js} +1 -1
- package/dist/client/_nuxt/{DQVVAn-B.js → DPWDxuKt.js} +1 -1
- package/dist/client/_nuxt/DSrUkfvF.js +1 -0
- package/dist/client/_nuxt/DTAJTTim.js +1 -0
- package/dist/client/_nuxt/DVMEJ2y_.js +1 -0
- package/dist/client/_nuxt/{ClGRhx96.js → D_iqerNF.js} +1 -1
- package/dist/client/_nuxt/DaDNKYhP.js +1 -0
- package/dist/client/_nuxt/DbcauaCG.js +1 -0
- package/dist/client/_nuxt/Ddn3lr0y.js +1 -0
- package/dist/client/_nuxt/DjCbjd0V.js +1 -0
- package/dist/client/_nuxt/DjP-tqRL.js +1 -0
- package/dist/client/_nuxt/{C5Y8tDhP.js → DlaVQbPD.js} +1 -1
- package/dist/client/_nuxt/DlqU7Mzb.js +1 -0
- package/dist/client/_nuxt/{B2vK47Ag.js → DnAB7knh.js} +1 -1
- package/dist/client/_nuxt/Dp08fnRF.js +1 -0
- package/dist/client/_nuxt/{BEhvmC7f.js → DpGQfXhQ.js} +1 -1
- package/dist/client/_nuxt/{CyIGOvEh.js → DqDt7uUl.js} +1 -1
- package/dist/client/_nuxt/Dtn5OO9k.js +1 -0
- package/dist/client/_nuxt/{CGVVOGHx.js → DyGSH8sA.js} +1 -1
- package/dist/client/_nuxt/HnIlIngO.js +1 -0
- package/dist/client/_nuxt/ISJeQQUc.js +1 -0
- package/dist/client/_nuxt/MxEea5SM.js +1 -0
- package/dist/client/_nuxt/Olw6fvns.js +1 -0
- package/dist/client/_nuxt/{CMt9yHYq.js → R5DMG1SI.js} +1 -1
- package/dist/client/_nuxt/RJ4jLoVH.js +1 -0
- package/dist/client/_nuxt/RvZl2ZSs.js +1 -0
- package/dist/client/_nuxt/UP2u2qKn.js +1 -0
- package/dist/client/_nuxt/WlOKAcJ7.js +1 -0
- package/dist/client/_nuxt/YSxxb8je.js +1 -0
- package/dist/client/_nuxt/a8RH-YUw.js +1 -0
- package/dist/client/_nuxt/{BUEGK8hf.js → aBZrgJR0.js} +1 -1
- package/dist/client/_nuxt/builds/latest.json +1 -1
- package/dist/client/_nuxt/builds/meta/fde9927c-67b7-46e2-bc4b-f2cf5fcca69b.json +1 -0
- package/dist/client/_nuxt/eHy1PpK4.js +1 -0
- package/dist/client/_nuxt/error-404.CGmvdXdH.css +1 -0
- package/dist/client/_nuxt/error-500.DloGOj8k.css +1 -0
- package/dist/client/_nuxt/hegEt444.js +1 -0
- package/dist/client/_nuxt/{Drsz93k2.js → jOnvO7K6.js} +1 -1
- package/dist/client/_nuxt/jY9aw0fr.js +1 -0
- package/dist/client/_nuxt/{qpfuy3xp.js → kP2iUUCn.js} +1 -1
- package/dist/client/_nuxt/{HNqc6WRo.js → k_46elR7.js} +1 -1
- package/dist/client/_nuxt/mD5xMClh.js +1 -0
- package/dist/client/_nuxt/{m4gc_qpA.js → otdIdbsQ.js} +1 -1
- package/dist/client/_nuxt/{C0nbwVuJ.js → qVXJnTkO.js} +1 -1
- package/dist/client/_nuxt/rAlqSFiP.js +1 -0
- package/dist/client/_nuxt/s0gpj0oJ.js +1 -0
- package/dist/client/_nuxt/sY1Cc3Se.js +1 -0
- package/dist/client/_nuxt/tpHetfZQ.js +1 -0
- package/dist/client/_nuxt/ulE5f4OK.js +1 -0
- package/dist/client/_nuxt/yNdrVPqT.js +1 -0
- package/dist/client/_nuxt/{BsOYHjMa.js → z307i-ZX.js} +1 -1
- package/dist/client/index.html +128 -128
- package/dist/module.cjs +33 -18
- package/dist/module.json +1 -1
- package/dist/module.mjs +33 -18
- package/dist/runtime/server/kit.js +1 -1
- package/dist/runtime/server/plugins/compression.d.ts +1 -1
- package/dist/runtime/server/plugins/compression.js +1 -1
- package/dist/runtime/server/plugins/nuxt-content-v2.d.ts +1 -1
- package/dist/runtime/server/plugins/nuxt-content-v2.js +3 -3
- package/dist/runtime/server/plugins/warm-up.d.ts +1 -1
- package/dist/runtime/server/plugins/warm-up.js +3 -3
- package/dist/runtime/server/routes/__sitemap__/debug.js +3 -3
- package/dist/runtime/server/routes/sitemap/[sitemap].xml.js +2 -2
- package/dist/runtime/server/routes/sitemap.xml.js +3 -3
- package/dist/runtime/server/routes/sitemap.xsl.js +4 -3
- package/dist/runtime/server/routes/sitemap_index.xml.js +3 -3
- package/dist/runtime/server/sitemap/nitro.js +4 -1
- package/dist/runtime/server/utils.d.ts +1 -1
- package/dist/runtime/server/utils.js +2 -2
- package/package.json +13 -13
- package/dist/client/_nuxt/7O62HKoU.js +0 -1
- package/dist/client/_nuxt/B-DoSBHF.js +0 -1
- package/dist/client/_nuxt/B1SYOhNW.js +0 -1
- package/dist/client/_nuxt/B5auBHZD.js +0 -1
- package/dist/client/_nuxt/BC5c_5Pe.js +0 -1
- package/dist/client/_nuxt/BFLt1xDp.js +0 -1
- package/dist/client/_nuxt/BHOwM8T6.js +0 -1
- package/dist/client/_nuxt/BIEUsx6d.js +0 -1
- package/dist/client/_nuxt/BILxekzW.js +0 -1
- package/dist/client/_nuxt/BJ4Li9vH.js +0 -1
- package/dist/client/_nuxt/BJGe-b2p.js +0 -1
- package/dist/client/_nuxt/BK9xJ97g.js +0 -1
- package/dist/client/_nuxt/BMYPR7BL.js +0 -1
- package/dist/client/_nuxt/BPT9niGB.js +0 -1
- package/dist/client/_nuxt/BQoSv7ci.js +0 -1
- package/dist/client/_nuxt/BVUVsWT6.js +0 -1
- package/dist/client/_nuxt/BbSNqyBO.js +0 -1
- package/dist/client/_nuxt/BdxkyMLR.js +0 -1
- package/dist/client/_nuxt/Be6lgOlo.js +0 -1
- package/dist/client/_nuxt/BeQkCIfX.js +0 -1
- package/dist/client/_nuxt/BfCpw3nA.js +0 -1
- package/dist/client/_nuxt/BiFfXF7O.js +0 -1
- package/dist/client/_nuxt/BjQB5zDj.js +0 -1
- package/dist/client/_nuxt/Bu5BbsvL.js +0 -1
- package/dist/client/_nuxt/Bu73EIfS.js +0 -1
- package/dist/client/_nuxt/Bw0wYZmb.js +0 -1
- package/dist/client/_nuxt/BwXTMy5W.js +0 -1
- package/dist/client/_nuxt/C1XDQQGZ.js +0 -1
- package/dist/client/_nuxt/C1tVc3UG.js +0 -1
- package/dist/client/_nuxt/C30yJ1fx.js +0 -1
- package/dist/client/_nuxt/C6j12Q_x.js +0 -1
- package/dist/client/_nuxt/CB0Krxn9.js +0 -1
- package/dist/client/_nuxt/CB2ApiWb.js +0 -1
- package/dist/client/_nuxt/CKg9tqCS.js +0 -1
- package/dist/client/_nuxt/CQ0soPOq.js +0 -1
- package/dist/client/_nuxt/CYFUjXW1.js +0 -1
- package/dist/client/_nuxt/Cf8iN4DR.js +0 -1
- package/dist/client/_nuxt/Ci6OQyBP.js +0 -1
- package/dist/client/_nuxt/Cz8P-rqG.js +0 -1
- package/dist/client/_nuxt/D4Tzg5kh.js +0 -1
- package/dist/client/_nuxt/D5pd2Owo.js +0 -1
- package/dist/client/_nuxt/D9-PGadD.js +0 -1
- package/dist/client/_nuxt/D9R-vmeu.js +0 -1
- package/dist/client/_nuxt/DBQeEorK.js +0 -1
- package/dist/client/_nuxt/DB_GagMm.js +0 -1
- package/dist/client/_nuxt/DKXYxT9g.js +0 -1
- package/dist/client/_nuxt/DKykz6zU.js +0 -1
- package/dist/client/_nuxt/DNquZEk8.js +0 -1
- package/dist/client/_nuxt/DQ1-QYvQ.js +0 -1
- package/dist/client/_nuxt/DREVFZK8.js +0 -1
- package/dist/client/_nuxt/DWJ3fJO_.js +0 -1
- package/dist/client/_nuxt/DYvnoCeB.js +0 -1
- package/dist/client/_nuxt/D_z4Izcz.js +0 -1
- package/dist/client/_nuxt/DbXoA79R.js +0 -1
- package/dist/client/_nuxt/DfxzS6Rs.js +0 -1
- package/dist/client/_nuxt/DhUJRlN_.js +0 -1
- package/dist/client/_nuxt/DjHMNizO.js +0 -1
- package/dist/client/_nuxt/DkBy-JyN.js +0 -1
- package/dist/client/_nuxt/DkLiglaE.js +0 -1
- package/dist/client/_nuxt/Dmy2k9nq.js +0 -1
- package/dist/client/_nuxt/DsWjAdsX.js +0 -1
- package/dist/client/_nuxt/Dsg_Bt_b.js +0 -1
- package/dist/client/_nuxt/GBQ2dnAY.js +0 -1
- package/dist/client/_nuxt/HnGAYVZD.js +0 -1
- package/dist/client/_nuxt/HzYwdGDm.js +0 -1
- package/dist/client/_nuxt/P4WzXJd0.js +0 -1
- package/dist/client/_nuxt/QhoSD0DR.js +0 -1
- package/dist/client/_nuxt/R900dpIa.js +0 -1
- package/dist/client/_nuxt/RGbjgU4D.js +0 -32
- package/dist/client/_nuxt/TU54ms6u.js +0 -1
- package/dist/client/_nuxt/Tz6hzZYG.js +0 -1
- package/dist/client/_nuxt/UIAJJxZW.js +0 -1
- package/dist/client/_nuxt/builds/meta/155092f3-5581-48d1-929f-1f0015f366f6.json +0 -1
- package/dist/client/_nuxt/error-404.DWO74KKP.css +0 -1
- package/dist/client/_nuxt/error-500.DVC0lzO_.css +0 -1
- package/dist/client/_nuxt/jZyOssv4.js +0 -1
- package/dist/client/_nuxt/m2LEI-9-.js +0 -1
- package/dist/client/_nuxt/mebxcVVE.js +0 -1
- package/dist/client/_nuxt/nyqBNV6O.js +0 -1
- package/dist/client/_nuxt/shcSOmrb.js +0 -1
- package/dist/client/_nuxt/w-ucz2PV.js +0 -1
- package/dist/client/_nuxt/w8dY5SsB.js +0 -1
package/dist/module.cjs
CHANGED
|
@@ -12,7 +12,6 @@ const stdEnv = require('std-env');
|
|
|
12
12
|
const promises = require('node:fs/promises');
|
|
13
13
|
const node_path = require('node:path');
|
|
14
14
|
const chalk = require('chalk');
|
|
15
|
-
const nitropack = require('nitropack');
|
|
16
15
|
const normalise_js = require('../dist/runtime/server/sitemap/urlset/normalise.js');
|
|
17
16
|
|
|
18
17
|
var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
|
|
@@ -232,6 +231,9 @@ export {}
|
|
|
232
231
|
function createPagesPromise(nuxt = kit.useNuxt()) {
|
|
233
232
|
return new Promise((resolve) => {
|
|
234
233
|
nuxt.hooks.hook("modules:done", () => {
|
|
234
|
+
if (typeof nuxt.options.pages !== "undefined" && nuxt.options.pages === false) {
|
|
235
|
+
return resolve([]);
|
|
236
|
+
}
|
|
235
237
|
kit.extendPages(resolve);
|
|
236
238
|
});
|
|
237
239
|
});
|
|
@@ -290,19 +292,18 @@ const sourceRegex = /<source[^>]*\ssrc="([^"]+)"/g;
|
|
|
290
292
|
function extractSitemapMetaFromHtml(html, options) {
|
|
291
293
|
options = options || { images: true, videos: true, lastmod: true, alternatives: true };
|
|
292
294
|
const payload = {};
|
|
295
|
+
const resolveUrl = options?.resolveUrl || ((s) => s);
|
|
296
|
+
const mainRegex = /<main[^>]*>([\s\S]*?)<\/main>/;
|
|
297
|
+
const mainMatch = mainRegex.exec(html);
|
|
293
298
|
if (options?.images) {
|
|
294
299
|
const images = /* @__PURE__ */ new Set();
|
|
295
|
-
const mainRegex = /<main[^>]*>([\s\S]*?)<\/main>/;
|
|
296
|
-
const mainMatch = mainRegex.exec(html);
|
|
297
300
|
if (mainMatch?.[1] && mainMatch[1].includes("<img")) {
|
|
298
301
|
const imgRegex = /<img\s+(?:[^>]*?\s)?src=["']((?!data:|blob:|file:)[^"']+?)["'][^>]*>/gi;
|
|
299
302
|
let match;
|
|
300
303
|
while ((match = imgRegex.exec(mainMatch[1])) !== null) {
|
|
301
304
|
if (match.index === imgRegex.lastIndex)
|
|
302
305
|
imgRegex.lastIndex++;
|
|
303
|
-
|
|
304
|
-
if (url.startsWith("/"))
|
|
305
|
-
url = kit.tryUseNuxt() ? kit$1.withSiteUrl(url) : url;
|
|
306
|
+
const url = resolveUrl(match[1]);
|
|
306
307
|
images.add(url);
|
|
307
308
|
}
|
|
308
309
|
}
|
|
@@ -311,8 +312,6 @@ function extractSitemapMetaFromHtml(html, options) {
|
|
|
311
312
|
}
|
|
312
313
|
if (options?.videos) {
|
|
313
314
|
const videos = [];
|
|
314
|
-
const mainRegex = /<main[^>]*>([\s\S]*?)<\/main>/;
|
|
315
|
-
const mainMatch = mainRegex.exec(html);
|
|
316
315
|
if (mainMatch?.[1] && mainMatch[1].includes("<video")) {
|
|
317
316
|
let videoMatch;
|
|
318
317
|
while ((videoMatch = videoRegex.exec(mainMatch[1])) !== null) {
|
|
@@ -365,11 +364,12 @@ function extractSitemapMetaFromHtml(html, options) {
|
|
|
365
364
|
}
|
|
366
365
|
if (sources.length > 0) {
|
|
367
366
|
videos.push(...sources.map((source) => {
|
|
368
|
-
if (
|
|
369
|
-
|
|
367
|
+
if (videoObj.thumbnail_loc) {
|
|
368
|
+
videoObj.thumbnail_loc = resolveUrl(String(videoObj.thumbnail_loc));
|
|
369
|
+
}
|
|
370
370
|
return {
|
|
371
371
|
...videoObj,
|
|
372
|
-
content_loc: source
|
|
372
|
+
content_loc: resolveUrl(source)
|
|
373
373
|
};
|
|
374
374
|
}));
|
|
375
375
|
} else {
|
|
@@ -460,11 +460,24 @@ function setupPrerenderHandler(_options, nuxt = kit.useNuxt()) {
|
|
|
460
460
|
videos: options.discoverVideos,
|
|
461
461
|
// TODO configurable?
|
|
462
462
|
lastmod: true,
|
|
463
|
-
alternatives: true
|
|
463
|
+
alternatives: true,
|
|
464
|
+
resolveUrl(s) {
|
|
465
|
+
return s.startsWith("/") ? kit$1.withSiteUrl(s) : s;
|
|
466
|
+
}
|
|
464
467
|
}), route._sitemap);
|
|
465
468
|
});
|
|
466
469
|
nitro.hooks.hook("prerender:done", async () => {
|
|
467
|
-
|
|
470
|
+
const isNuxt4 = nuxt.options._majorVersion === 4;
|
|
471
|
+
let nitroModule;
|
|
472
|
+
if (isNuxt4) {
|
|
473
|
+
nitroModule = await import(String("nitro"));
|
|
474
|
+
} else {
|
|
475
|
+
nitroModule = await import(String("nitropack"));
|
|
476
|
+
}
|
|
477
|
+
if (!nitroModule) {
|
|
478
|
+
return;
|
|
479
|
+
}
|
|
480
|
+
await nitroModule.build(prerenderer);
|
|
468
481
|
const routes = [];
|
|
469
482
|
if (options.debug)
|
|
470
483
|
routes.push("/__sitemap__/debug.json");
|
|
@@ -866,11 +879,13 @@ declare module 'vue-router' {
|
|
|
866
879
|
if (typeof config.runtimeCacheStorage === "object")
|
|
867
880
|
routeRules.cache.base = "sitemap";
|
|
868
881
|
}
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
882
|
+
if (config.xsl) {
|
|
883
|
+
nuxt.options.nitro.routeRules[config.xsl] = {
|
|
884
|
+
headers: {
|
|
885
|
+
"Content-Type": "application/xslt+xml"
|
|
886
|
+
}
|
|
887
|
+
};
|
|
888
|
+
}
|
|
874
889
|
if (usingMultiSitemaps) {
|
|
875
890
|
nuxt.options.nitro.routeRules["/sitemap.xml"] = { redirect: "/sitemap_index.xml" };
|
|
876
891
|
nuxt.options.nitro.routeRules["/sitemap_index.xml"] = routeRules;
|
package/dist/module.json
CHANGED
package/dist/module.mjs
CHANGED
|
@@ -10,7 +10,6 @@ import { provider, env } from 'std-env';
|
|
|
10
10
|
import { mkdir, writeFile } from 'node:fs/promises';
|
|
11
11
|
import { join } from 'node:path';
|
|
12
12
|
import chalk from 'chalk';
|
|
13
|
-
import { build } from 'nitropack';
|
|
14
13
|
import { normaliseDate } from '../dist/runtime/server/sitemap/urlset/normalise.js';
|
|
15
14
|
|
|
16
15
|
async function resolveUrls(urls, ctx) {
|
|
@@ -225,6 +224,9 @@ export {}
|
|
|
225
224
|
function createPagesPromise(nuxt = useNuxt()) {
|
|
226
225
|
return new Promise((resolve) => {
|
|
227
226
|
nuxt.hooks.hook("modules:done", () => {
|
|
227
|
+
if (typeof nuxt.options.pages !== "undefined" && nuxt.options.pages === false) {
|
|
228
|
+
return resolve([]);
|
|
229
|
+
}
|
|
228
230
|
extendPages(resolve);
|
|
229
231
|
});
|
|
230
232
|
});
|
|
@@ -283,19 +285,18 @@ const sourceRegex = /<source[^>]*\ssrc="([^"]+)"/g;
|
|
|
283
285
|
function extractSitemapMetaFromHtml(html, options) {
|
|
284
286
|
options = options || { images: true, videos: true, lastmod: true, alternatives: true };
|
|
285
287
|
const payload = {};
|
|
288
|
+
const resolveUrl = options?.resolveUrl || ((s) => s);
|
|
289
|
+
const mainRegex = /<main[^>]*>([\s\S]*?)<\/main>/;
|
|
290
|
+
const mainMatch = mainRegex.exec(html);
|
|
286
291
|
if (options?.images) {
|
|
287
292
|
const images = /* @__PURE__ */ new Set();
|
|
288
|
-
const mainRegex = /<main[^>]*>([\s\S]*?)<\/main>/;
|
|
289
|
-
const mainMatch = mainRegex.exec(html);
|
|
290
293
|
if (mainMatch?.[1] && mainMatch[1].includes("<img")) {
|
|
291
294
|
const imgRegex = /<img\s+(?:[^>]*?\s)?src=["']((?!data:|blob:|file:)[^"']+?)["'][^>]*>/gi;
|
|
292
295
|
let match;
|
|
293
296
|
while ((match = imgRegex.exec(mainMatch[1])) !== null) {
|
|
294
297
|
if (match.index === imgRegex.lastIndex)
|
|
295
298
|
imgRegex.lastIndex++;
|
|
296
|
-
|
|
297
|
-
if (url.startsWith("/"))
|
|
298
|
-
url = tryUseNuxt() ? withSiteUrl(url) : url;
|
|
299
|
+
const url = resolveUrl(match[1]);
|
|
299
300
|
images.add(url);
|
|
300
301
|
}
|
|
301
302
|
}
|
|
@@ -304,8 +305,6 @@ function extractSitemapMetaFromHtml(html, options) {
|
|
|
304
305
|
}
|
|
305
306
|
if (options?.videos) {
|
|
306
307
|
const videos = [];
|
|
307
|
-
const mainRegex = /<main[^>]*>([\s\S]*?)<\/main>/;
|
|
308
|
-
const mainMatch = mainRegex.exec(html);
|
|
309
308
|
if (mainMatch?.[1] && mainMatch[1].includes("<video")) {
|
|
310
309
|
let videoMatch;
|
|
311
310
|
while ((videoMatch = videoRegex.exec(mainMatch[1])) !== null) {
|
|
@@ -358,11 +357,12 @@ function extractSitemapMetaFromHtml(html, options) {
|
|
|
358
357
|
}
|
|
359
358
|
if (sources.length > 0) {
|
|
360
359
|
videos.push(...sources.map((source) => {
|
|
361
|
-
if (
|
|
362
|
-
|
|
360
|
+
if (videoObj.thumbnail_loc) {
|
|
361
|
+
videoObj.thumbnail_loc = resolveUrl(String(videoObj.thumbnail_loc));
|
|
362
|
+
}
|
|
363
363
|
return {
|
|
364
364
|
...videoObj,
|
|
365
|
-
content_loc: source
|
|
365
|
+
content_loc: resolveUrl(source)
|
|
366
366
|
};
|
|
367
367
|
}));
|
|
368
368
|
} else {
|
|
@@ -453,11 +453,24 @@ function setupPrerenderHandler(_options, nuxt = useNuxt()) {
|
|
|
453
453
|
videos: options.discoverVideos,
|
|
454
454
|
// TODO configurable?
|
|
455
455
|
lastmod: true,
|
|
456
|
-
alternatives: true
|
|
456
|
+
alternatives: true,
|
|
457
|
+
resolveUrl(s) {
|
|
458
|
+
return s.startsWith("/") ? withSiteUrl(s) : s;
|
|
459
|
+
}
|
|
457
460
|
}), route._sitemap);
|
|
458
461
|
});
|
|
459
462
|
nitro.hooks.hook("prerender:done", async () => {
|
|
460
|
-
|
|
463
|
+
const isNuxt4 = nuxt.options._majorVersion === 4;
|
|
464
|
+
let nitroModule;
|
|
465
|
+
if (isNuxt4) {
|
|
466
|
+
nitroModule = await import(String("nitro"));
|
|
467
|
+
} else {
|
|
468
|
+
nitroModule = await import(String("nitropack"));
|
|
469
|
+
}
|
|
470
|
+
if (!nitroModule) {
|
|
471
|
+
return;
|
|
472
|
+
}
|
|
473
|
+
await nitroModule.build(prerenderer);
|
|
461
474
|
const routes = [];
|
|
462
475
|
if (options.debug)
|
|
463
476
|
routes.push("/__sitemap__/debug.json");
|
|
@@ -859,11 +872,13 @@ declare module 'vue-router' {
|
|
|
859
872
|
if (typeof config.runtimeCacheStorage === "object")
|
|
860
873
|
routeRules.cache.base = "sitemap";
|
|
861
874
|
}
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
875
|
+
if (config.xsl) {
|
|
876
|
+
nuxt.options.nitro.routeRules[config.xsl] = {
|
|
877
|
+
headers: {
|
|
878
|
+
"Content-Type": "application/xslt+xml"
|
|
879
|
+
}
|
|
880
|
+
};
|
|
881
|
+
}
|
|
867
882
|
if (usingMultiSitemaps) {
|
|
868
883
|
nuxt.options.nitro.routeRules["/sitemap.xml"] = { redirect: "/sitemap_index.xml" };
|
|
869
884
|
nuxt.options.nitro.routeRules["/sitemap_index.xml"] = routeRules;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRouter as createRadixRouter, toRouteMatcher } from "radix3";
|
|
2
2
|
import { defu } from "defu";
|
|
3
3
|
import { parseURL, withoutBase, withoutTrailingSlash } from "ufo";
|
|
4
|
-
import { useRuntimeConfig } from "
|
|
4
|
+
import { useRuntimeConfig } from "nitropack/runtime";
|
|
5
5
|
export function withoutQuery(path) {
|
|
6
6
|
return path.split("?")[0];
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default:
|
|
1
|
+
declare const _default: import("nitropack/types").NitroAppPlugin;
|
|
2
2
|
export default _default;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useCompressionStream } from "h3-compression";
|
|
2
|
-
import { defineNitroPlugin } from "
|
|
2
|
+
import { defineNitroPlugin } from "nitropack/runtime";
|
|
3
3
|
export default defineNitroPlugin((nitro) => {
|
|
4
4
|
nitro.hooks.hook("beforeResponse", async (event, response) => {
|
|
5
5
|
if (event.context._isSitemap)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default:
|
|
1
|
+
declare const _default: import("nitropack/types").NitroAppPlugin;
|
|
2
2
|
export default _default;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { defu } from "defu";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { defineNitroPlugin } from "nitropack/runtime";
|
|
3
|
+
import { useSitemapRuntimeConfig } from "../utils.js";
|
|
4
4
|
export default defineNitroPlugin((nitroApp) => {
|
|
5
|
-
const { discoverImages, isNuxtContentDocumentDriven } =
|
|
5
|
+
const { discoverImages, isNuxtContentDocumentDriven } = useSitemapRuntimeConfig();
|
|
6
6
|
nitroApp.hooks.hook("content:file:afterParse", async (content) => {
|
|
7
7
|
const validExtensions = ["md", "mdx"];
|
|
8
8
|
if (content.sitemap === false || content._draft || !validExtensions.includes(content._extension) || content._partial || content.robots === false)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default:
|
|
1
|
+
declare const _default: import("nitropack/types").NitroAppPlugin;
|
|
2
2
|
export default _default;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { withLeadingSlash } from "ufo";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { defineNitroPlugin } from "nitropack/runtime";
|
|
3
|
+
import { useSitemapRuntimeConfig } from "../utils.js";
|
|
4
4
|
export default defineNitroPlugin((nitroApp) => {
|
|
5
|
-
const { sitemaps } =
|
|
5
|
+
const { sitemaps } = useSitemapRuntimeConfig();
|
|
6
6
|
const queue = [];
|
|
7
7
|
const sitemapsWithRoutes = Object.entries(sitemaps).filter(([, sitemap]) => sitemap._route);
|
|
8
8
|
for (const [, sitemap] of sitemapsWithRoutes)
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { defineEventHandler } from "h3";
|
|
2
|
-
import {
|
|
2
|
+
import { useSitemapRuntimeConfig } from "../../utils.js";
|
|
3
3
|
import {
|
|
4
4
|
childSitemapSources,
|
|
5
5
|
globalSitemapSources,
|
|
6
6
|
resolveSitemapSources
|
|
7
7
|
} from "../../sitemap/urlset/sources.js";
|
|
8
|
-
import { useNitroOrigin } from "#
|
|
8
|
+
import { useNitroOrigin } from "#site-config/server/composables/useNitroOrigin";
|
|
9
9
|
export default defineEventHandler(async (e) => {
|
|
10
|
-
const _runtimeConfig =
|
|
10
|
+
const _runtimeConfig = useSitemapRuntimeConfig();
|
|
11
11
|
const { sitemaps: _sitemaps } = _runtimeConfig;
|
|
12
12
|
const runtimeConfig = { ..._runtimeConfig };
|
|
13
13
|
delete runtimeConfig.sitemaps;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { createError, defineEventHandler, getRouterParam } from "h3";
|
|
2
2
|
import { withoutLeadingSlash, withoutTrailingSlash } from "ufo";
|
|
3
|
-
import {
|
|
3
|
+
import { useSitemapRuntimeConfig } from "../../utils.js";
|
|
4
4
|
import { createSitemap } from "../../sitemap/nitro.js";
|
|
5
5
|
export default defineEventHandler(async (e) => {
|
|
6
|
-
const runtimeConfig =
|
|
6
|
+
const runtimeConfig = useSitemapRuntimeConfig(e);
|
|
7
7
|
const { sitemaps } = runtimeConfig;
|
|
8
8
|
const sitemapName = withoutLeadingSlash(withoutTrailingSlash((getRouterParam(e, "sitemap") || e.path)?.replace(".xml", "").replace(runtimeConfig.sitemapsPathPrefix || "", "")));
|
|
9
9
|
const isChunking = typeof sitemaps.chunks !== "undefined" && !Number.isNaN(Number(sitemapName));
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { defineEventHandler, sendRedirect } from "h3";
|
|
2
2
|
import { withBase } from "ufo";
|
|
3
|
-
import {
|
|
3
|
+
import { useRuntimeConfig } from "nitropack/runtime";
|
|
4
|
+
import { useSitemapRuntimeConfig } from "../utils.js";
|
|
4
5
|
import { createSitemap } from "../sitemap/nitro.js";
|
|
5
|
-
import { useRuntimeConfig } from "#imports";
|
|
6
6
|
export default defineEventHandler(async (e) => {
|
|
7
|
-
const runtimeConfig =
|
|
7
|
+
const runtimeConfig = useSitemapRuntimeConfig();
|
|
8
8
|
const { sitemaps } = runtimeConfig;
|
|
9
9
|
if ("index" in sitemaps) {
|
|
10
10
|
return sendRedirect(e, withBase("/sitemap_index.xml", useRuntimeConfig().app.baseURL), import.meta.dev ? 302 : 301);
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { defineEventHandler, getHeader, setHeader } from "h3";
|
|
2
2
|
import { getQuery, parseURL, withQuery } from "ufo";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { useSitemapRuntimeConfig } from "../utils.js";
|
|
4
|
+
import { useSiteConfig } from "#site-config/server/composables/useSiteConfig";
|
|
5
|
+
import { createSitePathResolver } from "#site-config/server/composables/utils";
|
|
5
6
|
export default defineEventHandler(async (e) => {
|
|
6
7
|
const fixPath = createSitePathResolver(e, { absolute: false, withBase: true });
|
|
7
|
-
const { sitemapName: fallbackSitemapName, cacheMaxAgeSeconds, version, xslColumns, xslTips } =
|
|
8
|
+
const { sitemapName: fallbackSitemapName, cacheMaxAgeSeconds, version, xslColumns, xslTips } = useSitemapRuntimeConfig();
|
|
8
9
|
setHeader(e, "Content-Type", "application/xslt+xml");
|
|
9
10
|
if (cacheMaxAgeSeconds)
|
|
10
11
|
setHeader(e, "Cache-Control", `public, max-age=${cacheMaxAgeSeconds}, must-revalidate`);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { appendHeader, defineEventHandler, setHeader } from "h3";
|
|
2
2
|
import { joinURL } from "ufo";
|
|
3
|
-
import {
|
|
3
|
+
import { useNitroApp } from "nitropack/runtime";
|
|
4
|
+
import { useSitemapRuntimeConfig } from "../utils.js";
|
|
4
5
|
import { buildSitemapIndex, urlsToIndexXml } from "../sitemap/builder/sitemap-index.js";
|
|
5
6
|
import { useNitroUrlResolvers } from "../sitemap/nitro.js";
|
|
6
|
-
import { useNitroApp } from "#imports";
|
|
7
7
|
export default defineEventHandler(async (e) => {
|
|
8
|
-
const runtimeConfig =
|
|
8
|
+
const runtimeConfig = useSitemapRuntimeConfig();
|
|
9
9
|
const nitro = useNitroApp();
|
|
10
10
|
const resolvers = useNitroUrlResolvers(e);
|
|
11
11
|
const sitemaps = await buildSitemapIndex(resolvers, runtimeConfig, nitro);
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import { getQuery, setHeader, createError } from "h3";
|
|
2
2
|
import { fixSlashes } from "nuxt-site-config/urls";
|
|
3
3
|
import { defu } from "defu";
|
|
4
|
+
import { useNitroApp } from "nitropack/runtime";
|
|
4
5
|
import { logger, mergeOnKey, splitForLocales } from "../../utils-pure.js";
|
|
5
6
|
import { createNitroRouteRuleMatcher } from "../kit.js";
|
|
6
7
|
import { buildSitemapUrls, urlsToXml } from "./builder/sitemap.js";
|
|
7
8
|
import { normaliseEntry, preNormalizeEntry } from "./urlset/normalise.js";
|
|
8
9
|
import { sortSitemapUrls } from "./urlset/sort.js";
|
|
9
|
-
import {
|
|
10
|
+
import { getPathRobotConfig } from "#imports";
|
|
11
|
+
import { useSiteConfig } from "#site-config/server/composables/useSiteConfig";
|
|
12
|
+
import { createSitePathResolver } from "#site-config/server/composables/utils";
|
|
10
13
|
export function useNitroUrlResolvers(e) {
|
|
11
14
|
const canonicalQuery = getQuery(e).canonical;
|
|
12
15
|
const isShowingCanonical = typeof canonicalQuery !== "undefined" && canonicalQuery !== "false";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { H3Event } from 'h3';
|
|
2
2
|
import type { ModuleRuntimeConfig } from '../types.js';
|
|
3
3
|
export * from '../utils-pure.js';
|
|
4
|
-
export declare function
|
|
4
|
+
export declare function useSitemapRuntimeConfig(e?: H3Event): ModuleRuntimeConfig;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { useRuntimeConfig } from "nitropack/runtime";
|
|
1
2
|
import { normalizeRuntimeFilters } from "../utils-pure.js";
|
|
2
|
-
import { useRuntimeConfig } from "#imports";
|
|
3
3
|
export * from "../utils-pure.js";
|
|
4
|
-
export function
|
|
4
|
+
export function useSitemapRuntimeConfig(e) {
|
|
5
5
|
const clone = JSON.parse(JSON.stringify(useRuntimeConfig(e).sitemap));
|
|
6
6
|
for (const k in clone.sitemaps) {
|
|
7
7
|
const sitemap = clone.sitemaps[k];
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nuxtjs/sitemap",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "7.2.
|
|
4
|
+
"version": "7.2.5",
|
|
5
5
|
"description": "Powerfully flexible XML Sitemaps that integrate seamlessly, for Nuxt.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Harlan Wilton",
|
|
@@ -48,36 +48,36 @@
|
|
|
48
48
|
}
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
|
-
"@nuxt/devtools-kit": "^2.
|
|
52
|
-
"@nuxt/kit": "^3.15.
|
|
51
|
+
"@nuxt/devtools-kit": "^2.1.0",
|
|
52
|
+
"@nuxt/kit": "^3.15.4",
|
|
53
53
|
"chalk": "^5.4.1",
|
|
54
54
|
"defu": "^6.1.4",
|
|
55
55
|
"h3-compression": "^0.3.2",
|
|
56
56
|
"nuxt-site-config": "^3.0.6",
|
|
57
57
|
"ofetch": "^1.4.1",
|
|
58
|
-
"pathe": "^2.0.
|
|
58
|
+
"pathe": "^2.0.3",
|
|
59
59
|
"pkg-types": "^1.3.1",
|
|
60
60
|
"radix3": "^1.1.2",
|
|
61
|
-
"semver": "^7.
|
|
61
|
+
"semver": "^7.7.1",
|
|
62
62
|
"sirv": "^3.0.0",
|
|
63
63
|
"ufo": "^1.5.4"
|
|
64
64
|
},
|
|
65
65
|
"devDependencies": {
|
|
66
|
-
"@nuxt/content": "^3.
|
|
67
|
-
"@nuxt/eslint-config": "^0.
|
|
66
|
+
"@nuxt/content": "^3.1.1",
|
|
67
|
+
"@nuxt/eslint-config": "^1.0.1",
|
|
68
68
|
"@nuxt/module-builder": "^0.8.4",
|
|
69
69
|
"@nuxt/test-utils": "^3.15.4",
|
|
70
70
|
"@nuxt/ui": "^2.21.0",
|
|
71
|
-
"@nuxtjs/i18n": "^9.
|
|
71
|
+
"@nuxtjs/i18n": "^9.2.0",
|
|
72
72
|
"@nuxtjs/robots": "^5.2.2",
|
|
73
|
-
"bumpp": "^
|
|
74
|
-
"eslint": "^9.
|
|
73
|
+
"bumpp": "^10.0.3",
|
|
74
|
+
"eslint": "^9.20.1",
|
|
75
75
|
"eslint-plugin-n": "^17.15.1",
|
|
76
76
|
"execa": "^9.5.2",
|
|
77
|
-
"nuxt": "^3.15.
|
|
78
|
-
"nuxt-i18n-micro": "^1.
|
|
77
|
+
"nuxt": "^3.15.4",
|
|
78
|
+
"nuxt-i18n-micro": "^1.74.0",
|
|
79
79
|
"typescript": "5.6.3",
|
|
80
|
-
"vitest": "^3.0.
|
|
80
|
+
"vitest": "^3.0.5"
|
|
81
81
|
},
|
|
82
82
|
"resolutions": {
|
|
83
83
|
"postcss": "8.4.47",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const a=Object.freeze(JSON.parse(`{"displayName":"Ara","fileTypes":["ara"],"name":"ara","patterns":[{"include":"#namespace"},{"include":"#named-arguments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#strings"},{"include":"#numbers"},{"include":"#operators"},{"include":"#type"},{"include":"#function-call"}],"repository":{"class-name":{"patterns":[{"begin":"\\\\b(?i)(?<!\\\\$)(?=[\\\\\\\\a-zA-Z_])","end":"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\])\\\\b","endCaptures":{"1":{"name":"support.class.ara"}},"patterns":[{"include":"#namespace"}]}]},"comments":{"patterns":[{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.ara"}},"end":"\\\\*/","name":"comment.block.ara"},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ara"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.ara"}},"end":"\\\\n","name":"comment.line.double-slash.ara"}]}]},"function-call":{"patterns":[{"begin":"(?i)(?=\\\\\\\\?[a-z_0-9\\\\\\\\]+\\\\\\\\[a-z_][a-z0-9_]*\\\\s*(\\\\(|(::<)))","comment":"Functions in a user-defined namespace (overrides any built-ins)","end":"(?=\\\\s*(\\\\(|(::<)))","patterns":[{"include":"#user-function-call"}]},{"begin":"(?i)(\\\\\\\\)?(?=\\\\b[a-z_][a-z_0-9]*\\\\s*(\\\\(|(::<)))","beginCaptures":{"1":{"name":"punctuation.separator.inheritance.php"}},"comment":"Root namespace function calls (built-in or user)","end":"(?=\\\\s*(\\\\(|(::<)))","patterns":[{"include":"#user-function-call"}]}]},"interpolation":{"patterns":[{"comment":"Interpolating octal values e.g. \\\\01 or \\\\07.","match":"\\\\\\\\[0-7]{1,3}","name":"constant.numeric.octal.ara"},{"comment":"Interpolating hex values e.g. \\\\x1 or \\\\xFF.","match":"\\\\\\\\x[0-9A-Fa-f]{1,2}","name":"constant.numeric.hex.ara"},{"comment":"Escaped characters in double-quoted strings e.g. \\\\n or \\\\t.","match":"\\\\\\\\[nrt\\\\\\\\\\\\$\\\\\\"]","name":"constant.character.escape.ara"}]},"keywords":{"patterns":[{"match":"\\\\b(await|async|concurrently|break|continue|do|else|elseif|for|if|loop|while|foreach|match|return|try|yield|from|catch|finally|default|exit)\\\\b","name":"keyword.control.ara"},{"match":"\\\\b(const|enum|class|interface|trait|namespace|type|case|function|fn)\\\\b","name":"storage.decl.ara"},{"match":"\\\\b(final|abstract|static|readonly|public|private|protected)\\\\b","name":"storage.modifier.ara"},{"match":"\\\\b(as|is|extends|implements|use|where|clone|new)\\\\b","name":"keyword.other.ara"}]},"named-arguments":{"captures":{"1":{"name":"entity.name.variable.parameter.ara"},"2":{"name":"punctuation.separator.colon.ara"}},"match":"(?i)(?<=^|\\\\(|,)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\\\s*(:)(?!:)"},"namespace":{"begin":"(?i)((namespace)|[a-z0-9_]+)?(\\\\\\\\)(?=.*?[^a-z_0-9\\\\\\\\])","beginCaptures":{"1":{"name":"entity.name.type.namespace.php"},"3":{"name":"punctuation.separator.inheritance.php"}},"end":"(?i)(?=[a-z0-9_]*[^a-z0-9_\\\\\\\\])","name":"support.other.namespace.php","patterns":[{"match":"(?i)[a-z0-9_]+(?=\\\\\\\\)","name":"entity.name.type.namespace.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(?i)(\\\\\\\\)"}]},"numbers":{"patterns":[{"match":"0[xX][0-9a-fA-F]+(?:_[0-9a-fA-F]+)*","name":"constant.numeric.hex.ara"},{"match":"0[bB][01]+(?:_[01]+)*","name":"constant.numeric.binary.ara"},{"match":"0[oO][0-7]+(?:_[0-7]+)*","name":"constant.numeric.octal.ara"},{"match":"0(?:_?[0-7]+)+","name":"constant.numeric.octal.ara"},{"captures":{"1":{"name":"punctuation.separator.decimal.period.ara"},"2":{"name":"punctuation.separator.decimal.period.ara"}},"match":"(?:(?:[0-9]+(?:_[0-9]+)*)?(\\\\.)[0-9]+(?:_[0-9]+)*(?:[eE][+-]?[0-9]+(?:_[0-9]+)*)?|[0-9]+(?:_[0-9]+)*(\\\\.)(?:[0-9]+(?:_[0-9]+)*)?(?:[eE][+-]?[0-9]+(?:_[0-9]+)*)?|[0-9]+(?:_[0-9]+)*[eE][+-]?[0-9]+(?:_[0-9]+)*)","name":"constant.numeric.decimal.ara"},{"match":"0|[1-9](?:_?[0-9]+)*","name":"constant.numeric.decimal.ara"}]},"operators":{"patterns":[{"comment":"assignment operators","match":"(\\\\+=|-=|\\\\*=|/=|%=|\\\\^=|&&=|<=|>=|&=|\\\\|=|<<=|>>=|\\\\?\\\\?=)","name":"keyword.assignments.ara"},{"comment":"logical operators","match":"(\\\\^|\\\\||\\\\|\\\\||&&|>>|<<|&|~|<<|>>|>|<|<=>|\\\\?\\\\?|\\\\?|:|\\\\?:)(?!=)","name":"keyword.operators.ara"},{"comment":"comparison operators","match":"(==|===|!==|!=|<=|>=|<|>)(?!=)","name":"keyword.operator.comparison.ara"},{"comment":"math operators","match":"(([+%]|(\\\\*(?!\\\\w)))(?!=))|(-(?!>))|(/(?!/))","name":"keyword.operator.math.ara"},{"comment":"single equal assignment operator","match":"(?<![<>])=(?!=|>)","name":"keyword.operator.assignment.ara"},{"captures":{"1":{"name":"punctuation.brackets.round.ara"},"2":{"name":"punctuation.brackets.square.ara"},"3":{"name":"punctuation.brackets.curly.ara"},"4":{"name":"keyword.operator.comparison.ara"},"5":{"name":"punctuation.brackets.round.ara"},"6":{"name":"punctuation.brackets.square.ara"},"7":{"name":"punctuation.brackets.curly.ara"}},"comment":"less than, greater than (special case)","match":"(?:\\\\b|(?:(\\\\))|(\\\\])|(\\\\})))[ \\\\t]+([<>])[ \\\\t]+(?:\\\\b|(?:(\\\\()|(\\\\[)|(\\\\{)))"},{"comment":"arrow method call, arrow property access","match":"(?:->|\\\\?->)","name":"keyword.operator.arrow.ara"},{"comment":"double arrow key-value pair","match":"(?:=>)","name":"keyword.operator.double-arrow.ara"},{"comment":"static method call, static property access","match":"(?:::)","name":"keyword.operator.static.ara"},{"comment":"closure creation","match":"(?:\\\\(\\\\.\\\\.\\\\.\\\\))","name":"keyword.operator.closure.ara"},{"comment":"spread operator","match":"(?:\\\\.\\\\.\\\\.)","name":"keyword.operator.spread.ara"},{"comment":"namespace operator","match":"\\\\\\\\","name":"keyword.operator.namespace.ara"}]},"strings":{"patterns":[{"begin":"'","end":"'","name":"string.quoted.single.ara","patterns":[{"match":"\\\\\\\\[\\\\\\\\']","name":"constant.character.escape.ara"}]},{"begin":"\\"","end":"\\"","name":"string.quoted.double.ara","patterns":[{"include":"#interpolation"}]}]},"type":{"name":"support.type.php","patterns":[{"match":"\\\\b(?:void|true|false|null|never|float|bool|int|string|dict|vec|object|mixed|nonnull|resource|self|static|parent|iterable)\\\\b","name":"support.type.php"},{"begin":"([A-Za-z_][A-Za-z0-9_]*)<","beginCaptures":{"1":{"name":"support.class.php"}},"end":">","patterns":[{"include":"#type-annotation"}]},{"begin":"(shape\\\\()","end":"((,|\\\\.\\\\.\\\\.)?\\\\s*\\\\))","endCaptures":{"1":{"name":"keyword.operator.key.php"}},"name":"storage.type.shape.php","patterns":[{"include":"#type-annotation"},{"include":"#strings"},{"include":"#constants"}]},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#type-annotation"}]},{"begin":"\\\\(fn\\\\(","end":"\\\\)","patterns":[{"include":"#type-annotation"}]},{"include":"#class-name"},{"include":"#comments"}]},"user-function-call":{"begin":"(?i)(?=[a-z_0-9\\\\\\\\]*[a-z_][a-z0-9_]*\\\\s*\\\\()","end":"(?i)[a-z_][a-z_0-9]*(?=\\\\s*\\\\()","endCaptures":{"0":{"name":"entity.name.function.php"}},"name":"meta.function-call.php","patterns":[{"include":"#namespace"}]}},"scopeName":"source.ara"}`)),e=[a];export{e as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const e=Object.freeze(JSON.parse(`{"displayName":"Erlang","fileTypes":["erl","escript","hrl","xrl","yrl"],"name":"erlang","patterns":[{"include":"#module-directive"},{"include":"#import-export-directive"},{"include":"#behaviour-directive"},{"include":"#record-directive"},{"include":"#define-directive"},{"include":"#macro-directive"},{"include":"#directive"},{"include":"#function"},{"include":"#everything-else"}],"repository":{"atom":{"patterns":[{"begin":"(')","beginCaptures":{"1":{"name":"punctuation.definition.symbol.begin.erlang"}},"end":"(')","endCaptures":{"1":{"name":"punctuation.definition.symbol.end.erlang"}},"name":"constant.other.symbol.quoted.single.erlang","patterns":[{"captures":{"1":{"name":"punctuation.definition.escape.erlang"},"3":{"name":"punctuation.definition.escape.erlang"}},"match":"(\\\\\\\\)([bdefnrstv\\\\\\\\'\\"]|(\\\\^)[@-_a-z]|[0-7]{1,3}|x[\\\\da-fA-F]{2})","name":"constant.other.symbol.escape.erlang"},{"match":"\\\\\\\\\\\\^?.?","name":"invalid.illegal.atom.erlang"}]},{"match":"[a-z][a-zA-Z\\\\d@_]*+","name":"constant.other.symbol.unquoted.erlang"}]},"behaviour-directive":{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.behaviour.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.type.class.behaviour.definition.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(behaviour)\\\\s*+(\\\\()\\\\s*+([a-z][a-zA-Z\\\\d@_]*+)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.behaviour.erlang"},"binary":{"begin":"(<<)","beginCaptures":{"1":{"name":"punctuation.definition.binary.begin.erlang"}},"end":"(>>)","endCaptures":{"1":{"name":"punctuation.definition.binary.end.erlang"}},"name":"meta.structure.binary.erlang","patterns":[{"captures":{"1":{"name":"punctuation.separator.binary.erlang"},"2":{"name":"punctuation.separator.value-size.erlang"}},"match":"(,)|(:)"},{"include":"#internal-type-specifiers"},{"include":"#everything-else"}]},"character":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.character.erlang"},"2":{"name":"constant.character.escape.erlang"},"3":{"name":"punctuation.definition.escape.erlang"},"5":{"name":"punctuation.definition.escape.erlang"}},"match":"(\\\\$)((\\\\\\\\)([bdefnrstv\\\\\\\\'\\"]|(\\\\^)[@-_a-z]|[0-7]{1,3}|x[\\\\da-fA-F]{2}))","name":"constant.character.erlang"},{"match":"\\\\$\\\\\\\\\\\\^?.?","name":"invalid.illegal.character.erlang"},{"captures":{"1":{"name":"punctuation.definition.character.erlang"}},"match":"(\\\\$)[ \\\\S]","name":"constant.character.erlang"},{"match":"\\\\$.?","name":"invalid.illegal.character.erlang"}]},"comment":{"begin":"(^[ \\\\t]+)?(?=%)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.erlang"}},"end":"(?!\\\\G)","patterns":[{"begin":"%","beginCaptures":{"0":{"name":"punctuation.definition.comment.erlang"}},"end":"\\\\n","name":"comment.line.percentage.erlang"}]},"define-directive":{"patterns":[{"begin":"^\\\\s*+(-)\\\\s*+(define)\\\\s*+(\\\\()\\\\s*+([a-zA-Z\\\\d@_]++)\\\\s*+","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.define.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.definition.erlang"}},"end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.define.erlang","patterns":[{"include":"#everything-else"}]},{"begin":"(?=^\\\\s*+-\\\\s*+define\\\\s*+\\\\(\\\\s*+[a-zA-Z\\\\d@_]++\\\\s*+\\\\()","end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.define.erlang","patterns":[{"begin":"^\\\\s*+(-)\\\\s*+(define)\\\\s*+(\\\\()\\\\s*+([a-zA-Z\\\\d@_]++)\\\\s*+(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.define.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.definition.erlang"},"5":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(\\\\))\\\\s*(,)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.separator.parameters.erlang"}},"patterns":[{"match":",","name":"punctuation.separator.parameters.erlang"},{"include":"#everything-else"}]},{"match":"\\\\|\\\\||\\\\||:|;|,|\\\\.|->","name":"punctuation.separator.define.erlang"},{"include":"#everything-else"}]}]},"directive":{"patterns":[{"begin":"^\\\\s*+(-)\\\\s*+([a-z][a-zA-Z\\\\d@_]*+)\\\\s*+(\\\\(?)","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(\\\\)?)\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.erlang","patterns":[{"include":"#everything-else"}]},{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.erlang"},"3":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+([a-z][a-zA-Z\\\\d@_]*+)\\\\s*+(\\\\.)","name":"meta.directive.erlang"}]},"docstring":{"begin":"(?<!\\")(([\\"]{3,})\\\\s*)(\\\\S.*)?$","beginCaptures":{"1":{"name":"meta.string.quoted.triple.begin.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"},"3":{"name":"invalid.illegal.string.erlang"}},"comment":"Only whitespace characters are allowed after the beggining and before the closing sequences and those cannot be in the same line","end":"^(\\\\s*(\\\\2))(?!\\")","endCaptures":{"1":{"name":"meta.string.quoted.triple.end.erlang"},"2":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.triple.erlang"},"everything-else":{"patterns":[{"include":"#comment"},{"include":"#record-usage"},{"include":"#macro-usage"},{"include":"#expression"},{"include":"#keyword"},{"include":"#textual-operator"},{"include":"#language-constant"},{"include":"#function-call"},{"include":"#tuple"},{"include":"#list"},{"include":"#binary"},{"include":"#parenthesized-expression"},{"include":"#character"},{"include":"#number"},{"include":"#atom"},{"include":"#sigil-docstring"},{"include":"#sigil-string"},{"include":"#docstring"},{"include":"#string"},{"include":"#symbolic-operator"},{"include":"#variable"}]},"expression":{"patterns":[{"begin":"\\\\b(if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.if.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.if.erlang","patterns":[{"include":"#internal-expression-punctuation"},{"include":"#everything-else"}]},{"begin":"\\\\b(case)\\\\b","beginCaptures":{"1":{"name":"keyword.control.case.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.case.erlang","patterns":[{"include":"#internal-expression-punctuation"},{"include":"#everything-else"}]},{"begin":"\\\\b(receive)\\\\b","beginCaptures":{"1":{"name":"keyword.control.receive.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.receive.erlang","patterns":[{"include":"#internal-expression-punctuation"},{"include":"#everything-else"}]},{"captures":{"1":{"name":"keyword.control.fun.erlang"},"4":{"name":"entity.name.type.class.module.erlang"},"5":{"name":"variable.other.erlang"},"6":{"name":"punctuation.separator.module-function.erlang"},"8":{"name":"entity.name.function.erlang"},"9":{"name":"variable.other.erlang"},"10":{"name":"punctuation.separator.function-arity.erlang"}},"comment":"Implicit function expression with optional module qualifier when both module and function can be atom or variable","match":"\\\\b(fun)\\\\s+((([a-z][a-zA-Z\\\\d@_]*+)|(_[a-zA-Z\\\\d@_]++|[A-Z][a-zA-Z\\\\d@_]*+))\\\\s*+(:)\\\\s*+)?(([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')|(_[a-zA-Z\\\\d@_]++|[A-Z][a-zA-Z\\\\d@_]*+))\\\\s*(/)","name":"meta.expression.fun.implicit.erlang"},{"begin":"\\\\b(fun)\\\\s+(([a-z][a-zA-Z\\\\d@_]*+)|(_[a-zA-Z\\\\d@_]++|[A-Z][a-zA-Z\\\\d@_]*+))\\\\s*+(:)","beginCaptures":{"1":{"name":"keyword.control.fun.erlang"},"3":{"name":"entity.name.type.class.module.erlang"},"4":{"name":"variable.other.erlang"},"5":{"name":"punctuation.separator.module-function.erlang"}},"comment":"Implicit function expression with module qualifier when module can be atom or variable and function can by anything","end":"(/)","endCaptures":{"1":{"name":"punctuation.separator.function-arity.erlang"}},"name":"meta.expression.fun.implicit.erlang","patterns":[{"include":"#everything-else"}]},{"begin":"\\\\b(fun)\\\\s+(?!\\\\()","beginCaptures":{"1":{"name":"keyword.control.fun.erlang"}},"comment":"Implicit function expression when both module and function can by anything","end":"(/)","endCaptures":{"1":{"name":"punctuation.separator.function-arity.erlang"}},"name":"meta.expression.fun.implicit.erlang","patterns":[{"include":"#everything-else"}]},{"begin":"\\\\b(fun)\\\\s*+(\\\\()(?=(\\\\s*+\\\\()|(\\\\)))","beginCaptures":{"1":{"name":"entity.name.function.erlang"},"2":{"name":"punctuation.definition.parameters.begin.erlang"}},"comment":"Function type in type specification","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"}},"patterns":[{"include":"#everything-else"}]},{"begin":"\\\\b(fun)\\\\b","beginCaptures":{"1":{"name":"keyword.control.fun.erlang"}},"comment":"Explicit function expression","end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.fun.erlang","patterns":[{"begin":"(?=\\\\()","end":"(;)|(?=\\\\bend\\\\b)","endCaptures":{"1":{"name":"punctuation.separator.clauses.erlang"}},"patterns":[{"include":"#internal-function-parts"}]},{"include":"#everything-else"}]},{"begin":"\\\\b(try)\\\\b","beginCaptures":{"1":{"name":"keyword.control.try.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.try.erlang","patterns":[{"include":"#internal-expression-punctuation"},{"include":"#everything-else"}]},{"begin":"\\\\b(begin)\\\\b","beginCaptures":{"1":{"name":"keyword.control.begin.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.begin.erlang","patterns":[{"include":"#internal-expression-punctuation"},{"include":"#everything-else"}]},{"begin":"\\\\b(maybe)\\\\b","beginCaptures":{"1":{"name":"keyword.control.maybe.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.maybe.erlang","patterns":[{"include":"#internal-expression-punctuation"},{"include":"#everything-else"}]}]},"function":{"begin":"^\\\\s*+([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')\\\\s*+(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.definition.erlang"}},"end":"(\\\\.)","endCaptures":{"1":{"name":"punctuation.terminator.function.erlang"}},"name":"meta.function.erlang","patterns":[{"captures":{"1":{"name":"entity.name.function.erlang"}},"match":"^\\\\s*+([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')\\\\s*+(?=\\\\()"},{"begin":"(?=\\\\()","end":"(;)|(?=\\\\.)","endCaptures":{"1":{"name":"punctuation.separator.clauses.erlang"}},"patterns":[{"include":"#parenthesized-expression"},{"include":"#internal-function-parts"}]},{"include":"#everything-else"}]},"function-call":{"begin":"(?=([a-z][a-zA-Z\\\\d@_]*+|'[^']*+'|_[a-zA-Z\\\\d@_]++|[A-Z][a-zA-Z\\\\d@_]*+)\\\\s*+(\\\\(|:\\\\s*+([a-z][a-zA-Z\\\\d@_]*+|'[^']*+'|_[a-zA-Z\\\\d@_]++|[A-Z][a-zA-Z\\\\d@_]*+)\\\\s*+\\\\())","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"}},"name":"meta.function-call.erlang","patterns":[{"begin":"((erlang)\\\\s*+(:)\\\\s*+)?(is_atom|is_binary|is_constant|is_float|is_function|is_integer|is_list|is_number|is_pid|is_port|is_reference|is_tuple|is_record|abs|element|hd|length|node|round|self|size|tl|trunc)\\\\s*+(\\\\()","beginCaptures":{"2":{"name":"entity.name.type.class.module.erlang"},"3":{"name":"punctuation.separator.module-function.erlang"},"4":{"name":"entity.name.function.guard.erlang"},"5":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(?=\\\\))","patterns":[{"match":",","name":"punctuation.separator.parameters.erlang"},{"include":"#everything-else"}]},{"begin":"((([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')|(_[a-zA-Z\\\\d@_]++|[A-Z][a-zA-Z\\\\d@_]*+))\\\\s*+(:)\\\\s*+)?(([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')|(_[a-zA-Z\\\\d@_]++|[A-Z][a-zA-Z\\\\d@_]*+))\\\\s*+(\\\\()","beginCaptures":{"3":{"name":"entity.name.type.class.module.erlang"},"4":{"name":"variable.other.erlang"},"5":{"name":"punctuation.separator.module-function.erlang"},"7":{"name":"entity.name.function.erlang"},"8":{"name":"variable.other.erlang"},"9":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(?=\\\\))","patterns":[{"match":",","name":"punctuation.separator.parameters.erlang"},{"include":"#everything-else"}]}]},"import-export-directive":{"patterns":[{"begin":"^\\\\s*+(-)\\\\s*+(import)\\\\s*+(\\\\()\\\\s*+([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')\\\\s*+(,)","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.import.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.type.class.module.erlang"},"5":{"name":"punctuation.separator.parameters.erlang"}},"end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.import.erlang","patterns":[{"include":"#internal-function-list"}]},{"begin":"^\\\\s*+(-)\\\\s*+(export)\\\\s*+(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.export.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.export.erlang","patterns":[{"include":"#internal-function-list"}]}]},"internal-expression-punctuation":{"captures":{"1":{"name":"punctuation.separator.clause-head-body.erlang"},"2":{"name":"punctuation.separator.clauses.erlang"},"3":{"name":"punctuation.separator.expressions.erlang"}},"match":"(->)|(;)|(,)"},"internal-function-list":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.list.begin.erlang"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.list.end.erlang"}},"name":"meta.structure.list.function.erlang","patterns":[{"begin":"([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')\\\\s*+(/)","beginCaptures":{"1":{"name":"entity.name.function.erlang"},"2":{"name":"punctuation.separator.function-arity.erlang"}},"end":"(,)|(?=\\\\])","endCaptures":{"1":{"name":"punctuation.separator.list.erlang"}},"patterns":[{"include":"#everything-else"}]},{"include":"#everything-else"}]},"internal-function-parts":{"patterns":[{"begin":"(?=\\\\()","end":"(->)","endCaptures":{"1":{"name":"punctuation.separator.clause-head-body.erlang"}},"patterns":[{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"}},"patterns":[{"match":",","name":"punctuation.separator.parameters.erlang"},{"include":"#everything-else"}]},{"match":",|;","name":"punctuation.separator.guards.erlang"},{"include":"#everything-else"}]},{"match":",","name":"punctuation.separator.expressions.erlang"},{"include":"#everything-else"}]},"internal-record-body":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.class.record.begin.erlang"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.class.record.end.erlang"}},"name":"meta.structure.record.erlang","patterns":[{"begin":"(([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')|(_))","beginCaptures":{"2":{"name":"variable.other.field.erlang"},"3":{"name":"variable.language.omitted.field.erlang"}},"end":"(,)|(?=\\\\})","endCaptures":{"1":{"name":"punctuation.separator.class.record.erlang"}},"patterns":[{"include":"#everything-else"}]},{"include":"#everything-else"}]},"internal-string-body":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.escape.erlang"},"3":{"name":"punctuation.definition.escape.erlang"}},"comment":"escape sequence","match":"(\\\\\\\\)([bdefnrstv\\\\\\\\'\\"]|(\\\\^)[@-_a-z]|[0-7]{1,3}|x[\\\\da-fA-F]{2})","name":"constant.character.escape.erlang"},{"match":"\\\\\\\\\\\\^?.?","name":"invalid.illegal.string.erlang"},{"captures":{"1":{"name":"punctuation.definition.placeholder.erlang"},"6":{"name":"punctuation.separator.placeholder-parts.erlang"},"10":{"name":"punctuation.separator.placeholder-parts.erlang"}},"comment":"io:fwrite format control sequence","match":"(~)((\\\\-)?\\\\d++|(\\\\*))?((\\\\.)(\\\\d++|(\\\\*))?((\\\\.)((\\\\*)|.))?)?[tlkK]*[~cfegswpWPBX#bx\\\\+ni]","name":"constant.character.format.placeholder.other.erlang"},{"captures":{"1":{"name":"punctuation.definition.placeholder.erlang"}},"comment":"io:fread format control sequence","match":"(~)(\\\\*)?(\\\\d++)?(t)?[~du\\\\-#fsacl]","name":"constant.character.format.placeholder.other.erlang"},{"match":"~[^\\"]?","name":"invalid.illegal.string.erlang"}]},"internal-type-specifiers":{"begin":"(/)","beginCaptures":{"1":{"name":"punctuation.separator.value-type.erlang"}},"end":"(?=,|:|>>)","patterns":[{"captures":{"1":{"name":"storage.type.erlang"},"2":{"name":"storage.modifier.signedness.erlang"},"3":{"name":"storage.modifier.endianness.erlang"},"4":{"name":"storage.modifier.unit.erlang"},"5":{"name":"punctuation.separator.unit-specifiers.erlang"},"6":{"name":"constant.numeric.integer.decimal.erlang"},"7":{"name":"punctuation.separator.type-specifiers.erlang"}},"match":"(integer|float|binary|bytes|bitstring|bits|utf8|utf16|utf32)|(signed|unsigned)|(big|little|native)|(unit)(:)(\\\\d++)|(-)"}]},"keyword":{"match":"\\\\b(after|begin|case|catch|cond|end|fun|if|let|of|try|receive|when|maybe|else)\\\\b","name":"keyword.control.erlang"},"language-constant":{"match":"\\\\b(false|true|undefined)\\\\b","name":"constant.language"},"list":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.list.begin.erlang"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.list.end.erlang"}},"name":"meta.structure.list.erlang","patterns":[{"match":"\\\\||\\\\|\\\\||,","name":"punctuation.separator.list.erlang"},{"include":"#everything-else"}]},"macro-directive":{"patterns":[{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.ifdef.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(ifdef)\\\\s*+(\\\\()\\\\s*+([a-zA-z\\\\d@_]++)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.ifdef.erlang"},{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.ifndef.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(ifndef)\\\\s*+(\\\\()\\\\s*+([a-zA-z\\\\d@_]++)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.ifndef.erlang"},{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.undef.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(undef)\\\\s*+(\\\\()\\\\s*+([a-zA-z\\\\d@_]++)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.undef.erlang"}]},"macro-usage":{"captures":{"1":{"name":"keyword.operator.macro.erlang"},"2":{"name":"entity.name.function.macro.erlang"}},"match":"(\\\\?\\\\??)\\\\s*+([a-zA-Z\\\\d@_]++)","name":"meta.macro-usage.erlang"},"module-directive":{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.module.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.type.class.module.definition.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(module)\\\\s*+(\\\\()\\\\s*+([a-z][a-zA-Z\\\\d@_]*+)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.module.erlang"},"number":{"begin":"(?=\\\\d)","end":"(?!\\\\d)","patterns":[{"captures":{"1":{"name":"punctuation.separator.integer-float.erlang"},"2":{"name":"punctuation.separator.float-exponent.erlang"}},"match":"\\\\d++(\\\\.)\\\\d++([eE][\\\\+\\\\-]?\\\\d++)?","name":"constant.numeric.float.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"2(#)([0-1]++_)*[0-1]++","name":"constant.numeric.integer.binary.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"3(#)([0-2]++_)*[0-2]++","name":"constant.numeric.integer.base-3.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"4(#)([0-3]++_)*[0-3]++","name":"constant.numeric.integer.base-4.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"5(#)([0-4]++_)*[0-4]++","name":"constant.numeric.integer.base-5.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"6(#)([0-5]++_)*[0-5]++","name":"constant.numeric.integer.base-6.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"7(#)([0-6]++_)*[0-6]++","name":"constant.numeric.integer.base-7.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"8(#)([0-7]++_)*[0-7]++","name":"constant.numeric.integer.octal.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"9(#)([0-8]++_)*[0-8]++","name":"constant.numeric.integer.base-9.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"10(#)(\\\\d++_)*\\\\d++","name":"constant.numeric.integer.decimal.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"11(#)([\\\\daA]++_)*[\\\\daA]++","name":"constant.numeric.integer.base-11.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"12(#)([\\\\da-bA-B]++_)*[\\\\da-bA-B]++","name":"constant.numeric.integer.base-12.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"13(#)([\\\\da-cA-C]++_)*[\\\\da-cA-C]++","name":"constant.numeric.integer.base-13.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"14(#)([\\\\da-dA-D]++_)*[\\\\da-dA-D]++","name":"constant.numeric.integer.base-14.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"15(#)([\\\\da-eA-E]++_)*[\\\\da-eA-E]++","name":"constant.numeric.integer.base-15.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"16(#)([\\\\da-fA-F]++_)*[\\\\da-fA-F]++","name":"constant.numeric.integer.hexadecimal.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"17(#)([\\\\da-gA-G]++_)*[\\\\da-gA-G]++","name":"constant.numeric.integer.base-17.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"18(#)([\\\\da-hA-H]++_)*[\\\\da-hA-H]++","name":"constant.numeric.integer.base-18.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"19(#)([\\\\da-iA-I]++_)*[\\\\da-iA-I]++","name":"constant.numeric.integer.base-19.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"20(#)([\\\\da-jA-J]++_)*[\\\\da-jA-J]++","name":"constant.numeric.integer.base-20.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"21(#)([\\\\da-kA-K]++_)*[\\\\da-kA-K]++","name":"constant.numeric.integer.base-21.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"22(#)([\\\\da-lA-L]++_)*[\\\\da-lA-L]++","name":"constant.numeric.integer.base-22.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"23(#)([\\\\da-mA-M]++_)*[\\\\da-mA-M]++","name":"constant.numeric.integer.base-23.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"24(#)([\\\\da-nA-N]++_)*[\\\\da-nA-N]++","name":"constant.numeric.integer.base-24.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"25(#)([\\\\da-oA-O]++_)*[\\\\da-oA-O]++","name":"constant.numeric.integer.base-25.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"26(#)([\\\\da-pA-P]++_)*[\\\\da-pA-P]++","name":"constant.numeric.integer.base-26.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"27(#)([\\\\da-qA-Q]++_)*[\\\\da-qA-Q]++","name":"constant.numeric.integer.base-27.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"28(#)([\\\\da-rA-R]++_)*[\\\\da-rA-R]++","name":"constant.numeric.integer.base-28.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"29(#)([\\\\da-sA-S]++_)*[\\\\da-sA-S]++","name":"constant.numeric.integer.base-29.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"30(#)([\\\\da-tA-T]++_)*[\\\\da-tA-T]++","name":"constant.numeric.integer.base-30.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"31(#)([\\\\da-uA-U]++_)*[\\\\da-uA-U]++","name":"constant.numeric.integer.base-31.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"32(#)([\\\\da-vA-V]++_)*[\\\\da-vA-V]++","name":"constant.numeric.integer.base-32.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"33(#)([\\\\da-wA-W]++_)*[\\\\da-wA-W]++","name":"constant.numeric.integer.base-33.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"34(#)([\\\\da-xA-X]++_)*[\\\\da-xA-X]++","name":"constant.numeric.integer.base-34.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"35(#)([\\\\da-yA-Y]++_)*[\\\\da-yA-Y]++","name":"constant.numeric.integer.base-35.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"36(#)([\\\\da-zA-Z]++_)*[\\\\da-zA-Z]++","name":"constant.numeric.integer.base-36.erlang"},{"match":"\\\\d++#([\\\\da-zA-Z]++_)*[\\\\da-zA-Z]++","name":"invalid.illegal.integer.erlang"},{"match":"(\\\\d++_)*\\\\d++","name":"constant.numeric.integer.decimal.erlang"}]},"parenthesized-expression":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.erlang"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.expression.end.erlang"}},"name":"meta.expression.parenthesized","patterns":[{"include":"#everything-else"}]},"record-directive":{"begin":"^\\\\s*+(-)\\\\s*+(record)\\\\s*+(\\\\()\\\\s*+([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')\\\\s*+(,)","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.import.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.type.class.record.definition.erlang"},"5":{"name":"punctuation.separator.parameters.erlang"}},"end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.record.erlang","patterns":[{"include":"#internal-record-body"},{"include":"#comment"}]},"record-usage":{"patterns":[{"captures":{"1":{"name":"keyword.operator.record.erlang"},"2":{"name":"entity.name.type.class.record.erlang"},"3":{"name":"punctuation.separator.record-field.erlang"},"4":{"name":"variable.other.field.erlang"}},"match":"(#)\\\\s*+([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')\\\\s*+(\\\\.)\\\\s*+([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')","name":"meta.record-usage.erlang"},{"begin":"(#)\\\\s*+([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')","beginCaptures":{"1":{"name":"keyword.operator.record.erlang"},"2":{"name":"entity.name.type.class.record.erlang"}},"end":"(?<=\\\\})","name":"meta.record-usage.erlang","patterns":[{"include":"#internal-record-body"}]}]},"sigil-docstring":{"begin":"(~[bBsS]?)(([\\"]{3,})\\\\s*)(\\\\S.*)?$","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"meta.string.quoted.triple.begin.erlang"},"3":{"name":"punctuation.definition.string.begin.erlang"},"4":{"name":"invalid.illegal.string.erlang"}},"comment":"Only whitespace characters are allowed after the beggining and before the closing sequences and those cannot be in the same line","end":"^(\\\\s*(\\\\3))(?!\\")","endCaptures":{"1":{"name":"meta.string.quoted.triple.end.erlang"},"2":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.tripple.sigil.erlang"},"sigil-string":{"patterns":[{"include":"#sigil-string-parenthesis"},{"include":"#sigil-string-parenthesis-verbatim"},{"include":"#sigil-string-curly-brackets"},{"include":"#sigil-string-curly-brackets-verbatim"},{"include":"#sigil-string-square-brackets"},{"include":"#sigil-string-square-brackets-verbatim"},{"include":"#sigil-string-less-greater"},{"include":"#sigil-string-less-greater-verbatim"},{"include":"#sigil-string-single-character"},{"include":"#sigil-string-single-character-verbatim"},{"include":"#sigil-string-single-quote"},{"include":"#sigil-string-single-quote-verbatim"},{"include":"#sigil-string-double-quote"},{"include":"#sigil-string-double-quote-verbatim"}]},"sigil-string-curly-brackets":{"begin":"(~[bs]?)([{])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"([}])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.curly-brackets.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-curly-brackets-verbatim":{"begin":"(~[BS])([{])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"([}])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.curly-brackets.sigil.erlang"},"sigil-string-double-quote":{"begin":"(~[bs]?)(\\")","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.double.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-double-quote-verbatim":{"begin":"(~[BS])(\\")","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.double.sigil.erlang"},"sigil-string-less-greater":{"begin":"(~[bs]?)(<)","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.less-greater.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-less-greater-verbatim":{"begin":"(~[BS])(<)","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.less-greater.sigil.erlang"},"sigil-string-parenthesis":{"begin":"(~[bs]?)([(])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"([)])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.parenthesis.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-parenthesis-verbatim":{"begin":"(~[BS])([(])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"([)])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.parenthesis.sigil.erlang"},"sigil-string-single-character":{"begin":"(~[bs]?)([/\\\\|\`#])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.other.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-single-character-verbatim":{"begin":"(~[BS])([/\\\\|\`#])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.other.sigil.erlang"},"sigil-string-single-quote":{"begin":"(~[bs]?)(')","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.single.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-single-quote-verbatim":{"begin":"(~[BS])(')","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.single.sigil.erlang"},"sigil-string-square-brackets":{"begin":"(~[bs]?)([\\\\[])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"([\\\\]])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.square-brackets.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-square-brackets-verbatim":{"begin":"(~[BS])([\\\\[])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"([\\\\]])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.square-brackets.sigil.erlang"},"string":{"begin":"(\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.double.erlang","patterns":[{"include":"#internal-string-body"}]},"symbolic-operator":{"match":"\\\\+\\\\+|\\\\+|--|-|\\\\*|/=|/|=/=|=:=|==|=<|=|<-|<|>=|>|!|::|\\\\?=","name":"keyword.operator.symbolic.erlang"},"textual-operator":{"match":"\\\\b(andalso|band|and|bxor|xor|bor|orelse|or|bnot|not|bsl|bsr|div|rem)\\\\b","name":"keyword.operator.textual.erlang"},"tuple":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.tuple.begin.erlang"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.tuple.end.erlang"}},"name":"meta.structure.tuple.erlang","patterns":[{"match":",","name":"punctuation.separator.tuple.erlang"},{"include":"#everything-else"}]},"variable":{"captures":{"1":{"name":"variable.other.erlang"},"2":{"name":"variable.language.omitted.erlang"}},"match":"(_[a-zA-Z\\\\d@_]++|[A-Z][a-zA-Z\\\\d@_]*+)|(_)"}},"scopeName":"source.erlang","aliases":["erl"]}`)),n=[e];export{n as default};
|