prism-react-editor
Version:
Lightweight, extensible code editor component for React apps
71 lines (70 loc) • 1.89 kB
JavaScript
import { l as languages, r as rest } from "../../index-k28m3HFc.js";
import { c as clone, i as insertBefore } from "../../language-gdIi4UL0-CMkpAmgk.js";
import { d as boolean } from "../../patterns-Cp3h1ylA-DIMdJT1M.js";
import "./markup.js";
var vel = languages.velocity = clone(languages.html);
var string = {
pattern: /"[^"]*"|'[^']*'/g,
greedy: true
};
var punctuation = /[()[\]{}.,:]/;
var number = /\b\d+\b/;
var variable = {
pattern: /(^|[^\\](?:\\\\)*)\$!?(?:[a-z][\w-]*(?:\([^)]*\))?(?:\.[a-z][\w-]*(?:\([^)]*\))?|\[[^\]]+\])*|\{[^}]+\})/i,
lookbehind: true,
inside: {
"string": string,
"function": {
pattern: /([^\w-])[a-z][\w-]*(?=\()/,
lookbehind: true
},
"number": number,
"boolean": boolean,
"punctuation": punctuation
}
};
insertBefore(vel, "comment", {
"unparsed": {
pattern: /(^|[^\\])#\[\[[^]*?\]\]#/g,
lookbehind: true,
greedy: true,
inside: {
"punctuation": /^#\[\[|\]\]#$/
}
},
"velocity-comment": [
{
pattern: /(^|[^\\])#\*[^]*?\*#/g,
lookbehind: true,
greedy: true,
alias: "comment"
},
{
pattern: /(^|[^\\])##.*/g,
lookbehind: true,
greedy: true,
alias: "comment"
}
],
"directive": {
pattern: /(^|[^\\](?:\\\\)*)#@?(?:[a-z][\w-]*|\{[a-z][\w-]*\})(?:\s*\((?:[^()]|\([^)]*\))*\))?/i,
lookbehind: true,
inside: {
"keyword": {
pattern: /^#@?(?:[a-z][\w-]*|\{[a-z][\w-]*\})|\bin\b/,
inside: {
"punctuation": /[{}]/
}
},
"variable": variable,
"string": string,
"number": number,
"boolean": boolean,
"operator": /[!=<>]=?|[%/*+-]|&&|\|\||\.\.|\b(?:eq|[gl][et]|ne|not)\b/,
"punctuation": punctuation
}
},
"variable": variable
});
vel["tag"].inside["attr-value"][2].inside[rest] = vel;
//# sourceMappingURL=velocity.js.map