import {
  a as d
} from "./chunk-NDNECGXU.js";
import {
  a as s,
  c as o
} from "./chunk-IO47FP3U.js";

// ../node_modules/refractor/lang/handlebars.js
var b = o((i, r) => {
  var u = d();
  r.exports = n;
  n.displayName = "handlebars";
  n.aliases = ["hbs"];
  function n(t) {
    t.register(u), function(a) {
      a.languages.handlebars = {
        comment: /\{\{![\s\S]*?\}\}/,
        delimiter: {
          pattern: /^\{\{\{?|\}\}\}?$/,
          alias: "punctuation"
        },
        string: /(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,
        number: /\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee][+-]?\d+)?/,
        boolean: /\b(?:false|true)\b/,
        block: {
          pattern: /^(\s*(?:~\s*)?)[#\/]\S+?(?=\s*(?:~\s*)?$|\s)/,
          lookbehind: !0,
          alias: "keyword"
        },
        brackets: {
          pattern: /\[[^\]]+\]/,
          inside: {
            punctuation: /\[|\]/,
            variable: /[\s\S]+/
          }
        },
        punctuation: /[!"#%&':()*+,.\/;<=>@\[\\\]^`{|}~]/,
        variable: /[^!"#%&'()*+,\/;<=>@\[\\\]^`{|}~\s]+/
      }, a.hooks.add("before-tokenize", function(e) {
        var l = /\{\{\{[\s\S]+?\}\}\}|\{\{[\s\S]+?\}\}/g;
        a.languages["markup-templating"].buildPlaceholders(
          e,
          "handlebars",
          l
        );
      }), a.hooks.add("after-tokenize", function(e) {
        a.languages["markup-templating"].tokenizePlaceholders(
          e,
          "handlebars"
        );
      }), a.languages.hbs = a.languages.handlebars;
    }(t);
  }
  s(n, "handlebars");
});

export {
  b as a
};
