import {
  a as n,
  c as u
} from "./chunk-IO47FP3U.js";

// ../node_modules/highlight.js/lib/languages/abnf.js
var M = u((T, t) => {
  function d(e) {
    return e ? typeof e == "string" ? e : e.source : null;
  }
  n(d, "source");
  function b(...e) {
    return e.map((a) => d(a)).join("");
  }
  n(b, "concat");
  function A(e) {
    let o = {
      ruleDeclaration: /^[a-zA-Z][a-zA-Z0-9-]*/,
      unexpectedChars: /[!@#$^&',?+~`|:]/
    }, a = [
      "ALPHA",
      "BIT",
      "CHAR",
      "CR",
      "CRLF",
      "CTL",
      "DIGIT",
      "DQUOTE",
      "HEXDIG",
      "HTAB",
      "LF",
      "LWSP",
      "OCTET",
      "SP",
      "VCHAR",
      "WSP"
    ], s = e.COMMENT(/;/, /$/), c = {
      className: "symbol",
      begin: /%b[0-1]+(-[0-1]+|(\.[0-1]+)+){0,1}/
    }, i = {
      className: "symbol",
      begin: /%d[0-9]+(-[0-9]+|(\.[0-9]+)+){0,1}/
    }, r = {
      className: "symbol",
      begin: /%x[0-9A-F]+(-[0-9A-F]+|(\.[0-9A-F]+)+){0,1}/
    }, l = {
      className: "symbol",
      begin: /%[si]/
    }, m = {
      className: "attribute",
      begin: b(o.ruleDeclaration, /(?=\s*=)/)
    };
    return {
      name: "Augmented Backus-Naur Form",
      illegal: o.unexpectedChars,
      keywords: a,
      contains: [
        m,
        s,
        c,
        i,
        r,
        l,
        e.QUOTE_STRING_MODE,
        e.NUMBER_MODE
      ]
    };
  }
  n(A, "abnf");
  t.exports = A;
});

export {
  M as a
};
