mirror of
https://github.com/Funkoala14/knowledgebase_law.git
synced 2025-06-09 07:11:53 +08:00
111 lines
3.0 KiB
JavaScript
111 lines
3.0 KiB
JavaScript
import {
|
|
__commonJS
|
|
} from "./chunk-2TUXWMP5.js";
|
|
|
|
// node_modules/refractor/lang/promql.js
|
|
var require_promql = __commonJS({
|
|
"node_modules/refractor/lang/promql.js"(exports, module) {
|
|
module.exports = promql;
|
|
promql.displayName = "promql";
|
|
promql.aliases = [];
|
|
function promql(Prism) {
|
|
;
|
|
(function(Prism2) {
|
|
var aggregations = [
|
|
"sum",
|
|
"min",
|
|
"max",
|
|
"avg",
|
|
"group",
|
|
"stddev",
|
|
"stdvar",
|
|
"count",
|
|
"count_values",
|
|
"bottomk",
|
|
"topk",
|
|
"quantile"
|
|
];
|
|
var vectorMatching = [
|
|
"on",
|
|
"ignoring",
|
|
"group_right",
|
|
"group_left",
|
|
"by",
|
|
"without"
|
|
];
|
|
var offsetModifier = ["offset"];
|
|
var keywords = aggregations.concat(vectorMatching, offsetModifier);
|
|
Prism2.languages.promql = {
|
|
comment: {
|
|
pattern: /(^[ \t]*)#.*/m,
|
|
lookbehind: true
|
|
},
|
|
"vector-match": {
|
|
// Match the comma-separated label lists inside vector matching:
|
|
pattern: new RegExp(
|
|
"((?:" + vectorMatching.join("|") + ")\\s*)\\([^)]*\\)"
|
|
),
|
|
lookbehind: true,
|
|
inside: {
|
|
"label-key": {
|
|
pattern: /\b[^,]+\b/,
|
|
alias: "attr-name"
|
|
},
|
|
punctuation: /[(),]/
|
|
}
|
|
},
|
|
"context-labels": {
|
|
pattern: /\{[^{}]*\}/,
|
|
inside: {
|
|
"label-key": {
|
|
pattern: /\b[a-z_]\w*(?=\s*(?:=|![=~]))/,
|
|
alias: "attr-name"
|
|
},
|
|
"label-value": {
|
|
pattern: /(["'`])(?:\\[\s\S]|(?!\1)[^\\])*\1/,
|
|
greedy: true,
|
|
alias: "attr-value"
|
|
},
|
|
punctuation: /\{|\}|=~?|![=~]|,/
|
|
}
|
|
},
|
|
"context-range": [
|
|
{
|
|
pattern: /\[[\w\s:]+\]/,
|
|
// [1m]
|
|
inside: {
|
|
punctuation: /\[|\]|:/,
|
|
"range-duration": {
|
|
pattern: /\b(?:\d+(?:[smhdwy]|ms))+\b/i,
|
|
alias: "number"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
pattern: /(\boffset\s+)\w+/,
|
|
// offset 1m
|
|
lookbehind: true,
|
|
inside: {
|
|
"range-duration": {
|
|
pattern: /\b(?:\d+(?:[smhdwy]|ms))+\b/i,
|
|
alias: "number"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
keyword: new RegExp("\\b(?:" + keywords.join("|") + ")\\b", "i"),
|
|
function: /\b[a-z_]\w*(?=\s*\()/i,
|
|
number: /[-+]?(?:(?:\b\d+(?:\.\d+)?|\B\.\d+)(?:e[-+]?\d+)?\b|\b(?:0x[0-9a-f]+|nan|inf)\b)/i,
|
|
operator: /[\^*/%+-]|==|!=|<=|<|>=|>|\b(?:and|or|unless)\b/i,
|
|
punctuation: /[{};()`,.[\]]/
|
|
};
|
|
})(Prism);
|
|
}
|
|
}
|
|
});
|
|
|
|
export {
|
|
require_promql
|
|
};
|
|
//# sourceMappingURL=chunk-3QZMU6A2.js.map
|