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

// ../node_modules/refractor/lang/dot.js
var p = g((l, u) => {
  u.exports = n;
  n.displayName = "dot";
  n.aliases = ["gv"];
  function n(o) {
    (function(e) {
      var i = "(?:" + [
        // an identifier
        /[a-zA-Z_\x80-\uFFFF][\w\x80-\uFFFF]*/.source,
        // a number
        /-?(?:\.\d+|\d+(?:\.\d*)?)/.source,
        // a double-quoted string
        /"[^"\\]*(?:\\[\s\S][^"\\]*)*"/.source,
        // HTML-like string
        /<(?:[^<>]|(?!<!--)<(?:[^<>"']|"[^"]*"|'[^']*')+>|<!--(?:[^-]|-(?!->))*-->)*>/.source
      ].join("|") + ")", r = {
        markup: {
          pattern: /(^<)[\s\S]+(?=>$)/,
          lookbehind: !0,
          alias: ["language-markup", "language-html", "language-xml"],
          inside: e.languages.markup
        }
      };
      function t(s, d) {
        return RegExp(
          s.replace(/<ID>/g, function() {
            return i;
          }),
          d
        );
      }
      a(t, "withID"), e.languages.dot = {
        comment: {
          pattern: /\/\/.*|\/\*[\s\S]*?\*\/|^#.*/m,
          greedy: !0
        },
        "graph-name": {
          pattern: t(
            /(\b(?:digraph|graph|subgraph)[ \t\r\n]+)<ID>/.source,
            "i"
          ),
          lookbehind: !0,
          greedy: !0,
          alias: "class-name",
          inside: r
        },
        "attr-value": {
          pattern: t(/(=[ \t\r\n]*)<ID>/.source),
          lookbehind: !0,
          greedy: !0,
          inside: r
        },
        "attr-name": {
          pattern: t(/([\[;, \t\r\n])<ID>(?=[ \t\r\n]*=)/.source),
          lookbehind: !0,
          greedy: !0,
          inside: r
        },
        keyword: /\b(?:digraph|edge|graph|node|strict|subgraph)\b/i,
        "compass-point": {
          pattern: /(:[ \t\r\n]*)(?:[ewc_]|[ns][ew]?)(?![\w\x80-\uFFFF])/,
          lookbehind: !0,
          alias: "builtin"
        },
        node: {
          pattern: t(/(^|[^-.\w\x80-\uFFFF\\])<ID>/.source),
          lookbehind: !0,
          greedy: !0,
          inside: r
        },
        operator: /[=:]|-[->]/,
        punctuation: /[\[\]{};,]/
      }, e.languages.gv = e.languages.dot;
    })(o);
  }
  a(n, "dot");
});

export {
  p as a
};
