knowledgebase_law/node_modules/.vite/deps/chunk-UJYVCH4S.js
2025-04-11 11:47:09 -04:00

288 lines
7.6 KiB
JavaScript

import {
__commonJS
} from "./chunk-2TUXWMP5.js";
// node_modules/highlight.js/lib/languages/asciidoc.js
var require_asciidoc = __commonJS({
"node_modules/highlight.js/lib/languages/asciidoc.js"(exports, module) {
function source(re) {
if (!re) return null;
if (typeof re === "string") return re;
return re.source;
}
function concat(...args) {
const joined = args.map((x) => source(x)).join("");
return joined;
}
function asciidoc(hljs) {
const HORIZONTAL_RULE = {
begin: "^'{3,}[ \\t]*$",
relevance: 10
};
const ESCAPED_FORMATTING = [
// escaped constrained formatting marks (i.e., \* \_ or \`)
{
begin: /\\[*_`]/
},
// escaped unconstrained formatting marks (i.e., \\** \\__ or \\``)
// must ignore until the next formatting marks
// this rule might not be 100% compliant with Asciidoctor 2.0 but we are entering undefined behavior territory...
{
begin: /\\\\\*{2}[^\n]*?\*{2}/
},
{
begin: /\\\\_{2}[^\n]*_{2}/
},
{
begin: /\\\\`{2}[^\n]*`{2}/
},
// guard: constrained formatting mark may not be preceded by ":", ";" or
// "}". match these so the constrained rule doesn't see them
{
begin: /[:;}][*_`](?![*_`])/
}
];
const STRONG = [
// inline unconstrained strong (single line)
{
className: "strong",
begin: /\*{2}([^\n]+?)\*{2}/
},
// inline unconstrained strong (multi-line)
{
className: "strong",
begin: concat(
/\*\*/,
/((\*(?!\*)|\\[^\n]|[^*\n\\])+\n)+/,
/(\*(?!\*)|\\[^\n]|[^*\n\\])*/,
/\*\*/
),
relevance: 0
},
// inline constrained strong (single line)
{
className: "strong",
// must not precede or follow a word character
begin: /\B\*(\S|\S[^\n]*?\S)\*(?!\w)/
},
// inline constrained strong (multi-line)
{
className: "strong",
// must not precede or follow a word character
begin: /\*[^\s]([^\n]+\n)+([^\n]+)\*/
}
];
const EMPHASIS = [
// inline unconstrained emphasis (single line)
{
className: "emphasis",
begin: /_{2}([^\n]+?)_{2}/
},
// inline unconstrained emphasis (multi-line)
{
className: "emphasis",
begin: concat(
/__/,
/((_(?!_)|\\[^\n]|[^_\n\\])+\n)+/,
/(_(?!_)|\\[^\n]|[^_\n\\])*/,
/__/
),
relevance: 0
},
// inline constrained emphasis (single line)
{
className: "emphasis",
// must not precede or follow a word character
begin: /\b_(\S|\S[^\n]*?\S)_(?!\w)/
},
// inline constrained emphasis (multi-line)
{
className: "emphasis",
// must not precede or follow a word character
begin: /_[^\s]([^\n]+\n)+([^\n]+)_/
},
// inline constrained emphasis using single quote (legacy)
{
className: "emphasis",
// must not follow a word character or be followed by a single quote or space
begin: "\\B'(?!['\\s])",
end: "(\\n{2}|')",
// allow escaped single quote followed by word char
contains: [{
begin: "\\\\'\\w",
relevance: 0
}],
relevance: 0
}
];
const ADMONITION = {
className: "symbol",
begin: "^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\s+",
relevance: 10
};
const BULLET_LIST = {
className: "bullet",
begin: "^(\\*+|-+|\\.+|[^\\n]+?::)\\s+"
};
return {
name: "AsciiDoc",
aliases: ["adoc"],
contains: [
// block comment
hljs.COMMENT(
"^/{4,}\\n",
"\\n/{4,}$",
// can also be done as...
// '^/{4,}$',
// '^/{4,}$',
{
relevance: 10
}
),
// line comment
hljs.COMMENT(
"^//",
"$",
{
relevance: 0
}
),
// title
{
className: "title",
begin: "^\\.\\w.*$"
},
// example, admonition & sidebar blocks
{
begin: "^[=\\*]{4,}\\n",
end: "\\n^[=\\*]{4,}$",
relevance: 10
},
// headings
{
className: "section",
relevance: 10,
variants: [
{
begin: "^(={1,6})[ ].+?([ ]\\1)?$"
},
{
begin: "^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$"
}
]
},
// document attributes
{
className: "meta",
begin: "^:.+?:",
end: "\\s",
excludeEnd: true,
relevance: 10
},
// block attributes
{
className: "meta",
begin: "^\\[.+?\\]$",
relevance: 0
},
// quoteblocks
{
className: "quote",
begin: "^_{4,}\\n",
end: "\\n_{4,}$",
relevance: 10
},
// listing and literal blocks
{
className: "code",
begin: "^[\\-\\.]{4,}\\n",
end: "\\n[\\-\\.]{4,}$",
relevance: 10
},
// passthrough blocks
{
begin: "^\\+{4,}\\n",
end: "\\n\\+{4,}$",
contains: [{
begin: "<",
end: ">",
subLanguage: "xml",
relevance: 0
}],
relevance: 10
},
BULLET_LIST,
ADMONITION,
...ESCAPED_FORMATTING,
...STRONG,
...EMPHASIS,
// inline smart quotes
{
className: "string",
variants: [
{
begin: "``.+?''"
},
{
begin: "`.+?'"
}
]
},
// inline unconstrained emphasis
{
className: "code",
begin: /`{2}/,
end: /(\n{2}|`{2})/
},
// inline code snippets (TODO should get same treatment as strong and emphasis)
{
className: "code",
begin: "(`.+?`|\\+.+?\\+)",
relevance: 0
},
// indented literal block
{
className: "code",
begin: "^[ \\t]",
end: "$",
relevance: 0
},
HORIZONTAL_RULE,
// images and links
{
begin: "(link:)?(http|https|ftp|file|irc|image:?):\\S+?\\[[^[]*?\\]",
returnBegin: true,
contains: [
{
begin: "(link|image:?):",
relevance: 0
},
{
className: "link",
begin: "\\w",
end: "[^\\[]+",
relevance: 0
},
{
className: "string",
begin: "\\[",
end: "\\]",
excludeBegin: true,
excludeEnd: true,
relevance: 0
}
],
relevance: 10
}
]
};
}
module.exports = asciidoc;
}
});
export {
require_asciidoc
};
//# sourceMappingURL=chunk-UJYVCH4S.js.map