@vizejs/vite-plugin-musea 0.49.0 → 0.57.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +21 -21
- package/dist/a11y/index.d.mts +0 -2
- package/dist/a11y/index.mjs +0 -2
- package/dist/a11y-DNCg2qCB.mjs +0 -318
- package/dist/a11y-DNCg2qCB.mjs.map +0 -1
- package/dist/autogen/index.d.mts +0 -66
- package/dist/autogen/index.d.mts.map +0 -1
- package/dist/autogen/index.mjs +0 -2
- package/dist/autogen-3-y1d0ou.mjs +0 -213
- package/dist/autogen-3-y1d0ou.mjs.map +0 -1
- package/dist/cli/index.d.mts +0 -40
- package/dist/cli/index.d.mts.map +0 -1
- package/dist/cli/index.mjs +0 -407
- package/dist/cli/index.mjs.map +0 -1
- package/dist/gallery/assets/abap-DVwoIrM0.js +0 -1
- package/dist/gallery/assets/apex-DnfrpC_v.js +0 -1
- package/dist/gallery/assets/azcli-CE6n6ErR.js +0 -1
- package/dist/gallery/assets/bat-ainFW1qj.js +0 -1
- package/dist/gallery/assets/bicep-Lzdk7NqX.js +0 -2
- package/dist/gallery/assets/cameligo-BjyZ5cgY.js +0 -1
- package/dist/gallery/assets/clojure-B-6owjux.js +0 -1
- package/dist/gallery/assets/codicon-DCmgc-ay.ttf +0 -0
- package/dist/gallery/assets/coffee-npIvPqmH.js +0 -1
- package/dist/gallery/assets/cpp--A8GPZYM.js +0 -1
- package/dist/gallery/assets/csharp-Daa9qY-p.js +0 -1
- package/dist/gallery/assets/csp-N0NfYrCc.js +0 -1
- package/dist/gallery/assets/css-CUssoHYv.js +0 -3
- package/dist/gallery/assets/css.worker-Cbw1kvi8.js +0 -88
- package/dist/gallery/assets/cssMode-cT8muvO_.js +0 -4
- package/dist/gallery/assets/cypher-CmQpMFeE.js +0 -1
- package/dist/gallery/assets/dart-DOjZJNmR.js +0 -1
- package/dist/gallery/assets/dockerfile-CxIfCbxU.js +0 -1
- package/dist/gallery/assets/ecl-AnA3JP56.js +0 -1
- package/dist/gallery/assets/editor-B55U_qvj.css +0 -1
- package/dist/gallery/assets/editor-F8AxQWwE.css +0 -1
- package/dist/gallery/assets/editor.api-aFfQJDkw.js +0 -644
- package/dist/gallery/assets/editor.main-DMqE48tW.js +0 -63
- package/dist/gallery/assets/editor.worker-Cs7HTPcl.js +0 -12
- package/dist/gallery/assets/elixir-D-N3eh22.js +0 -1
- package/dist/gallery/assets/flow9-BR6FT9qg.js +0 -1
- package/dist/gallery/assets/freemarker2-B6IBKB9r.js +0 -3
- package/dist/gallery/assets/fsharp-DR0IQ95q.js +0 -1
- package/dist/gallery/assets/go-B27OpVON.js +0 -1
- package/dist/gallery/assets/graphql-Cw7HtomI.js +0 -1
- package/dist/gallery/assets/handlebars-zNX2LtzG.js +0 -1
- package/dist/gallery/assets/hcl-CDDd0gYG.js +0 -1
- package/dist/gallery/assets/html-BKYZbazO.js +0 -1
- package/dist/gallery/assets/html.worker-CYmk49z4.js +0 -495
- package/dist/gallery/assets/htmlMode-Bl1BwXnQ.js +0 -4
- package/dist/gallery/assets/index-9OXG8DGI.css +0 -1
- package/dist/gallery/assets/index-Dltd3znx.js +0 -63
- package/dist/gallery/assets/ini-ChiSjCUM.js +0 -1
- package/dist/gallery/assets/java-CKVuuvX6.js +0 -1
- package/dist/gallery/assets/javascript-DwBI_Z0J.js +0 -1
- package/dist/gallery/assets/json.worker-Ci2wf3HT.js +0 -51
- package/dist/gallery/assets/jsonMode-CBK55pb7.js +0 -10
- package/dist/gallery/assets/julia-BcKGx43g.js +0 -1
- package/dist/gallery/assets/kotlin-C7EpOAJu.js +0 -1
- package/dist/gallery/assets/less-BFpYPxgE.js +0 -2
- package/dist/gallery/assets/lexon-DDPF3See.js +0 -1
- package/dist/gallery/assets/liquid-D87ggETD.js +0 -1
- package/dist/gallery/assets/lua-CmzM4S9z.js +0 -1
- package/dist/gallery/assets/m3-C75GLUav.js +0 -1
- package/dist/gallery/assets/markdown-B6XL0Y9j.js +0 -1
- package/dist/gallery/assets/mdx-CBs_aoHd.js +0 -1
- package/dist/gallery/assets/mips-BG4Fy7Bl.js +0 -1
- package/dist/gallery/assets/monaco.contribution-BHYQJQ-0.js +0 -2
- package/dist/gallery/assets/msdax-H0aqYz0U.js +0 -1
- package/dist/gallery/assets/mysql-CDbOhBhf.js +0 -1
- package/dist/gallery/assets/objective-c-DKE6-VEf.js +0 -1
- package/dist/gallery/assets/pascal-DBuqflGM.js +0 -1
- package/dist/gallery/assets/pascaligo-BVtulzHb.js +0 -1
- package/dist/gallery/assets/perl-xkTv78ng.js +0 -1
- package/dist/gallery/assets/pgsql-Cxti3J5E.js +0 -1
- package/dist/gallery/assets/php-Bh5BD3dg.js +0 -1
- package/dist/gallery/assets/pla-DSsYzlXV.js +0 -1
- package/dist/gallery/assets/postiats-De0qivlp.js +0 -1
- package/dist/gallery/assets/powerquery-KGKq89F-.js +0 -1
- package/dist/gallery/assets/powershell-Djwhihrv.js +0 -1
- package/dist/gallery/assets/protobuf-Jbp01qUU.js +0 -2
- package/dist/gallery/assets/pug-BntfJCN7.js +0 -1
- package/dist/gallery/assets/python-CWI5d6bd.js +0 -1
- package/dist/gallery/assets/qsharp-CHH1r_aq.js +0 -1
- package/dist/gallery/assets/r-BbeUcBN9.js +0 -1
- package/dist/gallery/assets/razor-CPcSAg2x.js +0 -1
- package/dist/gallery/assets/redis-DR9m_VtD.js +0 -1
- package/dist/gallery/assets/redshift-D97Qa-FW.js +0 -1
- package/dist/gallery/assets/restructuredtext-DQ1MtboI.js +0 -1
- package/dist/gallery/assets/ruby-ByLGeogt.js +0 -1
- package/dist/gallery/assets/rust-CIqtS9ON.js +0 -1
- package/dist/gallery/assets/sb-ByVTEZ1d.js +0 -1
- package/dist/gallery/assets/scala-DvkPypTh.js +0 -1
- package/dist/gallery/assets/scheme-CQy1Ya2H.js +0 -1
- package/dist/gallery/assets/scss-DLIO8qmP.js +0 -3
- package/dist/gallery/assets/shell-BZaILY8J.js +0 -1
- package/dist/gallery/assets/solidity-D80FpOWz.js +0 -1
- package/dist/gallery/assets/sophia-DXh1T4eB.js +0 -1
- package/dist/gallery/assets/sparql-DHSgmKlJ.js +0 -1
- package/dist/gallery/assets/sql-9GboOSCN.js +0 -1
- package/dist/gallery/assets/st--m1Z2h3c.js +0 -1
- package/dist/gallery/assets/swift-DMo7Bf1r.js +0 -1
- package/dist/gallery/assets/systemverilog-D6kP5wsA.js +0 -1
- package/dist/gallery/assets/tcl-HAhMyY2Y.js +0 -1
- package/dist/gallery/assets/ts.worker-lmYMVzBW.js +0 -51339
- package/dist/gallery/assets/tsMode-1ZmI8w72.js +0 -11
- package/dist/gallery/assets/twig-RNzllx71.js +0 -1
- package/dist/gallery/assets/typescript-CVZCJg8D.js +0 -1
- package/dist/gallery/assets/typespec-DeyXqKVJ.js +0 -1
- package/dist/gallery/assets/vb-BfpeX2r9.js +0 -1
- package/dist/gallery/assets/wgsl-B52428dy.js +0 -298
- package/dist/gallery/assets/xml-B_rQCZJa.js +0 -1
- package/dist/gallery/assets/yaml-gB0iHXGe.js +0 -1
- package/dist/gallery/index.html +0 -19
- package/dist/index-BWuuTDDw.d.mts +0 -151
- package/dist/index-BWuuTDDw.d.mts.map +0 -1
- package/dist/index.d.mts +0 -253
- package/dist/index.d.mts.map +0 -1
- package/dist/index.mjs +0 -2700
- package/dist/index.mjs.map +0 -1
- package/dist/vrt-B4uxOrnN.d.mts +0 -285
- package/dist/vrt-B4uxOrnN.d.mts.map +0 -1
- package/dist/vrt-CjFf5GR0.mjs +0 -767
- package/dist/vrt-CjFf5GR0.mjs.map +0 -1
- package/dist/vrt.d.mts +0 -2
- package/dist/vrt.mjs +0 -2
package/dist/cli/index.mjs
DELETED
|
@@ -1,407 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import { i as MuseaVrtRunner, n as generateVrtJsonReport, r as generateVrtReport } from "../vrt-CjFf5GR0.mjs";
|
|
3
|
-
import fs from "node:fs";
|
|
4
|
-
import path from "node:path";
|
|
5
|
-
//#region src/cli/utils.ts
|
|
6
|
-
/**
|
|
7
|
-
* CLI utility functions for art file scanning and parsing.
|
|
8
|
-
*
|
|
9
|
-
* Extracted from cli.ts to keep file sizes manageable.
|
|
10
|
-
*/
|
|
11
|
-
/** Recursively scan a directory for .art.vue files. */
|
|
12
|
-
async function scanArtFiles(root) {
|
|
13
|
-
const files = [];
|
|
14
|
-
async function scan(dir) {
|
|
15
|
-
const entries = await fs.promises.readdir(dir, { withFileTypes: true });
|
|
16
|
-
for (const entry of entries) {
|
|
17
|
-
const fullPath = path.join(dir, entry.name);
|
|
18
|
-
if (entry.name === "node_modules" || entry.name === "dist") continue;
|
|
19
|
-
if (entry.isDirectory()) await scan(fullPath);
|
|
20
|
-
else if (entry.isFile() && entry.name.endsWith(".art.vue")) files.push(fullPath);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
await scan(root);
|
|
24
|
-
return files;
|
|
25
|
-
}
|
|
26
|
-
/** Parse a single .art.vue file into an ArtFileInfo structure. */
|
|
27
|
-
async function parseArtFile(filePath) {
|
|
28
|
-
try {
|
|
29
|
-
const source = await fs.promises.readFile(filePath, "utf-8");
|
|
30
|
-
const titleMatch = source.match(/<art[^>]*\stitle=["']([^"']+)["']/);
|
|
31
|
-
const componentMatch = source.match(/<art[^>]*\scomponent=["']([^"']+)["']/);
|
|
32
|
-
const categoryMatch = source.match(/<art[^>]*\scategory=["']([^"']+)["']/);
|
|
33
|
-
const variants = [];
|
|
34
|
-
const variantRegex = /<variant\s+([^>]*)>([\s\S]*?)<\/variant>/g;
|
|
35
|
-
let match;
|
|
36
|
-
while ((match = variantRegex.exec(source)) !== null) {
|
|
37
|
-
const attrs = match[1];
|
|
38
|
-
const template = match[2].trim();
|
|
39
|
-
const nameMatch = attrs.match(/name=["']([^"']+)["']/);
|
|
40
|
-
const isDefault = /\bdefault\b/.test(attrs);
|
|
41
|
-
const skipVrt = /\bskip-vrt\b/.test(attrs);
|
|
42
|
-
if (nameMatch) variants.push({
|
|
43
|
-
name: nameMatch[1],
|
|
44
|
-
template,
|
|
45
|
-
isDefault,
|
|
46
|
-
skipVrt
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
return {
|
|
50
|
-
path: filePath,
|
|
51
|
-
metadata: {
|
|
52
|
-
title: titleMatch?.[1] || path.basename(filePath, ".art.vue"),
|
|
53
|
-
component: componentMatch?.[1],
|
|
54
|
-
category: categoryMatch?.[1],
|
|
55
|
-
tags: [],
|
|
56
|
-
status: "ready"
|
|
57
|
-
},
|
|
58
|
-
variants,
|
|
59
|
-
hasScriptSetup: /<script\s+setup/.test(source),
|
|
60
|
-
hasScript: /<script(?!\s+setup)/.test(source),
|
|
61
|
-
styleCount: (source.match(/<style/g) || []).length
|
|
62
|
-
};
|
|
63
|
-
} catch (error) {
|
|
64
|
-
console.error(`Failed to parse ${filePath}:`, error);
|
|
65
|
-
return null;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
//#endregion
|
|
69
|
-
//#region src/cli/commands.ts
|
|
70
|
-
/**
|
|
71
|
-
* CLI command handlers for the Musea VRT tool.
|
|
72
|
-
*
|
|
73
|
-
* Extracted from cli.ts to keep file sizes manageable.
|
|
74
|
-
* Contains the runVrt, runApprove, runClean, and runGenerate command implementations.
|
|
75
|
-
*/
|
|
76
|
-
async function runVrt(options, artFiles) {
|
|
77
|
-
const totalVariants = artFiles.reduce((sum, art) => sum + art.variants.filter((v) => !v.skipVrt).length, 0);
|
|
78
|
-
console.log(` Testing ${totalVariants} variant(s) across ${artFiles.length} art file(s)\n`);
|
|
79
|
-
const runner = new MuseaVrtRunner({
|
|
80
|
-
snapshotDir: path.join(options.output, "snapshots"),
|
|
81
|
-
threshold: options.threshold,
|
|
82
|
-
ci: options.ci ? {
|
|
83
|
-
failOnDiff: true,
|
|
84
|
-
jsonReport: options.json
|
|
85
|
-
} : void 0
|
|
86
|
-
});
|
|
87
|
-
try {
|
|
88
|
-
console.log(" Launching browser...");
|
|
89
|
-
await runner.init();
|
|
90
|
-
console.log(" Running visual regression tests...\n");
|
|
91
|
-
const results = await runner.runAllTests(artFiles, options.baseUrl);
|
|
92
|
-
const summary = runner.getSummary(results);
|
|
93
|
-
console.log(" Results:");
|
|
94
|
-
console.log(" ---------");
|
|
95
|
-
console.log(` Passed: ${summary.passed}`);
|
|
96
|
-
console.log(` Failed: ${summary.failed}`);
|
|
97
|
-
console.log(` New: ${summary.new}`);
|
|
98
|
-
console.log(` Skipped: ${summary.skipped}`);
|
|
99
|
-
console.log(` Total: ${summary.total}`);
|
|
100
|
-
console.log(` Duration: ${(summary.duration / 1e3).toFixed(2)}s\n`);
|
|
101
|
-
if (options.a11y) {
|
|
102
|
-
console.log(" Running accessibility audits...\n");
|
|
103
|
-
try {
|
|
104
|
-
const { MuseaA11yRunner } = await import("../a11y/index.mjs");
|
|
105
|
-
const a11yRunner = new MuseaA11yRunner();
|
|
106
|
-
const a11yResults = await a11yRunner.runAudits(artFiles, options.baseUrl, runner);
|
|
107
|
-
const a11ySummary = a11yRunner.getSummary(a11yResults);
|
|
108
|
-
console.log(" A11y Results:");
|
|
109
|
-
console.log(" -------------");
|
|
110
|
-
console.log(` Components: ${a11ySummary.totalComponents}`);
|
|
111
|
-
console.log(` Variants: ${a11ySummary.totalVariants}`);
|
|
112
|
-
console.log(` Violations: ${a11ySummary.totalViolations}`);
|
|
113
|
-
console.log(` Critical: ${a11ySummary.criticalCount}`);
|
|
114
|
-
console.log(` Serious: ${a11ySummary.seriousCount}\n`);
|
|
115
|
-
const reportDir = options.output;
|
|
116
|
-
await fs.promises.mkdir(reportDir, { recursive: true });
|
|
117
|
-
if (options.json) {
|
|
118
|
-
const a11yJson = a11yRunner.generateJsonReport(a11yResults);
|
|
119
|
-
const a11yPath = path.join(reportDir, "a11y-report.json");
|
|
120
|
-
await fs.promises.writeFile(a11yPath, a11yJson);
|
|
121
|
-
console.log(` A11y JSON report: ${a11yPath}\n`);
|
|
122
|
-
} else {
|
|
123
|
-
const a11yHtml = a11yRunner.generateHtmlReport(a11yResults);
|
|
124
|
-
const a11yPath = path.join(reportDir, "a11y-report.html");
|
|
125
|
-
await fs.promises.writeFile(a11yPath, a11yHtml);
|
|
126
|
-
console.log(` A11y HTML report: ${a11yPath}\n`);
|
|
127
|
-
}
|
|
128
|
-
if (options.ci && (a11ySummary.criticalCount > 0 || a11ySummary.seriousCount > 0)) {
|
|
129
|
-
console.log(" CI mode: Accessibility violations found\n");
|
|
130
|
-
process.exit(1);
|
|
131
|
-
}
|
|
132
|
-
} catch (e) {
|
|
133
|
-
console.warn(" A11y audits skipped:", e instanceof Error ? e.message : String(e));
|
|
134
|
-
console.warn(" Make sure axe-core is installed: npm install axe-core\n");
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
if (options.update) {
|
|
138
|
-
console.log(" Updating baselines...");
|
|
139
|
-
const updated = await runner.updateBaselines(results);
|
|
140
|
-
console.log(` Updated ${updated} baseline(s)\n`);
|
|
141
|
-
}
|
|
142
|
-
const reportDir = options.output;
|
|
143
|
-
await fs.promises.mkdir(reportDir, { recursive: true });
|
|
144
|
-
if (options.json) {
|
|
145
|
-
const jsonReport = generateVrtJsonReport(results, summary);
|
|
146
|
-
const jsonPath = path.join(reportDir, "vrt-report.json");
|
|
147
|
-
await fs.promises.writeFile(jsonPath, jsonReport);
|
|
148
|
-
console.log(` JSON report: ${jsonPath}\n`);
|
|
149
|
-
} else {
|
|
150
|
-
const htmlReport = generateVrtReport(results, summary);
|
|
151
|
-
const htmlPath = path.join(reportDir, "vrt-report.html");
|
|
152
|
-
await fs.promises.writeFile(htmlPath, htmlReport);
|
|
153
|
-
console.log(` HTML report: ${htmlPath}\n`);
|
|
154
|
-
}
|
|
155
|
-
if (options.ci && summary.failed > 0) {
|
|
156
|
-
console.log(" CI mode: Exiting with error due to failures\n");
|
|
157
|
-
process.exit(1);
|
|
158
|
-
}
|
|
159
|
-
} finally {
|
|
160
|
-
await runner.close();
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
async function runApprove(options, artFiles) {
|
|
164
|
-
const runner = new MuseaVrtRunner({
|
|
165
|
-
snapshotDir: path.join(options.output, "snapshots"),
|
|
166
|
-
threshold: options.threshold
|
|
167
|
-
});
|
|
168
|
-
try {
|
|
169
|
-
console.log(" Launching browser...");
|
|
170
|
-
await runner.init();
|
|
171
|
-
console.log(" Running tests to find diffs...\n");
|
|
172
|
-
const results = await runner.runAllTests(artFiles, options.baseUrl);
|
|
173
|
-
const failed = results.filter((r) => !r.passed && !r.error);
|
|
174
|
-
if (failed.length === 0) {
|
|
175
|
-
console.log(" No failed tests to approve.\n");
|
|
176
|
-
return;
|
|
177
|
-
}
|
|
178
|
-
const pattern = options.pattern;
|
|
179
|
-
if (pattern) console.log(` Approving snapshots matching: ${pattern}\n`);
|
|
180
|
-
else console.log(` Approving all ${failed.length} failed snapshot(s)...\n`);
|
|
181
|
-
const approved = await runner.approveResults(results, pattern);
|
|
182
|
-
console.log(` Approved ${approved} snapshot(s)\n`);
|
|
183
|
-
} finally {
|
|
184
|
-
await runner.close();
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
async function runClean(options, artFiles) {
|
|
188
|
-
const runner = new MuseaVrtRunner({
|
|
189
|
-
snapshotDir: path.join(options.output, "snapshots"),
|
|
190
|
-
threshold: options.threshold
|
|
191
|
-
});
|
|
192
|
-
console.log(" Scanning for orphaned snapshots...\n");
|
|
193
|
-
const cleaned = await runner.cleanOrphans(artFiles);
|
|
194
|
-
if (cleaned === 0) console.log(" No orphaned snapshots found.\n");
|
|
195
|
-
else console.log(`\n Cleaned ${cleaned} orphaned snapshot(s)\n`);
|
|
196
|
-
}
|
|
197
|
-
async function runGenerate(options) {
|
|
198
|
-
if (!options.componentPath) {
|
|
199
|
-
console.error(" Error: Missing component path.");
|
|
200
|
-
console.error(" Usage: musea-vrt generate <component.vue>\n");
|
|
201
|
-
process.exit(1);
|
|
202
|
-
}
|
|
203
|
-
const componentPath = path.resolve(options.componentPath);
|
|
204
|
-
try {
|
|
205
|
-
await fs.promises.access(componentPath);
|
|
206
|
-
} catch {
|
|
207
|
-
console.error(` Error: File not found: ${componentPath}\n`);
|
|
208
|
-
process.exit(1);
|
|
209
|
-
}
|
|
210
|
-
console.log(` Generating art file for: ${path.relative(process.cwd(), componentPath)}\n`);
|
|
211
|
-
try {
|
|
212
|
-
const { writeArtFile } = await import("../autogen/index.mjs");
|
|
213
|
-
const outputPath = await writeArtFile(componentPath);
|
|
214
|
-
const relOutput = path.relative(process.cwd(), outputPath);
|
|
215
|
-
console.log(` Generated: ${relOutput}\n`);
|
|
216
|
-
} catch (e) {
|
|
217
|
-
console.error(" Generation failed:", e instanceof Error ? e.message : String(e));
|
|
218
|
-
process.exit(1);
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
//#endregion
|
|
222
|
-
//#region src/cli/index.ts
|
|
223
|
-
function parseArgs(args) {
|
|
224
|
-
const options = {
|
|
225
|
-
command: "run",
|
|
226
|
-
update: false,
|
|
227
|
-
config: "vite.config.ts",
|
|
228
|
-
output: ".vize",
|
|
229
|
-
threshold: .1,
|
|
230
|
-
json: false,
|
|
231
|
-
ci: false,
|
|
232
|
-
a11y: false,
|
|
233
|
-
help: false,
|
|
234
|
-
baseUrl: "http://localhost:5173"
|
|
235
|
-
};
|
|
236
|
-
let i = 0;
|
|
237
|
-
if (args.length > 0 && !args[0].startsWith("-")) {
|
|
238
|
-
const sub = args[0];
|
|
239
|
-
if (sub === "approve") {
|
|
240
|
-
options.command = "approve";
|
|
241
|
-
i = 1;
|
|
242
|
-
if (args.length > 1 && !args[1].startsWith("-")) {
|
|
243
|
-
options.pattern = args[1];
|
|
244
|
-
i = 2;
|
|
245
|
-
}
|
|
246
|
-
} else if (sub === "clean") {
|
|
247
|
-
options.command = "clean";
|
|
248
|
-
i = 1;
|
|
249
|
-
} else if (sub === "generate") {
|
|
250
|
-
options.command = "generate";
|
|
251
|
-
i = 1;
|
|
252
|
-
if (args.length > 1 && !args[1].startsWith("-")) {
|
|
253
|
-
options.componentPath = args[1];
|
|
254
|
-
i = 2;
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
for (; i < args.length; i++) switch (args[i]) {
|
|
259
|
-
case "-u":
|
|
260
|
-
case "--update":
|
|
261
|
-
options.update = true;
|
|
262
|
-
break;
|
|
263
|
-
case "-c":
|
|
264
|
-
case "--config":
|
|
265
|
-
options.config = args[++i] || "vite.config.ts";
|
|
266
|
-
break;
|
|
267
|
-
case "-o":
|
|
268
|
-
case "--output":
|
|
269
|
-
options.output = args[++i] || ".vize";
|
|
270
|
-
break;
|
|
271
|
-
case "-t":
|
|
272
|
-
case "--threshold":
|
|
273
|
-
options.threshold = parseFloat(args[++i]) || .1;
|
|
274
|
-
break;
|
|
275
|
-
case "--json":
|
|
276
|
-
options.json = true;
|
|
277
|
-
break;
|
|
278
|
-
case "--ci":
|
|
279
|
-
options.ci = true;
|
|
280
|
-
break;
|
|
281
|
-
case "--a11y":
|
|
282
|
-
options.a11y = true;
|
|
283
|
-
break;
|
|
284
|
-
case "-b":
|
|
285
|
-
case "--base-url":
|
|
286
|
-
options.baseUrl = args[++i] || "http://localhost:5173";
|
|
287
|
-
break;
|
|
288
|
-
case "-h":
|
|
289
|
-
case "--help":
|
|
290
|
-
options.help = true;
|
|
291
|
-
break;
|
|
292
|
-
}
|
|
293
|
-
return options;
|
|
294
|
-
}
|
|
295
|
-
function printHelp() {
|
|
296
|
-
console.log(`
|
|
297
|
-
Musea VRT - Visual Regression Testing for Component Gallery
|
|
298
|
-
|
|
299
|
-
Usage:
|
|
300
|
-
musea-vrt [command] [options]
|
|
301
|
-
|
|
302
|
-
Commands:
|
|
303
|
-
(default) Run VRT tests
|
|
304
|
-
approve [pattern] Approve failed snapshots and update baselines
|
|
305
|
-
Optional pattern filters which snapshots to approve
|
|
306
|
-
clean Remove orphaned snapshots (no matching art/variant)
|
|
307
|
-
generate <component> Auto-generate .art.vue from a Vue component
|
|
308
|
-
|
|
309
|
-
Options:
|
|
310
|
-
-u, --update Update baseline snapshots with current screenshots
|
|
311
|
-
-c, --config <path> Path to vite config file (default: vite.config.ts)
|
|
312
|
-
-o, --output <dir> Output directory for reports (default: .vize)
|
|
313
|
-
-t, --threshold <n> Diff threshold percentage (default: 0.1)
|
|
314
|
-
-b, --base-url <url> Base URL for dev server (default: http://localhost:5173)
|
|
315
|
-
--json Output JSON report instead of HTML
|
|
316
|
-
--ci CI mode - exit with non-zero code on failures
|
|
317
|
-
--a11y Run accessibility audits alongside VRT
|
|
318
|
-
-h, --help Show this help message
|
|
319
|
-
|
|
320
|
-
Examples:
|
|
321
|
-
# Run VRT tests
|
|
322
|
-
musea-vrt
|
|
323
|
-
|
|
324
|
-
# Update baseline snapshots
|
|
325
|
-
musea-vrt -u
|
|
326
|
-
|
|
327
|
-
# Run with custom threshold
|
|
328
|
-
musea-vrt -t 0.5
|
|
329
|
-
|
|
330
|
-
# CI mode with JSON output
|
|
331
|
-
musea-vrt --ci --json
|
|
332
|
-
|
|
333
|
-
# Run with accessibility audits
|
|
334
|
-
musea-vrt --a11y
|
|
335
|
-
|
|
336
|
-
# Approve all failed snapshots
|
|
337
|
-
musea-vrt approve
|
|
338
|
-
|
|
339
|
-
# Approve specific snapshots by pattern
|
|
340
|
-
musea-vrt approve "Button/*"
|
|
341
|
-
|
|
342
|
-
# Clean orphaned snapshots
|
|
343
|
-
musea-vrt clean
|
|
344
|
-
|
|
345
|
-
# Auto-generate .art.vue from component
|
|
346
|
-
musea-vrt generate src/components/Button.vue
|
|
347
|
-
|
|
348
|
-
# Custom base URL
|
|
349
|
-
musea-vrt -b http://localhost:3000
|
|
350
|
-
`);
|
|
351
|
-
}
|
|
352
|
-
async function main() {
|
|
353
|
-
const options = parseArgs(process.argv.slice(2));
|
|
354
|
-
if (options.help) {
|
|
355
|
-
printHelp();
|
|
356
|
-
process.exit(0);
|
|
357
|
-
}
|
|
358
|
-
const cwd = process.cwd();
|
|
359
|
-
console.log("\n Musea VRT");
|
|
360
|
-
console.log(" =========\n");
|
|
361
|
-
if (options.command === "generate") {
|
|
362
|
-
try {
|
|
363
|
-
await runGenerate(options);
|
|
364
|
-
} catch (error) {
|
|
365
|
-
console.error("\n Error:", error);
|
|
366
|
-
process.exit(1);
|
|
367
|
-
}
|
|
368
|
-
return;
|
|
369
|
-
}
|
|
370
|
-
console.log(" Scanning for art files...");
|
|
371
|
-
const artFilePaths = await scanArtFiles(cwd);
|
|
372
|
-
if (artFilePaths.length === 0) {
|
|
373
|
-
console.log(" No art files found.\n");
|
|
374
|
-
process.exit(0);
|
|
375
|
-
}
|
|
376
|
-
console.log(` Found ${artFilePaths.length} art file(s)\n`);
|
|
377
|
-
const artFiles = [];
|
|
378
|
-
for (const filePath of artFilePaths) {
|
|
379
|
-
const art = await parseArtFile(filePath);
|
|
380
|
-
if (art) artFiles.push(art);
|
|
381
|
-
}
|
|
382
|
-
try {
|
|
383
|
-
switch (options.command) {
|
|
384
|
-
case "run":
|
|
385
|
-
await runVrt(options, artFiles);
|
|
386
|
-
break;
|
|
387
|
-
case "approve":
|
|
388
|
-
await runApprove(options, artFiles);
|
|
389
|
-
break;
|
|
390
|
-
case "clean":
|
|
391
|
-
await runClean(options, artFiles);
|
|
392
|
-
break;
|
|
393
|
-
case "generate": break;
|
|
394
|
-
}
|
|
395
|
-
} catch (error) {
|
|
396
|
-
console.error("\n Error:", error);
|
|
397
|
-
process.exit(1);
|
|
398
|
-
}
|
|
399
|
-
}
|
|
400
|
-
main().catch((error) => {
|
|
401
|
-
console.error("Fatal error:", error);
|
|
402
|
-
process.exit(1);
|
|
403
|
-
});
|
|
404
|
-
//#endregion
|
|
405
|
-
export {};
|
|
406
|
-
|
|
407
|
-
//# sourceMappingURL=index.mjs.map
|
package/dist/cli/index.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":[],"sources":["../../src/cli/utils.ts","../../src/cli/commands.ts","../../src/cli/index.ts"],"sourcesContent":["/**\n * CLI utility functions for art file scanning and parsing.\n *\n * Extracted from cli.ts to keep file sizes manageable.\n */\n\nimport fs from \"node:fs\";\nimport path from \"node:path\";\n\nimport type { ArtFileInfo } from \"../types/index.js\";\n\n/** Recursively scan a directory for .art.vue files. */\nexport async function scanArtFiles(root: string): Promise<string[]> {\n const files: string[] = [];\n\n async function scan(dir: string): Promise<void> {\n const entries = await fs.promises.readdir(dir, { withFileTypes: true });\n\n for (const entry of entries) {\n const fullPath = path.join(dir, entry.name);\n\n // Skip node_modules and dist\n if (entry.name === \"node_modules\" || entry.name === \"dist\") {\n continue;\n }\n\n if (entry.isDirectory()) {\n await scan(fullPath);\n } else if (entry.isFile() && entry.name.endsWith(\".art.vue\")) {\n files.push(fullPath);\n }\n }\n }\n\n await scan(root);\n return files;\n}\n\n/** Parse a single .art.vue file into an ArtFileInfo structure. */\nexport async function parseArtFile(filePath: string): Promise<ArtFileInfo | null> {\n try {\n const source = await fs.promises.readFile(filePath, \"utf-8\");\n\n // Simple parsing - in production, use @vizejs/native\n const titleMatch = source.match(/<art[^>]*\\stitle=[\"']([^\"']+)[\"']/);\n const componentMatch = source.match(/<art[^>]*\\scomponent=[\"']([^\"']+)[\"']/);\n const categoryMatch = source.match(/<art[^>]*\\scategory=[\"']([^\"']+)[\"']/);\n\n const variants: ArtFileInfo[\"variants\"] = [];\n const variantRegex = /<variant\\s+([^>]*)>([\\s\\S]*?)<\\/variant>/g;\n let match;\n\n while ((match = variantRegex.exec(source)) !== null) {\n const attrs = match[1];\n const template = match[2].trim();\n\n const nameMatch = attrs.match(/name=[\"']([^\"']+)[\"']/);\n const isDefault = /\\bdefault\\b/.test(attrs);\n const skipVrt = /\\bskip-vrt\\b/.test(attrs);\n\n if (nameMatch) {\n variants.push({\n name: nameMatch[1],\n template,\n isDefault,\n skipVrt,\n });\n }\n }\n\n return {\n path: filePath,\n metadata: {\n title: titleMatch?.[1] || path.basename(filePath, \".art.vue\"),\n component: componentMatch?.[1],\n category: categoryMatch?.[1],\n tags: [],\n status: \"ready\",\n },\n variants,\n hasScriptSetup: /<script\\s+setup/.test(source),\n hasScript: /<script(?!\\s+setup)/.test(source),\n styleCount: (source.match(/<style/g) || []).length,\n };\n } catch (error) {\n console.error(`Failed to parse ${filePath}:`, error);\n return null;\n }\n}\n","/**\n * CLI command handlers for the Musea VRT tool.\n *\n * Extracted from cli.ts to keep file sizes manageable.\n * Contains the runVrt, runApprove, runClean, and runGenerate command implementations.\n */\n\nimport fs from \"node:fs\";\nimport path from \"node:path\";\n\nimport { MuseaVrtRunner, generateVrtReport, generateVrtJsonReport } from \"../vrt.js\";\nimport type { ArtFileInfo, VrtOptions } from \"../types/index.js\";\n\nimport type { CliOptions } from \"./index.js\";\n\nexport async function runVrt(options: CliOptions, artFiles: ArtFileInfo[]): Promise<void> {\n const totalVariants = artFiles.reduce(\n (sum, art) => sum + art.variants.filter((v) => !v.skipVrt).length,\n 0,\n );\n\n console.log(` Testing ${totalVariants} variant(s) across ${artFiles.length} art file(s)\\n`);\n\n // Initialize VRT runner\n const vrtOptions: VrtOptions = {\n snapshotDir: path.join(options.output, \"snapshots\"),\n threshold: options.threshold,\n };\n\n const runner = new MuseaVrtRunner({\n ...vrtOptions,\n ci: options.ci ? { failOnDiff: true, jsonReport: options.json } : undefined,\n });\n\n try {\n console.log(\" Launching browser...\");\n await runner.init();\n\n console.log(\" Running visual regression tests...\\n\");\n\n // Run tests\n const results = await runner.runAllTests(artFiles, options.baseUrl);\n const summary = runner.getSummary(results);\n\n // Print results\n console.log(\" Results:\");\n console.log(\" ---------\");\n console.log(` Passed: ${summary.passed}`);\n console.log(` Failed: ${summary.failed}`);\n console.log(` New: ${summary.new}`);\n console.log(` Skipped: ${summary.skipped}`);\n console.log(` Total: ${summary.total}`);\n console.log(` Duration: ${(summary.duration / 1000).toFixed(2)}s\\n`);\n\n // Run a11y audits if requested\n if (options.a11y) {\n console.log(\" Running accessibility audits...\\n\");\n try {\n const { MuseaA11yRunner } = await import(\"../a11y/index.js\");\n const a11yRunner = new MuseaA11yRunner();\n const a11yResults = await a11yRunner.runAudits(artFiles, options.baseUrl, runner);\n const a11ySummary = a11yRunner.getSummary(a11yResults);\n\n console.log(\" A11y Results:\");\n console.log(\" -------------\");\n console.log(` Components: ${a11ySummary.totalComponents}`);\n console.log(` Variants: ${a11ySummary.totalVariants}`);\n console.log(` Violations: ${a11ySummary.totalViolations}`);\n console.log(` Critical: ${a11ySummary.criticalCount}`);\n console.log(` Serious: ${a11ySummary.seriousCount}\\n`);\n\n // Generate a11y report\n const reportDir = options.output;\n await fs.promises.mkdir(reportDir, { recursive: true });\n\n if (options.json) {\n const a11yJson = a11yRunner.generateJsonReport(a11yResults);\n const a11yPath = path.join(reportDir, \"a11y-report.json\");\n await fs.promises.writeFile(a11yPath, a11yJson);\n console.log(` A11y JSON report: ${a11yPath}\\n`);\n } else {\n const a11yHtml = a11yRunner.generateHtmlReport(a11yResults);\n const a11yPath = path.join(reportDir, \"a11y-report.html\");\n await fs.promises.writeFile(a11yPath, a11yHtml);\n console.log(` A11y HTML report: ${a11yPath}\\n`);\n }\n\n // CI mode - exit with error on critical/serious violations\n if (options.ci && (a11ySummary.criticalCount > 0 || a11ySummary.seriousCount > 0)) {\n console.log(\" CI mode: Accessibility violations found\\n\");\n process.exit(1);\n }\n } catch (e) {\n console.warn(\" A11y audits skipped:\", e instanceof Error ? e.message : String(e));\n console.warn(\" Make sure axe-core is installed: npm install axe-core\\n\");\n }\n }\n\n // Update baselines if requested\n if (options.update) {\n console.log(\" Updating baselines...\");\n const updated = await runner.updateBaselines(results);\n console.log(` Updated ${updated} baseline(s)\\n`);\n }\n\n // Generate VRT report\n const reportDir = options.output;\n await fs.promises.mkdir(reportDir, { recursive: true });\n\n if (options.json) {\n const jsonReport = generateVrtJsonReport(results, summary);\n const jsonPath = path.join(reportDir, \"vrt-report.json\");\n await fs.promises.writeFile(jsonPath, jsonReport);\n console.log(` JSON report: ${jsonPath}\\n`);\n } else {\n const htmlReport = generateVrtReport(results, summary);\n const htmlPath = path.join(reportDir, \"vrt-report.html\");\n await fs.promises.writeFile(htmlPath, htmlReport);\n console.log(` HTML report: ${htmlPath}\\n`);\n }\n\n // CI mode - exit with error if failures\n if (options.ci && summary.failed > 0) {\n console.log(\" CI mode: Exiting with error due to failures\\n\");\n process.exit(1);\n }\n } finally {\n await runner.close();\n }\n}\n\nexport async function runApprove(options: CliOptions, artFiles: ArtFileInfo[]): Promise<void> {\n const vrtOptions: VrtOptions = {\n snapshotDir: path.join(options.output, \"snapshots\"),\n threshold: options.threshold,\n };\n\n const runner = new MuseaVrtRunner(vrtOptions);\n\n try {\n console.log(\" Launching browser...\");\n await runner.init();\n\n console.log(\" Running tests to find diffs...\\n\");\n\n const results = await runner.runAllTests(artFiles, options.baseUrl);\n const failed = results.filter((r) => !r.passed && !r.error);\n\n if (failed.length === 0) {\n console.log(\" No failed tests to approve.\\n\");\n return;\n }\n\n const pattern = options.pattern;\n if (pattern) {\n console.log(` Approving snapshots matching: ${pattern}\\n`);\n } else {\n console.log(` Approving all ${failed.length} failed snapshot(s)...\\n`);\n }\n\n const approved = await runner.approveResults(results, pattern);\n console.log(` Approved ${approved} snapshot(s)\\n`);\n } finally {\n await runner.close();\n }\n}\n\nexport async function runClean(options: CliOptions, artFiles: ArtFileInfo[]): Promise<void> {\n const vrtOptions: VrtOptions = {\n snapshotDir: path.join(options.output, \"snapshots\"),\n threshold: options.threshold,\n };\n\n const runner = new MuseaVrtRunner(vrtOptions);\n\n console.log(\" Scanning for orphaned snapshots...\\n\");\n\n const cleaned = await runner.cleanOrphans(artFiles);\n\n if (cleaned === 0) {\n console.log(\" No orphaned snapshots found.\\n\");\n } else {\n console.log(`\\n Cleaned ${cleaned} orphaned snapshot(s)\\n`);\n }\n}\n\nexport async function runGenerate(options: CliOptions): Promise<void> {\n if (!options.componentPath) {\n console.error(\" Error: Missing component path.\");\n console.error(\" Usage: musea-vrt generate <component.vue>\\n\");\n process.exit(1);\n }\n\n const componentPath = path.resolve(options.componentPath);\n\n // Check file exists\n try {\n await fs.promises.access(componentPath);\n } catch {\n console.error(` Error: File not found: ${componentPath}\\n`);\n process.exit(1);\n }\n\n console.log(` Generating art file for: ${path.relative(process.cwd(), componentPath)}\\n`);\n\n try {\n const { writeArtFile } = await import(\"../autogen/index.js\");\n const outputPath = await writeArtFile(componentPath);\n const relOutput = path.relative(process.cwd(), outputPath);\n\n console.log(` Generated: ${relOutput}\\n`);\n } catch (e) {\n console.error(\" Generation failed:\", e instanceof Error ? e.message : String(e));\n process.exit(1);\n }\n}\n","#!/usr/bin/env node\n/**\n * Musea CLI\n *\n * Usage:\n * musea-vrt [command] [options]\n *\n * Commands:\n * (default) Run VRT tests\n * approve [pat] Approve failed snapshots (optionally filtered by pattern)\n * clean Remove orphaned snapshots\n *\n * Options:\n * -u, --update Update baseline snapshots\n * -c, --config Path to vite config (default: vite.config.ts)\n * -o, --output Output directory for reports (default: .vize)\n * -t, --threshold Diff threshold percentage (default: 0.1)\n * --json Output JSON report instead of HTML\n * --ci CI mode - exit with non-zero code on failures\n * --a11y Run accessibility audits alongside VRT\n * -h, --help Show help\n */\n\nimport type { ArtFileInfo } from \"../types/index.js\";\nimport { scanArtFiles, parseArtFile } from \"./utils.js\";\nimport { runVrt, runApprove, runClean, runGenerate } from \"./commands.js\";\n\ntype Command = \"run\" | \"approve\" | \"clean\" | \"generate\";\n\nexport interface CliOptions {\n command: Command;\n update: boolean;\n config: string;\n output: string;\n threshold: number;\n json: boolean;\n ci: boolean;\n a11y: boolean;\n help: boolean;\n baseUrl: string;\n pattern?: string;\n componentPath?: string;\n}\n\nfunction parseArgs(args: string[]): CliOptions {\n const options: CliOptions = {\n command: \"run\",\n update: false,\n config: \"vite.config.ts\",\n output: \".vize\",\n threshold: 0.1,\n json: false,\n ci: false,\n a11y: false,\n help: false,\n baseUrl: \"http://localhost:5173\",\n };\n\n let i = 0;\n\n // Check for subcommand as first arg\n if (args.length > 0 && !args[0].startsWith(\"-\")) {\n const sub = args[0];\n if (sub === \"approve\") {\n options.command = \"approve\";\n i = 1;\n // Optional pattern argument after approve\n if (args.length > 1 && !args[1].startsWith(\"-\")) {\n options.pattern = args[1];\n i = 2;\n }\n } else if (sub === \"clean\") {\n options.command = \"clean\";\n i = 1;\n } else if (sub === \"generate\") {\n options.command = \"generate\";\n i = 1;\n // Required component path argument\n if (args.length > 1 && !args[1].startsWith(\"-\")) {\n options.componentPath = args[1];\n i = 2;\n }\n }\n }\n\n for (; i < args.length; i++) {\n const arg = args[i];\n switch (arg) {\n case \"-u\":\n case \"--update\":\n options.update = true;\n break;\n case \"-c\":\n case \"--config\":\n options.config = args[++i] || \"vite.config.ts\";\n break;\n case \"-o\":\n case \"--output\":\n options.output = args[++i] || \".vize\";\n break;\n case \"-t\":\n case \"--threshold\":\n options.threshold = parseFloat(args[++i]) || 0.1;\n break;\n case \"--json\":\n options.json = true;\n break;\n case \"--ci\":\n options.ci = true;\n break;\n case \"--a11y\":\n options.a11y = true;\n break;\n case \"-b\":\n case \"--base-url\":\n options.baseUrl = args[++i] || \"http://localhost:5173\";\n break;\n case \"-h\":\n case \"--help\":\n options.help = true;\n break;\n }\n }\n\n return options;\n}\n\nfunction printHelp(): void {\n console.log(`\nMusea VRT - Visual Regression Testing for Component Gallery\n\nUsage:\n musea-vrt [command] [options]\n\nCommands:\n (default) Run VRT tests\n approve [pattern] Approve failed snapshots and update baselines\n Optional pattern filters which snapshots to approve\n clean Remove orphaned snapshots (no matching art/variant)\n generate <component> Auto-generate .art.vue from a Vue component\n\nOptions:\n -u, --update Update baseline snapshots with current screenshots\n -c, --config <path> Path to vite config file (default: vite.config.ts)\n -o, --output <dir> Output directory for reports (default: .vize)\n -t, --threshold <n> Diff threshold percentage (default: 0.1)\n -b, --base-url <url> Base URL for dev server (default: http://localhost:5173)\n --json Output JSON report instead of HTML\n --ci CI mode - exit with non-zero code on failures\n --a11y Run accessibility audits alongside VRT\n -h, --help Show this help message\n\nExamples:\n # Run VRT tests\n musea-vrt\n\n # Update baseline snapshots\n musea-vrt -u\n\n # Run with custom threshold\n musea-vrt -t 0.5\n\n # CI mode with JSON output\n musea-vrt --ci --json\n\n # Run with accessibility audits\n musea-vrt --a11y\n\n # Approve all failed snapshots\n musea-vrt approve\n\n # Approve specific snapshots by pattern\n musea-vrt approve \"Button/*\"\n\n # Clean orphaned snapshots\n musea-vrt clean\n\n # Auto-generate .art.vue from component\n musea-vrt generate src/components/Button.vue\n\n # Custom base URL\n musea-vrt -b http://localhost:3000\n`);\n}\n\nasync function main(): Promise<void> {\n const args = process.argv.slice(2);\n const options = parseArgs(args);\n\n if (options.help) {\n printHelp();\n process.exit(0);\n }\n\n const cwd = process.cwd();\n\n console.log(\"\\n Musea VRT\");\n console.log(\" =========\\n\");\n\n // Handle generate command early (doesn't need art file scanning)\n if (options.command === \"generate\") {\n try {\n await runGenerate(options);\n } catch (error) {\n console.error(\"\\n Error:\", error);\n process.exit(1);\n }\n return;\n }\n\n // Scan for art files\n console.log(\" Scanning for art files...\");\n const artFilePaths = await scanArtFiles(cwd);\n\n if (artFilePaths.length === 0) {\n console.log(\" No art files found.\\n\");\n process.exit(0);\n }\n\n console.log(` Found ${artFilePaths.length} art file(s)\\n`);\n\n // Parse art files\n const artFiles: ArtFileInfo[] = [];\n for (const filePath of artFilePaths) {\n const art = await parseArtFile(filePath);\n if (art) {\n artFiles.push(art);\n }\n }\n\n try {\n switch (options.command) {\n case \"run\":\n await runVrt(options, artFiles);\n break;\n case \"approve\":\n await runApprove(options, artFiles);\n break;\n case \"clean\":\n await runClean(options, artFiles);\n break;\n case \"generate\":\n // Handled above before art file scanning\n break;\n }\n } catch (error) {\n console.error(\"\\n Error:\", error);\n process.exit(1);\n }\n}\n\nmain().catch((error) => {\n console.error(\"Fatal error:\", error);\n process.exit(1);\n});\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={comments:{lineComment:`*`},brackets:[[`[`,`]`],[`(`,`)`]]},t={defaultToken:`invalid`,ignoreCase:!0,tokenPostfix:`.abap`,keywords:`abap-source.abbreviated.abstract.accept.accepting.according.activation.actual.add.add-corresponding.adjacent.after.alias.aliases.align.all.allocate.alpha.analysis.analyzer.and.append.appendage.appending.application.archive.area.arithmetic.as.ascending.aspect.assert.assign.assigned.assigning.association.asynchronous.at.attributes.authority.authority-check.avg.back.background.backup.backward.badi.base.before.begin.between.big.binary.bintohex.bit.black.blank.blanks.blob.block.blocks.blue.bound.boundaries.bounds.boxed.break-point.buffer.by.bypassing.byte.byte-order.call.calling.case.cast.casting.catch.center.centered.chain.chain-input.chain-request.change.changing.channels.character.char-to-hex.check.checkbox.ci_.circular.class.class-coding.class-data.class-events.class-methods.class-pool.cleanup.clear.client.clob.clock.close.coalesce.code.coding.col_background.col_group.col_heading.col_key.col_negative.col_normal.col_positive.col_total.collect.color.column.columns.comment.comments.commit.common.communication.comparing.component.components.compression.compute.concat.concat_with_space.concatenate.cond.condense.condition.connect.connection.constants.context.contexts.continue.control.controls.conv.conversion.convert.copies.copy.corresponding.country.cover.cpi.create.creating.critical.currency.currency_conversion.current.cursor.cursor-selection.customer.customer-function.dangerous.data.database.datainfo.dataset.date.dats_add_days.dats_add_months.dats_days_between.dats_is_valid.daylight.dd/mm/yy.dd/mm/yyyy.ddmmyy.deallocate.decimal_shift.decimals.declarations.deep.default.deferred.define.defining.definition.delete.deleting.demand.department.descending.describe.destination.detail.dialog.directory.disconnect.display.display-mode.distinct.divide.divide-corresponding.division.do.dummy.duplicate.duplicates.duration.during.dynamic.dynpro.edit.editor-call.else.elseif.empty.enabled.enabling.encoding.end.endat.endcase.endcatch.endchain.endclass.enddo.endenhancement.end-enhancement-section.endexec.endform.endfunction.endian.endif.ending.endinterface.end-lines.endloop.endmethod.endmodule.end-of-definition.end-of-editing.end-of-file.end-of-page.end-of-selection.endon.endprovide.endselect.end-test-injection.end-test-seam.endtry.endwhile.endwith.engineering.enhancement.enhancement-point.enhancements.enhancement-section.entries.entry.enum.environment.equiv.errormessage.errors.escaping.event.events.exact.except.exception.exceptions.exception-table.exclude.excluding.exec.execute.exists.exit.exit-command.expand.expanding.expiration.explicit.exponent.export.exporting.extend.extended.extension.extract.fail.fetch.field.field-groups.fields.field-symbol.field-symbols.file.filter.filters.filter-table.final.find.first.first-line.fixed-point.fkeq.fkge.flush.font.for.form.format.forward.found.frame.frames.free.friends.from.function.functionality.function-pool.further.gaps.generate.get.giving.gkeq.gkge.global.grant.green.group.groups.handle.handler.harmless.hashed.having.hdb.header.headers.heading.head-lines.help-id.help-request.hextobin.hide.high.hint.hold.hotspot.icon.id.identification.identifier.ids.if.ignore.ignoring.immediately.implementation.implementations.implemented.implicit.import.importing.in.inactive.incl.include.includes.including.increment.index.index-line.infotypes.inheriting.init.initial.initialization.inner.inout.input.insert.instance.instances.instr.intensified.interface.interface-pool.interfaces.internal.intervals.into.inverse.inverted-date.is.iso.job.join.keep.keeping.kernel.key.keys.keywords.kind.language.last.late.layout.leading.leave.left.left-justified.leftplus.leftspace.legacy.length.let.level.levels.like.line.lines.line-count.linefeed.line-selection.line-size.list.listbox.list-processing.little.llang.load.load-of-program.lob.local.locale.locator.logfile.logical.log-point.long.loop.low.lower.lpad.lpi.ltrim.mail.main.major-id.mapping.margin.mark.mask.match.matchcode.max.maximum.medium.members.memory.mesh.message.message-id.messages.messaging.method.methods.min.minimum.minor-id.mm/dd/yy.mm/dd/yyyy.mmddyy.mode.modif.modifier.modify.module.move.move-corresponding.multiply.multiply-corresponding.name.nametab.native.nested.nesting.new.new-line.new-page.new-section.next.no.no-display.no-extension.no-gap.no-gaps.no-grouping.no-heading.no-scrolling.no-sign.no-title.no-topofpage.no-zero.node.nodes.non-unicode.non-unique.not.null.number.object.objects.obligatory.occurrence.occurrences.occurs.of.off.offset.ole.on.only.open.option.optional.options.or.order.other.others.out.outer.output.output-length.overflow.overlay.pack.package.pad.padding.page.pages.parameter.parameters.parameter-table.part.partially.pattern.percentage.perform.performing.person.pf1.pf10.pf11.pf12.pf13.pf14.pf15.pf2.pf3.pf4.pf5.pf6.pf7.pf8.pf9.pf-status.pink.places.pool.pos_high.pos_low.position.pragmas.precompiled.preferred.preserving.primary.print.print-control.priority.private.procedure.process.program.property.protected.provide.public.push.pushbutton.put.queue-only.quickinfo.radiobutton.raise.raising.range.ranges.read.reader.read-only.receive.received.receiver.receiving.red.redefinition.reduce.reduced.ref.reference.refresh.regex.reject.remote.renaming.replace.replacement.replacing.report.request.requested.reserve.reset.resolution.respecting.responsible.result.results.resumable.resume.retry.return.returncode.returning.returns.right.right-justified.rightplus.rightspace.risk.rmc_communication_failure.rmc_invalid_status.rmc_system_failure.role.rollback.rows.rpad.rtrim.run.sap.sap-spool.saving.scale_preserving.scale_preserving_scientific.scan.scientific.scientific_with_leading_zero.scroll.scroll-boundary.scrolling.search.secondary.seconds.section.select.selection.selections.selection-screen.selection-set.selection-sets.selection-table.select-options.send.separate.separated.set.shared.shift.short.shortdump-id.sign_as_postfix.single.size.skip.skipping.smart.some.sort.sortable.sorted.source.specified.split.spool.spots.sql.sqlscript.stable.stamp.standard.starting.start-of-editing.start-of-selection.state.statement.statements.static.statics.statusinfo.step-loop.stop.structure.structures.style.subkey.submatches.submit.subroutine.subscreen.subtract.subtract-corresponding.suffix.sum.summary.summing.supplied.supply.suppress.switch.switchstates.symbol.syncpoints.syntax.syntax-check.syntax-trace.system-call.system-exceptions.system-exit.tab.tabbed.table.tables.tableview.tabstrip.target.task.tasks.test.testing.test-injection.test-seam.text.textpool.then.throw.time.times.timestamp.timezone.tims_is_valid.title.titlebar.title-lines.to.tokenization.tokens.top-lines.top-of-page.trace-file.trace-table.trailing.transaction.transfer.transformation.translate.transporting.trmac.truncate.truncation.try.tstmp_add_seconds.tstmp_current_utctimestamp.tstmp_is_valid.tstmp_seconds_between.type.type-pool.type-pools.types.uline.unassign.under.unicode.union.unique.unit_conversion.unix.unpack.until.unwind.up.update.upper.user.user-command.using.utf-8.valid.value.value-request.values.vary.varying.verification-message.version.via.view.visible.wait.warning.when.whenever.where.while.width.window.windows.with.with-heading.without.with-title.word.work.write.writer.xml.xsd.yellow.yes.yymmdd.zero.zone.abap_system_timezone.abap_user_timezone.access.action.adabas.adjust_numbers.allow_precision_loss.allowed.amdp.applicationuser.as_geo_json.as400.associations.balance.behavior.breakup.bulk.cds.cds_client.check_before_save.child.clients.corr.corr_spearman.cross.cycles.datn_add_days.datn_add_months.datn_days_between.dats_from_datn.dats_tims_to_tstmp.dats_to_datn.db2.db6.ddl.dense_rank.depth.deterministic.discarding.entities.entity.error.failed.finalize.first_value.fltp_to_dec.following.fractional.full.graph.grouping.hierarchy.hierarchy_ancestors.hierarchy_ancestors_aggregate.hierarchy_descendants.hierarchy_descendants_aggregate.hierarchy_siblings.incremental.indicators.lag.last_value.lead.leaves.like_regexpr.link.locale_sap.lock.locks.many.mapped.matched.measures.median.mssqlnt.multiple.nodetype.ntile.nulls.occurrences_regexpr.one.operations.oracle.orphans.over.parent.parents.partition.pcre.period.pfcg_mapping.preceding.privileged.product.projection.rank.redirected.replace_regexpr.reported.response.responses.root.row.row_number.sap_system_date.save.schema.session.sets.shortdump.siblings.spantree.start.stddev.string_agg.subtotal.sybase.tims_from_timn.tims_to_timn.to_blob.to_clob.total.trace-entry.tstmp_to_dats.tstmp_to_dst.tstmp_to_tims.tstmpl_from_utcl.tstmpl_to_utcl.unbounded.utcl_add_seconds.utcl_current.utcl_seconds_between.uuid.var.verbatim`.split(`.`),builtinFunctions:`abs.acos.asin.atan.bit-set.boolc.boolx.ceil.char_off.charlen.cmax.cmin.concat_lines_of.contains.contains_any_not_of.contains_any_of.cos.cosh.count.count_any_not_of.count_any_of.dbmaxlen.distance.escape.exp.find_any_not_of.find_any_of.find_end.floor.frac.from_mixed.ipow.line_exists.line_index.log.log10.matches.nmax.nmin.numofchar.repeat.rescale.reverse.round.segment.shift_left.shift_right.sign.sin.sinh.sqrt.strlen.substring.substring_after.substring_before.substring_from.substring_to.tan.tanh.to_lower.to_mixed.to_upper.trunc.utclong_add.utclong_current.utclong_diff.xsdbool.xstrlen`.split(`.`),typeKeywords:`b.c.d.decfloat16.decfloat34.f.i.int8.n.p.s.string.t.utclong.x.xstring.any.clike.csequence.decfloat.numeric.simple.xsequence.accp.char.clnt.cuky.curr.datn.dats.d16d.d16n.d16r.d34d.d34n.d34r.dec.df16_dec.df16_raw.df34_dec.df34_raw.fltp.geom_ewkb.int1.int2.int4.lang.lchr.lraw.numc.quan.raw.rawstring.sstring.timn.tims.unit.utcl.df16_scl.df34_scl.prec.varc.abap_bool.abap_false.abap_true.abap_undefined.me.screen.space.super.sy.syst.table_line.*sys*`.split(`.`),builtinMethods:[`class_constructor`,`constructor`],derivedTypes:[`%CID`,`%CID_REF`,`%CONTROL`,`%DATA`,`%ELEMENT`,`%FAIL`,`%KEY`,`%MSG`,`%PARAM`,`%PID`,`%PID_ASSOC`,`%PID_PARENT`,`%_HINTS`],cdsLanguage:[`@AbapAnnotation`,`@AbapCatalog`,`@AccessControl`,`@API`,`@ClientDependent`,`@ClientHandling`,`@CompatibilityContract`,`@DataAging`,`@EndUserText`,`@Environment`,`@LanguageDependency`,`@MappingRole`,`@Metadata`,`@MetadataExtension`,`@ObjectModel`,`@Scope`,`@Semantics`,`$EXTENSION`,`$SELF`],selectors:[`->`,`->*`,`=>`,`~`,`~*`],operators:` +. -./.*.**.div.mod.=.#.@.+=.-=.*=./=.**=.&&=.?=.&.&&.bit-and.bit-not.bit-or.bit-xor.m.o.z.<. >.<=.>=.<>.><.=<.=>.bt.byte-ca.byte-cn.byte-co.byte-cs.byte-na.byte-ns.ca.cn.co.cp.cs.eq.ge.gt.le.lt.na.nb.ne.np.ns.*/.*:.--./*.//`.split(`.`),symbols:/[=><!~?&+\-*\/\^%#@]+/,tokenizer:{root:[[/[a-z_\/$%@]([\w\/$%]|-(?!>))*/,{cases:{"@typeKeywords":`type`,"@keywords":`keyword`,"@cdsLanguage":`annotation`,"@derivedTypes":`type`,"@builtinFunctions":`type`,"@builtinMethods":`type`,"@operators":`key`,"@default":`identifier`}}],[/<[\w]+>/,`identifier`],[/##[\w|_]+/,`comment`],{include:`@whitespace`},[/[:,.]/,`delimiter`],[/[{}()\[\]]/,`@brackets`],[/@symbols/,{cases:{"@selectors":`tag`,"@operators":`key`,"@default":``}}],[/'/,{token:`string`,bracket:`@open`,next:`@stringquote`}],[/`/,{token:`string`,bracket:`@open`,next:`@stringping`}],[/\|/,{token:`string`,bracket:`@open`,next:`@stringtemplate`}],[/\d+/,`number`]],stringtemplate:[[/[^\\\|]+/,`string`],[/\\\|/,`string`],[/\|/,{token:`string`,bracket:`@close`,next:`@pop`}]],stringping:[[/[^\\`]+/,`string`],[/`/,{token:`string`,bracket:`@close`,next:`@pop`}]],stringquote:[[/[^\\']+/,`string`],[/'/,{token:`string`,bracket:`@close`,next:`@pop`}]],whitespace:[[/[ \t\r\n]+/,``],[/^\*.*$/,`comment`],[/\".*$/,`comment`]]}};export{e as conf,t as language};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:`//`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`},{open:`<`,close:`>`}],folding:{markers:{start:RegExp(`^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))`),end:RegExp(`^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))`)}}},t=`abstract.activate.and.any.array.as.asc.assert.autonomous.begin.bigdecimal.blob.boolean.break.bulk.by.case.cast.catch.char.class.collect.commit.const.continue.convertcurrency.decimal.default.delete.desc.do.double.else.end.enum.exception.exit.export.extends.false.final.finally.float.for.from.future.get.global.goto.group.having.hint.if.implements.import.in.inner.insert.instanceof.int.interface.into.join.last_90_days.last_month.last_n_days.last_week.like.limit.list.long.loop.map.merge.native.new.next_90_days.next_month.next_n_days.next_week.not.null.nulls.number.object.of.on.or.outer.override.package.parallel.pragma.private.protected.public.retrieve.return.returning.rollback.savepoint.search.select.set.short.sort.stat.static.strictfp.super.switch.synchronized.system.testmethod.then.this.this_month.this_week.throw.throws.today.tolabel.tomorrow.transaction.transient.trigger.true.try.type.undelete.update.upsert.using.virtual.void.volatile.webservice.when.where.while.yesterday`.split(`.`),n=e=>e.charAt(0).toUpperCase()+e.substr(1),r=[];t.forEach(e=>{r.push(e),r.push(e.toUpperCase()),r.push(n(e))});var i={defaultToken:``,tokenPostfix:`.apex`,keywords:r,operators:`=.>.<.!.~.?.:.==.<=.>=.!=.&&.||.++.--.+.-.*./.&.|.^.%.<<.>>.>>>.+=.-=.*=./=.&=.|=.^=.%=.<<=.>>=.>>>=`.split(`.`),symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[a-z_$][\w$]*/,{cases:{"@keywords":{token:`keyword.$0`},"@default":`identifier`}}],[/[A-Z][\w\$]*/,{cases:{"@keywords":{token:`keyword.$0`},"@default":`type.identifier`}}],{include:`@whitespace`},[/[{}()\[\]]/,`@brackets`],[/[<>](?!@symbols)/,`@brackets`],[/@symbols/,{cases:{"@operators":`delimiter`,"@default":``}}],[/@\s*[a-zA-Z_\$][\w\$]*/,`annotation`],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,`number.float`],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,`number.float`],[/(@digits)[fFdD]/,`number.float`],[/(@digits)[lL]?/,`number`],[/[;,.]/,`delimiter`],[/"([^"\\]|\\.)*$/,`string.invalid`],[/'([^'\\]|\\.)*$/,`string.invalid`],[/"/,`string`,`@string."`],[/'/,`string`,`@string.'`],[/'[^\\']'/,`string`],[/(')(@escapes)(')/,[`string`,`string.escape`,`string`]],[/'/,`string.invalid`]],whitespace:[[/[ \t\r\n]+/,``],[/\/\*\*(?!\/)/,`comment.doc`,`@apexdoc`],[/\/\*/,`comment`,`@comment`],[/\/\/.*$/,`comment`]],comment:[[/[^\/*]+/,`comment`],[/\*\//,`comment`,`@pop`],[/[\/*]/,`comment`]],apexdoc:[[/[^\/*]+/,`comment.doc`],[/\*\//,`comment.doc`,`@pop`],[/[\/*]/,`comment.doc`]],string:[[/[^\\"']+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/["']/,{cases:{"$#==$S2":{token:`string`,next:`@pop`},"@default":`string`}}]]}};export{e as conf,i as language};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={comments:{lineComment:`#`}},t={defaultToken:`keyword`,ignoreCase:!0,tokenPostfix:`.azcli`,str:/[^#\s]/,tokenizer:{root:[{include:`@comment`},[/\s-+@str*\s*/,{cases:{"@eos":{token:`key.identifier`,next:`@popall`},"@default":{token:`key.identifier`,next:`@type`}}}],[/^-+@str*\s*/,{cases:{"@eos":{token:`key.identifier`,next:`@popall`},"@default":{token:`key.identifier`,next:`@type`}}}]],type:[{include:`@comment`},[/-+@str*\s*/,{cases:{"@eos":{token:`key.identifier`,next:`@popall`},"@default":`key.identifier`}}],[/@str+\s*/,{cases:{"@eos":{token:`string`,next:`@popall`},"@default":`string`}}]],comment:[[/#.*$/,{cases:{"@eos":{token:`comment`,next:`@popall`}}}]]}};export{e as conf,t as language};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={comments:{lineComment:`REM`},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`}],surroundingPairs:[{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`}],folding:{markers:{start:RegExp(`^\\s*(::\\s*|REM\\s+)#region`),end:RegExp(`^\\s*(::\\s*|REM\\s+)#endregion`)}}},t={defaultToken:``,ignoreCase:!0,tokenPostfix:`.bat`,brackets:[{token:`delimiter.bracket`,open:`{`,close:`}`},{token:`delimiter.parenthesis`,open:`(`,close:`)`},{token:`delimiter.square`,open:`[`,close:`]`}],keywords:/call|defined|echo|errorlevel|exist|for|goto|if|pause|set|shift|start|title|not|pushd|popd/,symbols:/[=><!~?&|+\-*\/\^;\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^(\s*)(rem(?:\s.*|))$/,[``,`comment`]],[/(\@?)(@keywords)(?!\w)/,[{token:`keyword`},{token:`keyword.$2`}]],[/[ \t\r\n]+/,``],[/setlocal(?!\w)/,`keyword.tag-setlocal`],[/endlocal(?!\w)/,`keyword.tag-setlocal`],[/[a-zA-Z_]\w*/,``],[/:\w*/,`metatag`],[/%[^%]+%/,`variable`],[/%%[\w]+(?!\w)/,`variable`],[/[{}()\[\]]/,`@brackets`],[/@symbols/,`delimiter`],[/\d*\.\d+([eE][\-+]?\d+)?/,`number.float`],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,`number.hex`],[/\d+/,`number`],[/[;,.]/,`delimiter`],[/"/,`string`,`@string."`],[/'/,`string`,`@string.'`]],string:[[/[^\\"'%]+/,{cases:{"@eos":{token:`string`,next:`@popall`},"@default":`string`}}],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/%[\w ]+%/,`variable`],[/%%[\w]+(?!\w)/,`variable`],[/["']/,{cases:{"$#==$S2":{token:`string`,next:`@pop`},"@default":`string`}}],[/$/,`string`,`@popall`]]}};export{e as conf,t as language};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var e=(e=>`\\b${e}\\b`)(`[_a-zA-Z][_a-zA-Z0-9]*`),t=[`targetScope`,`resource`,`module`,`param`,`var`,`output`,`for`,`in`,`if`,`existing`],n=[`true`,`false`,`null`],r=`[ \\t\\r\\n]`,i=`[0-9]+`,a={comments:{lineComment:`//`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`'`,close:`'`},{open:`'''`,close:`'''`}],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`'`,close:`'`,notIn:[`string`,`comment`]},{open:`'''`,close:`'''`,notIn:[`string`,`comment`]}],autoCloseBefore:`:.,=}])'
|
|
2
|
-
`,indentationRules:{increaseIndentPattern:RegExp(`^((?!\\/\\/).)*(\\{[^}"'\`]*|\\([^)"'\`]*|\\[[^\\]"'\`]*)$`),decreaseIndentPattern:RegExp(`^((?!.*?\\/\\*).*\\*/)?\\s*[\\}\\]].*$`)}},o={defaultToken:``,tokenPostfix:`.bicep`,brackets:[{open:`{`,close:`}`,token:`delimiter.curly`},{open:`[`,close:`]`,token:`delimiter.square`},{open:`(`,close:`)`,token:`delimiter.parenthesis`}],symbols:/[=><!~?:&|+\-*/^%]+/,keywords:t,namedLiterals:n,escapes:"\\\\(u{[0-9A-Fa-f]+}|n|r|t|\\\\|'|\\${)",tokenizer:{root:[{include:`@expression`},{include:`@whitespace`}],stringVerbatim:[{regex:`(|'|'')[^']`,action:{token:`string`}},{regex:`'''`,action:{token:`string.quote`,next:`@pop`}}],stringLiteral:[{regex:"\\${",action:{token:`delimiter.bracket`,next:`@bracketCounting`}},{regex:`[^\\\\'$]+`,action:{token:`string`}},{regex:`@escapes`,action:{token:`string.escape`}},{regex:`\\\\.`,action:{token:`string.escape.invalid`}},{regex:`'`,action:{token:`string`,next:`@pop`}}],bracketCounting:[{regex:`{`,action:{token:`delimiter.bracket`,next:`@bracketCounting`}},{regex:`}`,action:{token:`delimiter.bracket`,next:`@pop`}},{include:`expression`}],comment:[{regex:`[^\\*]+`,action:{token:`comment`}},{regex:`\\*\\/`,action:{token:`comment`,next:`@pop`}},{regex:`[\\/*]`,action:{token:`comment`}}],whitespace:[{regex:r},{regex:`\\/\\*`,action:{token:`comment`,next:`@comment`}},{regex:`\\/\\/.*$`,action:{token:`comment`}}],expression:[{regex:`'''`,action:{token:`string.quote`,next:`@stringVerbatim`}},{regex:`'`,action:{token:`string.quote`,next:`@stringLiteral`}},{regex:i,action:{token:`number`}},{regex:e,action:{cases:{"@keywords":{token:`keyword`},"@namedLiterals":{token:`keyword`},"@default":{token:`identifier`}}}}]}};export{a as conf,o as language};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={comments:{lineComment:`//`,blockComment:[`(*`,`*)`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`],[`<`,`>`]],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`<`,close:`>`},{open:`'`,close:`'`},{open:`"`,close:`"`},{open:`(*`,close:`*)`}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`<`,close:`>`},{open:`'`,close:`'`},{open:`"`,close:`"`},{open:`(*`,close:`*)`}]},t={defaultToken:``,tokenPostfix:`.cameligo`,ignoreCase:!0,brackets:[{open:`{`,close:`}`,token:`delimiter.curly`},{open:`[`,close:`]`,token:`delimiter.square`},{open:`(`,close:`)`,token:`delimiter.parenthesis`},{open:`<`,close:`>`,token:`delimiter.angle`}],keywords:`abs.assert.block.Bytes.case.Crypto.Current.else.failwith.false.for.fun.if.in.let.let%entry.let%init.List.list.Map.map.match.match%nat.mod.not.operation.Operation.of.record.Set.set.sender.skip.source.String.then.to.true.type.with`.split(`.`),typeKeywords:[`int`,`unit`,`string`,`tz`,`nat`,`bool`],operators:[`=`,`>`,`<`,`<=`,`>=`,`<>`,`:`,`:=`,`and`,`mod`,`or`,`+`,`-`,`*`,`/`,`@`,`&`,`^`,`%`,`->`,`<-`,`&&`,`||`],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:`keyword.$0`},"@default":`identifier`}}],{include:`@whitespace`},[/[{}()\[\]]/,`@brackets`],[/[<>](?!@symbols)/,`@brackets`],[/@symbols/,{cases:{"@operators":`delimiter`,"@default":``}}],[/\d*\.\d+([eE][\-+]?\d+)?/,`number.float`],[/\$[0-9a-fA-F]{1,16}/,`number.hex`],[/\d+/,`number`],[/[;,.]/,`delimiter`],[/'([^'\\]|\\.)*$/,`string.invalid`],[/'/,`string`,`@string`],[/'[^\\']'/,`string`],[/'/,`string.invalid`],[/\#\d+/,`string`]],comment:[[/[^\(\*]+/,`comment`],[/\*\)/,`comment`,`@pop`],[/\(\*/,`comment`]],string:[[/[^\\']+/,`string`],[/\\./,`string.escape.invalid`],[/'/,{token:`string.quote`,bracket:`@close`,next:`@pop`}]],whitespace:[[/[ \t\r\n]+/,`white`],[/\(\*/,`comment`,`@comment`],[/\/\/.*$/,`comment`]]}};export{e as conf,t as language};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={comments:{lineComment:`;;`},brackets:[[`[`,`]`],[`(`,`)`],[`{`,`}`]],autoClosingPairs:[{open:`[`,close:`]`},{open:`"`,close:`"`},{open:`(`,close:`)`},{open:`{`,close:`}`}],surroundingPairs:[{open:`[`,close:`]`},{open:`"`,close:`"`},{open:`(`,close:`)`},{open:`{`,close:`}`}]},t={defaultToken:``,ignoreCase:!0,tokenPostfix:`.clj`,brackets:[{open:`[`,close:`]`,token:`delimiter.square`},{open:`(`,close:`)`,token:`delimiter.parenthesis`},{open:`{`,close:`}`,token:`delimiter.curly`}],constants:[`true`,`false`,`nil`],numbers:/^(?:[+\-]?\d+(?:(?:N|(?:[eE][+\-]?\d+))|(?:\.?\d*(?:M|(?:[eE][+\-]?\d+))?)|\/\d+|[xX][0-9a-fA-F]+|r[0-9a-zA-Z]+)?(?=[\\\[\]\s"#'(),;@^`{}~]|$))/,characters:/^(?:\\(?:backspace|formfeed|newline|return|space|tab|o[0-7]{3}|u[0-9A-Fa-f]{4}|x[0-9A-Fa-f]{4}|.)?(?=[\\\[\]\s"(),;@^`{}~]|$))/,escapes:/^\\(?:["'\\bfnrt]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,qualifiedSymbols:/^(?:(?:[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*(?:\.[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*\/)?(?:\/|[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*(?=[\\\[\]\s"(),;@^`{}~]|$))/,specialForms:[`.`,`catch`,`def`,`do`,`if`,`monitor-enter`,`monitor-exit`,`new`,`quote`,`recur`,`set!`,`throw`,`try`,`var`],coreSymbols:`*,*',*1,*2,*3,*agent*,*allow-unresolved-vars*,*assert*,*clojure-version*,*command-line-args*,*compile-files*,*compile-path*,*compiler-options*,*data-readers*,*default-data-reader-fn*,*e,*err*,*file*,*flush-on-newline*,*fn-loader*,*in*,*math-context*,*ns*,*out*,*print-dup*,*print-length*,*print-level*,*print-meta*,*print-namespace-maps*,*print-readably*,*read-eval*,*reader-resolver*,*source-path*,*suppress-read*,*unchecked-math*,*use-context-classloader*,*verbose-defrecords*,*warn-on-reflection*,+,+',-,-',->,->>,->ArrayChunk,->Eduction,->Vec,->VecNode,->VecSeq,-cache-protocol-fn,-reset-methods,..,/,<,<=,=,==,>,>=,EMPTY-NODE,Inst,StackTraceElement->vec,Throwable->map,accessor,aclone,add-classpath,add-watch,agent,agent-error,agent-errors,aget,alength,alias,all-ns,alter,alter-meta!,alter-var-root,amap,ancestors,and,any?,apply,areduce,array-map,as->,aset,aset-boolean,aset-byte,aset-char,aset-double,aset-float,aset-int,aset-long,aset-short,assert,assoc,assoc!,assoc-in,associative?,atom,await,await-for,await1,bases,bean,bigdec,bigint,biginteger,binding,bit-and,bit-and-not,bit-clear,bit-flip,bit-not,bit-or,bit-set,bit-shift-left,bit-shift-right,bit-test,bit-xor,boolean,boolean-array,boolean?,booleans,bound-fn,bound-fn*,bound?,bounded-count,butlast,byte,byte-array,bytes,bytes?,case,cast,cat,char,char-array,char-escape-string,char-name-string,char?,chars,chunk,chunk-append,chunk-buffer,chunk-cons,chunk-first,chunk-next,chunk-rest,chunked-seq?,class,class?,clear-agent-errors,clojure-version,coll?,comment,commute,comp,comparator,compare,compare-and-set!,compile,complement,completing,concat,cond,cond->,cond->>,condp,conj,conj!,cons,constantly,construct-proxy,contains?,count,counted?,create-ns,create-struct,cycle,dec,dec',decimal?,declare,dedupe,default-data-readers,definline,definterface,defmacro,defmethod,defmulti,defn,defn-,defonce,defprotocol,defrecord,defstruct,deftype,delay,delay?,deliver,denominator,deref,derive,descendants,destructure,disj,disj!,dissoc,dissoc!,distinct,distinct?,doall,dorun,doseq,dosync,dotimes,doto,double,double-array,double?,doubles,drop,drop-last,drop-while,eduction,empty,empty?,ensure,ensure-reduced,enumeration-seq,error-handler,error-mode,eval,even?,every-pred,every?,ex-data,ex-info,extend,extend-protocol,extend-type,extenders,extends?,false?,ffirst,file-seq,filter,filterv,find,find-keyword,find-ns,find-protocol-impl,find-protocol-method,find-var,first,flatten,float,float-array,float?,floats,flush,fn,fn?,fnext,fnil,for,force,format,frequencies,future,future-call,future-cancel,future-cancelled?,future-done?,future?,gen-class,gen-interface,gensym,get,get-in,get-method,get-proxy-class,get-thread-bindings,get-validator,group-by,halt-when,hash,hash-combine,hash-map,hash-ordered-coll,hash-set,hash-unordered-coll,ident?,identical?,identity,if-let,if-not,if-some,ifn?,import,in-ns,inc,inc',indexed?,init-proxy,inst-ms,inst-ms*,inst?,instance?,int,int-array,int?,integer?,interleave,intern,interpose,into,into-array,ints,io!,isa?,iterate,iterator-seq,juxt,keep,keep-indexed,key,keys,keyword,keyword?,last,lazy-cat,lazy-seq,let,letfn,line-seq,list,list*,list?,load,load-file,load-reader,load-string,loaded-libs,locking,long,long-array,longs,loop,macroexpand,macroexpand-1,make-array,make-hierarchy,map,map-entry?,map-indexed,map?,mapcat,mapv,max,max-key,memfn,memoize,merge,merge-with,meta,method-sig,methods,min,min-key,mix-collection-hash,mod,munge,name,namespace,namespace-munge,nat-int?,neg-int?,neg?,newline,next,nfirst,nil?,nnext,not,not-any?,not-empty,not-every?,not=,ns,ns-aliases,ns-imports,ns-interns,ns-map,ns-name,ns-publics,ns-refers,ns-resolve,ns-unalias,ns-unmap,nth,nthnext,nthrest,num,number?,numerator,object-array,odd?,or,parents,partial,partition,partition-all,partition-by,pcalls,peek,persistent!,pmap,pop,pop!,pop-thread-bindings,pos-int?,pos?,pr,pr-str,prefer-method,prefers,primitives-classnames,print,print-ctor,print-dup,print-method,print-simple,print-str,printf,println,println-str,prn,prn-str,promise,proxy,proxy-call-with-super,proxy-mappings,proxy-name,proxy-super,push-thread-bindings,pvalues,qualified-ident?,qualified-keyword?,qualified-symbol?,quot,rand,rand-int,rand-nth,random-sample,range,ratio?,rational?,rationalize,re-find,re-groups,re-matcher,re-matches,re-pattern,re-seq,read,read-line,read-string,reader-conditional,reader-conditional?,realized?,record?,reduce,reduce-kv,reduced,reduced?,reductions,ref,ref-history-count,ref-max-history,ref-min-history,ref-set,refer,refer-clojure,reify,release-pending-sends,rem,remove,remove-all-methods,remove-method,remove-ns,remove-watch,repeat,repeatedly,replace,replicate,require,reset!,reset-meta!,reset-vals!,resolve,rest,restart-agent,resultset-seq,reverse,reversible?,rseq,rsubseq,run!,satisfies?,second,select-keys,send,send-off,send-via,seq,seq?,seqable?,seque,sequence,sequential?,set,set-agent-send-executor!,set-agent-send-off-executor!,set-error-handler!,set-error-mode!,set-validator!,set?,short,short-array,shorts,shuffle,shutdown-agents,simple-ident?,simple-keyword?,simple-symbol?,slurp,some,some->,some->>,some-fn,some?,sort,sort-by,sorted-map,sorted-map-by,sorted-set,sorted-set-by,sorted?,special-symbol?,spit,split-at,split-with,str,string?,struct,struct-map,subs,subseq,subvec,supers,swap!,swap-vals!,symbol,symbol?,sync,tagged-literal,tagged-literal?,take,take-last,take-nth,take-while,test,the-ns,thread-bound?,time,to-array,to-array-2d,trampoline,transduce,transient,tree-seq,true?,type,unchecked-add,unchecked-add-int,unchecked-byte,unchecked-char,unchecked-dec,unchecked-dec-int,unchecked-divide-int,unchecked-double,unchecked-float,unchecked-inc,unchecked-inc-int,unchecked-int,unchecked-long,unchecked-multiply,unchecked-multiply-int,unchecked-negate,unchecked-negate-int,unchecked-remainder-int,unchecked-short,unchecked-subtract,unchecked-subtract-int,underive,unquote,unquote-splicing,unreduced,unsigned-bit-shift-right,update,update-in,update-proxy,uri?,use,uuid?,val,vals,var-get,var-set,var?,vary-meta,vec,vector,vector-of,vector?,volatile!,volatile?,vreset!,vswap!,when,when-first,when-let,when-not,when-some,while,with-bindings,with-bindings*,with-in-str,with-loading-context,with-local-vars,with-meta,with-open,with-out-str,with-precision,with-redefs,with-redefs-fn,xml-seq,zero?,zipmap`.split(`,`),tokenizer:{root:[{include:`@whitespace`},[/@numbers/,`number`],[/@characters/,`string`],{include:`@string`},[/[()\[\]{}]/,`@brackets`],[/\/#"(?:\.|(?:")|[^"\n])*"\/g/,`regexp`],[/[#'@^`~]/,`meta`],[/@qualifiedSymbols/,{cases:{"^:.+$":`constant`,"@specialForms":`keyword`,"@coreSymbols":`keyword`,"@constants":`constant`,"@default":`identifier`}}]],whitespace:[[/[\s,]+/,`white`],[/;.*$/,`comment`],[/\(comment\b/,`comment`,`@comment`]],comment:[[/\(/,`comment`,`@push`],[/\)/,`comment`,`@pop`],[/[^()]/,`comment`]],string:[[/"/,`string`,`@multiLineString`]],multiLineString:[[/"/,`string`,`@popall`],[/@escapes/,`string.escape`],[/./,`string`]]}};export{e as conf,t as language};
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\$\-\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{blockComment:[`###`,`###`],lineComment:`#`},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}],folding:{markers:{start:RegExp(`^\\s*#region\\b`),end:RegExp(`^\\s*#endregion\\b`)}}},t={defaultToken:``,ignoreCase:!0,tokenPostfix:`.coffee`,brackets:[{open:`{`,close:`}`,token:`delimiter.curly`},{open:`[`,close:`]`,token:`delimiter.square`},{open:`(`,close:`)`,token:`delimiter.parenthesis`}],regEx:/\/(?!\/\/)(?:[^\/\\]|\\.)*\/[igm]*/,keywords:`and.or.is.isnt.not.on.yes.@.no.off.true.false.null.this.new.delete.typeof.in.instanceof.return.throw.break.continue.debugger.if.else.switch.for.while.do.try.catch.finally.class.extends.super.undefined.then.unless.until.loop.of.by.when`.split(`.`),symbols:/[=><!~?&%|+\-*\/\^\.,\:]+/,escapes:/\\(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\@[a-zA-Z_]\w*/,`variable.predefined`],[/[a-zA-Z_]\w*/,{cases:{this:`variable.predefined`,"@keywords":{token:`keyword.$0`},"@default":``}}],[/[ \t\r\n]+/,``],[/###/,`comment`,`@comment`],[/#.*$/,`comment`],[`///`,{token:`regexp`,next:`@hereregexp`}],[/^(\s*)(@regEx)/,[``,`regexp`]],[/(\()(\s*)(@regEx)/,[`@brackets`,``,`regexp`]],[/(\,)(\s*)(@regEx)/,[`delimiter`,``,`regexp`]],[/(\=)(\s*)(@regEx)/,[`delimiter`,``,`regexp`]],[/(\:)(\s*)(@regEx)/,[`delimiter`,``,`regexp`]],[/(\[)(\s*)(@regEx)/,[`@brackets`,``,`regexp`]],[/(\!)(\s*)(@regEx)/,[`delimiter`,``,`regexp`]],[/(\&)(\s*)(@regEx)/,[`delimiter`,``,`regexp`]],[/(\|)(\s*)(@regEx)/,[`delimiter`,``,`regexp`]],[/(\?)(\s*)(@regEx)/,[`delimiter`,``,`regexp`]],[/(\{)(\s*)(@regEx)/,[`@brackets`,``,`regexp`]],[/(\;)(\s*)(@regEx)/,[``,``,`regexp`]],[/}/,{cases:{"$S2==interpolatedstring":{token:`string`,next:`@pop`},"@default":`@brackets`}}],[/[{}()\[\]]/,`@brackets`],[/@symbols/,`delimiter`],[/\d+[eE]([\-+]?\d+)?/,`number.float`],[/\d+\.\d+([eE][\-+]?\d+)?/,`number.float`],[/0[xX][0-9a-fA-F]+/,`number.hex`],[/0[0-7]+(?!\d)/,`number.octal`],[/\d+/,`number`],[/[,.]/,`delimiter`],[/"""/,`string`,`@herestring."""`],[/'''/,`string`,`@herestring.'''`],[/"/,{cases:{"@eos":`string`,"@default":{token:`string`,next:`@string."`}}}],[/'/,{cases:{"@eos":`string`,"@default":{token:`string`,next:`@string.'`}}}]],string:[[/[^"'\#\\]+/,`string`],[/@escapes/,`string.escape`],[/\./,`string.escape.invalid`],[/\./,`string.escape.invalid`],[/#{/,{cases:{'$S2=="':{token:`string`,next:`root.interpolatedstring`},"@default":`string`}}],[/["']/,{cases:{"$#==$S2":{token:`string`,next:`@pop`},"@default":`string`}}],[/#/,`string`]],herestring:[[/("""|''')/,{cases:{"$1==$S2":{token:`string`,next:`@pop`},"@default":`string`}}],[/[^#\\'"]+/,`string`],[/['"]+/,`string`],[/@escapes/,`string.escape`],[/\./,`string.escape.invalid`],[/#{/,{token:`string.quote`,next:`root.interpolatedstring`}],[/#/,`string`]],comment:[[/[^#]+/,`comment`],[/###/,`comment`,`@pop`],[/#/,`comment`]],hereregexp:[[/[^\\\/#]+/,`regexp`],[/\\./,`regexp`],[/#.*$/,`comment`],[`///[igm]*`,{token:`regexp`,next:`@pop`}],[/\//,`regexp`]]}};export{e as conf,t as language};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={comments:{lineComment:`//`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`[`,close:`]`},{open:`{`,close:`}`},{open:`(`,close:`)`},{open:`'`,close:`'`,notIn:[`string`,`comment`]},{open:`"`,close:`"`,notIn:[`string`]}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}],folding:{markers:{start:RegExp(`^\\s*#pragma\\s+region\\b`),end:RegExp(`^\\s*#pragma\\s+endregion\\b`)}}},t={defaultToken:``,tokenPostfix:`.cpp`,brackets:[{token:`delimiter.curly`,open:`{`,close:`}`},{token:`delimiter.parenthesis`,open:`(`,close:`)`},{token:`delimiter.square`,open:`[`,close:`]`},{token:`delimiter.angle`,open:`<`,close:`>`}],keywords:`abstract.amp.array.auto.bool.break.case.catch.char.class.const.constexpr.const_cast.continue.cpu.decltype.default.delegate.delete.do.double.dynamic_cast.each.else.enum.event.explicit.export.extern.false.final.finally.float.for.friend.gcnew.generic.goto.if.in.initonly.inline.int.interface.interior_ptr.internal.literal.long.mutable.namespace.new.noexcept.nullptr.__nullptr.operator.override.partial.pascal.pin_ptr.private.property.protected.public.ref.register.reinterpret_cast.restrict.return.safe_cast.sealed.short.signed.sizeof.static.static_assert.static_cast.struct.switch.template.this.thread_local.throw.tile_static.true.try.typedef.typeid.typename.union.unsigned.using.virtual.void.volatile.wchar_t.where.while._asm._based._cdecl._declspec._fastcall._if_exists._if_not_exists._inline._multiple_inheritance._pascal._single_inheritance._stdcall._virtual_inheritance._w64.__abstract.__alignof.__asm.__assume.__based.__box.__builtin_alignof.__cdecl.__clrcall.__declspec.__delegate.__event.__except.__fastcall.__finally.__forceinline.__gc.__hook.__identifier.__if_exists.__if_not_exists.__inline.__int128.__int16.__int32.__int64.__int8.__interface.__leave.__m128.__m128d.__m128i.__m256.__m256d.__m256i.__m512.__m512d.__m512i.__m64.__multiple_inheritance.__newslot.__nogc.__noop.__nounwind.__novtordisp.__pascal.__pin.__pragma.__property.__ptr32.__ptr64.__raise.__restrict.__resume.__sealed.__single_inheritance.__stdcall.__super.__thiscall.__try.__try_cast.__typeof.__unaligned.__unhook.__uuidof.__value.__virtual_inheritance.__w64.__wchar_t`.split(`.`),operators:`=.>.<.!.~.?.:.==.<=.>=.!=.&&.||.++.--.+.-.*./.&.|.^.%.<<.>>.+=.-=.*=./=.&=.|=.^=.%=.<<=.>>=`.split(`.`),symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[0abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/([uU](ll|LL|l|L)|(ll|LL|l|L)?[uU]?)/,floatsuffix:/[fFlL]?/,encoding:/u|u8|U|L/,tokenizer:{root:[[/@encoding?R\"(?:([^ ()\\\t]*))\(/,{token:`string.raw.begin`,next:`@raw.$1`}],[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:`keyword.$0`},"@default":`identifier`}}],[/^\s*#\s*include/,{token:`keyword.directive.include`,next:`@include`}],[/^\s*#\s*\w+/,`keyword.directive`],{include:`@whitespace`},[/\[\s*\[/,{token:`annotation`,next:`@annotation`}],[/[{}()<>\[\]]/,`@brackets`],[/@symbols/,{cases:{"@operators":`delimiter`,"@default":``}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,`number.float`],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,`number.float`],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,`number.hex`],[/0[0-7']*[0-7](@integersuffix)/,`number.octal`],[/0[bB][0-1']*[0-1](@integersuffix)/,`number.binary`],[/\d[\d']*\d(@integersuffix)/,`number`],[/\d(@integersuffix)/,`number`],[/[;,.]/,`delimiter`],[/"([^"\\]|\\.)*$/,`string.invalid`],[/"/,`string`,`@string`],[/'[^\\']'/,`string`],[/(')(@escapes)(')/,[`string`,`string.escape`,`string`]],[/'/,`string.invalid`]],whitespace:[[/[ \t\r\n]+/,``],[/\/\*\*(?!\/)/,`comment.doc`,`@doccomment`],[/\/\*/,`comment`,`@comment`],[/\/\/.*\\$/,`comment`,`@linecomment`],[/\/\/.*$/,`comment`]],comment:[[/[^\/*]+/,`comment`],[/\*\//,`comment`,`@pop`],[/[\/*]/,`comment`]],linecomment:[[/.*[^\\]$/,`comment`,`@pop`],[/[^]+/,`comment`]],doccomment:[[/[^\/*]+/,`comment.doc`],[/\*\//,`comment.doc`,`@pop`],[/[\/*]/,`comment.doc`]],string:[[/[^\\"]+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/"/,`string`,`@pop`]],raw:[[/[^)]+/,`string.raw`],[/\)$S2\"/,{token:`string.raw.end`,next:`@pop`}],[/\)/,`string.raw`]],annotation:[{include:`@whitespace`},[/using|alignas/,`keyword`],[/[a-zA-Z0-9_]+/,`annotation`],[/[,:]/,`delimiter`],[/[()]/,`@brackets`],[/\]\s*\]/,{token:`annotation`,next:`@pop`}]],include:[[/(\s*)(<)([^<>]*)(>)/,[``,`keyword.directive.include.begin`,`string.include.identifier`,{token:`keyword.directive.include.end`,next:`@pop`}]],[/(\s*)(")([^"]*)(")/,[``,`keyword.directive.include.begin`,`string.include.identifier`,{token:`keyword.directive.include.end`,next:`@pop`}]]]}};export{e as conf,t as language};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\$\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:`//`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`'`,close:`'`,notIn:[`string`,`comment`]},{open:`"`,close:`"`,notIn:[`string`,`comment`]}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`<`,close:`>`},{open:`'`,close:`'`},{open:`"`,close:`"`}],folding:{markers:{start:RegExp(`^\\s*#region\\b`),end:RegExp(`^\\s*#endregion\\b`)}}},t={defaultToken:``,tokenPostfix:`.cs`,brackets:[{open:`{`,close:`}`,token:`delimiter.curly`},{open:`[`,close:`]`,token:`delimiter.square`},{open:`(`,close:`)`,token:`delimiter.parenthesis`},{open:`<`,close:`>`,token:`delimiter.angle`}],keywords:`extern.alias.using.bool.decimal.sbyte.byte.short.ushort.int.uint.long.ulong.char.float.double.object.dynamic.string.assembly.is.as.ref.out.this.base.new.typeof.void.checked.unchecked.default.delegate.var.const.if.else.switch.case.while.do.for.foreach.in.break.continue.goto.return.throw.try.catch.finally.lock.yield.from.let.where.join.on.equals.into.orderby.ascending.descending.select.group.by.namespace.partial.class.field.event.method.param.public.protected.internal.private.abstract.sealed.static.struct.readonly.volatile.virtual.override.params.get.set.add.remove.operator.true.false.implicit.explicit.interface.enum.null.async.await.fixed.sizeof.stackalloc.unsafe.nameof.when`.split(`.`),namespaceFollows:[`namespace`,`using`],parenFollows:[`if`,`for`,`while`,`switch`,`foreach`,`using`,`catch`,`when`],operators:`=.??.||.&&.|.^.&.==.!=.<=.>=.<<.+.-.*./.%.!.~.++.--.+=.-=.*=./=.%=.&=.|=.^=.<<=.>>=.>>.=>`.split(`.`),symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\@?[a-zA-Z_]\w*/,{cases:{"@namespaceFollows":{token:`keyword.$0`,next:`@namespace`},"@keywords":{token:`keyword.$0`,next:`@qualified`},"@default":{token:`identifier`,next:`@qualified`}}}],{include:`@whitespace`},[/}/,{cases:{"$S2==interpolatedstring":{token:`string.quote`,next:`@pop`},"$S2==litinterpstring":{token:`string.quote`,next:`@pop`},"@default":`@brackets`}}],[/[{}()\[\]]/,`@brackets`],[/[<>](?!@symbols)/,`@brackets`],[/@symbols/,{cases:{"@operators":`delimiter`,"@default":``}}],[/[0-9_]*\.[0-9_]+([eE][\-+]?\d+)?[fFdD]?/,`number.float`],[/0[xX][0-9a-fA-F_]+/,`number.hex`],[/0[bB][01_]+/,`number.hex`],[/[0-9_]+/,`number`],[/[;,.]/,`delimiter`],[/"([^"\\]|\\.)*$/,`string.invalid`],[/"/,{token:`string.quote`,next:`@string`}],[/\$\@"/,{token:`string.quote`,next:`@litinterpstring`}],[/\@"/,{token:`string.quote`,next:`@litstring`}],[/\$"/,{token:`string.quote`,next:`@interpolatedstring`}],[/'[^\\']'/,`string`],[/(')(@escapes)(')/,[`string`,`string.escape`,`string`]],[/'/,`string.invalid`]],qualified:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:`keyword.$0`},"@default":`identifier`}}],[/\./,`delimiter`],[``,``,`@pop`]],namespace:[{include:`@whitespace`},[/[A-Z]\w*/,`namespace`],[/[\.=]/,`delimiter`],[``,``,`@pop`]],comment:[[/[^\/*]+/,`comment`],[`\\*/`,`comment`,`@pop`],[/[\/*]/,`comment`]],string:[[/[^\\"]+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/"/,{token:`string.quote`,next:`@pop`}]],litstring:[[/[^"]+/,`string`],[/""/,`string.escape`],[/"/,{token:`string.quote`,next:`@pop`}]],litinterpstring:[[/[^"{]+/,`string`],[/""/,`string.escape`],[/{{/,`string.escape`],[/}}/,`string.escape`],[/{/,{token:`string.quote`,next:`root.litinterpstring`}],[/"/,{token:`string.quote`,next:`@pop`}]],interpolatedstring:[[/[^\\"{]+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/{{/,`string.escape`],[/}}/,`string.escape`],[/{/,{token:`string.quote`,next:`root.interpolatedstring`}],[/"/,{token:`string.quote`,next:`@pop`}]],whitespace:[[/^[ \t\v\f]*#((r)|(load))(?=\s)/,`directive.csx`],[/^[ \t\v\f]*#\w.*$/,`namespace.cpp`],[/[ \t\v\f\r\n]+/,``],[/\/\*/,`comment`,`@comment`],[/\/\/.*$/,`comment`]]}};export{e as conf,t as language};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={brackets:[],autoClosingPairs:[],surroundingPairs:[]},t={keywords:[],typeKeywords:[],tokenPostfix:`.csp`,operators:[],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/child-src/,`string.quote`],[/connect-src/,`string.quote`],[/default-src/,`string.quote`],[/font-src/,`string.quote`],[/frame-src/,`string.quote`],[/img-src/,`string.quote`],[/manifest-src/,`string.quote`],[/media-src/,`string.quote`],[/object-src/,`string.quote`],[/script-src/,`string.quote`],[/style-src/,`string.quote`],[/worker-src/,`string.quote`],[/base-uri/,`string.quote`],[/plugin-types/,`string.quote`],[/sandbox/,`string.quote`],[/disown-opener/,`string.quote`],[/form-action/,`string.quote`],[/frame-ancestors/,`string.quote`],[/report-uri/,`string.quote`],[/report-to/,`string.quote`],[/upgrade-insecure-requests/,`string.quote`],[/block-all-mixed-content/,`string.quote`],[/require-sri-for/,`string.quote`],[/reflected-xss/,`string.quote`],[/referrer/,`string.quote`],[/policy-uri/,`string.quote`],[/'self'/,`string.quote`],[/'unsafe-inline'/,`string.quote`],[/'unsafe-eval'/,`string.quote`],[/'strict-dynamic'/,`string.quote`],[/'unsafe-hashed-attributes'/,`string.quote`]]}};export{e as conf,t as language};
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
var e={wordPattern:/(#?-?\d*\.\d\w*%?)|((::|[@#.!:])?[\w-?]+%?)|::|[@#.!:]/g,comments:{blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`{`,close:`}`,notIn:[`string`,`comment`]},{open:`[`,close:`]`,notIn:[`string`,`comment`]},{open:`(`,close:`)`,notIn:[`string`,`comment`]},{open:`"`,close:`"`,notIn:[`string`,`comment`]},{open:`'`,close:`'`,notIn:[`string`,`comment`]}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}],folding:{markers:{start:RegExp(`^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/`),end:RegExp(`^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/`)}}},t={defaultToken:``,tokenPostfix:`.css`,ws:`[
|
|
2
|
-
\r\f]*`,identifier:`-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*`,brackets:[{open:`{`,close:`}`,token:`delimiter.bracket`},{open:`[`,close:`]`,token:`delimiter.bracket`},{open:`(`,close:`)`,token:`delimiter.parenthesis`},{open:`<`,close:`>`,token:`delimiter.angle`}],tokenizer:{root:[{include:`@selector`}],selector:[{include:`@comments`},{include:`@import`},{include:`@strings`},[`[@](keyframes|-webkit-keyframes|-moz-keyframes|-o-keyframes)`,{token:`keyword`,next:`@keyframedeclaration`}],[`[@](page|content|font-face|-moz-document)`,{token:`keyword`}],[`[@](charset|namespace)`,{token:`keyword`,next:`@declarationbody`}],[`(url-prefix)(\\()`,[`attribute.value`,{token:`delimiter.parenthesis`,next:`@urldeclaration`}]],[`(url)(\\()`,[`attribute.value`,{token:`delimiter.parenthesis`,next:`@urldeclaration`}]],{include:`@selectorname`},[`[\\*]`,`tag`],[`[>\\+,]`,`delimiter`],[`\\[`,{token:`delimiter.bracket`,next:`@selectorattribute`}],[`{`,{token:`delimiter.bracket`,next:`@selectorbody`}]],selectorbody:[{include:`@comments`},[`[*_]?@identifier@ws:(?=(\\s|\\d|[^{;}]*[;}]))`,`attribute.name`,`@rulevalue`],[`}`,{token:`delimiter.bracket`,next:`@pop`}]],selectorname:[[`(\\.|#(?=[^{])|%|(@identifier)|:)+`,`tag`]],selectorattribute:[{include:`@term`},[`]`,{token:`delimiter.bracket`,next:`@pop`}]],term:[{include:`@comments`},[`(url-prefix)(\\()`,[`attribute.value`,{token:`delimiter.parenthesis`,next:`@urldeclaration`}]],[`(url)(\\()`,[`attribute.value`,{token:`delimiter.parenthesis`,next:`@urldeclaration`}]],{include:`@functioninvocation`},{include:`@numbers`},{include:`@name`},{include:`@strings`},[`([<>=\\+\\-\\*\\/\\^\\|\\~,])`,`delimiter`],[`,`,`delimiter`]],rulevalue:[{include:`@comments`},{include:`@strings`},{include:`@term`},[`!important`,`keyword`],[`;`,`delimiter`,`@pop`],[`(?=})`,{token:``,next:`@pop`}]],warndebug:[[`[@](warn|debug)`,{token:`keyword`,next:`@declarationbody`}]],import:[[`[@](import)`,{token:`keyword`,next:`@declarationbody`}]],urldeclaration:[{include:`@strings`},[`[^)\r
|
|
3
|
-
]+`,`string`],[`\\)`,{token:`delimiter.parenthesis`,next:`@pop`}]],parenthizedterm:[{include:`@term`},[`\\)`,{token:`delimiter.parenthesis`,next:`@pop`}]],declarationbody:[{include:`@term`},[`;`,`delimiter`,`@pop`],[`(?=})`,{token:``,next:`@pop`}]],comments:[[`\\/\\*`,`comment`,`@comment`],[`\\/\\/+.*`,`comment`]],comment:[[`\\*\\/`,`comment`,`@pop`],[/[^*/]+/,`comment`],[/./,`comment`]],name:[[`@identifier`,`attribute.value`]],numbers:[[`-?(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?`,{token:`attribute.value.number`,next:`@units`}],[`#[0-9a-fA-F_]+(?!\\w)`,`attribute.value.hex`]],units:[[`(em|ex|ch|rem|fr|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?`,`attribute.value.unit`,`@pop`]],keyframedeclaration:[[`@identifier`,`attribute.value`],[`{`,{token:`delimiter.bracket`,switchTo:`@keyframebody`}]],keyframebody:[{include:`@term`},[`{`,{token:`delimiter.bracket`,next:`@selectorbody`}],[`}`,{token:`delimiter.bracket`,next:`@pop`}]],functioninvocation:[[`@identifier\\(`,{token:`attribute.value`,next:`@functionarguments`}]],functionarguments:[[`\\$@identifier@ws:`,`attribute.name`],[`[,]`,`delimiter`],{include:`@term`},[`\\)`,{token:`attribute.value`,next:`@pop`}]],strings:[[`~?"`,{token:`string`,next:`@stringenddoublequote`}],[`~?'`,{token:`string`,next:`@stringendquote`}]],stringenddoublequote:[[`\\\\.`,`string`],[`"`,{token:`string`,next:`@pop`}],[/[^\\"]+/,`string`],[`.`,`string`]],stringendquote:[[`\\\\.`,`string`],[`'`,{token:`string`,next:`@pop`}],[/[^\\']+/,`string`],[`.`,`string`]]}};export{e as conf,t as language};
|