{"id":"../node_modules/js-beautify/js/src/core/templatablepattern.js","dependencies":[{"name":"/home/david/Proyectos/websocketdatamanager/websocketdatamanager/wsjs/package.json","includedInParent":true,"mtime":1574865112242},{"name":"/home/david/Proyectos/websocketdatamanager/websocketdatamanager/wsjs/node_modules/js-beautify/package.json","includedInParent":true,"mtime":1574865110906},{"name":"./pattern","loc":{"line":31,"column":22},"parent":"/home/david/Proyectos/websocketdatamanager/websocketdatamanager/wsjs/node_modules/js-beautify/js/src/core/templatablepattern.js","resolved":"/home/david/Proyectos/websocketdatamanager/websocketdatamanager/wsjs/node_modules/js-beautify/js/src/core/pattern.js"}],"generated":{"js":"/*jshint node:true */\n/*\n\n  The MIT License (MIT)\n\n  Copyright (c) 2007-2018 Einar Lielmanis, Liam Newman, and contributors.\n\n  Permission is hereby granted, free of charge, to any person\n  obtaining a copy of this software and associated documentation files\n  (the \"Software\"), to deal in the Software without restriction,\n  including without limitation the rights to use, copy, modify, merge,\n  publish, distribute, sublicense, and/or sell copies of the Software,\n  and to permit persons to whom the Software is furnished to do so,\n  subject to the following conditions:\n\n  The above copyright notice and this permission notice shall be\n  included in all copies or substantial portions of the Software.\n\n  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n  NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS\n  BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\n  ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n  SOFTWARE.\n*/\n\n'use strict';\n\nvar Pattern = require('./pattern').Pattern;\n\n\nvar template_names = {\n  django: false,\n  erb: false,\n  handlebars: false,\n  php: false\n};\n\n// This lets templates appear anywhere we would do a readUntil\n// The cost is higher but it is pay to play.\nfunction TemplatablePattern(input_scanner, parent) {\n  Pattern.call(this, input_scanner, parent);\n  this.__template_pattern = null;\n  this._disabled = Object.assign({}, template_names);\n  this._excluded = Object.assign({}, template_names);\n\n  if (parent) {\n    this.__template_pattern = this._input.get_regexp(parent.__template_pattern);\n    this._excluded = Object.assign(this._excluded, parent._excluded);\n    this._disabled = Object.assign(this._disabled, parent._disabled);\n  }\n  var pattern = new Pattern(input_scanner);\n  this.__patterns = {\n    handlebars_comment: pattern.starting_with(/{{!--/).until_after(/--}}/),\n    handlebars_unescaped: pattern.starting_with(/{{{/).until_after(/}}}/),\n    handlebars: pattern.starting_with(/{{/).until_after(/}}/),\n    php: pattern.starting_with(/<\\?(?:[=]|php)/).until_after(/\\?>/),\n    erb: pattern.starting_with(/<%[^%]/).until_after(/[^%]%>/),\n    // django coflicts with handlebars a bit.\n    django: pattern.starting_with(/{%/).until_after(/%}/),\n    django_value: pattern.starting_with(/{{/).until_after(/}}/),\n    django_comment: pattern.starting_with(/{#/).until_after(/#}/)\n  };\n}\nTemplatablePattern.prototype = new Pattern();\n\nTemplatablePattern.prototype._create = function() {\n  return new TemplatablePattern(this._input, this);\n};\n\nTemplatablePattern.prototype._update = function() {\n  this.__set_templated_pattern();\n};\n\nTemplatablePattern.prototype.disable = function(language) {\n  var result = this._create();\n  result._disabled[language] = true;\n  result._update();\n  return result;\n};\n\nTemplatablePattern.prototype.read_options = function(options) {\n  var result = this._create();\n  for (var language in template_names) {\n    result._disabled[language] = options.templating.indexOf(language) === -1;\n  }\n  result._update();\n  return result;\n};\n\nTemplatablePattern.prototype.exclude = function(language) {\n  var result = this._create();\n  result._excluded[language] = true;\n  result._update();\n  return result;\n};\n\nTemplatablePattern.prototype.read = function() {\n  var result = '';\n  if (this._match_pattern) {\n    result = this._input.read(this._starting_pattern);\n  } else {\n    result = this._input.read(this._starting_pattern, this.__template_pattern);\n  }\n  var next = this._read_template();\n  while (next) {\n    if (this._match_pattern) {\n      next += this._input.read(this._match_pattern);\n    } else {\n      next += this._input.readUntil(this.__template_pattern);\n    }\n    result += next;\n    next = this._read_template();\n  }\n\n  if (this._until_after) {\n    result += this._input.readUntilAfter(this._until_pattern);\n  }\n  return result;\n};\n\nTemplatablePattern.prototype.__set_templated_pattern = function() {\n  var items = [];\n\n  if (!this._disabled.php) {\n    items.push(this.__patterns.php._starting_pattern.source);\n  }\n  if (!this._disabled.handlebars) {\n    items.push(this.__patterns.handlebars._starting_pattern.source);\n  }\n  if (!this._disabled.erb) {\n    items.push(this.__patterns.erb._starting_pattern.source);\n  }\n  if (!this._disabled.django) {\n    items.push(this.__patterns.django._starting_pattern.source);\n    items.push(this.__patterns.django_value._starting_pattern.source);\n    items.push(this.__patterns.django_comment._starting_pattern.source);\n  }\n\n  if (this._until_pattern) {\n    items.push(this._until_pattern.source);\n  }\n  this.__template_pattern = this._input.get_regexp('(?:' + items.join('|') + ')');\n};\n\nTemplatablePattern.prototype._read_template = function() {\n  var resulting_string = '';\n  var c = this._input.peek();\n  if (c === '<') {\n    var peek1 = this._input.peek(1);\n    //if we're in a comment, do something special\n    // We treat all comments as literals, even more than preformatted tags\n    // we just look for the appropriate close tag\n    if (!this._disabled.php && !this._excluded.php && peek1 === '?') {\n      resulting_string = resulting_string ||\n        this.__patterns.php.read();\n    }\n    if (!this._disabled.erb && !this._excluded.erb && peek1 === '%') {\n      resulting_string = resulting_string ||\n        this.__patterns.erb.read();\n    }\n  } else if (c === '{') {\n    if (!this._disabled.handlebars && !this._excluded.handlebars) {\n      resulting_string = resulting_string ||\n        this.__patterns.handlebars_comment.read();\n      resulting_string = resulting_string ||\n        this.__patterns.handlebars_unescaped.read();\n      resulting_string = resulting_string ||\n        this.__patterns.handlebars.read();\n    }\n    if (!this._disabled.django) {\n      // django coflicts with handlebars a bit.\n      if (!this._excluded.django && !this._excluded.handlebars) {\n        resulting_string = resulting_string ||\n          this.__patterns.django_value.read();\n      }\n      if (!this._excluded.django) {\n        resulting_string = resulting_string ||\n          this.__patterns.django_comment.read();\n        resulting_string = resulting_string ||\n          this.__patterns.django.read();\n      }\n    }\n  }\n  return resulting_string;\n};\n\n\nmodule.exports.TemplatablePattern = TemplatablePattern;\n"},"sourceMaps":{"js":{"mappings":[{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":1,"column":0},"generated":{"line":1,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":2,"column":0},"generated":{"line":2,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":3,"column":0},"generated":{"line":3,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":4,"column":0},"generated":{"line":4,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":5,"column":0},"generated":{"line":5,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":6,"column":0},"generated":{"line":6,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":7,"column":0},"generated":{"line":7,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":8,"column":0},"generated":{"line":8,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":9,"column":0},"generated":{"line":9,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":10,"column":0},"generated":{"line":10,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":11,"column":0},"generated":{"line":11,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":12,"column":0},"generated":{"line":12,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":13,"column":0},"generated":{"line":13,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":14,"column":0},"generated":{"line":14,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":15,"column":0},"generated":{"line":15,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":16,"column":0},"generated":{"line":16,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":17,"column":0},"generated":{"line":17,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":18,"column":0},"generated":{"line":18,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":19,"column":0},"generated":{"line":19,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":20,"column":0},"generated":{"line":20,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":21,"column":0},"generated":{"line":21,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":22,"column":0},"generated":{"line":22,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":23,"column":0},"generated":{"line":23,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":24,"column":0},"generated":{"line":24,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":25,"column":0},"generated":{"line":25,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":26,"column":0},"generated":{"line":26,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":27,"column":0},"generated":{"line":27,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":28,"column":0},"generated":{"line":28,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":29,"column":0},"generated":{"line":29,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":30,"column":0},"generated":{"line":30,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":31,"column":0},"generated":{"line":31,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":32,"column":0},"generated":{"line":32,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":33,"column":0},"generated":{"line":33,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":34,"column":0},"generated":{"line":34,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":35,"column":0},"generated":{"line":35,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":36,"column":0},"generated":{"line":36,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":37,"column":0},"generated":{"line":37,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":38,"column":0},"generated":{"line":38,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":39,"column":0},"generated":{"line":39,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":40,"column":0},"generated":{"line":40,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":41,"column":0},"generated":{"line":41,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":42,"column":0},"generated":{"line":42,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":43,"column":0},"generated":{"line":43,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":44,"column":0},"generated":{"line":44,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":45,"column":0},"generated":{"line":45,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":46,"column":0},"generated":{"line":46,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":47,"column":0},"generated":{"line":47,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":48,"column":0},"generated":{"line":48,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":49,"column":0},"generated":{"line":49,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":50,"column":0},"generated":{"line":50,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":51,"column":0},"generated":{"line":51,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":52,"column":0},"generated":{"line":52,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":53,"column":0},"generated":{"line":53,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":54,"column":0},"generated":{"line":54,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":55,"column":0},"generated":{"line":55,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":56,"column":0},"generated":{"line":56,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":57,"column":0},"generated":{"line":57,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":58,"column":0},"generated":{"line":58,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":59,"column":0},"generated":{"line":59,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":60,"column":0},"generated":{"line":60,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":61,"column":0},"generated":{"line":61,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":62,"column":0},"generated":{"line":62,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":63,"column":0},"generated":{"line":63,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":64,"column":0},"generated":{"line":64,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":65,"column":0},"generated":{"line":65,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":66,"column":0},"generated":{"line":66,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":67,"column":0},"generated":{"line":67,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":68,"column":0},"generated":{"line":68,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":69,"column":0},"generated":{"line":69,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":70,"column":0},"generated":{"line":70,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":71,"column":0},"generated":{"line":71,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":72,"column":0},"generated":{"line":72,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":73,"column":0},"generated":{"line":73,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":74,"column":0},"generated":{"line":74,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":75,"column":0},"generated":{"line":75,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":76,"column":0},"generated":{"line":76,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":77,"column":0},"generated":{"line":77,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":78,"column":0},"generated":{"line":78,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":79,"column":0},"generated":{"line":79,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":80,"column":0},"generated":{"line":80,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":81,"column":0},"generated":{"line":81,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":82,"column":0},"generated":{"line":82,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":83,"column":0},"generated":{"line":83,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":84,"column":0},"generated":{"line":84,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":85,"column":0},"generated":{"line":85,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":86,"column":0},"generated":{"line":86,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":87,"column":0},"generated":{"line":87,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":88,"column":0},"generated":{"line":88,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":89,"column":0},"generated":{"line":89,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":90,"column":0},"generated":{"line":90,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":91,"column":0},"generated":{"line":91,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":92,"column":0},"generated":{"line":92,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":93,"column":0},"generated":{"line":93,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":94,"column":0},"generated":{"line":94,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":95,"column":0},"generated":{"line":95,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":96,"column":0},"generated":{"line":96,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":97,"column":0},"generated":{"line":97,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":98,"column":0},"generated":{"line":98,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":99,"column":0},"generated":{"line":99,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":100,"column":0},"generated":{"line":100,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":101,"column":0},"generated":{"line":101,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":102,"column":0},"generated":{"line":102,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":103,"column":0},"generated":{"line":103,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":104,"column":0},"generated":{"line":104,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":105,"column":0},"generated":{"line":105,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":106,"column":0},"generated":{"line":106,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":107,"column":0},"generated":{"line":107,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":108,"column":0},"generated":{"line":108,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":109,"column":0},"generated":{"line":109,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":110,"column":0},"generated":{"line":110,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":111,"column":0},"generated":{"line":111,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":112,"column":0},"generated":{"line":112,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":113,"column":0},"generated":{"line":113,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":114,"column":0},"generated":{"line":114,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":115,"column":0},"generated":{"line":115,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":116,"column":0},"generated":{"line":116,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":117,"column":0},"generated":{"line":117,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":118,"column":0},"generated":{"line":118,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":119,"column":0},"generated":{"line":119,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":120,"column":0},"generated":{"line":120,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":121,"column":0},"generated":{"line":121,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":122,"column":0},"generated":{"line":122,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":123,"column":0},"generated":{"line":123,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":124,"column":0},"generated":{"line":124,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":125,"column":0},"generated":{"line":125,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":126,"column":0},"generated":{"line":126,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":127,"column":0},"generated":{"line":127,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":128,"column":0},"generated":{"line":128,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":129,"column":0},"generated":{"line":129,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":130,"column":0},"generated":{"line":130,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":131,"column":0},"generated":{"line":131,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":132,"column":0},"generated":{"line":132,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":133,"column":0},"generated":{"line":133,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":134,"column":0},"generated":{"line":134,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":135,"column":0},"generated":{"line":135,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":136,"column":0},"generated":{"line":136,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":137,"column":0},"generated":{"line":137,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":138,"column":0},"generated":{"line":138,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":139,"column":0},"generated":{"line":139,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":140,"column":0},"generated":{"line":140,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":141,"column":0},"generated":{"line":141,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":142,"column":0},"generated":{"line":142,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":143,"column":0},"generated":{"line":143,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":144,"column":0},"generated":{"line":144,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":145,"column":0},"generated":{"line":145,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":146,"column":0},"generated":{"line":146,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":147,"column":0},"generated":{"line":147,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":148,"column":0},"generated":{"line":148,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":149,"column":0},"generated":{"line":149,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":150,"column":0},"generated":{"line":150,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":151,"column":0},"generated":{"line":151,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":152,"column":0},"generated":{"line":152,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":153,"column":0},"generated":{"line":153,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":154,"column":0},"generated":{"line":154,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":155,"column":0},"generated":{"line":155,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":156,"column":0},"generated":{"line":156,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":157,"column":0},"generated":{"line":157,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":158,"column":0},"generated":{"line":158,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":159,"column":0},"generated":{"line":159,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":160,"column":0},"generated":{"line":160,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":161,"column":0},"generated":{"line":161,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":162,"column":0},"generated":{"line":162,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":163,"column":0},"generated":{"line":163,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":164,"column":0},"generated":{"line":164,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":165,"column":0},"generated":{"line":165,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":166,"column":0},"generated":{"line":166,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":167,"column":0},"generated":{"line":167,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":168,"column":0},"generated":{"line":168,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":169,"column":0},"generated":{"line":169,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":170,"column":0},"generated":{"line":170,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":171,"column":0},"generated":{"line":171,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":172,"column":0},"generated":{"line":172,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":173,"column":0},"generated":{"line":173,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":174,"column":0},"generated":{"line":174,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":175,"column":0},"generated":{"line":175,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":176,"column":0},"generated":{"line":176,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":177,"column":0},"generated":{"line":177,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":178,"column":0},"generated":{"line":178,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":179,"column":0},"generated":{"line":179,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":180,"column":0},"generated":{"line":180,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":181,"column":0},"generated":{"line":181,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":182,"column":0},"generated":{"line":182,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":183,"column":0},"generated":{"line":183,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":184,"column":0},"generated":{"line":184,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":185,"column":0},"generated":{"line":185,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":186,"column":0},"generated":{"line":186,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":187,"column":0},"generated":{"line":187,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":188,"column":0},"generated":{"line":188,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":189,"column":0},"generated":{"line":189,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":190,"column":0},"generated":{"line":190,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":191,"column":0},"generated":{"line":191,"column":0}},{"source":"../node_modules/js-beautify/js/src/core/templatablepattern.js","original":{"line":192,"column":0},"generated":{"line":192,"column":0}}],"sources":{"../node_modules/js-beautify/js/src/core/templatablepattern.js":"/*jshint node:true */\n/*\n\n  The MIT License (MIT)\n\n  Copyright (c) 2007-2018 Einar Lielmanis, Liam Newman, and contributors.\n\n  Permission is hereby granted, free of charge, to any person\n  obtaining a copy of this software and associated documentation files\n  (the \"Software\"), to deal in the Software without restriction,\n  including without limitation the rights to use, copy, modify, merge,\n  publish, distribute, sublicense, and/or sell copies of the Software,\n  and to permit persons to whom the Software is furnished to do so,\n  subject to the following conditions:\n\n  The above copyright notice and this permission notice shall be\n  included in all copies or substantial portions of the Software.\n\n  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n  NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS\n  BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\n  ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n  SOFTWARE.\n*/\n\n'use strict';\n\nvar Pattern = require('./pattern').Pattern;\n\n\nvar template_names = {\n  django: false,\n  erb: false,\n  handlebars: false,\n  php: false\n};\n\n// This lets templates appear anywhere we would do a readUntil\n// The cost is higher but it is pay to play.\nfunction TemplatablePattern(input_scanner, parent) {\n  Pattern.call(this, input_scanner, parent);\n  this.__template_pattern = null;\n  this._disabled = Object.assign({}, template_names);\n  this._excluded = Object.assign({}, template_names);\n\n  if (parent) {\n    this.__template_pattern = this._input.get_regexp(parent.__template_pattern);\n    this._excluded = Object.assign(this._excluded, parent._excluded);\n    this._disabled = Object.assign(this._disabled, parent._disabled);\n  }\n  var pattern = new Pattern(input_scanner);\n  this.__patterns = {\n    handlebars_comment: pattern.starting_with(/{{!--/).until_after(/--}}/),\n    handlebars_unescaped: pattern.starting_with(/{{{/).until_after(/}}}/),\n    handlebars: pattern.starting_with(/{{/).until_after(/}}/),\n    php: pattern.starting_with(/<\\?(?:[=]|php)/).until_after(/\\?>/),\n    erb: pattern.starting_with(/<%[^%]/).until_after(/[^%]%>/),\n    // django coflicts with handlebars a bit.\n    django: pattern.starting_with(/{%/).until_after(/%}/),\n    django_value: pattern.starting_with(/{{/).until_after(/}}/),\n    django_comment: pattern.starting_with(/{#/).until_after(/#}/)\n  };\n}\nTemplatablePattern.prototype = new Pattern();\n\nTemplatablePattern.prototype._create = function() {\n  return new TemplatablePattern(this._input, this);\n};\n\nTemplatablePattern.prototype._update = function() {\n  this.__set_templated_pattern();\n};\n\nTemplatablePattern.prototype.disable = function(language) {\n  var result = this._create();\n  result._disabled[language] = true;\n  result._update();\n  return result;\n};\n\nTemplatablePattern.prototype.read_options = function(options) {\n  var result = this._create();\n  for (var language in template_names) {\n    result._disabled[language] = options.templating.indexOf(language) === -1;\n  }\n  result._update();\n  return result;\n};\n\nTemplatablePattern.prototype.exclude = function(language) {\n  var result = this._create();\n  result._excluded[language] = true;\n  result._update();\n  return result;\n};\n\nTemplatablePattern.prototype.read = function() {\n  var result = '';\n  if (this._match_pattern) {\n    result = this._input.read(this._starting_pattern);\n  } else {\n    result = this._input.read(this._starting_pattern, this.__template_pattern);\n  }\n  var next = this._read_template();\n  while (next) {\n    if (this._match_pattern) {\n      next += this._input.read(this._match_pattern);\n    } else {\n      next += this._input.readUntil(this.__template_pattern);\n    }\n    result += next;\n    next = this._read_template();\n  }\n\n  if (this._until_after) {\n    result += this._input.readUntilAfter(this._until_pattern);\n  }\n  return result;\n};\n\nTemplatablePattern.prototype.__set_templated_pattern = function() {\n  var items = [];\n\n  if (!this._disabled.php) {\n    items.push(this.__patterns.php._starting_pattern.source);\n  }\n  if (!this._disabled.handlebars) {\n    items.push(this.__patterns.handlebars._starting_pattern.source);\n  }\n  if (!this._disabled.erb) {\n    items.push(this.__patterns.erb._starting_pattern.source);\n  }\n  if (!this._disabled.django) {\n    items.push(this.__patterns.django._starting_pattern.source);\n    items.push(this.__patterns.django_value._starting_pattern.source);\n    items.push(this.__patterns.django_comment._starting_pattern.source);\n  }\n\n  if (this._until_pattern) {\n    items.push(this._until_pattern.source);\n  }\n  this.__template_pattern = this._input.get_regexp('(?:' + items.join('|') + ')');\n};\n\nTemplatablePattern.prototype._read_template = function() {\n  var resulting_string = '';\n  var c = this._input.peek();\n  if (c === '<') {\n    var peek1 = this._input.peek(1);\n    //if we're in a comment, do something special\n    // We treat all comments as literals, even more than preformatted tags\n    // we just look for the appropriate close tag\n    if (!this._disabled.php && !this._excluded.php && peek1 === '?') {\n      resulting_string = resulting_string ||\n        this.__patterns.php.read();\n    }\n    if (!this._disabled.erb && !this._excluded.erb && peek1 === '%') {\n      resulting_string = resulting_string ||\n        this.__patterns.erb.read();\n    }\n  } else if (c === '{') {\n    if (!this._disabled.handlebars && !this._excluded.handlebars) {\n      resulting_string = resulting_string ||\n        this.__patterns.handlebars_comment.read();\n      resulting_string = resulting_string ||\n        this.__patterns.handlebars_unescaped.read();\n      resulting_string = resulting_string ||\n        this.__patterns.handlebars.read();\n    }\n    if (!this._disabled.django) {\n      // django coflicts with handlebars a bit.\n      if (!this._excluded.django && !this._excluded.handlebars) {\n        resulting_string = resulting_string ||\n          this.__patterns.django_value.read();\n      }\n      if (!this._excluded.django) {\n        resulting_string = resulting_string ||\n          this.__patterns.django_comment.read();\n        resulting_string = resulting_string ||\n          this.__patterns.django.read();\n      }\n    }\n  }\n  return resulting_string;\n};\n\n\nmodule.exports.TemplatablePattern = TemplatablePattern;\n"},"lineCount":192}},"error":null,"hash":"e27156798369c66218b5225c39a6d072","cacheData":{"env":{}}}