!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t.prettierPlugins=t.prettierPlugins||{},t.prettierPlugins.vue=e())}(this,function(){"use strict";var t=function(t){return/^\s*/.test(t)};function e(t,e){for(var n=Object.create(null),r=t.split(","),a=r.length,o=0;o/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,o="[a-zA-Z_][\\w\\-\\.]*",s="((?:".concat(o,"\\:)?").concat(o,")"),i=new RegExp("^<".concat(s)),c=/^\s*(\/?)>/,u=new RegExp("^<\\/".concat(s,"[^>]*>")),l=/^]+>/i,f=/^/g,"$1").replace(//g,"$1")),w(r,a)&&(a=a.slice(1)),e.chars&&e.chars(a),""});C+=t.length-o.length,t=o,F(r,C-n,C)}();else{var O=t.indexOf("<");if(0===O){if(f.test(t)){var S=t.indexOf("--\x3e");if(S>=0){e.shouldKeepComment&&e.comment(t.substring(4,S)),k(S+3);continue}}if(d.test(t)){var E=t.indexOf("]>");if(E>=0){k(E+2);continue}}var T=t.match(l);if(T){k(T[0].length);continue}var L=t.match(u);if(L){var P=C;k(L[0].length),F(L[1],P,C);continue}var q=R();if(q){j(q),w(s,t)&&k(1);continue}}var A=void 0,D=void 0,N=void 0;if(O>=0){for(D=t.slice(O);!(u.test(D)||i.test(D)||f.test(D)||d.test(D)||(N=D.indexOf("<",1))<0);)O+=N,D=t.slice(O);A=t.substring(0,O),k(O)}O<0&&(A=t,t=""),e.chars&&A&&e.chars(A)}if(t===o){e.chars&&e.chars(t);break}}function k(e){C+=e,t=t.substring(e)}function R(){var e=t.match(i);if(e){var n,r,o={tagName:e[1],attrs:[],start:C};for(k(e[0].length);!(n=t.match(c))&&(r=t.match(a));)k(r[0].length),o.attrs.push(r);if(n)return o.unarySlash=n[1],k(n[0].length),o.end=C,o}}function j(t){var n=t.tagName,a=t.unarySlash;m&&("p"===s&&r(n)&&F(s),y(n)&&s===n&&F(n));for(var o=x(n)||!!a,i=t.attrs.length,c=new Array(i),u=0;u=0&&v[a].lowerCasedTag!==o;a--);else a=0;if(a>=0){for(var i=v.length-1;i>=a;i--)e.end&&e.end(v[i].tag,n,r);v.length=a,s=a&&v[a-1].tag}else"br"===o?e.start&&e.start(t,[],!0,n,r):"p"===o&&(e.start&&e.start(t,[],!1,n,r),e.end&&e.end(t,n,r))}F()}(t,{start:function(t,e,n,r,a){var i={tag:t,attrs:e,unary:n,start:r,children:[]};s.children.push(i),n?i.end=a:(i.contentStart=a,o.push(i),s=i)},end:function(t,e,n){o.pop(),s.contentEnd=e,s.end=n,s=o[o.length-1]}}),e},hasPragma:t,astFormat:"vue",locStart:function(t){return t.start},locEnd:function(t){return t.end}}}}});