worker-css-741749bb.js 145 KB

123456789101112131415161718192021222324
  1. import{c as H}from"./index-3157015c.js";function V(E,I){for(var F=0;F<I.length;F++){const P=I[F];if(typeof P!="string"&&!Array.isArray(P)){for(const L in P)if(L!=="default"&&!(L in E)){const y=Object.getOwnPropertyDescriptor(P,L);y&&Object.defineProperty(E,L,y.get?y:{enumerable:!0,get:()=>P[L]})}}}return Object.freeze(Object.defineProperty(E,Symbol.toStringTag,{value:"Module"}))}var j={};(function(E){if(typeof E.window<"u"&&E.document||E.require&&E.define)return;E.console||(E.console=function(){var L=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:L})},E.console.error=E.console.warn=E.console.log=E.console.trace=E.console),E.window=E,E.ace=E,E.onerror=function(L,y,b,p,k){postMessage({type:"error",data:{message:L,data:k&&k.data,file:y,line:b,col:p,stack:k&&k.stack}})},E.normalizeModule=function(L,y){if(y.indexOf("!")!==-1){var b=y.split("!");return E.normalizeModule(L,b[0])+"!"+E.normalizeModule(L,b[1])}if(y.charAt(0)=="."){var p=L.split("/").slice(0,-1).join("/");for(y=(p?p+"/":"")+y;y.indexOf(".")!==-1&&k!=y;){var k=y;y=y.replace(/^\.\//,"").replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return y},E.require=function(y,b){if(b||(b=y,y=null),!b.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");b=E.normalizeModule(y,b);var p=E.require.modules[b];if(p)return p.initialized||(p.initialized=!0,p.exports=p.factory().exports),p.exports;if(!E.require.tlns)return console.log("unable to load "+b);var k=I(b,E.require.tlns);return k.slice(-3)!=".js"&&(k+=".js"),E.require.id=b,E.require.modules[b]={},importScripts(k),E.require(y,b)};function I(L,y){for(var b=L,p="";b;){var k=y[b];if(typeof k=="string")return k+p;if(k)return k.location.replace(/\/*$/,"/")+(p||k.main||k.name);if(k===!1)return"";var i=b.lastIndexOf("/");if(i===-1)break;p=b.substr(i)+p,b=b.slice(0,i)}return L}E.require.modules={},E.require.tlns={},E.define=function(L,y,b){if(arguments.length==2?(b=y,typeof L!="string"&&(y=L,L=E.require.id)):arguments.length==1&&(b=L,y=[],L=E.require.id),typeof b!="function"){E.require.modules[L]={exports:b,initialized:!0};return}y.length||(y=["require","exports","module"]);var p=function(k){return E.require(L,k)};E.require.modules[L]={exports:{},factory:function(){var k=this,i=b.apply(this,y.slice(0,b.length).map(function(e){switch(e){case"require":return p;case"exports":return k.exports;case"module":return k;default:return p(e)}}));return i&&(k.exports=i),k}}},E.define.amd={},E.require.tlns={},E.initBaseUrls=function(y){for(var b in y)this.require.tlns[b]=y[b]},E.initSender=function(){var y=E.require("ace/lib/event_emitter").EventEmitter,b=E.require("ace/lib/oop"),p=function(){};return function(){b.implement(this,y),this.callback=function(k,i){postMessage({type:"call",id:i,data:k})},this.emit=function(k,i){postMessage({type:"event",name:k,data:i})}}.call(p.prototype),new p};var F=E.main=null,P=E.sender=null;E.onmessage=function(L){var y=L.data;if(y.event&&P)P._signal(y.event,y.data);else if(y.command)if(F[y.command])F[y.command].apply(F,y.args);else if(E[y.command])E[y.command].apply(E,y.args);else throw new Error("Unknown command:"+y.command);else if(y.init){E.initBaseUrls(y.tlns),P=E.sender=E.initSender();var b=this.require(y.module)[y.classname];F=E.main=new b(P)}}})(H);ace.define("ace/lib/oop",[],function(E,I,F){I.inherits=function(P,L){P.super_=L,P.prototype=Object.create(L.prototype,{constructor:{value:P,enumerable:!1,writable:!0,configurable:!0}})},I.mixin=function(P,L){for(var y in L)P[y]=L[y];return P},I.implement=function(P,L){I.mixin(P,L)}});ace.define("ace/lib/lang",[],function(E,I,F){I.last=function(y){return y[y.length-1]},I.stringReverse=function(y){return y.split("").reverse().join("")},I.stringRepeat=function(y,b){for(var p="";b>0;)b&1&&(p+=y),(b>>=1)&&(y+=y);return p};var P=/^\s\s*/,L=/\s\s*$/;I.stringTrimLeft=function(y){return y.replace(P,"")},I.stringTrimRight=function(y){return y.replace(L,"")},I.copyObject=function(y){var b={};for(var p in y)b[p]=y[p];return b},I.copyArray=function(y){for(var b=[],p=0,k=y.length;p<k;p++)y[p]&&typeof y[p]=="object"?b[p]=this.copyObject(y[p]):b[p]=y[p];return b},I.deepCopy=function y(b){if(typeof b!="object"||!b)return b;var p;if(Array.isArray(b)){p=[];for(var k=0;k<b.length;k++)p[k]=y(b[k]);return p}if(Object.prototype.toString.call(b)!=="[object Object]")return b;p={};for(var k in b)p[k]=y(b[k]);return p},I.arrayToMap=function(y){for(var b={},p=0;p<y.length;p++)b[y[p]]=1;return b},I.createMap=function(y){var b=Object.create(null);for(var p in y)b[p]=y[p];return b},I.arrayRemove=function(y,b){for(var p=0;p<=y.length;p++)b===y[p]&&y.splice(p,1)},I.escapeRegExp=function(y){return y.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},I.escapeHTML=function(y){return(""+y).replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},I.getMatchOffsets=function(y,b){var p=[];return y.replace(b,function(k){p.push({offset:arguments[arguments.length-2],length:k.length})}),p},I.deferredCall=function(y){var b=null,p=function(){b=null,y()},k=function(i){return k.cancel(),b=setTimeout(p,i||0),k};return k.schedule=k,k.call=function(){return this.cancel(),y(),k},k.cancel=function(){return clearTimeout(b),b=null,k},k.isPending=function(){return b},k},I.delayedCall=function(y,b){var p=null,k=function(){p=null,y()},i=function(e){p==null&&(p=setTimeout(k,e||b))};return i.delay=function(e){p&&clearTimeout(p),p=setTimeout(k,e||b)},i.schedule=i,i.call=function(){this.cancel(),y()},i.cancel=function(){p&&clearTimeout(p),p=null},i.isPending=function(){return p},i}});ace.define("ace/apply_delta",[],function(E,I,F){I.applyDelta=function(P,L,y){var b=L.start.row,p=L.start.column,k=P[b]||"";switch(L.action){case"insert":var i=L.lines;if(i.length===1)P[b]=k.substring(0,p)+L.lines[0]+k.substring(p);else{var e=[b,1].concat(L.lines);P.splice.apply(P,e),P[b]=k.substring(0,p)+P[b],P[b+L.lines.length-1]+=k.substring(p)}break;case"remove":var s=L.end.column,l=L.end.row;b===l?P[b]=k.substring(0,p)+k.substring(s):P.splice(b,l-b+1,k.substring(0,p)+P[l].substring(s));break}}});ace.define("ace/lib/event_emitter",[],function(E,I,F){var P={},L=function(){this.propagationStopped=!0},y=function(){this.defaultPrevented=!0};P._emit=P._dispatchEvent=function(b,p){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var k=this._eventRegistry[b]||[],i=this._defaultHandlers[b];if(!(!k.length&&!i)){(typeof p!="object"||!p)&&(p={}),p.type||(p.type=b),p.stopPropagation||(p.stopPropagation=L),p.preventDefault||(p.preventDefault=y),k=k.slice();for(var e=0;e<k.length&&(k[e](p,this),!p.propagationStopped);e++);if(i&&!p.defaultPrevented)return i(p,this)}},P._signal=function(b,p){var k=(this._eventRegistry||{})[b];if(k){k=k.slice();for(var i=0;i<k.length;i++)k[i](p,this)}},P.once=function(b,p){var k=this;if(this.on(b,function i(){k.off(b,i),p.apply(null,arguments)}),!p)return new Promise(function(i){p=i})},P.setDefaultHandler=function(b,p){var k=this._defaultHandlers;if(k||(k=this._defaultHandlers={_disabled_:{}}),k[b]){var i=k[b],e=k._disabled_[b];e||(k._disabled_[b]=e=[]),e.push(i);var s=e.indexOf(p);s!=-1&&e.splice(s,1)}k[b]=p},P.removeDefaultHandler=function(b,p){var k=this._defaultHandlers;if(k){var i=k._disabled_[b];if(k[b]==p)i&&this.setDefaultHandler(b,i.pop());else if(i){var e=i.indexOf(p);e!=-1&&i.splice(e,1)}}},P.on=P.addEventListener=function(b,p,k){this._eventRegistry=this._eventRegistry||{};var i=this._eventRegistry[b];return i||(i=this._eventRegistry[b]=[]),i.indexOf(p)==-1&&i[k?"unshift":"push"](p),p},P.off=P.removeListener=P.removeEventListener=function(b,p){this._eventRegistry=this._eventRegistry||{};var k=this._eventRegistry[b];if(k){var i=k.indexOf(p);i!==-1&&k.splice(i,1)}},P.removeAllListeners=function(b){b||(this._eventRegistry=this._defaultHandlers=void 0),this._eventRegistry&&(this._eventRegistry[b]=void 0),this._defaultHandlers&&(this._defaultHandlers[b]=void 0)},I.EventEmitter=P});ace.define("ace/range",[],function(E,I,F){var P=function(y,b){return y.row-b.row||y.column-b.column},L=function(){function y(b,p,k,i){this.start={row:b,column:p},this.end={row:k,column:i}}return y.prototype.isEqual=function(b){return this.start.row===b.start.row&&this.end.row===b.end.row&&this.start.column===b.start.column&&this.end.column===b.end.column},y.prototype.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},y.prototype.contains=function(b,p){return this.compare(b,p)==0},y.prototype.compareRange=function(b){var p,k=b.end,i=b.start;return p=this.compare(k.row,k.column),p==1?(p=this.compare(i.row,i.column),p==1?2:p==0?1:0):p==-1?-2:(p=this.compare(i.row,i.column),p==-1?-1:p==1?42:0)},y.prototype.comparePoint=function(b){return this.compare(b.row,b.column)},y.prototype.containsRange=function(b){return this.comparePoint(b.start)==0&&this.comparePoint(b.end)==0},y.prototype.intersects=function(b){var p=this.compareRange(b);return p==-1||p==0||p==1},y.prototype.isEnd=function(b,p){return this.end.row==b&&this.end.column==p},y.prototype.isStart=function(b,p){return this.start.row==b&&this.start.column==p},y.prototype.setStart=function(b,p){typeof b=="object"?(this.start.column=b.column,this.start.row=b.row):(this.start.row=b,this.start.column=p)},y.prototype.setEnd=function(b,p){typeof b=="object"?(this.end.column=b.column,this.end.row=b.row):(this.end.row=b,this.end.column=p)},y.prototype.inside=function(b,p){return this.compare(b,p)==0?!(this.isEnd(b,p)||this.isStart(b,p)):!1},y.prototype.insideStart=function(b,p){return this.compare(b,p)==0?!this.isEnd(b,p):!1},y.prototype.insideEnd=function(b,p){return this.compare(b,p)==0?!this.isStart(b,p):!1},y.prototype.compare=function(b,p){return!this.isMultiLine()&&b===this.start.row?p<this.start.column?-1:p>this.end.column?1:0:b<this.start.row?-1:b>this.end.row?1:this.start.row===b?p>=this.start.column?0:-1:this.end.row===b?p<=this.end.column?0:1:0},y.prototype.compareStart=function(b,p){return this.start.row==b&&this.start.column==p?-1:this.compare(b,p)},y.prototype.compareEnd=function(b,p){return this.end.row==b&&this.end.column==p?1:this.compare(b,p)},y.prototype.compareInside=function(b,p){return this.end.row==b&&this.end.column==p?1:this.start.row==b&&this.start.column==p?-1:this.compare(b,p)},y.prototype.clipRows=function(b,p){if(this.end.row>p)var k={row:p+1,column:0};else if(this.end.row<b)var k={row:b,column:0};if(this.start.row>p)var i={row:p+1,column:0};else if(this.start.row<b)var i={row:b,column:0};return y.fromPoints(i||this.start,k||this.end)},y.prototype.extend=function(b,p){var k=this.compare(b,p);if(k==0)return this;if(k==-1)var i={row:b,column:p};else var e={row:b,column:p};return y.fromPoints(i||this.start,e||this.end)},y.prototype.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},y.prototype.isMultiLine=function(){return this.start.row!==this.end.row},y.prototype.clone=function(){return y.fromPoints(this.start,this.end)},y.prototype.collapseRows=function(){return this.end.column==0?new y(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new y(this.start.row,0,this.end.row,0)},y.prototype.toScreenRange=function(b){var p=b.documentToScreenPosition(this.start),k=b.documentToScreenPosition(this.end);return new y(p.row,p.column,k.row,k.column)},y.prototype.moveBy=function(b,p){this.start.row+=b,this.start.column+=p,this.end.row+=b,this.end.column+=p},y}();L.fromPoints=function(y,b){return new L(y.row,y.column,b.row,b.column)},L.comparePoints=P,L.comparePoints=function(y,b){return y.row-b.row||y.column-b.column},I.Range=L});ace.define("ace/anchor",[],function(E,I,F){var P=E("./lib/oop"),L=E("./lib/event_emitter").EventEmitter,y=function(){function k(i,e,s){this.$onChange=this.onChange.bind(this),this.attach(i),typeof s>"u"?this.setPosition(e.row,e.column):this.setPosition(e,s)}return k.prototype.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},k.prototype.getDocument=function(){return this.document},k.prototype.onChange=function(i){if(!(i.start.row==i.end.row&&i.start.row!=this.row)&&!(i.start.row>this.row)){var e=p(i,{row:this.row,column:this.column},this.$insertRight);this.setPosition(e.row,e.column,!0)}},k.prototype.setPosition=function(i,e,s){var l;if(s?l={row:i,column:e}:l=this.$clipPositionToDocument(i,e),!(this.row==l.row&&this.column==l.column)){var u={row:this.row,column:this.column};this.row=l.row,this.column=l.column,this._signal("change",{old:u,value:l})}},k.prototype.detach=function(){this.document.off("change",this.$onChange)},k.prototype.attach=function(i){this.document=i||this.document,this.document.on("change",this.$onChange)},k.prototype.$clipPositionToDocument=function(i,e){var s={};return i>=this.document.getLength()?(s.row=Math.max(0,this.document.getLength()-1),s.column=this.document.getLine(s.row).length):i<0?(s.row=0,s.column=0):(s.row=i,s.column=Math.min(this.document.getLine(s.row).length,Math.max(0,e))),e<0&&(s.column=0),s},k}();y.prototype.$insertRight=!1,P.implement(y.prototype,L);function b(k,i,e){var s=e?k.column<=i.column:k.column<i.column;return k.row<i.row||k.row==i.row&&s}function p(k,i,e){var s=k.action=="insert",l=(s?1:-1)*(k.end.row-k.start.row),u=(s?1:-1)*(k.end.column-k.start.column),o=k.start,a=s?o:k.end;return b(i,o,e)?{row:i.row,column:i.column}:b(a,i,!e)?{row:i.row+l,column:i.column+(i.row==a.row?u:0)}:{row:o.row,column:o.column}}I.Anchor=y});ace.define("ace/document",[],function(E,I,F){var P=E("./lib/oop"),L=E("./apply_delta").applyDelta,y=E("./lib/event_emitter").EventEmitter,b=E("./range").Range,p=E("./anchor").Anchor,k=function(){function i(e){this.$lines=[""],e.length===0?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)}return i.prototype.setValue=function(e){var s=this.getLength()-1;this.remove(new b(0,0,s,this.getLine(s).length)),this.insert({row:0,column:0},e||"")},i.prototype.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},i.prototype.createAnchor=function(e,s){return new p(this,e,s)},i.prototype.$detectNewLine=function(e){var s=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=s?s[1]:`
  2. `,this._signal("changeNewLineMode")},i.prototype.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return`\r
  3. `;case"unix":return`
  4. `;default:return this.$autoNewLine||`
  5. `}},i.prototype.setNewLineMode=function(e){this.$newLineMode!==e&&(this.$newLineMode=e,this._signal("changeNewLineMode"))},i.prototype.getNewLineMode=function(){return this.$newLineMode},i.prototype.isNewLine=function(e){return e==`\r
  6. `||e=="\r"||e==`
  7. `},i.prototype.getLine=function(e){return this.$lines[e]||""},i.prototype.getLines=function(e,s){return this.$lines.slice(e,s+1)},i.prototype.getAllLines=function(){return this.getLines(0,this.getLength())},i.prototype.getLength=function(){return this.$lines.length},i.prototype.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},i.prototype.getLinesForRange=function(e){var s;if(e.start.row===e.end.row)s=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{s=this.getLines(e.start.row,e.end.row),s[0]=(s[0]||"").substring(e.start.column);var l=s.length-1;e.end.row-e.start.row==l&&(s[l]=s[l].substring(0,e.end.column))}return s},i.prototype.insertLines=function(e,s){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,s)},i.prototype.removeLines=function(e,s){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,s)},i.prototype.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},i.prototype.insert=function(e,s){return this.getLength()<=1&&this.$detectNewLine(s),this.insertMergedLines(e,this.$split(s))},i.prototype.insertInLine=function(e,s){var l=this.clippedPos(e.row,e.column),u=this.pos(e.row,e.column+s.length);return this.applyDelta({start:l,end:u,action:"insert",lines:[s]},!0),this.clonePos(u)},i.prototype.clippedPos=function(e,s){var l=this.getLength();e===void 0?e=l:e<0?e=0:e>=l&&(e=l-1,s=void 0);var u=this.getLine(e);return s==null&&(s=u.length),s=Math.min(Math.max(s,0),u.length),{row:e,column:s}},i.prototype.clonePos=function(e){return{row:e.row,column:e.column}},i.prototype.pos=function(e,s){return{row:e,column:s}},i.prototype.$clipPosition=function(e){var s=this.getLength();return e.row>=s?(e.row=Math.max(0,s-1),e.column=this.getLine(s-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},i.prototype.insertFullLines=function(e,s){e=Math.min(Math.max(e,0),this.getLength());var l=0;e<this.getLength()?(s=s.concat([""]),l=0):(s=[""].concat(s),e--,l=this.$lines[e].length),this.insertMergedLines({row:e,column:l},s)},i.prototype.insertMergedLines=function(e,s){var l=this.clippedPos(e.row,e.column),u={row:l.row+s.length-1,column:(s.length==1?l.column:0)+s[s.length-1].length};return this.applyDelta({start:l,end:u,action:"insert",lines:s}),this.clonePos(u)},i.prototype.remove=function(e){var s=this.clippedPos(e.start.row,e.start.column),l=this.clippedPos(e.end.row,e.end.column);return this.applyDelta({start:s,end:l,action:"remove",lines:this.getLinesForRange({start:s,end:l})}),this.clonePos(s)},i.prototype.removeInLine=function(e,s,l){var u=this.clippedPos(e,s),o=this.clippedPos(e,l);return this.applyDelta({start:u,end:o,action:"remove",lines:this.getLinesForRange({start:u,end:o})},!0),this.clonePos(u)},i.prototype.removeFullLines=function(e,s){e=Math.min(Math.max(0,e),this.getLength()-1),s=Math.min(Math.max(0,s),this.getLength()-1);var l=s==this.getLength()-1&&e>0,u=s<this.getLength()-1,o=l?e-1:e,a=l?this.getLine(o).length:0,t=u?s+1:s,c=u?0:this.getLine(t).length,d=new b(o,a,t,c),g=this.$lines.slice(e,s+1);return this.applyDelta({start:d.start,end:d.end,action:"remove",lines:this.getLinesForRange(d)}),g},i.prototype.removeNewLine=function(e){e<this.getLength()-1&&e>=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},i.prototype.replace=function(e,s){if(e instanceof b||(e=b.fromPoints(e.start,e.end)),s.length===0&&e.isEmpty())return e.start;if(s==this.getTextRange(e))return e.end;this.remove(e);var l;return s?l=this.insert(e.start,s):l=e.start,l},i.prototype.applyDeltas=function(e){for(var s=0;s<e.length;s++)this.applyDelta(e[s])},i.prototype.revertDeltas=function(e){for(var s=e.length-1;s>=0;s--)this.revertDelta(e[s])},i.prototype.applyDelta=function(e,s){var l=e.action=="insert";(l?e.lines.length<=1&&!e.lines[0]:!b.comparePoints(e.start,e.end))||(l&&e.lines.length>2e4?this.$splitAndapplyLargeDelta(e,2e4):(L(this.$lines,e,s),this._signal("change",e)))},i.prototype.$safeApplyDelta=function(e){var s=this.$lines.length;(e.action=="remove"&&e.start.row<s&&e.end.row<s||e.action=="insert"&&e.start.row<=s)&&this.applyDelta(e)},i.prototype.$splitAndapplyLargeDelta=function(e,s){for(var l=e.lines,u=l.length-s+1,o=e.start.row,a=e.start.column,t=0,c=0;t<u;t=c){c+=s-1;var d=l.slice(t,c);d.push(""),this.applyDelta({start:this.pos(o+t,a),end:this.pos(o+c,a=0),action:e.action,lines:d},!0)}e.lines=l.slice(t),e.start.row=o+t,e.start.column=a,this.applyDelta(e,!0)},i.prototype.revertDelta=function(e){this.$safeApplyDelta({start:this.clonePos(e.start),end:this.clonePos(e.end),action:e.action=="insert"?"remove":"insert",lines:e.lines.slice()})},i.prototype.indexToPosition=function(e,s){for(var l=this.$lines||this.getAllLines(),u=this.getNewLineCharacter().length,o=s||0,a=l.length;o<a;o++)if(e-=l[o].length+u,e<0)return{row:o,column:e+l[o].length+u};return{row:a-1,column:e+l[a-1].length+u}},i.prototype.positionToIndex=function(e,s){for(var l=this.$lines||this.getAllLines(),u=this.getNewLineCharacter().length,o=0,a=Math.min(e.row,l.length),t=s||0;t<a;++t)o+=l[t].length+u;return o+e.column},i.prototype.$split=function(e){return e.split(/\r\n|\r|\n/)},i}();k.prototype.$autoNewLine="",k.prototype.$newLineMode="auto",P.implement(k.prototype,y),I.Document=k});ace.define("ace/worker/mirror",[],function(E,I,F){var P=E("../document").Document,L=E("../lib/lang"),y=I.Mirror=function(b){this.sender=b;var p=this.doc=new P(""),k=this.deferredUpdate=L.delayedCall(this.onUpdate.bind(this)),i=this;b.on("change",function(e){var s=e.data;if(s[0].start)p.applyDeltas(s);else for(var l=0;l<s.length;l+=2){var u,o;if(Array.isArray(s[l+1])?u={action:"insert",start:s[l],lines:s[l+1]}:u={action:"remove",start:s[l],end:s[l+1]},(u.action=="insert"?u.start:u.end).row>=p.$lines.length)throw o=new Error("Invalid delta"),o.data={path:i.$path,linesLength:p.$lines.length,start:u.start,end:u.end},o;p.applyDelta(u,!0)}if(i.$timeout)return k.schedule(i.$timeout);i.onUpdate()})};(function(){this.$timeout=500,this.setTimeout=function(b){this.$timeout=b},this.setValue=function(b){this.doc.setValue(b),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(b){this.sender.callback(this.doc.getValue(),b)},this.onUpdate=function(){},this.isPending=function(){return this.deferredUpdate.isPending()}}).call(y.prototype)});ace.define("ace/mode/css/csslint",[],function(E,I,F){var P=function(){var L=L||{},y=function(){var i;return i=function(){function e(s,l,u){function o(c,d){if(!l[c]){if(!s[c]){var g=typeof i=="function"&&i;if(!d&&g)return g(c,!0);if(a)return a(c,!0);var w=new Error("Cannot find module '"+c+"'");throw w.code="MODULE_NOT_FOUND",w}var x=l[c]={exports:{}};s[c][0].call(x.exports,function(S){var T=s[c][1][S];return o(T||S)},x,x.exports,e,s,l,u)}return l[c].exports}for(var a=typeof i=="function"&&i,t=0;t<u.length;t++)o(u[t]);return o}return e}()({1:[function(e,s,l){s.exports={__proto__:null,aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32",currentColor:"The value of the 'color' property.",activeborder:"Active window border.",activecaption:"Active window caption.",appworkspace:"Background color of multiple document interface.",background:"Desktop background.",buttonface:"The face background color for 3-D elements that appear 3-D due to one layer of surrounding border.",buttonhighlight:"The color of the border facing the light source for 3-D elements that appear 3-D due to one layer of surrounding border.",buttonshadow:"The color of the border away from the light source for 3-D elements that appear 3-D due to one layer of surrounding border.",buttontext:"Text on push buttons.",captiontext:"Text in caption, size box, and scrollbar arrow box.",graytext:"Grayed (disabled) text. This color is set to #000 if the current display driver does not support a solid gray color.",greytext:"Greyed (disabled) text. This color is set to #000 if the current display driver does not support a solid grey color.",highlight:"Item(s) selected in a control.",highlighttext:"Text of item(s) selected in a control.",inactiveborder:"Inactive window border.",inactivecaption:"Inactive window caption.",inactivecaptiontext:"Color of text in an inactive caption.",infobackground:"Background color for tooltip controls.",infotext:"Text color for tooltip controls.",menu:"Menu background.",menutext:"Text in menus.",scrollbar:"Scroll bar gray area.",threeddarkshadow:"The color of the darker (generally outer) of the two borders away from the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedface:"The face background color for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedhighlight:"The color of the lighter (generally outer) of the two borders facing the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedlightshadow:"The color of the darker (generally inner) of the two borders facing the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedshadow:"The color of the lighter (generally inner) of the two borders away from the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",window:"Window background.",windowframe:"Window frame.",windowtext:"Text in windows."}},{}],2:[function(e,s,l){s.exports=a;var u=e("../util/SyntaxUnit"),o=e("./Parser");function a(t,c,d){u.call(this,t,c,d,o.COMBINATOR_TYPE),this.type="unknown",/^\s+$/.test(t)?this.type="descendant":t===">"?this.type="child":t==="+"?this.type="adjacent-sibling":t==="~"&&(this.type="sibling")}a.prototype=new u,a.prototype.constructor=a},{"../util/SyntaxUnit":26,"./Parser":6}],3:[function(e,s,l){s.exports=a;var u=e("../util/StringReader"),o=e("../util/SyntaxError");function a(t,c){this.match=function(d){var g;return d.mark(),g=t(d),g?d.drop():d.restore(),g},this.toString=typeof c=="function"?c:function(){return c}}a.prec={MOD:5,SEQ:4,ANDAND:3,OROR:2,ALT:1},a.parse=function(t){var c,d,g,w,x,S,T,A,O;if(c=new u(t),d=function(f){var D=c.readMatch(f);if(D===null)throw new o("Expected "+f,c.getLine(),c.getCol());return D},g=function(){for(var f=[w()];c.readMatch(" | ")!==null;)f.push(w());return f.length===1?f[0]:a.alt.apply(a,f)},w=function(){for(var f=[x()];c.readMatch(" || ")!==null;)f.push(x());return f.length===1?f[0]:a.oror.apply(a,f)},x=function(){for(var f=[S()];c.readMatch(" && ")!==null;)f.push(S());return f.length===1?f[0]:a.andand.apply(a,f)},S=function(){for(var f=[T()];c.readMatch(/^ (?![&|\]])/)!==null;)f.push(T());return f.length===1?f[0]:a.seq.apply(a,f)},T=function(){var f=A();if(c.readMatch("?")!==null)return f.question();if(c.readMatch("*")!==null)return f.star();if(c.readMatch("+")!==null)return f.plus();if(c.readMatch("#")!==null)return f.hash();if(c.readMatch(/^\{\s*/)!==null){var D=d(/^\d+/);d(/^\s*,\s*/);var C=d(/^\d+/);return d(/^\s*\}/),f.braces(Number(D),Number(C))}return f},A=function(){if(c.readMatch("[ ")!==null){var f=g();return d(" ]"),f}return a.fromType(d(/^[^ ?*+#{]+/))},O=g(),!c.eof())throw new o("Expected end of string",c.getLine(),c.getCol());return O},a.cast=function(t){return t instanceof a?t:a.parse(t)},a.fromType=function(t){var c=e("./ValidationTypes");return new a(function(d){return d.hasNext()&&c.isType(d,t)},t)},a.seq=function(){var t=Array.prototype.slice.call(arguments).map(a.cast);return t.length===1?t[0]:new a(function(c){var d,g=!0;for(d=0;g&&d<t.length;d++)g=t[d].match(c);return g},function(c){var d=a.prec.SEQ,g=t.map(function(w){return w.toString(d)}).join(" ");return c>d&&(g="[ "+g+" ]"),g})},a.alt=function(){var t=Array.prototype.slice.call(arguments).map(a.cast);return t.length===1?t[0]:new a(function(c){var d,g=!1;for(d=0;!g&&d<t.length;d++)g=t[d].match(c);return g},function(c){var d=a.prec.ALT,g=t.map(function(w){return w.toString(d)}).join(" | ");return c>d&&(g="[ "+g+" ]"),g})},a.many=function(t){var c=Array.prototype.slice.call(arguments,1).reduce(function(g,w){if(w.expand){var x=e("./ValidationTypes");g.push.apply(g,x.complex[w.expand].options)}else g.push(a.cast(w));return g},[]);t===!0&&(t=c.map(function(){return!0}));var d=new a(function(g){var w=[],x=0,S=0,T=function(f){return S===0?(x=Math.max(f,x),f===c.length):f===x},A=function(f){for(var D=0;D<c.length;D++)if(!w[D])if(g.mark(),c[D].match(g)){if(w[D]=!0,A(f+(t===!1||t[D]?1:0)))return g.drop(),!0;g.restore(),w[D]=!1}else g.drop();return T(f)};if(A(0)||(S++,A(0)),t===!1)return x>0;for(var O=0;O<c.length;O++)if(t[O]&&!w[O])return!1;return!0},function(g){var w=t===!1?a.prec.OROR:a.prec.ANDAND,x=c.map(function(S,T){return t!==!1&&!t[T]?S.toString(a.prec.MOD)+"?":S.toString(w)}).join(t===!1?" || ":" && ");return g>w&&(x="[ "+x+" ]"),x});return d.options=c,d},a.andand=function(){var t=Array.prototype.slice.call(arguments);return t.unshift(!0),a.many.apply(a,t)},a.oror=function(){var t=Array.prototype.slice.call(arguments);return t.unshift(!1),a.many.apply(a,t)},a.prototype={constructor:a,match:function(){throw new Error("unimplemented")},toString:function(){throw new Error("unimplemented")},func:function(){return this.match.bind(this)},then:function(t){return a.seq(this,t)},or:function(t){return a.alt(this,t)},andand:function(t){return a.many(!0,this,t)},oror:function(t){return a.many(!1,this,t)},star:function(){return this.braces(0,1/0,"*")},plus:function(){return this.braces(1,1/0,"+")},question:function(){return this.braces(0,1,"?")},hash:function(){return this.braces(1,1/0,"#",a.cast(","))},braces:function(t,c,d,g){var w=this,x=g?g.then(this):this;return d||(d="{"+t+","+c+"}"),new a(function(S){var T=!0,A;for(A=0;A<c&&(A>0&&g?T=x.match(S):T=w.match(S),!!T);A++);return A>=t},function(){return w.toString(a.prec.MOD)+d})}}},{"../util/StringReader":24,"../util/SyntaxError":25,"./ValidationTypes":21}],4:[function(e,s,l){s.exports=a;var u=e("../util/SyntaxUnit"),o=e("./Parser");function a(t,c){u.call(this,"("+t+(c!==null?":"+c:"")+")",t.startLine,t.startCol,o.MEDIA_FEATURE_TYPE),this.name=t,this.value=c}a.prototype=new u,a.prototype.constructor=a},{"../util/SyntaxUnit":26,"./Parser":6}],5:[function(e,s,l){s.exports=a;var u=e("../util/SyntaxUnit"),o=e("./Parser");function a(t,c,d,g,w){u.call(this,(t?t+" ":"")+(c||"")+(c&&d.length>0?" and ":"")+d.join(" and "),g,w,o.MEDIA_QUERY_TYPE),this.modifier=t,this.mediaType=c,this.features=d}a.prototype=new u,a.prototype.constructor=a},{"../util/SyntaxUnit":26,"./Parser":6}],6:[function(e,s,l){s.exports=C;var u=e("../util/EventTarget"),o=e("../util/SyntaxError"),a=e("../util/SyntaxUnit"),t=e("./Combinator"),c=e("./MediaFeature"),d=e("./MediaQuery"),g=e("./PropertyName"),w=e("./PropertyValue"),x=e("./PropertyValuePart"),S=e("./Selector"),T=e("./SelectorPart"),A=e("./SelectorSubPart"),O=e("./TokenStream"),f=e("./Tokens"),D=e("./Validation");function C(z){u.call(this),this.options=z||{},this._tokenStream=null}C.DEFAULT_TYPE=0,C.COMBINATOR_TYPE=1,C.MEDIA_FEATURE_TYPE=2,C.MEDIA_QUERY_TYPE=3,C.PROPERTY_NAME_TYPE=4,C.PROPERTY_VALUE_TYPE=5,C.PROPERTY_VALUE_PART_TYPE=6,C.SELECTOR_TYPE=7,C.SELECTOR_PART_TYPE=8,C.SELECTOR_SUB_PART_TYPE=9,C.prototype=function(){var z=new u,N,v={__proto__:null,constructor:C,DEFAULT_TYPE:0,COMBINATOR_TYPE:1,MEDIA_FEATURE_TYPE:2,MEDIA_QUERY_TYPE:3,PROPERTY_NAME_TYPE:4,PROPERTY_VALUE_TYPE:5,PROPERTY_VALUE_PART_TYPE:6,SELECTOR_TYPE:7,SELECTOR_PART_TYPE:8,SELECTOR_SUB_PART_TYPE:9,_stylesheet:function(){var r=this._tokenStream,n,h,m;for(this.fire("startstylesheet"),this._charset(),this._skipCruft();r.peek()===f.IMPORT_SYM;)this._import(),this._skipCruft();for(;r.peek()===f.NAMESPACE_SYM;)this._namespace(),this._skipCruft();for(m=r.peek();m>f.EOF;){try{switch(m){case f.MEDIA_SYM:this._media(),this._skipCruft();break;case f.PAGE_SYM:this._page(),this._skipCruft();break;case f.FONT_FACE_SYM:this._font_face(),this._skipCruft();break;case f.KEYFRAMES_SYM:this._keyframes(),this._skipCruft();break;case f.VIEWPORT_SYM:this._viewport(),this._skipCruft();break;case f.DOCUMENT_SYM:this._document(),this._skipCruft();break;case f.SUPPORTS_SYM:this._supports(),this._skipCruft();break;case f.UNKNOWN_SYM:if(r.get(),this.options.strict)throw new o("Unknown @ rule.",r.LT(0).startLine,r.LT(0).startCol);for(this.fire({type:"error",error:null,message:"Unknown @ rule: "+r.LT(0).value+".",line:r.LT(0).startLine,col:r.LT(0).startCol}),n=0;r.advance([f.LBRACE,f.RBRACE])===f.LBRACE;)n++;for(;n;)r.advance([f.RBRACE]),n--;break;case f.S:this._readWhitespace();break;default:if(!this._ruleset())switch(m){case f.CHARSET_SYM:throw h=r.LT(1),this._charset(!1),new o("@charset not allowed here.",h.startLine,h.startCol);case f.IMPORT_SYM:throw h=r.LT(1),this._import(!1),new o("@import not allowed here.",h.startLine,h.startCol);case f.NAMESPACE_SYM:throw h=r.LT(1),this._namespace(!1),new o("@namespace not allowed here.",h.startLine,h.startCol);default:r.get(),this._unexpectedToken(r.token())}}}catch(_){if(_ instanceof o&&!this.options.strict)this.fire({type:"error",error:_,message:_.message,line:_.line,col:_.col});else throw _}m=r.peek()}m!==f.EOF&&this._unexpectedToken(r.token()),this.fire("endstylesheet")},_charset:function(r){var n=this._tokenStream,h,m,_,R;n.match(f.CHARSET_SYM)&&(_=n.token().startLine,R=n.token().startCol,this._readWhitespace(),n.mustMatch(f.STRING),m=n.token(),h=m.value,this._readWhitespace(),n.mustMatch(f.SEMICOLON),r!==!1&&this.fire({type:"charset",charset:h,line:_,col:R}))},_import:function(r){var n=this._tokenStream,h,m,_=[];n.mustMatch(f.IMPORT_SYM),m=n.token(),this._readWhitespace(),n.mustMatch([f.STRING,f.URI]),h=n.token().value.replace(/^(?:url\()?["']?([^"']+?)["']?\)?$/,"$1"),this._readWhitespace(),_=this._media_query_list(),n.mustMatch(f.SEMICOLON),this._readWhitespace(),r!==!1&&this.fire({type:"import",uri:h,media:_,line:m.startLine,col:m.startCol})},_namespace:function(r){var n=this._tokenStream,h,m,_,R;n.mustMatch(f.NAMESPACE_SYM),h=n.token().startLine,m=n.token().startCol,this._readWhitespace(),n.match(f.IDENT)&&(_=n.token().value,this._readWhitespace()),n.mustMatch([f.STRING,f.URI]),R=n.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/,"$1"),this._readWhitespace(),n.mustMatch(f.SEMICOLON),this._readWhitespace(),r!==!1&&this.fire({type:"namespace",prefix:_,uri:R,line:h,col:m})},_supports:function(r){var n=this._tokenStream,h,m;if(n.match(f.SUPPORTS_SYM)){for(h=n.token().startLine,m=n.token().startCol,this._readWhitespace(),this._supports_condition(),this._readWhitespace(),n.mustMatch(f.LBRACE),this._readWhitespace(),r!==!1&&this.fire({type:"startsupports",line:h,col:m});this._ruleset(););n.mustMatch(f.RBRACE),this._readWhitespace(),this.fire({type:"endsupports",line:h,col:m})}},_supports_condition:function(){var r=this._tokenStream,n;if(r.match(f.IDENT))n=r.token().value.toLowerCase(),n==="not"?(r.mustMatch(f.S),this._supports_condition_in_parens()):r.unget();else for(this._supports_condition_in_parens(),this._readWhitespace();r.peek()===f.IDENT;)n=r.LT(1).value.toLowerCase(),(n==="and"||n==="or")&&(r.mustMatch(f.IDENT),this._readWhitespace(),this._supports_condition_in_parens(),this._readWhitespace())},_supports_condition_in_parens:function(){var r=this._tokenStream,n;r.match(f.LPAREN)?(this._readWhitespace(),r.match(f.IDENT)?(n=r.token().value.toLowerCase(),n==="not"?(this._readWhitespace(),this._supports_condition(),this._readWhitespace(),r.mustMatch(f.RPAREN)):(r.unget(),this._supports_declaration_condition(!1))):(this._supports_condition(),this._readWhitespace(),r.mustMatch(f.RPAREN))):this._supports_declaration_condition()},_supports_declaration_condition:function(r){var n=this._tokenStream;r!==!1&&n.mustMatch(f.LPAREN),this._readWhitespace(),this._declaration(),n.mustMatch(f.RPAREN)},_media:function(){var r=this._tokenStream,n,h,m;for(r.mustMatch(f.MEDIA_SYM),n=r.token().startLine,h=r.token().startCol,this._readWhitespace(),m=this._media_query_list(),r.mustMatch(f.LBRACE),this._readWhitespace(),this.fire({type:"startmedia",media:m,line:n,col:h});;)if(r.peek()===f.PAGE_SYM)this._page();else if(r.peek()===f.FONT_FACE_SYM)this._font_face();else if(r.peek()===f.VIEWPORT_SYM)this._viewport();else if(r.peek()===f.DOCUMENT_SYM)this._document();else if(r.peek()===f.SUPPORTS_SYM)this._supports();else if(r.peek()===f.MEDIA_SYM)this._media();else if(!this._ruleset())break;r.mustMatch(f.RBRACE),this._readWhitespace(),this.fire({type:"endmedia",media:m,line:n,col:h})},_media_query_list:function(){var r=this._tokenStream,n=[];for(this._readWhitespace(),(r.peek()===f.IDENT||r.peek()===f.LPAREN)&&n.push(this._media_query());r.match(f.COMMA);)this._readWhitespace(),n.push(this._media_query());return n},_media_query:function(){var r=this._tokenStream,n=null,h=null,m=null,_=[];if(r.match(f.IDENT)&&(h=r.token().value.toLowerCase(),h!=="only"&&h!=="not"?(r.unget(),h=null):m=r.token()),this._readWhitespace(),r.peek()===f.IDENT?(n=this._media_type(),m===null&&(m=r.token())):r.peek()===f.LPAREN&&(m===null&&(m=r.LT(1)),_.push(this._media_expression())),n===null&&_.length===0)return null;for(this._readWhitespace();r.match(f.IDENT);)r.token().value.toLowerCase()!=="and"&&this._unexpectedToken(r.token()),this._readWhitespace(),_.push(this._media_expression());return new d(h,n,_,m.startLine,m.startCol)},_media_type:function(){return this._media_feature()},_media_expression:function(){var r=this._tokenStream,n=null,h,m=null;return r.mustMatch(f.LPAREN),this._readWhitespace(),n=this._media_feature(),this._readWhitespace(),r.match(f.COLON)&&(this._readWhitespace(),h=r.LT(1),m=this._expression()),r.mustMatch(f.RPAREN),this._readWhitespace(),new c(n,m?new a(m,h.startLine,h.startCol):null)},_media_feature:function(){var r=this._tokenStream;return this._readWhitespace(),r.mustMatch(f.IDENT),a.fromToken(r.token())},_page:function(){var r=this._tokenStream,n,h,m=null,_=null;r.mustMatch(f.PAGE_SYM),n=r.token().startLine,h=r.token().startCol,this._readWhitespace(),r.match(f.IDENT)&&(m=r.token().value,m.toLowerCase()==="auto"&&this._unexpectedToken(r.token())),r.peek()===f.COLON&&(_=this._pseudo_page()),this._readWhitespace(),this.fire({type:"startpage",id:m,pseudo:_,line:n,col:h}),this._readDeclarations(!0,!0),this.fire({type:"endpage",id:m,pseudo:_,line:n,col:h})},_margin:function(){var r=this._tokenStream,n,h,m=this._margin_sym();return m?(n=r.token().startLine,h=r.token().startCol,this.fire({type:"startpagemargin",margin:m,line:n,col:h}),this._readDeclarations(!0),this.fire({type:"endpagemargin",margin:m,line:n,col:h}),!0):!1},_margin_sym:function(){var r=this._tokenStream;return r.match([f.TOPLEFTCORNER_SYM,f.TOPLEFT_SYM,f.TOPCENTER_SYM,f.TOPRIGHT_SYM,f.TOPRIGHTCORNER_SYM,f.BOTTOMLEFTCORNER_SYM,f.BOTTOMLEFT_SYM,f.BOTTOMCENTER_SYM,f.BOTTOMRIGHT_SYM,f.BOTTOMRIGHTCORNER_SYM,f.LEFTTOP_SYM,f.LEFTMIDDLE_SYM,f.LEFTBOTTOM_SYM,f.RIGHTTOP_SYM,f.RIGHTMIDDLE_SYM,f.RIGHTBOTTOM_SYM])?a.fromToken(r.token()):null},_pseudo_page:function(){var r=this._tokenStream;return r.mustMatch(f.COLON),r.mustMatch(f.IDENT),r.token().value},_font_face:function(){var r=this._tokenStream,n,h;r.mustMatch(f.FONT_FACE_SYM),n=r.token().startLine,h=r.token().startCol,this._readWhitespace(),this.fire({type:"startfontface",line:n,col:h}),this._readDeclarations(!0),this.fire({type:"endfontface",line:n,col:h})},_viewport:function(){var r=this._tokenStream,n,h;r.mustMatch(f.VIEWPORT_SYM),n=r.token().startLine,h=r.token().startCol,this._readWhitespace(),this.fire({type:"startviewport",line:n,col:h}),this._readDeclarations(!0),this.fire({type:"endviewport",line:n,col:h})},_document:function(){var r=this._tokenStream,n,h=[],m="";for(r.mustMatch(f.DOCUMENT_SYM),n=r.token(),/^@-([^-]+)-/.test(n.value)&&(m=RegExp.$1),this._readWhitespace(),h.push(this._document_function());r.match(f.COMMA);)this._readWhitespace(),h.push(this._document_function());r.mustMatch(f.LBRACE),this._readWhitespace(),this.fire({type:"startdocument",functions:h,prefix:m,line:n.startLine,col:n.startCol});for(var _=!0;_;)switch(r.peek()){case f.PAGE_SYM:this._page();break;case f.FONT_FACE_SYM:this._font_face();break;case f.VIEWPORT_SYM:this._viewport();break;case f.MEDIA_SYM:this._media();break;case f.KEYFRAMES_SYM:this._keyframes();break;case f.DOCUMENT_SYM:this._document();break;default:_=!!this._ruleset()}r.mustMatch(f.RBRACE),n=r.token(),this._readWhitespace(),this.fire({type:"enddocument",functions:h,prefix:m,line:n.startLine,col:n.startCol})},_document_function:function(){var r=this._tokenStream,n;return r.match(f.URI)?(n=r.token().value,this._readWhitespace()):n=this._function(),n},_operator:function(r){var n=this._tokenStream,h=null;return(n.match([f.SLASH,f.COMMA])||r&&n.match([f.PLUS,f.STAR,f.MINUS]))&&(h=n.token(),this._readWhitespace()),h?x.fromToken(h):null},_combinator:function(){var r=this._tokenStream,n=null,h;return r.match([f.PLUS,f.GREATER,f.TILDE])&&(h=r.token(),n=new t(h.value,h.startLine,h.startCol),this._readWhitespace()),n},_unary_operator:function(){var r=this._tokenStream;return r.match([f.MINUS,f.PLUS])?r.token().value:null},_property:function(){var r=this._tokenStream,n=null,h=null,m="",_,R,M;if(r.peek()===f.STAR&&this.options.starHack&&(r.get(),_=r.token(),h=_.value,R=_.startLine,M=_.startCol),r.peek()===f.MINUS&&(r.get(),_=r.token(),m=_.value,R=_.startLine,M=_.startCol),r.match(f.IDENT))_=r.token(),m+=_.value,m.charAt(0)==="_"&&this.options.underscoreHack&&(h="_",m=m.substring(1)),n=new g(m,h,R||_.startLine,M||_.startCol),this._readWhitespace();else{var U=r.peek();U!==f.EOF&&U!==f.RBRACE&&this._unexpectedToken(r.LT(1))}return n},_ruleset:function(){var r=this._tokenStream,n,h;try{h=this._selectors_group()}catch(m){if(m instanceof o&&!this.options.strict){if(this.fire({type:"error",error:m,message:m.message,line:m.line,col:m.col}),n=r.advance([f.RBRACE]),n!==f.RBRACE)throw m}else throw m;return!0}return h&&(this.fire({type:"startrule",selectors:h,line:h[0].line,col:h[0].col}),this._readDeclarations(!0),this.fire({type:"endrule",selectors:h,line:h[0].line,col:h[0].col})),h},_selectors_group:function(){var r=this._tokenStream,n=[],h;if(h=this._selector(),h!==null)for(n.push(h);r.match(f.COMMA);)this._readWhitespace(),h=this._selector(),h!==null?n.push(h):this._unexpectedToken(r.LT(1));return n.length?n:null},_selector:function(){var r=this._tokenStream,n=[],h=null,m=null,_=null;if(h=this._simple_selector_sequence(),h===null)return null;n.push(h);do if(m=this._combinator(),m!==null)n.push(m),h=this._simple_selector_sequence(),h===null?this._unexpectedToken(r.LT(1)):n.push(h);else if(this._readWhitespace())_=new t(r.token().value,r.token().startLine,r.token().startCol),m=this._combinator(),h=this._simple_selector_sequence(),h===null?m!==null&&this._unexpectedToken(r.LT(1)):(m!==null?n.push(m):n.push(_),n.push(h));else break;while(!0);return new S(n,n[0].line,n[0].col)},_simple_selector_sequence:function(){var r=this._tokenStream,n=null,h=[],m="",_=[function(){return r.match(f.HASH)?new A(r.token().value,"id",r.token().startLine,r.token().startCol):null},this._class,this._attrib,this._pseudo,this._negation],R=0,M=_.length,U=null,$,Y;for($=r.LT(1).startLine,Y=r.LT(1).startCol,n=this._type_selector(),n||(n=this._universal()),n!==null&&(m+=n);r.peek()!==f.S;){for(;R<M&&U===null;)U=_[R++].call(this);if(U===null){if(m==="")return null;break}else R=0,h.push(U),m+=U.toString(),U=null}return m!==""?new T(n,h,m,$,Y):null},_type_selector:function(){var r=this._tokenStream,n=this._namespace_prefix(),h=this._element_name();return h?(n&&(h.text=n+h.text,h.col-=n.length),h):(n&&(r.unget(),n.length>1&&r.unget()),null)},_class:function(){var r=this._tokenStream,n;return r.match(f.DOT)?(r.mustMatch(f.IDENT),n=r.token(),new A("."+n.value,"class",n.startLine,n.startCol-1)):null},_element_name:function(){var r=this._tokenStream,n;return r.match(f.IDENT)?(n=r.token(),new A(n.value,"elementName",n.startLine,n.startCol)):null},_namespace_prefix:function(){var r=this._tokenStream,n="";return(r.LA(1)===f.PIPE||r.LA(2)===f.PIPE)&&(r.match([f.IDENT,f.STAR])&&(n+=r.token().value),r.mustMatch(f.PIPE),n+="|"),n.length?n:null},_universal:function(){var r=this._tokenStream,n="",h;return h=this._namespace_prefix(),h&&(n+=h),r.match(f.STAR)&&(n+="*"),n.length?n:null},_attrib:function(){var r=this._tokenStream,n=null,h,m;return r.match(f.LBRACKET)?(m=r.token(),n=m.value,n+=this._readWhitespace(),h=this._namespace_prefix(),h&&(n+=h),r.mustMatch(f.IDENT),n+=r.token().value,n+=this._readWhitespace(),r.match([f.PREFIXMATCH,f.SUFFIXMATCH,f.SUBSTRINGMATCH,f.EQUALS,f.INCLUDES,f.DASHMATCH])&&(n+=r.token().value,n+=this._readWhitespace(),r.mustMatch([f.IDENT,f.STRING]),n+=r.token().value,n+=this._readWhitespace()),r.mustMatch(f.RBRACKET),new A(n+"]","attribute",m.startLine,m.startCol)):null},_pseudo:function(){var r=this._tokenStream,n=null,h=":",m,_;if(r.match(f.COLON))if(r.match(f.COLON)&&(h+=":"),r.match(f.IDENT)?(n=r.token().value,m=r.token().startLine,_=r.token().startCol-h.length):r.peek()===f.FUNCTION&&(m=r.LT(1).startLine,_=r.LT(1).startCol-h.length,n=this._functional_pseudo()),n)n=new A(h+n,"pseudo",m,_);else{var R=r.LT(1).startLine,M=r.LT(0).startCol;throw new o("Expected a `FUNCTION` or `IDENT` after colon at line "+R+", col "+M+".",R,M)}return n},_functional_pseudo:function(){var r=this._tokenStream,n=null;return r.match(f.FUNCTION)&&(n=r.token().value,n+=this._readWhitespace(),n+=this._expression(),r.mustMatch(f.RPAREN),n+=")"),n},_expression:function(){for(var r=this._tokenStream,n="";r.match([f.PLUS,f.MINUS,f.DIMENSION,f.NUMBER,f.STRING,f.IDENT,f.LENGTH,f.FREQ,f.ANGLE,f.TIME,f.RESOLUTION,f.SLASH]);)n+=r.token().value,n+=this._readWhitespace();return n.length?n:null},_negation:function(){var r=this._tokenStream,n,h,m="",_,R=null;return r.match(f.NOT)&&(m=r.token().value,n=r.token().startLine,h=r.token().startCol,m+=this._readWhitespace(),_=this._negation_arg(),m+=_,m+=this._readWhitespace(),r.match(f.RPAREN),m+=r.token().value,R=new A(m,"not",n,h),R.args.push(_)),R},_negation_arg:function(){var r=this._tokenStream,n=[this._type_selector,this._universal,function(){return r.match(f.HASH)?new A(r.token().value,"id",r.token().startLine,r.token().startCol):null},this._class,this._attrib,this._pseudo],h=null,m=0,_=n.length,R,M,U;for(R=r.LT(1).startLine,M=r.LT(1).startCol;m<_&&h===null;)h=n[m].call(this),m++;return h===null&&this._unexpectedToken(r.LT(1)),h.type==="elementName"?U=new T(h,[],h.toString(),R,M):U=new T(null,[h],h.toString(),R,M),U},_declaration:function(){var r=this._tokenStream,n=null,h=null,m=null,_=null,R="";if(n=this._property(),n!==null){r.mustMatch(f.COLON),this._readWhitespace(),h=this._expr(),(!h||h.length===0)&&this._unexpectedToken(r.LT(1)),m=this._prio(),R=n.toString(),(this.options.starHack&&n.hack==="*"||this.options.underscoreHack&&n.hack==="_")&&(R=n.text);try{this._validateProperty(R,h)}catch(M){_=M}return this.fire({type:"property",property:n,value:h,important:m,line:n.line,col:n.col,invalid:_}),!0}else return!1},_prio:function(){var r=this._tokenStream,n=r.match(f.IMPORTANT_SYM);return this._readWhitespace(),n},_expr:function(r){var n=[],h=null,m=null;if(h=this._term(r),h!==null){n.push(h);do{if(m=this._operator(r),m&&n.push(m),h=this._term(r),h===null)break;n.push(h)}while(!0)}return n.length>0?new w(n,n[0].line,n[0].col):null},_term:function(r){var n=this._tokenStream,h=null,m=null,_=null,R=null,M,U,$;return h=this._unary_operator(),h!==null&&(U=n.token().startLine,$=n.token().startCol),n.peek()===f.IE_FUNCTION&&this.options.ieFilters?(m=this._ie_function(),h===null&&(U=n.token().startLine,$=n.token().startCol)):r&&n.match([f.LPAREN,f.LBRACE,f.LBRACKET])?(M=n.token(),_=M.endChar,m=M.value+this._expr(r).text,h===null&&(U=n.token().startLine,$=n.token().startCol),n.mustMatch(f.type(_)),m+=_,this._readWhitespace()):n.match([f.NUMBER,f.PERCENTAGE,f.LENGTH,f.ANGLE,f.TIME,f.FREQ,f.STRING,f.IDENT,f.URI,f.UNICODE_RANGE])?(m=n.token().value,h===null&&(U=n.token().startLine,$=n.token().startCol,R=x.fromToken(n.token())),this._readWhitespace()):(M=this._hexcolor(),M===null?(h===null&&(U=n.LT(1).startLine,$=n.LT(1).startCol),m===null&&(n.LA(3)===f.EQUALS&&this.options.ieFilters?m=this._ie_function():m=this._function())):(m=M.value,h===null&&(U=M.startLine,$=M.startCol))),R!==null?R:m!==null?new x(h!==null?h+m:m,U,$):null},_function:function(){var r=this._tokenStream,n=null,h=null,m;if(r.match(f.FUNCTION)){if(n=r.token().value,this._readWhitespace(),h=this._expr(!0),n+=h,this.options.ieFilters&&r.peek()===f.EQUALS)do for(this._readWhitespace()&&(n+=r.token().value),r.LA(0)===f.COMMA&&(n+=r.token().value),r.match(f.IDENT),n+=r.token().value,r.match(f.EQUALS),n+=r.token().value,m=r.peek();m!==f.COMMA&&m!==f.S&&m!==f.RPAREN;)r.get(),n+=r.token().value,m=r.peek();while(r.match([f.COMMA,f.S]));r.match(f.RPAREN),n+=")",this._readWhitespace()}return n},_ie_function:function(){var r=this._tokenStream,n=null,h;if(r.match([f.IE_FUNCTION,f.FUNCTION])){n=r.token().value;do for(this._readWhitespace()&&(n+=r.token().value),r.LA(0)===f.COMMA&&(n+=r.token().value),r.match(f.IDENT),n+=r.token().value,r.match(f.EQUALS),n+=r.token().value,h=r.peek();h!==f.COMMA&&h!==f.S&&h!==f.RPAREN;)r.get(),n+=r.token().value,h=r.peek();while(r.match([f.COMMA,f.S]));r.match(f.RPAREN),n+=")",this._readWhitespace()}return n},_hexcolor:function(){var r=this._tokenStream,n=null,h;if(r.match(f.HASH)){if(n=r.token(),h=n.value,!/#[a-f0-9]{3,6}/i.test(h))throw new o("Expected a hex color but found '"+h+"' at line "+n.startLine+", col "+n.startCol+".",n.startLine,n.startCol);this._readWhitespace()}return n},_keyframes:function(){var r=this._tokenStream,n,h,m,_="";for(r.mustMatch(f.KEYFRAMES_SYM),n=r.token(),/^@-([^-]+)-/.test(n.value)&&(_=RegExp.$1),this._readWhitespace(),m=this._keyframe_name(),this._readWhitespace(),r.mustMatch(f.LBRACE),this.fire({type:"startkeyframes",name:m,prefix:_,line:n.startLine,col:n.startCol}),this._readWhitespace(),h=r.peek();h===f.IDENT||h===f.PERCENTAGE;)this._keyframe_rule(),this._readWhitespace(),h=r.peek();this.fire({type:"endkeyframes",name:m,prefix:_,line:n.startLine,col:n.startCol}),this._readWhitespace(),r.mustMatch(f.RBRACE),this._readWhitespace()},_keyframe_name:function(){var r=this._tokenStream;return r.mustMatch([f.IDENT,f.STRING]),a.fromToken(r.token())},_keyframe_rule:function(){var r=this._key_list();this.fire({type:"startkeyframerule",keys:r,line:r[0].line,col:r[0].col}),this._readDeclarations(!0),this.fire({type:"endkeyframerule",keys:r,line:r[0].line,col:r[0].col})},_key_list:function(){var r=this._tokenStream,n=[];for(n.push(this._key()),this._readWhitespace();r.match(f.COMMA);)this._readWhitespace(),n.push(this._key()),this._readWhitespace();return n},_key:function(){var r=this._tokenStream,n;if(r.match(f.PERCENTAGE))return a.fromToken(r.token());if(r.match(f.IDENT)){if(n=r.token(),/from|to/i.test(n.value))return a.fromToken(n);r.unget()}this._unexpectedToken(r.LT(1))},_skipCruft:function(){for(;this._tokenStream.match([f.S,f.CDO,f.CDC]););},_readDeclarations:function(r,n){var h=this._tokenStream,m;this._readWhitespace(),r&&h.mustMatch(f.LBRACE),this._readWhitespace();try{for(;;){if(!(h.match(f.SEMICOLON)||n&&this._margin()))if(this._declaration()){if(!h.match(f.SEMICOLON))break}else break;this._readWhitespace()}h.mustMatch(f.RBRACE),this._readWhitespace()}catch(_){if(_ instanceof o&&!this.options.strict){if(this.fire({type:"error",error:_,message:_.message,line:_.line,col:_.col}),m=h.advance([f.SEMICOLON,f.RBRACE]),m===f.SEMICOLON)this._readDeclarations(!1,n);else if(m!==f.EOF&&m!==f.RBRACE)throw _}else throw _}},_readWhitespace:function(){for(var r=this._tokenStream,n="";r.match(f.S);)n+=r.token().value;return n},_unexpectedToken:function(r){throw new o("Unexpected token '"+r.value+"' at line "+r.startLine+", col "+r.startCol+".",r.startLine,r.startCol)},_verifyEnd:function(){this._tokenStream.LA(1)!==f.EOF&&this._unexpectedToken(this._tokenStream.LT(1))},_validateProperty:function(r,n){D.validate(r,n)},parse:function(r){this._tokenStream=new O(r,f),this._stylesheet()},parseStyleSheet:function(r){return this.parse(r)},parseMediaQuery:function(r){this._tokenStream=new O(r,f);var n=this._media_query();return this._verifyEnd(),n},parsePropertyValue:function(r){this._tokenStream=new O(r,f),this._readWhitespace();var n=this._expr();return this._readWhitespace(),this._verifyEnd(),n},parseRule:function(r){this._tokenStream=new O(r,f),this._readWhitespace();var n=this._ruleset();return this._readWhitespace(),this._verifyEnd(),n},parseSelector:function(r){this._tokenStream=new O(r,f),this._readWhitespace();var n=this._selector();return this._readWhitespace(),this._verifyEnd(),n},parseStyleAttribute:function(r){r+="}",this._tokenStream=new O(r,f),this._readDeclarations()}};for(N in v)Object.prototype.hasOwnProperty.call(v,N)&&(z[N]=v[N]);return z}()},{"../util/EventTarget":23,"../util/SyntaxError":25,"../util/SyntaxUnit":26,"./Combinator":2,"./MediaFeature":4,"./MediaQuery":5,"./PropertyName":8,"./PropertyValue":9,"./PropertyValuePart":11,"./Selector":13,"./SelectorPart":14,"./SelectorSubPart":15,"./TokenStream":17,"./Tokens":18,"./Validation":19}],7:[function(e,s,l){s.exports={__proto__:null,"align-items":"flex-start | flex-end | center | baseline | stretch","align-content":"flex-start | flex-end | center | space-between | space-around | stretch","align-self":"auto | flex-start | flex-end | center | baseline | stretch",all:"initial | inherit | unset","-webkit-align-items":"flex-start | flex-end | center | baseline | stretch","-webkit-align-content":"flex-start | flex-end | center | space-between | space-around | stretch","-webkit-align-self":"auto | flex-start | flex-end | center | baseline | stretch","alignment-adjust":"auto | baseline | before-edge | text-before-edge | middle | central | after-edge | text-after-edge | ideographic | alphabetic | hanging | mathematical | <percentage> | <length>","alignment-baseline":"auto | baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical",animation:1,"animation-delay":"<time>#","animation-direction":"<single-animation-direction>#","animation-duration":"<time>#","animation-fill-mode":"[ none | forwards | backwards | both ]#","animation-iteration-count":"[ <number> | infinite ]#","animation-name":"[ none | <single-animation-name> ]#","animation-play-state":"[ running | paused ]#","animation-timing-function":1,"-moz-animation-delay":"<time>#","-moz-animation-direction":"[ normal | alternate ]#","-moz-animation-duration":"<time>#","-moz-animation-iteration-count":"[ <number> | infinite ]#","-moz-animation-name":"[ none | <single-animation-name> ]#","-moz-animation-play-state":"[ running | paused ]#","-ms-animation-delay":"<time>#","-ms-animation-direction":"[ normal | alternate ]#","-ms-animation-duration":"<time>#","-ms-animation-iteration-count":"[ <number> | infinite ]#","-ms-animation-name":"[ none | <single-animation-name> ]#","-ms-animation-play-state":"[ running | paused ]#","-webkit-animation-delay":"<time>#","-webkit-animation-direction":"[ normal | alternate ]#","-webkit-animation-duration":"<time>#","-webkit-animation-fill-mode":"[ none | forwards | backwards | both ]#","-webkit-animation-iteration-count":"[ <number> | infinite ]#","-webkit-animation-name":"[ none | <single-animation-name> ]#","-webkit-animation-play-state":"[ running | paused ]#","-o-animation-delay":"<time>#","-o-animation-direction":"[ normal | alternate ]#","-o-animation-duration":"<time>#","-o-animation-iteration-count":"[ <number> | infinite ]#","-o-animation-name":"[ none | <single-animation-name> ]#","-o-animation-play-state":"[ running | paused ]#",appearance:"none | auto","-moz-appearance":"none | button | button-arrow-down | button-arrow-next | button-arrow-previous | button-arrow-up | button-bevel | button-focus | caret | checkbox | checkbox-container | checkbox-label | checkmenuitem | dualbutton | groupbox | listbox | listitem | menuarrow | menubar | menucheckbox | menuimage | menuitem | menuitemtext | menulist | menulist-button | menulist-text | menulist-textfield | menupopup | menuradio | menuseparator | meterbar | meterchunk | progressbar | progressbar-vertical | progresschunk | progresschunk-vertical | radio | radio-container | radio-label | radiomenuitem | range | range-thumb | resizer | resizerpanel | scale-horizontal | scalethumbend | scalethumb-horizontal | scalethumbstart | scalethumbtick | scalethumb-vertical | scale-vertical | scrollbarbutton-down | scrollbarbutton-left | scrollbarbutton-right | scrollbarbutton-up | scrollbarthumb-horizontal | scrollbarthumb-vertical | scrollbartrack-horizontal | scrollbartrack-vertical | searchfield | separator | sheet | spinner | spinner-downbutton | spinner-textfield | spinner-upbutton | splitter | statusbar | statusbarpanel | tab | tabpanel | tabpanels | tab-scroll-arrow-back | tab-scroll-arrow-forward | textfield | textfield-multiline | toolbar | toolbarbutton | toolbarbutton-dropdown | toolbargripper | toolbox | tooltip | treeheader | treeheadercell | treeheadersortarrow | treeitem | treeline | treetwisty | treetwistyopen | treeview | -moz-mac-unified-toolbar | -moz-win-borderless-glass | -moz-win-browsertabbar-toolbox | -moz-win-communicationstext | -moz-win-communications-toolbox | -moz-win-exclude-glass | -moz-win-glass | -moz-win-mediatext | -moz-win-media-toolbox | -moz-window-button-box | -moz-window-button-box-maximized | -moz-window-button-close | -moz-window-button-maximize | -moz-window-button-minimize | -moz-window-button-restore | -moz-window-frame-bottom | -moz-window-frame-left | -moz-window-frame-right | -moz-window-titlebar | -moz-window-titlebar-maximized","-ms-appearance":"none | icon | window | desktop | workspace | document | tooltip | dialog | button | push-button | hyperlink | radio | radio-button | checkbox | menu-item | tab | menu | menubar | pull-down-menu | pop-up-menu | list-menu | radio-group | checkbox-group | outline-tree | range | field | combo-box | signature | password | normal","-webkit-appearance":"none | button | button-bevel | caps-lock-indicator | caret | checkbox | default-button | listbox | listitem | media-fullscreen-button | media-mute-button | media-play-button | media-seek-back-button | media-seek-forward-button | media-slider | media-sliderthumb | menulist | menulist-button | menulist-text | menulist-textfield | push-button | radio | searchfield | searchfield-cancel-button | searchfield-decoration | searchfield-results-button | searchfield-results-decoration | slider-horizontal | slider-vertical | sliderthumb-horizontal | sliderthumb-vertical | square-button | textarea | textfield | scrollbarbutton-down | scrollbarbutton-left | scrollbarbutton-right | scrollbarbutton-up | scrollbargripper-horizontal | scrollbargripper-vertical | scrollbarthumb-horizontal | scrollbarthumb-vertical | scrollbartrack-horizontal | scrollbartrack-vertical","-o-appearance":"none | window | desktop | workspace | document | tooltip | dialog | button | push-button | hyperlink | radio | radio-button | checkbox | menu-item | tab | menu | menubar | pull-down-menu | pop-up-menu | list-menu | radio-group | checkbox-group | outline-tree | range | field | combo-box | signature | password | normal",azimuth:"<azimuth>","backface-visibility":"visible | hidden",background:1,"background-attachment":"<attachment>#","background-clip":"<box>#","background-color":"<color>","background-image":"<bg-image>#","background-origin":"<box>#","background-position":"<bg-position>","background-repeat":"<repeat-style>#","background-size":"<bg-size>#","baseline-shift":"baseline | sub | super | <percentage> | <length>",behavior:1,binding:1,bleed:"<length>","bookmark-label":"<content> | <attr> | <string>","bookmark-level":"none | <integer>","bookmark-state":"open | closed","bookmark-target":"none | <uri> | <attr>",border:"<border-width> || <border-style> || <color>","border-bottom":"<border-width> || <border-style> || <color>","border-bottom-color":"<color>","border-bottom-left-radius":"<x-one-radius>","border-bottom-right-radius":"<x-one-radius>","border-bottom-style":"<border-style>","border-bottom-width":"<border-width>","border-collapse":"collapse | separate","border-color":"<color>{1,4}","border-image":1,"border-image-outset":"[ <length> | <number> ]{1,4}","border-image-repeat":"[ stretch | repeat | round | space ]{1,2}","border-image-slice":"<border-image-slice>","border-image-source":"<image> | none","border-image-width":"[ <length> | <percentage> | <number> | auto ]{1,4}","border-left":"<border-width> || <border-style> || <color>","border-left-color":"<color>","border-left-style":"<border-style>","border-left-width":"<border-width>","border-radius":"<border-radius>","border-right":"<border-width> || <border-style> || <color>","border-right-color":"<color>","border-right-style":"<border-style>","border-right-width":"<border-width>","border-spacing":"<length>{1,2}","border-style":"<border-style>{1,4}","border-top":"<border-width> || <border-style> || <color>","border-top-color":"<color>","border-top-left-radius":"<x-one-radius>","border-top-right-radius":"<x-one-radius>","border-top-style":"<border-style>","border-top-width":"<border-width>","border-width":"<border-width>{1,4}",bottom:"<margin-width>","-moz-box-align":"start | end | center | baseline | stretch","-moz-box-decoration-break":"slice | clone","-moz-box-direction":"normal | reverse","-moz-box-flex":"<number>","-moz-box-flex-group":"<integer>","-moz-box-lines":"single | multiple","-moz-box-ordinal-group":"<integer>","-moz-box-orient":"horizontal | vertical | inline-axis | block-axis","-moz-box-pack":"start | end | center | justify","-o-box-decoration-break":"slice | clone","-webkit-box-align":"start | end | center | baseline | stretch","-webkit-box-decoration-break":"slice | clone","-webkit-box-direction":"normal | reverse","-webkit-box-flex":"<number>","-webkit-box-flex-group":"<integer>","-webkit-box-lines":"single | multiple","-webkit-box-ordinal-group":"<integer>","-webkit-box-orient":"horizontal | vertical | inline-axis | block-axis","-webkit-box-pack":"start | end | center | justify","box-decoration-break":"slice | clone","box-shadow":"<box-shadow>","box-sizing":"content-box | border-box","break-after":"auto | always | avoid | left | right | page | column | avoid-page | avoid-column","break-before":"auto | always | avoid | left | right | page | column | avoid-page | avoid-column","break-inside":"auto | avoid | avoid-page | avoid-column","caption-side":"top | bottom",clear:"none | right | left | both",clip:"<shape> | auto","-webkit-clip-path":"<clip-source> | <clip-path> | none","clip-path":"<clip-source> | <clip-path> | none","clip-rule":"nonzero | evenodd",color:"<color>","color-interpolation":"auto | sRGB | linearRGB","color-interpolation-filters":"auto | sRGB | linearRGB","color-profile":1,"color-rendering":"auto | optimizeSpeed | optimizeQuality","column-count":"<integer> | auto","column-fill":"auto | balance","column-gap":"<length> | normal","column-rule":"<border-width> || <border-style> || <color>","column-rule-color":"<color>","column-rule-style":"<border-style>","column-rule-width":"<border-width>","column-span":"none | all","column-width":"<length> | auto",columns:1,content:1,"counter-increment":1,"counter-reset":1,crop:"<shape> | auto",cue:"cue-after | cue-before","cue-after":1,"cue-before":1,cursor:1,direction:"ltr | rtl",display:"inline | block | list-item | inline-block | table | inline-table | table-row-group | table-header-group | table-footer-group | table-row | table-column-group | table-column | table-cell | table-caption | grid | inline-grid | run-in | ruby | ruby-base | ruby-text | ruby-base-container | ruby-text-container | contents | none | -moz-box | -moz-inline-block | -moz-inline-box | -moz-inline-grid | -moz-inline-stack | -moz-inline-table | -moz-grid | -moz-grid-group | -moz-grid-line | -moz-groupbox | -moz-deck | -moz-popup | -moz-stack | -moz-marker | -webkit-box | -webkit-inline-box | -ms-flexbox | -ms-inline-flexbox | flex | -webkit-flex | inline-flex | -webkit-inline-flex","dominant-baseline":"auto | use-script | no-change | reset-size | ideographic | alphabetic | hanging | mathematical | central | middle | text-after-edge | text-before-edge","drop-initial-after-adjust":"central | middle | after-edge | text-after-edge | ideographic | alphabetic | mathematical | <percentage> | <length>","drop-initial-after-align":"baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical","drop-initial-before-adjust":"before-edge | text-before-edge | central | middle | hanging | mathematical | <percentage> | <length>","drop-initial-before-align":"caps-height | baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical","drop-initial-size":"auto | line | <length> | <percentage>","drop-initial-value":"<integer>",elevation:"<angle> | below | level | above | higher | lower","empty-cells":"show | hide","enable-background":1,fill:"<paint>","fill-opacity":"<opacity-value>","fill-rule":"nonzero | evenodd",filter:"<filter-function-list> | none",fit:"fill | hidden | meet | slice","fit-position":1,flex:"<flex>","flex-basis":"<width>","flex-direction":"row | row-reverse | column | column-reverse","flex-flow":"<flex-direction> || <flex-wrap>","flex-grow":"<number>","flex-shrink":"<number>","flex-wrap":"nowrap | wrap | wrap-reverse","-webkit-flex":"<flex>","-webkit-flex-basis":"<width>","-webkit-flex-direction":"row | row-reverse | column | column-reverse","-webkit-flex-flow":"<flex-direction> || <flex-wrap>","-webkit-flex-grow":"<number>","-webkit-flex-shrink":"<number>","-webkit-flex-wrap":"nowrap | wrap | wrap-reverse","-ms-flex":"<flex>","-ms-flex-align":"start | end | center | stretch | baseline","-ms-flex-direction":"row | row-reverse | column | column-reverse","-ms-flex-order":"<number>","-ms-flex-pack":"start | end | center | justify | distribute","-ms-flex-wrap":"nowrap | wrap | wrap-reverse",float:"left | right | none","float-offset":1,"flood-color":1,"flood-opacity":"<opacity-value>",font:"<font-shorthand> | caption | icon | menu | message-box | small-caption | status-bar","font-family":"<font-family>","font-feature-settings":"<feature-tag-value> | normal","font-kerning":"auto | normal | none","font-size":"<font-size>","font-size-adjust":"<number> | none","font-stretch":"<font-stretch>","font-style":"<font-style>","font-variant":"<font-variant> | normal | none","font-variant-alternates":"<font-variant-alternates> | normal","font-variant-caps":"<font-variant-caps> | normal","font-variant-east-asian":"<font-variant-east-asian> | normal","font-variant-ligatures":"<font-variant-ligatures> | normal | none","font-variant-numeric":"<font-variant-numeric> | normal","font-variant-position":"normal | sub | super","font-weight":"<font-weight>",gap:"[ <length> | <percentage> ]{1,2}","glyph-orientation-horizontal":"<glyph-angle>","glyph-orientation-vertical":"auto | <glyph-angle>",grid:1,"grid-area":1,"grid-auto-columns":1,"grid-auto-flow":1,"grid-auto-position":1,"grid-auto-rows":1,"grid-cell-stacking":"columns | rows | layer","grid-column":1,"grid-columns":1,"grid-column-align":"start | end | center | stretch","grid-column-sizing":1,"grid-column-start":1,"grid-column-end":1,"grid-column-span":"<integer>","grid-flow":"none | rows | columns","grid-gap":"[ <length> | <percentage> ]{1,2}","grid-layer":"<integer>","grid-row":1,"grid-rows":1,"grid-row-align":"start | end | center | stretch","grid-row-gap":1,"grid-row-start":1,"grid-row-end":1,"grid-row-span":"<integer>","grid-row-sizing":1,"grid-template":1,"grid-template-areas":1,"grid-template-columns":1,"grid-template-rows":1,"hanging-punctuation":1,height:"<margin-width> | <content-sizing>","hyphenate-after":"<integer> | auto","hyphenate-before":"<integer> | auto","hyphenate-character":"<string> | auto","hyphenate-lines":"no-limit | <integer>","hyphenate-resource":1,hyphens:"none | manual | auto",icon:1,"image-orientation":"angle | auto","image-rendering":"auto | optimizeSpeed | optimizeQuality","image-resolution":1,"ime-mode":"auto | normal | active | inactive | disabled","inline-box-align":"last | <integer>","justify-content":"flex-start | flex-end | center | space-between | space-around | space-evenly | stretch","-webkit-justify-content":"flex-start | flex-end | center | space-between | space-around | space-evenly | stretch",kerning:"auto | <length>",left:"<margin-width>","letter-spacing":"<length> | normal","line-height":"<line-height>","line-break":"auto | loose | normal | strict","line-stacking":1,"line-stacking-ruby":"exclude-ruby | include-ruby","line-stacking-shift":"consider-shifts | disregard-shifts","line-stacking-strategy":"inline-line-height | block-line-height | max-height | grid-height","list-style":1,"list-style-image":"<uri> | none","list-style-position":"inside | outside","list-style-type":"disc | circle | square | decimal | decimal-leading-zero | lower-roman | upper-roman | lower-greek | lower-latin | upper-latin | armenian | georgian | lower-alpha | upper-alpha | none",margin:"<margin-width>{1,4}","margin-bottom":"<margin-width>","margin-left":"<margin-width>","margin-right":"<margin-width>","margin-top":"<margin-width>",mark:1,"mark-after":1,"mark-before":1,marker:1,"marker-end":1,"marker-mid":1,"marker-start":1,marks:1,"marquee-direction":1,"marquee-play-count":1,"marquee-speed":1,"marquee-style":1,mask:1,"max-height":"<length> | <percentage> | <content-sizing> | none","max-width":"<length> | <percentage> | <content-sizing> | none","min-height":"<length> | <percentage> | <content-sizing> | contain-floats | -moz-contain-floats | -webkit-contain-floats","min-width":"<length> | <percentage> | <content-sizing> | contain-floats | -moz-contain-floats | -webkit-contain-floats","mix-blend-mode":"<blend-mode>","move-to":1,"nav-down":1,"nav-index":1,"nav-left":1,"nav-right":1,"nav-up":1,"object-fit":"fill | contain | cover | none | scale-down","object-position":"<position>",opacity:"<opacity-value>",order:"<integer>","-webkit-order":"<integer>",orphans:"<integer>",outline:1,"outline-color":"<color> | invert","outline-offset":1,"outline-style":"<border-style>","outline-width":"<border-width>",overflow:"visible | hidden | scroll | auto","overflow-style":1,"overflow-wrap":"normal | break-word","overflow-x":1,"overflow-y":1,padding:"<padding-width>{1,4}","padding-bottom":"<padding-width>","padding-left":"<padding-width>","padding-right":"<padding-width>","padding-top":"<padding-width>",page:1,"page-break-after":"auto | always | avoid | left | right","page-break-before":"auto | always | avoid | left | right","page-break-inside":"auto | avoid","page-policy":1,pause:1,"pause-after":1,"pause-before":1,perspective:1,"perspective-origin":1,phonemes:1,pitch:1,"pitch-range":1,"play-during":1,"pointer-events":"auto | none | visiblePainted | visibleFill | visibleStroke | visible | painted | fill | stroke | all",position:"static | relative | absolute | fixed | sticky | -webkit-sticky","presentation-level":1,"punctuation-trim":1,quotes:1,"rendering-intent":1,resize:1,rest:1,"rest-after":1,"rest-before":1,richness:1,right:"<margin-width>",rotation:1,"rotation-point":1,"ruby-align":1,"ruby-overhang":1,"ruby-position":1,"ruby-span":1,"shape-rendering":"auto | optimizeSpeed | crispEdges | geometricPrecision",size:1,speak:"normal | none | spell-out","speak-header":"once | always","speak-numeral":"digits | continuous","speak-punctuation":"code | none","speech-rate":1,src:1,"stop-color":1,"stop-opacity":"<opacity-value>",stress:1,"string-set":1,stroke:"<paint>","stroke-dasharray":"none | <dasharray>","stroke-dashoffset":"<percentage> | <length>","stroke-linecap":"butt | round | square","stroke-linejoin":"miter | round | bevel","stroke-miterlimit":"<miterlimit>","stroke-opacity":"<opacity-value>","stroke-width":"<percentage> | <length>","table-layout":"auto | fixed","tab-size":"<integer> | <length>",target:1,"target-name":1,"target-new":1,"target-position":1,"text-align":"left | right | center | justify | match-parent | start | end","text-align-last":1,"text-anchor":"start | middle | end","text-decoration":"<text-decoration-line> || <text-decoration-style> || <text-decoration-color>","text-decoration-color":"<text-decoration-color>","text-decoration-line":"<text-decoration-line>","text-decoration-style":"<text-decoration-style>","text-decoration-skip":"none | [ objects || spaces || ink || edges || box-decoration ]","-webkit-text-decoration-skip":"none | [ objects || spaces || ink || edges || box-decoration ]","text-underline-position":"auto | [ under || [ left | right ] ]","text-emphasis":1,"text-height":1,"text-indent":"<length> | <percentage>","text-justify":"auto | none | inter-word | inter-ideograph | inter-cluster | distribute | kashida","text-outline":1,"text-overflow":1,"text-rendering":"auto | optimizeSpeed | optimizeLegibility | geometricPrecision","text-shadow":1,"text-transform":"capitalize | uppercase | lowercase | none","text-wrap":"normal | none | avoid",top:"<margin-width>","-ms-touch-action":"auto | none | pan-x | pan-y | pan-left | pan-right | pan-up | pan-down | manipulation","touch-action":"auto | none | pan-x | pan-y | pan-left | pan-right | pan-up | pan-down | manipulation",transform:1,"transform-origin":1,"transform-style":1,transition:1,"transition-delay":1,"transition-duration":1,"transition-property":1,"transition-timing-function":1,"unicode-bidi":"normal | embed | isolate | bidi-override | isolate-override | plaintext","user-modify":"read-only | read-write | write-only","user-select":"auto | text | none | contain | all","vertical-align":"auto | use-script | baseline | sub | super | top | text-top | central | middle | bottom | text-bottom | <percentage> | <length>",visibility:"visible | hidden | collapse","voice-balance":1,"voice-duration":1,"voice-family":1,"voice-pitch":1,"voice-pitch-range":1,"voice-rate":1,"voice-stress":1,"voice-volume":1,volume:1,"white-space":"normal | pre | nowrap | pre-wrap | pre-line | -pre-wrap | -o-pre-wrap | -moz-pre-wrap | -hp-pre-wrap","white-space-collapse":1,widows:"<integer>",width:"<length> | <percentage> | <content-sizing> | auto","will-change":"<will-change>","word-break":"normal | keep-all | break-all | break-word","word-spacing":"<length> | normal","word-wrap":"normal | break-word","writing-mode":"horizontal-tb | vertical-rl | vertical-lr | lr-tb | rl-tb | tb-rl | bt-rl | tb-lr | bt-lr | lr-bt | rl-bt | lr | rl | tb","z-index":"<integer> | auto",zoom:"<number> | <percentage> | normal"}},{}],8:[function(e,s,l){s.exports=a;var u=e("../util/SyntaxUnit"),o=e("./Parser");function a(t,c,d,g){u.call(this,t,d,g,o.PROPERTY_NAME_TYPE),this.hack=c}a.prototype=new u,a.prototype.constructor=a,a.prototype.toString=function(){return(this.hack?this.hack:"")+this.text}},{"../util/SyntaxUnit":26,"./Parser":6}],9:[function(e,s,l){s.exports=a;var u=e("../util/SyntaxUnit"),o=e("./Parser");function a(t,c,d){u.call(this,t.join(" "),c,d,o.PROPERTY_VALUE_TYPE),this.parts=t}a.prototype=new u,a.prototype.constructor=a},{"../util/SyntaxUnit":26,"./Parser":6}],10:[function(e,s,l){s.exports=u;function u(o){this._i=0,this._parts=o.parts,this._marks=[],this.value=o}u.prototype.count=function(){return this._parts.length},u.prototype.isFirst=function(){return this._i===0},u.prototype.hasNext=function(){return this._i<this._parts.length},u.prototype.mark=function(){this._marks.push(this._i)},u.prototype.peek=function(o){return this.hasNext()?this._parts[this._i+(o||0)]:null},u.prototype.next=function(){return this.hasNext()?this._parts[this._i++]:null},u.prototype.previous=function(){return this._i>0?this._parts[--this._i]:null},u.prototype.restore=function(){this._marks.length&&(this._i=this._marks.pop())},u.prototype.drop=function(){this._marks.pop()}},{}],11:[function(e,s,l){s.exports=c;var u=e("../util/SyntaxUnit"),o=e("./Colors"),a=e("./Parser"),t=e("./Tokens");function c(d,g,w,x){var S=x||{};u.call(this,d,g,w,a.PROPERTY_VALUE_PART_TYPE),this.type="unknown";var T;if(/^([+-]?[\d.]+)([a-z]+)$/i.test(d))switch(this.type="dimension",this.value=Number(RegExp.$1),this.units=RegExp.$2,this.units.toLowerCase()){case"em":case"rem":case"ex":case"px":case"cm":case"mm":case"in":case"pt":case"pc":case"ch":case"vh":case"vw":case"vmax":case"vmin":this.type="length";break;case"fr":this.type="grid";break;case"deg":case"rad":case"grad":case"turn":this.type="angle";break;case"ms":case"s":this.type="time";break;case"hz":case"khz":this.type="frequency";break;case"dpi":case"dpcm":this.type="resolution";break}else/^([+-]?[\d.]+)%$/i.test(d)?(this.type="percentage",this.value=Number(RegExp.$1)):/^([+-]?\d+)$/i.test(d)?(this.type="integer",this.value=Number(RegExp.$1)):/^([+-]?[\d.]+)$/i.test(d)?(this.type="number",this.value=Number(RegExp.$1)):/^#([a-f0-9]{3,6})/i.test(d)?(this.type="color",T=RegExp.$1,T.length===3?(this.red=parseInt(T.charAt(0)+T.charAt(0),16),this.green=parseInt(T.charAt(1)+T.charAt(1),16),this.blue=parseInt(T.charAt(2)+T.charAt(2),16)):(this.red=parseInt(T.substring(0,2),16),this.green=parseInt(T.substring(2,4),16),this.blue=parseInt(T.substring(4,6),16))):/^rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/i.test(d)?(this.type="color",this.red=Number(RegExp.$1),this.green=Number(RegExp.$2),this.blue=Number(RegExp.$3)):/^rgb\(\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d+)%\s*\)/i.test(d)?(this.type="color",this.red=Number(RegExp.$1)*255/100,this.green=Number(RegExp.$2)*255/100,this.blue=Number(RegExp.$3)*255/100):/^rgba\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d.]+)\s*\)/i.test(d)?(this.type="color",this.red=Number(RegExp.$1),this.green=Number(RegExp.$2),this.blue=Number(RegExp.$3),this.alpha=Number(RegExp.$4)):/^rgba\(\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d+)%\s*,\s*([\d.]+)\s*\)/i.test(d)?(this.type="color",this.red=Number(RegExp.$1)*255/100,this.green=Number(RegExp.$2)*255/100,this.blue=Number(RegExp.$3)*255/100,this.alpha=Number(RegExp.$4)):/^hsl\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*\)/i.test(d)?(this.type="color",this.hue=Number(RegExp.$1),this.saturation=Number(RegExp.$2)/100,this.lightness=Number(RegExp.$3)/100):/^hsla\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*,\s*([\d.]+)\s*\)/i.test(d)?(this.type="color",this.hue=Number(RegExp.$1),this.saturation=Number(RegExp.$2)/100,this.lightness=Number(RegExp.$3)/100,this.alpha=Number(RegExp.$4)):/^url\(("([^\\"]|\.)*")\)/i.test(d)?(this.type="uri",this.uri=c.parseString(RegExp.$1)):/^([^(]+)\(/i.test(d)?(this.type="function",this.name=RegExp.$1,this.value=d):/^"([^\n\r\f\\"]|\\\r\n|\\[^\r0-9a-f]|\\[0-9a-f]{1,6}(\r\n|[ \n\r\t\f])?)*"/i.test(d)?(this.type="string",this.value=c.parseString(d)):/^'([^\n\r\f\\']|\\\r\n|\\[^\r0-9a-f]|\\[0-9a-f]{1,6}(\r\n|[ \n\r\t\f])?)*'/i.test(d)?(this.type="string",this.value=c.parseString(d)):o[d.toLowerCase()]?(this.type="color",T=o[d.toLowerCase()].substring(1),this.red=parseInt(T.substring(0,2),16),this.green=parseInt(T.substring(2,4),16),this.blue=parseInt(T.substring(4,6),16)):/^[,/]$/.test(d)?(this.type="operator",this.value=d):/^-?[a-z_\u00A0-\uFFFF][a-z0-9\-_\u00A0-\uFFFF]*$/i.test(d)&&(this.type="identifier",this.value=d);this.wasIdent=!!S.ident}c.prototype=new u,c.prototype.constructor=c,c.parseString=function(d){d=d.slice(1,-1);var g=function(w,x){if(/^(\n|\r\n|\r|\f)$/.test(x))return"";var S=/^[0-9a-f]{1,6}/i.exec(x);if(S){var T=parseInt(S[0],16);return String.fromCodePoint?String.fromCodePoint(T):String.fromCharCode(T)}return x};return d.replace(/\\(\r\n|[^\r0-9a-f]|[0-9a-f]{1,6}(\r\n|[ \n\r\t\f])?)/ig,g)},c.serializeString=function(d){var g=function(w,x){if(x==='"')return"\\"+x;var S=String.codePointAt?String.codePointAt(0):String.charCodeAt(0);return"\\"+S.toString(16)+" "};return'"'+d.replace(/["\r\n\f]/g,g)+'"'},c.fromToken=function(d){var g=new c(d.value,d.startLine,d.startCol,{ident:d.type===t.IDENT});return g}},{"../util/SyntaxUnit":26,"./Colors":1,"./Parser":6,"./Tokens":18}],12:[function(e,s,l){var u=s.exports={__proto__:null,":first-letter":1,":first-line":1,":before":1,":after":1};u.ELEMENT=1,u.CLASS=2,u.isElement=function(o){return o.indexOf("::")===0||u[o.toLowerCase()]===u.ELEMENT}},{}],13:[function(e,s,l){s.exports=t;var u=e("../util/SyntaxUnit"),o=e("./Parser"),a=e("./Specificity");function t(c,d,g){u.call(this,c.join(" "),d,g,o.SELECTOR_TYPE),this.parts=c,this.specificity=a.calculate(this)}t.prototype=new u,t.prototype.constructor=t},{"../util/SyntaxUnit":26,"./Parser":6,"./Specificity":16}],14:[function(e,s,l){s.exports=a;var u=e("../util/SyntaxUnit"),o=e("./Parser");function a(t,c,d,g,w){u.call(this,d,g,w,o.SELECTOR_PART_TYPE),this.elementName=t,this.modifiers=c}a.prototype=new u,a.prototype.constructor=a},{"../util/SyntaxUnit":26,"./Parser":6}],15:[function(e,s,l){s.exports=a;var u=e("../util/SyntaxUnit"),o=e("./Parser");function a(t,c,d,g){u.call(this,t,d,g,o.SELECTOR_SUB_PART_TYPE),this.type=c,this.args=[]}a.prototype=new u,a.prototype.constructor=a},{"../util/SyntaxUnit":26,"./Parser":6}],16:[function(e,s,l){s.exports=a;var u=e("./Pseudos"),o=e("./SelectorPart");function a(t,c,d,g){this.a=t,this.b=c,this.c=d,this.d=g}a.prototype={constructor:a,compare:function(t){var c=["a","b","c","d"],d,g;for(d=0,g=c.length;d<g;d++){if(this[c[d]]<t[c[d]])return-1;if(this[c[d]]>t[c[d]])return 1}return 0},valueOf:function(){return this.a*1e3+this.b*100+this.c*10+this.d},toString:function(){return this.a+","+this.b+","+this.c+","+this.d}},a.calculate=function(t){var c,d,g,w=0,x=0,S=0;function T(A){var O,f,D,C,z=A.elementName?A.elementName.text:"",N;for(z&&z.charAt(z.length-1)!=="*"&&S++,O=0,D=A.modifiers.length;O<D;O++)switch(N=A.modifiers[O],N.type){case"class":case"attribute":x++;break;case"id":w++;break;case"pseudo":u.isElement(N.text)?S++:x++;break;case"not":for(f=0,C=N.args.length;f<C;f++)T(N.args[f])}}for(c=0,d=t.parts.length;c<d;c++)g=t.parts[c],g instanceof o&&T(g);return new a(0,w,x,S)}},{"./Pseudos":12,"./SelectorPart":14}],17:[function(e,s,l){s.exports=N;var u=e("../util/TokenStreamBase"),o=e("./PropertyValuePart"),a=e("./Tokens"),t=/^[0-9a-fA-F]$/,c=/^[\u00A0-\uFFFF]$/,d=/\n|\r\n|\r|\f/,g=/\u0009|\u000a|\u000c|\u000d|\u0020/;function w(v){return v!=null&&t.test(v)}function x(v){return v!=null&&/\d/.test(v)}function S(v){return v!=null&&g.test(v)}function T(v){return v!=null&&d.test(v)}function A(v){return v!=null&&/[a-z_\u00A0-\uFFFF\\]/i.test(v)}function O(v){return v!=null&&(A(v)||/[0-9\-\\]/.test(v))}function f(v){return v!=null&&(A(v)||/-\\/.test(v))}function D(v,r){for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(v[n]=r[n]);return v}function C(v){return typeof v=="string"&&(v[0]==="-"&&A(v[1])||A(v[0]))}function z(v){return typeof v=="string"&&(x(v[0])||v[0]==="."&&x(v[1]))}function N(v){u.call(this,v,a)}N.prototype=D(new u,{_getToken:function(){var v,r=this._reader,n=null,h=r.getLine(),m=r.getCol();for(v=r.read();v;){switch(v){case"/":r.peek()==="*"?n=this.commentToken(v,h,m):n=this.charToken(v,h,m);break;case"|":case"~":case"^":case"$":case"*":r.peek()==="="?n=this.comparisonToken(v,h,m):n=this.charToken(v,h,m);break;case'"':case"'":n=this.stringToken(v,h,m);break;case"#":O(r.peek())?n=this.hashToken(v,h,m):n=this.charToken(v,h,m);break;case".":x(r.peek())?n=this.numberToken(v,h,m):n=this.charToken(v,h,m);break;case"-":if(z(r.peekCount(2))){n=this.numberToken(v,h,m);break}else r.peekCount(2)==="->"?n=this.htmlCommentEndToken(v,h,m):n=this._getDefaultToken(v,h,m);break;case"+":z(r.peekCount(2))?n=this.numberToken(v,h,m):n=this.charToken(v,h,m);break;case"!":n=this.importantToken(v,h,m);break;case"@":n=this.atRuleToken(v,h,m);break;case":":n=this.notToken(v,h,m);break;case"<":n=this.htmlCommentStartToken(v,h,m);break;case"\\":/[^\r\n\f]/.test(r.peek())?n=this.identOrFunctionToken(this.readEscape(v,!0),h,m):n=this.charToken(v,h,m);break;case"U":case"u":r.peek()==="+"?n=this.unicodeRangeToken(v,h,m):n=this._getDefaultToken(v,h,m);break;default:n=this._getDefaultToken(v,h,m)}break}return!n&&v===null&&(n=this.createToken(a.EOF,null,h,m)),n},_getDefaultToken:function(v,r,n){var h=this._reader,m=null;return x(v)?m=this.numberToken(v,r,n):S(v)?m=this.whitespaceToken(v,r,n):C(v+h.peekCount(1))?m=this.identOrFunctionToken(v,r,n):m=this.charToken(v,r,n),m},createToken:function(v,r,n,h,m){var _=this._reader;return m=m||{},{value:r,type:v,channel:m.channel,endChar:m.endChar,hide:m.hide||!1,startLine:n,startCol:h,endLine:_.getLine(),endCol:_.getCol()}},atRuleToken:function(v,r,n){var h=v,m=this._reader,_=a.CHAR,R;return m.mark(),R=this.readName(),h=v+R,_=a.type(h.toLowerCase()),(_===a.CHAR||_===a.UNKNOWN)&&(h.length>1?_=a.UNKNOWN_SYM:(_=a.CHAR,h=v,m.reset())),this.createToken(_,h,r,n)},charToken:function(v,r,n){var h=a.type(v),m={};return h===-1?h=a.CHAR:m.endChar=a[h].endChar,this.createToken(h,v,r,n,m)},commentToken:function(v,r,n){var h=this.readComment(v);return this.createToken(a.COMMENT,h,r,n)},comparisonToken:function(v,r,n){var h=this._reader,m=v+h.read(),_=a.type(m)||a.CHAR;return this.createToken(_,m,r,n)},hashToken:function(v,r,n){var h=this.readName(v);return this.createToken(a.HASH,h,r,n)},htmlCommentStartToken:function(v,r,n){var h=this._reader,m=v;return h.mark(),m+=h.readCount(3),m==="<!--"?this.createToken(a.CDO,m,r,n):(h.reset(),this.charToken(v,r,n))},htmlCommentEndToken:function(v,r,n){var h=this._reader,m=v;return h.mark(),m+=h.readCount(2),m==="-->"?this.createToken(a.CDC,m,r,n):(h.reset(),this.charToken(v,r,n))},identOrFunctionToken:function(v,r,n){var h=this._reader,m=this.readName(v),_=a.IDENT,R=["url(","url-prefix(","domain("],M;return h.peek()==="("?(m+=h.read(),R.indexOf(m.toLowerCase())>-1?(h.mark(),M=this.readURI(m),M===null?(h.reset(),_=a.FUNCTION):(_=a.URI,m=M)):_=a.FUNCTION):h.peek()===":"&&m.toLowerCase()==="progid"&&(m+=h.readTo("("),_=a.IE_FUNCTION),this.createToken(_,m,r,n)},importantToken:function(v,r,n){var h=this._reader,m=v,_=a.CHAR,R,M;for(h.mark(),M=h.read();M;){if(M==="/"){if(h.peek()!=="*")break;if(R=this.readComment(M),R==="")break}else if(S(M))m+=M+this.readWhitespace();else if(/i/i.test(M)){R=h.readCount(8),/mportant/i.test(R)&&(m+=M+R,_=a.IMPORTANT_SYM);break}else break;M=h.read()}return _===a.CHAR?(h.reset(),this.charToken(v,r,n)):this.createToken(_,m,r,n)},notToken:function(v,r,n){var h=this._reader,m=v;return h.mark(),m+=h.readCount(4),m.toLowerCase()===":not("?this.createToken(a.NOT,m,r,n):(h.reset(),this.charToken(v,r,n))},numberToken:function(v,r,n){var h=this._reader,m=this.readNumber(v),_,R=a.NUMBER,M=h.peek();return f(M)?(_=this.readName(h.read()),m+=_,/^em$|^ex$|^px$|^gd$|^rem$|^vw$|^vh$|^fr$|^vmax$|^vmin$|^ch$|^cm$|^mm$|^in$|^pt$|^pc$/i.test(_)?R=a.LENGTH:/^deg|^rad$|^grad$|^turn$/i.test(_)?R=a.ANGLE:/^ms$|^s$/i.test(_)?R=a.TIME:/^hz$|^khz$/i.test(_)?R=a.FREQ:/^dpi$|^dpcm$/i.test(_)?R=a.RESOLUTION:R=a.DIMENSION):M==="%"&&(m+=h.read(),R=a.PERCENTAGE),this.createToken(R,m,r,n)},stringToken:function(v,r,n){for(var h=v,m=v,_=this._reader,R=a.STRING,M=_.read(),U;M;){if(m+=M,M==="\\"){if(M=_.read(),M===null)break;if(/[^\r\n\f0-9a-f]/i.test(M))m+=M;else{for(U=0;w(M)&&U<6;U++)m+=M,M=_.read();if(M==="\r"&&_.peek()===`
  8. `&&(m+=M,M=_.read()),S(M))m+=M;else continue}}else{if(M===h)break;if(T(_.peek())){R=a.INVALID;break}}M=_.read()}return M===null&&(R=a.INVALID),this.createToken(R,m,r,n)},unicodeRangeToken:function(v,r,n){var h=this._reader,m=v,_,R=a.CHAR;return h.peek()==="+"&&(h.mark(),m+=h.read(),m+=this.readUnicodeRangePart(!0),m.length===2?h.reset():(R=a.UNICODE_RANGE,m.indexOf("?")===-1&&h.peek()==="-"&&(h.mark(),_=h.read(),_+=this.readUnicodeRangePart(!1),_.length===1?h.reset():m+=_))),this.createToken(R,m,r,n)},whitespaceToken:function(v,r,n){var h=v+this.readWhitespace();return this.createToken(a.S,h,r,n)},readUnicodeRangePart:function(v){for(var r=this._reader,n="",h=r.peek();w(h)&&n.length<6;)r.read(),n+=h,h=r.peek();if(v)for(;h==="?"&&n.length<6;)r.read(),n+=h,h=r.peek();return n},readWhitespace:function(){for(var v=this._reader,r="",n=v.peek();S(n);)v.read(),r+=n,n=v.peek();return r},readNumber:function(v){for(var r=this._reader,n=v,h=v===".",m=r.peek();m;){if(x(m))n+=r.read();else if(m==="."){if(h)break;h=!0,n+=r.read()}else break;m=r.peek()}return n},readString:function(){var v=this.stringToken(this._reader.read(),0,0);return v.type===a.INVALID?null:v.value},readURI:function(v){for(var r=this._reader,n=v,h="",m=r.peek();m&&S(m);)r.read(),m=r.peek();for(m==="'"||m==='"'?(h=this.readString(),h!==null&&(h=o.parseString(h))):h=this.readUnquotedURL(),m=r.peek();m&&S(m);)r.read(),m=r.peek();return h===null||m!==")"?n=null:n+=o.serializeString(h)+r.read(),n},readUnquotedURL:function(v){var r=this._reader,n=v||"",h;for(h=r.peek();h;h=r.peek())if(c.test(h)||/^[-!#$%&*-[\]-~]$/.test(h))n+=h,r.read();else if(h==="\\")if(/^[^\r\n\f]$/.test(r.peek(2)))n+=this.readEscape(r.read(),!0);else break;else break;return n},readName:function(v){var r=this._reader,n=v||"",h;for(h=r.peek();h;h=r.peek())if(h==="\\")if(/^[^\r\n\f]$/.test(r.peek(2)))n+=this.readEscape(r.read(),!0);else break;else if(O(h))n+=r.read();else break;return n},readEscape:function(v,r){var n=this._reader,h=v||"",m=0,_=n.peek();if(w(_))do h+=n.read(),_=n.peek();while(_&&w(_)&&++m<6);if(h.length===1)if(/^[^\r\n\f0-9a-f]$/.test(_)){if(n.read(),r)return _}else throw new Error("Bad escape sequence.");else _==="\r"?(n.read(),n.peek()===`
  9. `&&(_+=n.read())):/^[ \t\n\f]$/.test(_)?n.read():_="";if(r){var R=parseInt(h.slice(v.length),16);return String.fromCodePoint?String.fromCodePoint(R):String.fromCharCode(R)}return h+_},readComment:function(v){var r=this._reader,n=v||"",h=r.read();if(h==="*"){for(;h;){if(n+=h,n.length>2&&h==="*"&&r.peek()==="/"){n+=r.read();break}h=r.read()}return n}else return""}})},{"../util/TokenStreamBase":27,"./PropertyValuePart":11,"./Tokens":18}],18:[function(e,s,l){var u=s.exports=[{name:"CDO"},{name:"CDC"},{name:"S",whitespace:!0},{name:"COMMENT",comment:!0,hide:!0,channel:"comment"},{name:"INCLUDES",text:"~="},{name:"DASHMATCH",text:"|="},{name:"PREFIXMATCH",text:"^="},{name:"SUFFIXMATCH",text:"$="},{name:"SUBSTRINGMATCH",text:"*="},{name:"STRING"},{name:"IDENT"},{name:"HASH"},{name:"IMPORT_SYM",text:"@import"},{name:"PAGE_SYM",text:"@page"},{name:"MEDIA_SYM",text:"@media"},{name:"FONT_FACE_SYM",text:"@font-face"},{name:"CHARSET_SYM",text:"@charset"},{name:"NAMESPACE_SYM",text:"@namespace"},{name:"SUPPORTS_SYM",text:"@supports"},{name:"VIEWPORT_SYM",text:["@viewport","@-ms-viewport","@-o-viewport"]},{name:"DOCUMENT_SYM",text:["@document","@-moz-document"]},{name:"UNKNOWN_SYM"},{name:"KEYFRAMES_SYM",text:["@keyframes","@-webkit-keyframes","@-moz-keyframes","@-o-keyframes"]},{name:"IMPORTANT_SYM"},{name:"LENGTH"},{name:"ANGLE"},{name:"TIME"},{name:"FREQ"},{name:"DIMENSION"},{name:"PERCENTAGE"},{name:"NUMBER"},{name:"URI"},{name:"FUNCTION"},{name:"UNICODE_RANGE"},{name:"INVALID"},{name:"PLUS",text:"+"},{name:"GREATER",text:">"},{name:"COMMA",text:","},{name:"TILDE",text:"~"},{name:"NOT"},{name:"TOPLEFTCORNER_SYM",text:"@top-left-corner"},{name:"TOPLEFT_SYM",text:"@top-left"},{name:"TOPCENTER_SYM",text:"@top-center"},{name:"TOPRIGHT_SYM",text:"@top-right"},{name:"TOPRIGHTCORNER_SYM",text:"@top-right-corner"},{name:"BOTTOMLEFTCORNER_SYM",text:"@bottom-left-corner"},{name:"BOTTOMLEFT_SYM",text:"@bottom-left"},{name:"BOTTOMCENTER_SYM",text:"@bottom-center"},{name:"BOTTOMRIGHT_SYM",text:"@bottom-right"},{name:"BOTTOMRIGHTCORNER_SYM",text:"@bottom-right-corner"},{name:"LEFTTOP_SYM",text:"@left-top"},{name:"LEFTMIDDLE_SYM",text:"@left-middle"},{name:"LEFTBOTTOM_SYM",text:"@left-bottom"},{name:"RIGHTTOP_SYM",text:"@right-top"},{name:"RIGHTMIDDLE_SYM",text:"@right-middle"},{name:"RIGHTBOTTOM_SYM",text:"@right-bottom"},{name:"RESOLUTION",state:"media"},{name:"IE_FUNCTION"},{name:"CHAR"},{name:"PIPE",text:"|"},{name:"SLASH",text:"/"},{name:"MINUS",text:"-"},{name:"STAR",text:"*"},{name:"LBRACE",endChar:"}",text:"{"},{name:"RBRACE",text:"}"},{name:"LBRACKET",endChar:"]",text:"["},{name:"RBRACKET",text:"]"},{name:"EQUALS",text:"="},{name:"COLON",text:":"},{name:"SEMICOLON",text:";"},{name:"LPAREN",endChar:")",text:"("},{name:"RPAREN",text:")"},{name:"DOT",text:"."}];(function(){var o=[],a=Object.create(null);u.UNKNOWN=-1,u.unshift({name:"EOF"});for(var t=0,c=u.length;t<c;t++)if(o.push(u[t].name),u[u[t].name]=t,u[t].text)if(u[t].text instanceof Array)for(var d=0;d<u[t].text.length;d++)a[u[t].text[d]]=t;else a[u[t].text]=t;u.name=function(g){return o[g]},u.type=function(g){return a[g]||-1}})()},{}],19:[function(e,s,l){var u=e("./Matcher"),o=e("./Properties"),a=e("./ValidationTypes"),t=e("./ValidationError"),c=e("./PropertyValueIterator");s.exports={validate:function(d,g){var w=d.toString().toLowerCase(),x=new c(g),S=o[w],T;if(S){if(typeof S!="number"){if(a.isAny(x,"inherit | initial | unset")){if(x.hasNext())throw T=x.next(),new t("Expected end of value but found '"+T+"'.",T.line,T.col);return}this.singleProperty(S,x)}}else if(w.indexOf("-")!==0)throw new t("Unknown property '"+d+"'.",d.line,d.col)},singleProperty:function(d,g){var w=!1,x=g.value,S;if(w=u.parse(d).match(g),w){if(g.hasNext())throw S=g.next(),new t("Expected end of value but found '"+S+"'.",S.line,S.col)}else throw g.hasNext()&&!g.isFirst()?(S=g.peek(),new t("Expected end of value but found '"+S+"'.",S.line,S.col)):new t("Expected ("+a.describe(d)+") but found '"+x+"'.",x.line,x.col)}}},{"./Matcher":3,"./Properties":7,"./PropertyValueIterator":10,"./ValidationError":20,"./ValidationTypes":21}],20:[function(e,s,l){s.exports=u;function u(o,a,t){this.col=t,this.line=a,this.message=o}u.prototype=new Error},{}],21:[function(e,s,l){var u=s.exports,o=e("./Matcher");function a(t,c){Object.keys(c).forEach(function(d){t[d]=c[d]})}a(u,{isLiteral:function(t,c){var d=t.text.toString().toLowerCase(),g=c.split(" | "),w,x,S=!1;for(w=0,x=g.length;w<x&&!S;w++)g[w].charAt(0)==="<"?S=this.simple[g[w]](t):g[w].slice(-2)==="()"?S=t.type==="function"&&t.name===g[w].slice(0,-2):d===g[w].toLowerCase()&&(S=!0);return S},isSimple:function(t){return!!this.simple[t]},isComplex:function(t){return!!this.complex[t]},describe:function(t){return this.complex[t]instanceof o?this.complex[t].toString(0):t},isAny:function(t,c){var d=c.split(" | "),g,w,x=!1;for(g=0,w=d.length;g<w&&!x&&t.hasNext();g++)x=this.isType(t,d[g]);return x},isAnyOfGroup:function(t,c){var d=c.split(" || "),g,w,x=!1;for(g=0,w=d.length;g<w&&!x;g++)x=this.isType(t,d[g]);return x?d[g-1]:!1},isType:function(t,c){var d=t.peek(),g=!1;return c.charAt(0)!=="<"?(g=this.isLiteral(d,c),g&&t.next()):this.simple[c]?(g=this.simple[c](d),g&&t.next()):this.complex[c]instanceof o?g=this.complex[c].match(t):g=this.complex[c](t),g},simple:{__proto__:null,"<absolute-size>":"xx-small | x-small | small | medium | large | x-large | xx-large","<animateable-feature>":"scroll-position | contents | <animateable-feature-name>","<animateable-feature-name>":function(t){return this["<ident>"](t)&&!/^(unset|initial|inherit|will-change|auto|scroll-position|contents)$/i.test(t)},"<angle>":function(t){return t.type==="angle"},"<attachment>":"scroll | fixed | local","<attr>":"attr()","<basic-shape>":"inset() | circle() | ellipse() | polygon()","<bg-image>":"<image> | <gradient> | none","<border-style>":"none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset","<border-width>":"<length> | thin | medium | thick","<box>":"padding-box | border-box | content-box","<clip-source>":"<uri>","<color>":function(t){return t.type==="color"||String(t)==="transparent"||String(t)==="currentColor"},"<color-svg>":function(t){return t.type==="color"},"<content>":"content()","<content-sizing>":"fill-available | -moz-available | -webkit-fill-available | max-content | -moz-max-content | -webkit-max-content | min-content | -moz-min-content | -webkit-min-content | fit-content | -moz-fit-content | -webkit-fit-content","<feature-tag-value>":function(t){return t.type==="function"&&/^[A-Z0-9]{4}$/i.test(t)},"<filter-function>":"blur() | brightness() | contrast() | custom() | drop-shadow() | grayscale() | hue-rotate() | invert() | opacity() | saturate() | sepia()","<flex-basis>":"<width>","<flex-direction>":"row | row-reverse | column | column-reverse","<flex-grow>":"<number>","<flex-shrink>":"<number>","<flex-wrap>":"nowrap | wrap | wrap-reverse","<font-size>":"<absolute-size> | <relative-size> | <length> | <percentage>","<font-stretch>":"normal | ultra-condensed | extra-condensed | condensed | semi-condensed | semi-expanded | expanded | extra-expanded | ultra-expanded","<font-style>":"normal | italic | oblique","<font-variant-caps>":"small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps","<font-variant-css21>":"normal | small-caps","<font-weight>":"normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900","<generic-family>":"serif | sans-serif | cursive | fantasy | monospace","<geometry-box>":"<shape-box> | fill-box | stroke-box | view-box","<glyph-angle>":function(t){return t.type==="angle"&&t.units==="deg"},"<gradient>":function(t){return t.type==="function"&&/^(?:-(?:ms|moz|o|webkit)-)?(?:repeating-)?(?:radial-|linear-)?gradient/i.test(t)},"<icccolor>":"cielab() | cielch() | cielchab() | icc-color() | icc-named-color()","<ident>":function(t){return t.type==="identifier"||t.wasIdent},"<ident-not-generic-family>":function(t){return this["<ident>"](t)&&!this["<generic-family>"](t)},"<image>":"<uri>","<integer>":function(t){return t.type==="integer"},"<length>":function(t){return t.type==="function"&&/^(?:-(?:ms|moz|o|webkit)-)?calc/i.test(t)?!0:t.type==="length"||t.type==="number"||t.type==="integer"||String(t)==="0"},"<line>":function(t){return t.type==="integer"},"<line-height>":"<number> | <length> | <percentage> | normal","<margin-width>":"<length> | <percentage> | auto","<miterlimit>":function(t){return this["<number>"](t)&&t.value>=1},"<nonnegative-length-or-percentage>":function(t){return(this["<length>"](t)||this["<percentage>"](t))&&(String(t)==="0"||t.type==="function"||t.value>=0)},"<nonnegative-number-or-percentage>":function(t){return(this["<number>"](t)||this["<percentage>"](t))&&(String(t)==="0"||t.type==="function"||t.value>=0)},"<number>":function(t){return t.type==="number"||this["<integer>"](t)},"<opacity-value>":function(t){return this["<number>"](t)&&t.value>=0&&t.value<=1},"<padding-width>":"<nonnegative-length-or-percentage>","<percentage>":function(t){return t.type==="percentage"||String(t)==="0"},"<relative-size>":"smaller | larger","<shape>":"rect() | inset-rect()","<shape-box>":"<box> | margin-box","<single-animation-direction>":"normal | reverse | alternate | alternate-reverse","<single-animation-name>":function(t){return this["<ident>"](t)&&/^-?[a-z_][-a-z0-9_]+$/i.test(t)&&!/^(none|unset|initial|inherit)$/i.test(t)},"<string>":function(t){return t.type==="string"},"<time>":function(t){return t.type==="time"},"<uri>":function(t){return t.type==="uri"},"<width>":"<margin-width>"},complex:{__proto__:null,"<azimuth>":"<angle> | [ [ left-side | far-left | left | center-left | center | center-right | right | far-right | right-side ] || behind ] | leftwards | rightwards","<bg-position>":"<position>#","<bg-size>":"[ <length> | <percentage> | auto ]{1,2} | cover | contain","<blend-mode>":"normal | multiply | screen | overlay | darken | lighten | color-dodge | color-burn | hard-light | soft-light | difference | exclusion | hue | saturation | color | luminosity","<border-image-slice>":o.many([!0],o.cast("<nonnegative-number-or-percentage>"),o.cast("<nonnegative-number-or-percentage>"),o.cast("<nonnegative-number-or-percentage>"),o.cast("<nonnegative-number-or-percentage>"),"fill"),"<border-radius>":"<nonnegative-length-or-percentage>{1,4} [ / <nonnegative-length-or-percentage>{1,4} ]?","<box-shadow>":"none | <shadow>#","<clip-path>":"<basic-shape> || <geometry-box>","<dasharray>":o.cast("<nonnegative-length-or-percentage>").braces(1,1/0,"#",o.cast(",").question()),"<family-name>":"<string> | <ident-not-generic-family> <ident>*","<filter-function-list>":"[ <filter-function> | <uri> ]+","<flex>":"none | [ <flex-grow> <flex-shrink>? || <flex-basis> ]","<font-family>":"[ <generic-family> | <family-name> ]#","<font-shorthand>":"[ <font-style> || <font-variant-css21> || <font-weight> || <font-stretch> ]? <font-size> [ / <line-height> ]? <font-family>","<font-variant-alternates>":"stylistic() || historical-forms || styleset() || character-variant() || swash() || ornaments() || annotation()","<font-variant-ligatures>":"[ common-ligatures | no-common-ligatures ] || [ discretionary-ligatures | no-discretionary-ligatures ] || [ historical-ligatures | no-historical-ligatures ] || [ contextual | no-contextual ]","<font-variant-numeric>":"[ lining-nums | oldstyle-nums ] || [ proportional-nums | tabular-nums ] || [ diagonal-fractions | stacked-fractions ] || ordinal || slashed-zero","<font-variant-east-asian>":"[ jis78 | jis83 | jis90 | jis04 | simplified | traditional ] || [ full-width | proportional-width ] || ruby","<paint>":"<paint-basic> | <uri> <paint-basic>?","<paint-basic>":"none | currentColor | <color-svg> <icccolor>?","<position>":"[ center | [ left | right ] [ <percentage> | <length> ]? ] && [ center | [ top | bottom ] [ <percentage> | <length> ]? ] | [ left | center | right | <percentage> | <length> ] [ top | center | bottom | <percentage> | <length> ] | [ left | center | right | top | bottom | <percentage> | <length> ]","<repeat-style>":"repeat-x | repeat-y | [ repeat | space | round | no-repeat ]{1,2}","<shadow>":o.many([!0],o.cast("<length>").braces(2,4),"inset","<color>"),"<text-decoration-color>":"<color>","<text-decoration-line>":"none | [ underline || overline || line-through || blink ]","<text-decoration-style>":"solid | double | dotted | dashed | wavy","<will-change>":"auto | <animateable-feature>#","<x-one-radius>":"[ <length> | <percentage> ]{1,2}"}}),Object.keys(u.simple).forEach(function(t){var c=u.simple[t];typeof c=="string"&&(u.simple[t]=function(d){return u.isLiteral(d,c)})}),Object.keys(u.complex).forEach(function(t){var c=u.complex[t];typeof c=="string"&&(u.complex[t]=o.parse(c))}),u.complex["<font-variant>"]=o.oror({expand:"<font-variant-ligatures>"},{expand:"<font-variant-alternates>"},"<font-variant-caps>",{expand:"<font-variant-numeric>"},{expand:"<font-variant-east-asian>"})},{"./Matcher":3}],22:[function(e,s,l){s.exports={Colors:e("./Colors"),Combinator:e("./Combinator"),Parser:e("./Parser"),PropertyName:e("./PropertyName"),PropertyValue:e("./PropertyValue"),PropertyValuePart:e("./PropertyValuePart"),Matcher:e("./Matcher"),MediaFeature:e("./MediaFeature"),MediaQuery:e("./MediaQuery"),Selector:e("./Selector"),SelectorPart:e("./SelectorPart"),SelectorSubPart:e("./SelectorSubPart"),Specificity:e("./Specificity"),TokenStream:e("./TokenStream"),Tokens:e("./Tokens"),ValidationError:e("./ValidationError")}},{"./Colors":1,"./Combinator":2,"./Matcher":3,"./MediaFeature":4,"./MediaQuery":5,"./Parser":6,"./PropertyName":8,"./PropertyValue":9,"./PropertyValuePart":11,"./Selector":13,"./SelectorPart":14,"./SelectorSubPart":15,"./Specificity":16,"./TokenStream":17,"./Tokens":18,"./ValidationError":20}],23:[function(e,s,l){s.exports=u;function u(){this._listeners=Object.create(null)}u.prototype={constructor:u,addListener:function(o,a){this._listeners[o]||(this._listeners[o]=[]),this._listeners[o].push(a)},fire:function(o){if(typeof o=="string"&&(o={type:o}),typeof o.target<"u"&&(o.target=this),typeof o.type>"u")throw new Error("Event object missing 'type' property.");if(this._listeners[o.type])for(var a=this._listeners[o.type].concat(),t=0,c=a.length;t<c;t++)a[t].call(this,o)},removeListener:function(o,a){if(this._listeners[o]){for(var t=this._listeners[o],c=0,d=t.length;c<d;c++)if(t[c]===a){t.splice(c,1);break}}}}},{}],24:[function(e,s,l){s.exports=u;function u(o){this._input=o.replace(/(\r\n?|\n)/g,`
  10. `),this._line=1,this._col=1,this._cursor=0}u.prototype={constructor:u,getCol:function(){return this._col},getLine:function(){return this._line},eof:function(){return this._cursor===this._input.length},peek:function(o){var a=null;return o=typeof o>"u"?1:o,this._cursor<this._input.length&&(a=this._input.charAt(this._cursor+o-1)),a},read:function(){var o=null;return this._cursor<this._input.length&&(this._input.charAt(this._cursor)===`
  11. `?(this._line++,this._col=1):this._col++,o=this._input.charAt(this._cursor++)),o},mark:function(){this._bookmark={cursor:this._cursor,line:this._line,col:this._col}},reset:function(){this._bookmark&&(this._cursor=this._bookmark.cursor,this._line=this._bookmark.line,this._col=this._bookmark.col,delete this._bookmark)},peekCount:function(o){return o=typeof o>"u"?1:Math.max(o,0),this._input.substring(this._cursor,this._cursor+o)},readTo:function(o){for(var a="",t;a.length<o.length||a.lastIndexOf(o)!==a.length-o.length;)if(t=this.read(),t)a+=t;else throw new Error('Expected "'+o+'" at line '+this._line+", col "+this._col+".");return a},readWhile:function(o){for(var a="",t=this.peek();t!==null&&o(t);)a+=this.read(),t=this.peek();return a},readMatch:function(o){var a=this._input.substring(this._cursor),t=null;return typeof o=="string"?a.slice(0,o.length)===o&&(t=this.readCount(o.length)):o instanceof RegExp&&o.test(a)&&(t=this.readCount(RegExp.lastMatch.length)),t},readCount:function(o){for(var a="";o--;)a+=this.read();return a}}},{}],25:[function(e,s,l){s.exports=u;function u(o,a,t){Error.call(this),this.name=this.constructor.name,this.col=t,this.line=a,this.message=o}u.prototype=Object.create(Error.prototype),u.prototype.constructor=u},{}],26:[function(e,s,l){s.exports=u;function u(o,a,t,c){this.col=t,this.line=a,this.text=o,this.type=c}u.fromToken=function(o){return new u(o.value,o.startLine,o.startCol)},u.prototype={constructor:u,valueOf:function(){return this.toString()},toString:function(){return this.text}}},{}],27:[function(e,s,l){s.exports=a;var u=e("./StringReader"),o=e("./SyntaxError");function a(t,c){this._reader=new u(t?t.toString():""),this._token=null,this._tokenData=c,this._lt=[],this._ltIndex=0,this._ltIndexCache=[]}a.createTokenData=function(t){var c=[],d=Object.create(null),g=t.concat([]),w=0,x=g.length+1;for(g.UNKNOWN=-1,g.unshift({name:"EOF"});w<x;w++)c.push(g[w].name),g[g[w].name]=w,g[w].text&&(d[g[w].text]=w);return g.name=function(S){return c[S]},g.type=function(S){return d[S]},g},a.prototype={constructor:a,match:function(t,c){t instanceof Array||(t=[t]);for(var d=this.get(c),g=0,w=t.length;g<w;)if(d===t[g++])return!0;return this.unget(),!1},mustMatch:function(t){var c;if(t instanceof Array||(t=[t]),!this.match.apply(this,arguments))throw c=this.LT(1),new o("Expected "+this._tokenData[t[0]].name+" at line "+c.startLine+", col "+c.startCol+".",c.startLine,c.startCol)},advance:function(t,c){for(;this.LA(0)!==0&&!this.match(t,c);)this.get();return this.LA(0)},get:function(t){var c=this._tokenData,d=0,g,w;if(this._lt.length&&this._ltIndex>=0&&this._ltIndex<this._lt.length){for(d++,this._token=this._lt[this._ltIndex++],w=c[this._token.type];typeof w.channel<"u"&&t!==w.channel&&this._ltIndex<this._lt.length;)this._token=this._lt[this._ltIndex++],w=c[this._token.type],d++;if((typeof w.channel>"u"||t===w.channel)&&this._ltIndex<=this._lt.length)return this._ltIndexCache.push(d),this._token.type}return g=this._getToken(),g.type>-1&&!c[g.type].hide&&(g.channel=c[g.type].channel,this._token=g,this._lt.push(g),this._ltIndexCache.push(this._lt.length-this._ltIndex+d),this._lt.length>5&&this._lt.shift(),this._ltIndexCache.length>5&&this._ltIndexCache.shift(),this._ltIndex=this._lt.length),w=c[g.type],w&&(w.hide||typeof w.channel<"u"&&t!==w.channel)?this.get(t):g.type},LA:function(t){var c=t,d;if(t>0){if(t>5)throw new Error("Too much lookahead.");for(;c;)d=this.get(),c--;for(;c<t;)this.unget(),c++}else if(t<0)if(this._lt[this._ltIndex+t])d=this._lt[this._ltIndex+t].type;else throw new Error("Too much lookbehind.");else d=this._token.type;return d},LT:function(t){return this.LA(t),this._lt[this._ltIndex+t-1]},peek:function(){return this.LA(1)},token:function(){return this._token},tokenName:function(t){return t<0||t>this._tokenData.length?"UNKNOWN_TOKEN":this._tokenData[t].name},tokenType:function(t){return this._tokenData[t]||-1},unget:function(){if(this._ltIndexCache.length)this._ltIndex-=this._ltIndexCache.pop(),this._token=this._lt[this._ltIndex-1];else throw new Error("Too much lookahead.")}}},{"./StringReader":24,"./SyntaxError":25}],28:[function(e,s,l){s.exports={StringReader:e("./StringReader"),SyntaxError:e("./SyntaxError"),SyntaxUnit:e("./SyntaxUnit"),EventTarget:e("./EventTarget"),TokenStreamBase:e("./TokenStreamBase")}},{"./EventTarget":23,"./StringReader":24,"./SyntaxError":25,"./SyntaxUnit":26,"./TokenStreamBase":27}],parserlib:[function(e,s,l){s.exports={css:e("./css"),util:e("./util")}},{"./css":22,"./util":28}]},{},[]),i("parserlib")}(),b=function(){function i(g,w){return w!=null&&g instanceof w}var e;try{e=Map}catch{e=function(){}}var s;try{s=Set}catch{s=function(){}}var l;try{l=Promise}catch{l=function(){}}function u(g,w,x,S,T){typeof w=="object"&&(x=w.depth,S=w.prototype,T=w.includeNonEnumerable,w=w.circular);var A=[],O=[],f=typeof Buffer<"u";typeof w>"u"&&(w=!0),typeof x>"u"&&(x=1/0);function D(C,z){if(C===null)return null;if(z===0)return C;var N,v;if(typeof C!="object")return C;if(i(C,e))N=new e;else if(i(C,s))N=new s;else if(i(C,l))N=new l(function($,Y){C.then(function(W){$(D(W,z-1))},function(W){Y(D(W,z-1))})});else if(u.__isArray(C))N=[];else if(u.__isRegExp(C))N=new RegExp(C.source,d(C)),C.lastIndex&&(N.lastIndex=C.lastIndex);else if(u.__isDate(C))N=new Date(C.getTime());else{if(f&&Buffer.isBuffer(C))return Buffer.allocUnsafe?N=Buffer.allocUnsafe(C.length):N=new Buffer(C.length),C.copy(N),N;i(C,Error)?N=Object.create(C):typeof S>"u"?(v=Object.getPrototypeOf(C),N=Object.create(v)):(N=Object.create(S),v=S)}if(w){var r=A.indexOf(C);if(r!=-1)return O[r];A.push(C),O.push(N)}i(C,e)&&C.forEach(function($,Y){var W=D(Y,z-1),B=D($,z-1);N.set(W,B)}),i(C,s)&&C.forEach(function($){var Y=D($,z-1);N.add(Y)});for(var n in C){var h;v&&(h=Object.getOwnPropertyDescriptor(v,n)),!(h&&h.set==null)&&(N[n]=D(C[n],z-1))}if(Object.getOwnPropertySymbols)for(var m=Object.getOwnPropertySymbols(C),n=0;n<m.length;n++){var _=m[n],R=Object.getOwnPropertyDescriptor(C,_);R&&!R.enumerable&&!T||(N[_]=D(C[_],z-1),R.enumerable||Object.defineProperty(N,_,{enumerable:!1}))}if(T)for(var M=Object.getOwnPropertyNames(C),n=0;n<M.length;n++){var U=M[n],R=Object.getOwnPropertyDescriptor(C,U);R&&R.enumerable||(N[U]=D(C[U],z-1),Object.defineProperty(N,U,{enumerable:!1}))}return N}return D(g,x)}u.clonePrototype=function(w){if(w===null)return null;var x=function(){};return x.prototype=w,new x};function o(g){return Object.prototype.toString.call(g)}u.__objToStr=o;function a(g){return typeof g=="object"&&o(g)==="[object Date]"}u.__isDate=a;function t(g){return typeof g=="object"&&o(g)==="[object Array]"}u.__isArray=t;function c(g){return typeof g=="object"&&o(g)==="[object RegExp]"}u.__isRegExp=c;function d(g){var w="";return g.global&&(w+="g"),g.ignoreCase&&(w+="i"),g.multiline&&(w+="m"),w}return u.__getRegExpFlags=d,u}();typeof L=="object"&&L.exports&&(L.exports=b);var p=function(){var i=[],e=[],s=/\/\*\s*csslint([^\*]*)\*\//,l=new y.util.EventTarget;l.version="1.0.5",l.addRule=function(o){i.push(o),i[o.id]=o},l.clearRules=function(){i=[]},l.getRules=function(){return[].concat(i).sort(function(o,a){return o.id>a.id?1:0})},l.getRuleset=function(){for(var o={},a=0,t=i.length;a<t;)o[i[a++].id]=1;return o};function u(o,a){var t,c=o&&o.match(s),d=c&&c[1];return d&&(t={true:2,"":1,false:0,2:2,1:1,0:0},d.toLowerCase().split(",").forEach(function(g){var w=g.split(":"),x=w[0]||"",S=w[1]||"";a[x.trim()]=t[S.trim()]})),a}return l.addFormatter=function(o){e[o.id]=o},l.getFormatter=function(o){return e[o]},l.format=function(o,a,t,c){var d=l.getFormatter(t),g=null;return d&&(g=d.startFormat(),g+=d.formatResults(o,a,c||{}),g+=d.endFormat()),g},l.hasFormat=function(o){return e.hasOwnProperty(o)},l.verify=function(o,a){var t=0,c,d,g={},w=[],x,S=new y.css.Parser({starHack:!0,ieFilters:!0,underscoreHack:!0,strict:!1});d=o.replace(/\n\r?/g,"$split$").split("$split$"),p.Util.forEach(d,function(O,f){var D=O&&O.match(/\/\*[ \t]*csslint[ \t]+allow:[ \t]*([^\*]*)\*\//i),C=D&&D[1],z={};C&&(C.toLowerCase().split(",").forEach(function(N){z[N.trim()]=!0}),Object.keys(z).length>0&&(g[f+1]=z))});var T=null,A=null;p.Util.forEach(d,function(O,f){T===null&&O.match(/\/\*[ \t]*csslint[ \t]+ignore:start[ \t]*\*\//i)&&(T=f),O.match(/\/\*[ \t]*csslint[ \t]+ignore:end[ \t]*\*\//i)&&(A=f),T!==null&&A!==null&&(w.push([T,A]),T=A=null)}),T!==null&&w.push([T,d.length]),a||(a=l.getRuleset()),s.test(o)&&(a=b(a),a=u(o,a)),c=new k(d,a,g,w),a.errors=2;for(t in a)a.hasOwnProperty(t)&&a[t]&&i[t]&&i[t].init(S,c);try{S.parse(o)}catch(O){c.error("Fatal error, cannot continue: "+O.message,O.line,O.col,{})}return x={messages:c.messages,stats:c.stats,ruleset:c.ruleset,allow:c.allow,ignore:c.ignore},x.messages.sort(function(O,f){return O.rollup&&!f.rollup?1:!O.rollup&&f.rollup?-1:O.line-f.line}),x},l}();function k(i,e,s,l){this.messages=[],this.stats=[],this.lines=i,this.ruleset=e,this.allow=s,this.allow||(this.allow={}),this.ignore=l,this.ignore||(this.ignore=[])}return k.prototype={constructor:k,error:function(i,e,s,l){this.messages.push({type:"error",line:e,col:s,message:i,evidence:this.lines[e-1],rule:l||{}})},warn:function(i,e,s,l){this.report(i,e,s,l)},report:function(i,e,s,l){this.allow.hasOwnProperty(e)&&this.allow[e].hasOwnProperty(l.id)||this.isIgnored(e)||this.messages.push({type:this.ruleset[l.id]===2?"error":"warning",line:e,col:s,message:i,evidence:this.lines[e-1],rule:l})},info:function(i,e,s,l){this.messages.push({type:"info",line:e,col:s,message:i,evidence:this.lines[e-1],rule:l})},rollupError:function(i,e){this.messages.push({type:"error",rollup:!0,message:i,rule:e})},rollupWarn:function(i,e){this.messages.push({type:"warning",rollup:!0,message:i,rule:e})},stat:function(i,e){this.stats[i]=e},isIgnored:function(i){var e=!1;return p.Util.forEach(this.ignore,function(s){s[0]<=i&&i<=s[1]&&(e=!0)}),e}},p._Reporter=k,p.Util={mix:function(i,e){var s;for(s in e)e.hasOwnProperty(s)&&(i[s]=e[s]);return s},indexOf:function(i,e){if(i.indexOf)return i.indexOf(e);for(var s=0,l=i.length;s<l;s++)if(i[s]===e)return s;return-1},forEach:function(i,e){if(i.forEach)return i.forEach(e);for(var s=0,l=i.length;s<l;s++)e(i[s],s,i)}},p.addRule({id:"box-model",name:"Beware of broken box size",desc:"Don't use width or height when using padding or border.",url:"https://github.com/CSSLint/csslint/wiki/Beware-of-box-model-size",browsers:"All",init:function(i,e){var s=this,l={border:1,"border-left":1,"border-right":1,padding:1,"padding-left":1,"padding-right":1},u={border:1,"border-bottom":1,"border-top":1,padding:1,"padding-bottom":1,"padding-top":1},o,a=!1;function t(){o={},a=!1}function c(){var d,g;if(!a){if(o.height)for(d in u)u.hasOwnProperty(d)&&o[d]&&(g=o[d].value,d==="padding"&&g.parts.length===2&&g.parts[0].value===0||e.report("Using height with "+d+" can sometimes make elements larger than you expect.",o[d].line,o[d].col,s));if(o.width)for(d in l)l.hasOwnProperty(d)&&o[d]&&(g=o[d].value,d==="padding"&&g.parts.length===2&&g.parts[1].value===0||e.report("Using width with "+d+" can sometimes make elements larger than you expect.",o[d].line,o[d].col,s))}}i.addListener("startrule",t),i.addListener("startfontface",t),i.addListener("startpage",t),i.addListener("startpagemargin",t),i.addListener("startkeyframerule",t),i.addListener("startviewport",t),i.addListener("property",function(d){var g=d.property.text.toLowerCase();u[g]||l[g]?!/^0\S*$/.test(d.value)&&!(g==="border"&&d.value.toString()==="none")&&(o[g]={line:d.property.line,col:d.property.col,value:d.value}):/^(width|height)/i.test(g)&&/^(length|percentage)/.test(d.value.parts[0].type)?o[g]=1:g==="box-sizing"&&(a=!0)}),i.addListener("endrule",c),i.addListener("endfontface",c),i.addListener("endpage",c),i.addListener("endpagemargin",c),i.addListener("endkeyframerule",c),i.addListener("endviewport",c)}}),p.addRule({id:"bulletproof-font-face",name:"Use the bulletproof @font-face syntax",desc:"Use the bulletproof @font-face syntax to avoid 404's in old IE (http://www.fontspring.com/blog/the-new-bulletproof-font-face-syntax).",url:"https://github.com/CSSLint/csslint/wiki/Bulletproof-font-face",browsers:"All",init:function(i,e){var s=this,l=!1,u=!0,o=!1,a,t;i.addListener("startfontface",function(){l=!0}),i.addListener("property",function(c){if(l){var d=c.property.toString().toLowerCase(),g=c.value.toString();if(a=c.line,t=c.col,d==="src"){var w=/^\s?url\(['"].+\.eot\?.*['"]\)\s*format\(['"]embedded-opentype['"]\).*$/i;!g.match(w)&&u?(o=!0,u=!1):g.match(w)&&!u&&(o=!1)}}}),i.addListener("endfontface",function(){l=!1,o&&e.report("@font-face declaration doesn't follow the fontspring bulletproof syntax.",a,t,s)})}}),p.addRule({id:"compatible-vendor-prefixes",name:"Require compatible vendor prefixes",desc:"Include all compatible vendor prefixes to reach a wider range of users.",url:"https://github.com/CSSLint/csslint/wiki/Require-compatible-vendor-prefixes",browsers:"All",init:function(i,e){var s=this,l,u,o,a,t,c,d,g=!1,w=Array.prototype.push,x=[];l={animation:"webkit","animation-delay":"webkit","animation-direction":"webkit","animation-duration":"webkit","animation-fill-mode":"webkit","animation-iteration-count":"webkit","animation-name":"webkit","animation-play-state":"webkit","animation-timing-function":"webkit",appearance:"webkit moz","border-end":"webkit moz","border-end-color":"webkit moz","border-end-style":"webkit moz","border-end-width":"webkit moz","border-image":"webkit moz o","border-radius":"webkit","border-start":"webkit moz","border-start-color":"webkit moz","border-start-style":"webkit moz","border-start-width":"webkit moz","box-align":"webkit moz","box-direction":"webkit moz","box-flex":"webkit moz","box-lines":"webkit","box-ordinal-group":"webkit moz","box-orient":"webkit moz","box-pack":"webkit moz","box-sizing":"","box-shadow":"","column-count":"webkit moz ms","column-gap":"webkit moz ms","column-rule":"webkit moz ms","column-rule-color":"webkit moz ms","column-rule-style":"webkit moz ms","column-rule-width":"webkit moz ms","column-width":"webkit moz ms",flex:"webkit ms","flex-basis":"webkit","flex-direction":"webkit ms","flex-flow":"webkit","flex-grow":"webkit","flex-shrink":"webkit",hyphens:"epub moz","line-break":"webkit ms","margin-end":"webkit moz","margin-start":"webkit moz","marquee-speed":"webkit wap","marquee-style":"webkit wap","padding-end":"webkit moz","padding-start":"webkit moz","tab-size":"moz o","text-size-adjust":"webkit ms",transform:"webkit ms","transform-origin":"webkit ms",transition:"","transition-delay":"","transition-duration":"","transition-property":"","transition-timing-function":"","user-modify":"webkit moz","user-select":"webkit moz ms","word-break":"epub ms","writing-mode":"epub ms"};for(o in l)if(l.hasOwnProperty(o)){for(a=[],t=l[o].split(" "),c=0,d=t.length;c<d;c++)a.push("-"+t[c]+"-"+o);l[o]=a,w.apply(x,a)}i.addListener("startrule",function(){u=[]}),i.addListener("startkeyframes",function(S){g=S.prefix||!0}),i.addListener("endkeyframes",function(){g=!1}),i.addListener("property",function(S){var T=S.property;p.Util.indexOf(x,T.text)>-1&&(!g||typeof g!="string"||T.text.indexOf("-"+g+"-")!==0)&&u.push(T)}),i.addListener("endrule",function(){if(u.length){var S={},T,A,O,f,D,C,z,N,v,r;for(T=0,A=u.length;T<A;T++){O=u[T];for(f in l)l.hasOwnProperty(f)&&(D=l[f],p.Util.indexOf(D,O.text)>-1&&(S[f]||(S[f]={full:D.slice(0),actual:[],actualNodes:[]}),p.Util.indexOf(S[f].actual,O.text)===-1&&(S[f].actual.push(O.text),S[f].actualNodes.push(O))))}for(f in S)if(S.hasOwnProperty(f)&&(C=S[f],z=C.full,N=C.actual,z.length>N.length))for(T=0,A=z.length;T<A;T++)v=z[T],p.Util.indexOf(N,v)===-1&&(r=N.length===1?N[0]:N.length===2?N.join(" and "):N.join(", "),e.report("The property "+v+" is compatible with "+r+" and should be included as well.",C.actualNodes[0].line,C.actualNodes[0].col,s))}})}}),p.addRule({id:"display-property-grouping",name:"Require properties appropriate for display",desc:"Certain properties shouldn't be used with certain display property values.",url:"https://github.com/CSSLint/csslint/wiki/Require-properties-appropriate-for-display",browsers:"All",init:function(i,e){var s=this,l={display:1,float:"none",height:1,width:1,margin:1,"margin-left":1,"margin-right":1,"margin-bottom":1,"margin-top":1,padding:1,"padding-left":1,"padding-right":1,"padding-bottom":1,"padding-top":1,"vertical-align":1},u;function o(c,d,g){u[c]&&(typeof l[c]!="string"||u[c].value.toLowerCase()!==l[c])&&e.report(g||c+" can't be used with display: "+d+".",u[c].line,u[c].col,s)}function a(){u={}}function t(){var c=u.display?u.display.value:null;if(c)switch(c){case"inline":o("height",c),o("width",c),o("margin",c),o("margin-top",c),o("margin-bottom",c),o("float",c,"display:inline has no effect on floated elements (but may be used to fix the IE6 double-margin bug).");break;case"block":o("vertical-align",c);break;case"inline-block":o("float",c);break;default:c.indexOf("table-")===0&&(o("margin",c),o("margin-left",c),o("margin-right",c),o("margin-top",c),o("margin-bottom",c),o("float",c))}}i.addListener("startrule",a),i.addListener("startfontface",a),i.addListener("startkeyframerule",a),i.addListener("startpagemargin",a),i.addListener("startpage",a),i.addListener("startviewport",a),i.addListener("property",function(c){var d=c.property.text.toLowerCase();l[d]&&(u[d]={value:c.value.text,line:c.property.line,col:c.property.col})}),i.addListener("endrule",t),i.addListener("endfontface",t),i.addListener("endkeyframerule",t),i.addListener("endpagemargin",t),i.addListener("endpage",t),i.addListener("endviewport",t)}}),p.addRule({id:"duplicate-background-images",name:"Disallow duplicate background images",desc:"Every background-image should be unique. Use a common class for e.g. sprites.",url:"https://github.com/CSSLint/csslint/wiki/Disallow-duplicate-background-images",browsers:"All",init:function(i,e){var s=this,l={};i.addListener("property",function(u){var o=u.property.text,a=u.value,t,c;if(o.match(/background/i))for(t=0,c=a.parts.length;t<c;t++)a.parts[t].type==="uri"&&(typeof l[a.parts[t].uri]>"u"?l[a.parts[t].uri]=u:e.report("Background image '"+a.parts[t].uri+"' was used multiple times, first declared at line "+l[a.parts[t].uri].line+", col "+l[a.parts[t].uri].col+".",u.line,u.col,s))})}}),p.addRule({id:"duplicate-properties",name:"Disallow duplicate properties",desc:"Duplicate properties must appear one after the other.",url:"https://github.com/CSSLint/csslint/wiki/Disallow-duplicate-properties",browsers:"All",init:function(i,e){var s=this,l,u;function o(){l={}}i.addListener("startrule",o),i.addListener("startfontface",o),i.addListener("startpage",o),i.addListener("startpagemargin",o),i.addListener("startkeyframerule",o),i.addListener("startviewport",o),i.addListener("property",function(a){var t=a.property,c=t.text.toLowerCase();l[c]&&(u!==c||l[c]===a.value.text)&&e.report("Duplicate property '"+a.property+"' found.",a.line,a.col,s),l[c]=a.value.text,u=c})}}),p.addRule({id:"empty-rules",name:"Disallow empty rules",desc:"Rules without any properties specified should be removed.",url:"https://github.com/CSSLint/csslint/wiki/Disallow-empty-rules",browsers:"All",init:function(i,e){var s=this,l=0;i.addListener("startrule",function(){l=0}),i.addListener("property",function(){l++}),i.addListener("endrule",function(u){var o=u.selectors;l===0&&e.report("Rule is empty.",o[0].line,o[0].col,s)})}}),p.addRule({id:"errors",name:"Parsing Errors",desc:"This rule looks for recoverable syntax errors.",browsers:"All",init:function(i,e){var s=this;i.addListener("error",function(l){e.error(l.message,l.line,l.col,s)})}}),p.addRule({id:"floats",name:"Disallow too many floats",desc:"This rule tests if the float property is used too many times",url:"https://github.com/CSSLint/csslint/wiki/Disallow-too-many-floats",browsers:"All",init:function(i,e){var s=this,l=0;i.addListener("property",function(u){e.isIgnored(u.property.line)||u.property.text.toLowerCase()==="float"&&u.value.text.toLowerCase()!=="none"&&l++}),i.addListener("endstylesheet",function(){e.stat("floats",l),l>=10&&e.rollupWarn("Too many floats ("+l+"), you're probably using them for layout. Consider using a grid system instead.",s)})}}),p.addRule({id:"font-faces",name:"Don't use too many web fonts",desc:"Too many different web fonts in the same stylesheet.",url:"https://github.com/CSSLint/csslint/wiki/Don%27t-use-too-many-web-fonts",browsers:"All",init:function(i,e){var s=this,l=0;i.addListener("startfontface",function(u){e.isIgnored(u.line)||l++}),i.addListener("endstylesheet",function(){l>5&&e.rollupWarn("Too many @font-face declarations ("+l+").",s)})}}),p.addRule({id:"font-sizes",name:"Disallow too many font sizes",desc:"Checks the number of font-size declarations.",url:"https://github.com/CSSLint/csslint/wiki/Don%27t-use-too-many-font-size-declarations",browsers:"All",init:function(i,e){var s=this,l=0;i.addListener("property",function(u){e.isIgnored(u.property.line)||u.property.toString()==="font-size"&&l++}),i.addListener("endstylesheet",function(){e.stat("font-sizes",l),l>=10&&e.rollupWarn("Too many font-size declarations ("+l+"), abstraction needed.",s)})}}),p.addRule({id:"gradients",name:"Require all gradient definitions",desc:"When using a vendor-prefixed gradient, make sure to use them all.",url:"https://github.com/CSSLint/csslint/wiki/Require-all-gradient-definitions",browsers:"All",init:function(i,e){var s=this,l;i.addListener("startrule",function(){l={moz:0,webkit:0,oldWebkit:0,o:0}}),i.addListener("property",function(u){/\-(moz|o|webkit)(?:\-(?:linear|radial))\-gradient/i.test(u.value)?l[RegExp.$1]=1:/\-webkit\-gradient/i.test(u.value)&&(l.oldWebkit=1)}),i.addListener("endrule",function(u){var o=[];l.moz||o.push("Firefox 3.6+"),l.webkit||o.push("Webkit (Safari 5+, Chrome)"),l.oldWebkit||o.push("Old Webkit (Safari 4+, Chrome)"),l.o||o.push("Opera 11.1+"),o.length&&o.length<4&&e.report("Missing vendor-prefixed CSS gradients for "+o.join(", ")+".",u.selectors[0].line,u.selectors[0].col,s)})}}),p.addRule({id:"ids",name:"Disallow IDs in selectors",desc:"Selectors should not contain IDs.",url:"https://github.com/CSSLint/csslint/wiki/Disallow-IDs-in-selectors",browsers:"All",init:function(i,e){var s=this;i.addListener("startrule",function(l){var u=l.selectors,o,a,t,c,d,g,w;for(d=0;d<u.length;d++){for(o=u[d],c=0,g=0;g<o.parts.length;g++)if(a=o.parts[g],a.type===i.SELECTOR_PART_TYPE)for(w=0;w<a.modifiers.length;w++)t=a.modifiers[w],t.type==="id"&&c++;c===1?e.report("Don't use IDs in selectors.",o.line,o.col,s):c>1&&e.report(c+" IDs in the selector, really?",o.line,o.col,s)}})}}),p.addRule({id:"import-ie-limit",name:"@import limit on IE6-IE9",desc:"IE6-9 supports up to 31 @import per stylesheet",browsers:"IE6, IE7, IE8, IE9",init:function(i,e){var s=this,l=31,u=0;function o(){u=0}i.addListener("startpage",o),i.addListener("import",function(){u++}),i.addListener("endstylesheet",function(){u>l&&e.rollupError("Too many @import rules ("+u+"). IE6-9 supports up to 31 import per stylesheet.",s)})}}),p.addRule({id:"import",name:"Disallow @import",desc:"Don't use @import, use <link> instead.",url:"https://github.com/CSSLint/csslint/wiki/Disallow-%40import",browsers:"All",init:function(i,e){var s=this;i.addListener("import",function(l){e.report("@import prevents parallel downloads, use <link> instead.",l.line,l.col,s)})}}),p.addRule({id:"important",name:"Disallow !important",desc:"Be careful when using !important declaration",url:"https://github.com/CSSLint/csslint/wiki/Disallow-%21important",browsers:"All",init:function(i,e){var s=this,l=0;i.addListener("property",function(u){e.isIgnored(u.line)||u.important===!0&&(l++,e.report("Use of !important",u.line,u.col,s))}),i.addListener("endstylesheet",function(){e.stat("important",l),l>=10&&e.rollupWarn("Too many !important declarations ("+l+"), try to use less than 10 to avoid specificity issues.",s)})}}),p.addRule({id:"known-properties",name:"Require use of known properties",desc:"Properties should be known (listed in CSS3 specification) or be a vendor-prefixed property.",url:"https://github.com/CSSLint/csslint/wiki/Require-use-of-known-properties",browsers:"All",init:function(i,e){var s=this;i.addListener("property",function(l){l.invalid&&e.report(l.invalid.message,l.line,l.col,s)})}}),p.addRule({id:"order-alphabetical",name:"Alphabetical order",desc:"Assure properties are in alphabetical order",browsers:"All",init:function(i,e){var s=this,l,u=function(){l=[]},o=function(a){var t=l.join(","),c=l.sort().join(",");t!==c&&e.report("Rule doesn't have all its properties in alphabetical order.",a.line,a.col,s)};i.addListener("startrule",u),i.addListener("startfontface",u),i.addListener("startpage",u),i.addListener("startpagemargin",u),i.addListener("startkeyframerule",u),i.addListener("startviewport",u),i.addListener("property",function(a){var t=a.property.text,c=t.toLowerCase().replace(/^-.*?-/,"");l.push(c)}),i.addListener("endrule",o),i.addListener("endfontface",o),i.addListener("endpage",o),i.addListener("endpagemargin",o),i.addListener("endkeyframerule",o),i.addListener("endviewport",o)}}),p.addRule({id:"outline-none",name:"Disallow outline: none",desc:"Use of outline: none or outline: 0 should be limited to :focus rules.",url:"https://github.com/CSSLint/csslint/wiki/Disallow-outline%3Anone",browsers:"All",tags:["Accessibility"],init:function(i,e){var s=this,l;function u(a){a.selectors?l={line:a.line,col:a.col,selectors:a.selectors,propCount:0,outline:!1}:l=null}function o(){l&&l.outline&&(l.selectors.toString().toLowerCase().indexOf(":focus")===-1?e.report("Outlines should only be modified using :focus.",l.line,l.col,s):l.propCount===1&&e.report("Outlines shouldn't be hidden unless other visual changes are made.",l.line,l.col,s))}i.addListener("startrule",u),i.addListener("startfontface",u),i.addListener("startpage",u),i.addListener("startpagemargin",u),i.addListener("startkeyframerule",u),i.addListener("startviewport",u),i.addListener("property",function(a){var t=a.property.text.toLowerCase(),c=a.value;l&&(l.propCount++,t==="outline"&&(c.toString()==="none"||c.toString()==="0")&&(l.outline=!0))}),i.addListener("endrule",o),i.addListener("endfontface",o),i.addListener("endpage",o),i.addListener("endpagemargin",o),i.addListener("endkeyframerule",o),i.addListener("endviewport",o)}}),p.addRule({id:"overqualified-elements",name:"Disallow overqualified elements",desc:"Don't use classes or IDs with elements (a.foo or a#foo).",url:"https://github.com/CSSLint/csslint/wiki/Disallow-overqualified-elements",browsers:"All",init:function(i,e){var s=this,l={};i.addListener("startrule",function(u){var o=u.selectors,a,t,c,d,g,w;for(d=0;d<o.length;d++)for(a=o[d],g=0;g<a.parts.length;g++)if(t=a.parts[g],t.type===i.SELECTOR_PART_TYPE)for(w=0;w<t.modifiers.length;w++)c=t.modifiers[w],t.elementName&&c.type==="id"?e.report("Element ("+t+") is overqualified, just use "+c+" without element name.",t.line,t.col,s):c.type==="class"&&(l[c]||(l[c]=[]),l[c].push({modifier:c,part:t}))}),i.addListener("endstylesheet",function(){var u;for(u in l)l.hasOwnProperty(u)&&l[u].length===1&&l[u][0].part.elementName&&e.report("Element ("+l[u][0].part+") is overqualified, just use "+l[u][0].modifier+" without element name.",l[u][0].part.line,l[u][0].part.col,s)})}}),p.addRule({id:"regex-selectors",name:"Disallow selectors that look like regexs",desc:"Selectors that look like regular expressions are slow and should be avoided.",url:"https://github.com/CSSLint/csslint/wiki/Disallow-selectors-that-look-like-regular-expressions",browsers:"All",init:function(i,e){var s=this;i.addListener("startrule",function(l){var u=l.selectors,o,a,t,c,d,g;for(c=0;c<u.length;c++)for(o=u[c],d=0;d<o.parts.length;d++)if(a=o.parts[d],a.type===i.SELECTOR_PART_TYPE)for(g=0;g<a.modifiers.length;g++)t=a.modifiers[g],t.type==="attribute"&&/([~\|\^\$\*]=)/.test(t)&&e.report("Attribute selectors with "+RegExp.$1+" are slow!",t.line,t.col,s)})}}),p.addRule({id:"rules-count",name:"Rules Count",desc:"Track how many rules there are.",browsers:"All",init:function(i,e){var s=0;i.addListener("startrule",function(){s++}),i.addListener("endstylesheet",function(){e.stat("rule-count",s)})}}),p.addRule({id:"selector-max-approaching",name:"Warn when approaching the 4095 selector limit for IE",desc:"Will warn when selector count is >= 3800 selectors.",browsers:"IE",init:function(i,e){var s=this,l=0;i.addListener("startrule",function(u){l+=u.selectors.length}),i.addListener("endstylesheet",function(){l>=3800&&e.report("You have "+l+" selectors. Internet Explorer supports a maximum of 4095 selectors per stylesheet. Consider refactoring.",0,0,s)})}}),p.addRule({id:"selector-max",name:"Error when past the 4095 selector limit for IE",desc:"Will error when selector count is > 4095.",browsers:"IE",init:function(i,e){var s=this,l=0;i.addListener("startrule",function(u){l+=u.selectors.length}),i.addListener("endstylesheet",function(){l>4095&&e.report("You have "+l+" selectors. Internet Explorer supports a maximum of 4095 selectors per stylesheet. Consider refactoring.",0,0,s)})}}),p.addRule({id:"selector-newline",name:"Disallow new-line characters in selectors",desc:"New-line characters in selectors are usually a forgotten comma and not a descendant combinator.",browsers:"All",init:function(i,e){var s=this;function l(u){var o,a,t,c,d,g,w,x,S,T,A,O=u.selectors;for(o=0,a=O.length;o<a;o++)for(t=O[o],c=0,g=t.parts.length;c<g;c++)for(d=c+1;d<g;d++)w=t.parts[c],x=t.parts[d],S=w.type,T=w.line,A=x.line,S==="descendant"&&A>T&&e.report("newline character found in selector (forgot a comma?)",T,O[o].parts[0].col,s)}i.addListener("startrule",l)}}),p.addRule({id:"shorthand",name:"Require shorthand properties",desc:"Use shorthand properties where possible.",url:"https://github.com/CSSLint/csslint/wiki/Require-shorthand-properties",browsers:"All",init:function(i,e){var s=this,l,u,o,a={},t,c={margin:["margin-top","margin-bottom","margin-left","margin-right"],padding:["padding-top","padding-bottom","padding-left","padding-right"]};for(l in c)if(c.hasOwnProperty(l))for(u=0,o=c[l].length;u<o;u++)a[c[l][u]]=l;function d(){t={}}function g(w){var x,S,T,A;for(x in c)if(c.hasOwnProperty(x)){for(A=0,S=0,T=c[x].length;S<T;S++)A+=t[c[x][S]]?1:0;A===c[x].length&&e.report("The properties "+c[x].join(", ")+" can be replaced by "+x+".",w.line,w.col,s)}}i.addListener("startrule",d),i.addListener("startfontface",d),i.addListener("property",function(w){var x=w.property.toString().toLowerCase();a[x]&&(t[x]=1)}),i.addListener("endrule",g),i.addListener("endfontface",g)}}),p.addRule({id:"star-property-hack",name:"Disallow properties with a star prefix",desc:"Checks for the star property hack (targets IE6/7)",url:"https://github.com/CSSLint/csslint/wiki/Disallow-star-hack",browsers:"All",init:function(i,e){var s=this;i.addListener("property",function(l){var u=l.property;u.hack==="*"&&e.report("Property with star prefix found.",l.property.line,l.property.col,s)})}}),p.addRule({id:"text-indent",name:"Disallow negative text-indent",desc:"Checks for text indent less than -99px",url:"https://github.com/CSSLint/csslint/wiki/Disallow-negative-text-indent",browsers:"All",init:function(i,e){var s=this,l,u;function o(){l=!1,u="inherit"}function a(){l&&u!=="ltr"&&e.report("Negative text-indent doesn't work well with RTL. If you use text-indent for image replacement explicitly set direction for that item to ltr.",l.line,l.col,s)}i.addListener("startrule",o),i.addListener("startfontface",o),i.addListener("property",function(t){var c=t.property.toString().toLowerCase(),d=t.value;c==="text-indent"&&d.parts[0].value<-99?l=t.property:c==="direction"&&d.toString()==="ltr"&&(u="ltr")}),i.addListener("endrule",a),i.addListener("endfontface",a)}}),p.addRule({id:"underscore-property-hack",name:"Disallow properties with an underscore prefix",desc:"Checks for the underscore property hack (targets IE6)",url:"https://github.com/CSSLint/csslint/wiki/Disallow-underscore-hack",browsers:"All",init:function(i,e){var s=this;i.addListener("property",function(l){var u=l.property;u.hack==="_"&&e.report("Property with underscore prefix found.",l.property.line,l.property.col,s)})}}),p.addRule({id:"universal-selector",name:"Disallow universal selector",desc:"The universal selector (*) is known to be slow.",url:"https://github.com/CSSLint/csslint/wiki/Disallow-universal-selector",browsers:"All",init:function(i,e){var s=this;i.addListener("startrule",function(l){var u=l.selectors,o,a,t;for(t=0;t<u.length;t++)o=u[t],a=o.parts[o.parts.length-1],a.elementName==="*"&&e.report(s.desc,a.line,a.col,s)})}}),p.addRule({id:"unqualified-attributes",name:"Disallow unqualified attribute selectors",desc:"Unqualified attribute selectors are known to be slow.",url:"https://github.com/CSSLint/csslint/wiki/Disallow-unqualified-attribute-selectors",browsers:"All",init:function(i,e){var s=this;i.addListener("startrule",function(l){var u=l.selectors,o=!1,a,t,c,d,g;for(d=0;d<u.length;d++)if(a=u[d],t=a.parts[a.parts.length-1],t.type===i.SELECTOR_PART_TYPE){for(g=0;g<t.modifiers.length;g++)if(c=t.modifiers[g],c.type==="class"||c.type==="id"){o=!0;break}if(!o)for(g=0;g<t.modifiers.length;g++)c=t.modifiers[g],c.type==="attribute"&&(!t.elementName||t.elementName==="*")&&e.report(s.desc,t.line,t.col,s)}})}}),p.addRule({id:"vendor-prefix",name:"Require standard property with vendor prefix",desc:"When using a vendor-prefixed property, make sure to include the standard one.",url:"https://github.com/CSSLint/csslint/wiki/Require-standard-property-with-vendor-prefix",browsers:"All",init:function(i,e){var s=this,l,u,o={"-webkit-border-radius":"border-radius","-webkit-border-top-left-radius":"border-top-left-radius","-webkit-border-top-right-radius":"border-top-right-radius","-webkit-border-bottom-left-radius":"border-bottom-left-radius","-webkit-border-bottom-right-radius":"border-bottom-right-radius","-o-border-radius":"border-radius","-o-border-top-left-radius":"border-top-left-radius","-o-border-top-right-radius":"border-top-right-radius","-o-border-bottom-left-radius":"border-bottom-left-radius","-o-border-bottom-right-radius":"border-bottom-right-radius","-moz-border-radius":"border-radius","-moz-border-radius-topleft":"border-top-left-radius","-moz-border-radius-topright":"border-top-right-radius","-moz-border-radius-bottomleft":"border-bottom-left-radius","-moz-border-radius-bottomright":"border-bottom-right-radius","-moz-column-count":"column-count","-webkit-column-count":"column-count","-moz-column-gap":"column-gap","-webkit-column-gap":"column-gap","-moz-column-rule":"column-rule","-webkit-column-rule":"column-rule","-moz-column-rule-style":"column-rule-style","-webkit-column-rule-style":"column-rule-style","-moz-column-rule-color":"column-rule-color","-webkit-column-rule-color":"column-rule-color","-moz-column-rule-width":"column-rule-width","-webkit-column-rule-width":"column-rule-width","-moz-column-width":"column-width","-webkit-column-width":"column-width","-webkit-column-span":"column-span","-webkit-columns":"columns","-moz-box-shadow":"box-shadow","-webkit-box-shadow":"box-shadow","-moz-transform":"transform","-webkit-transform":"transform","-o-transform":"transform","-ms-transform":"transform","-moz-transform-origin":"transform-origin","-webkit-transform-origin":"transform-origin","-o-transform-origin":"transform-origin","-ms-transform-origin":"transform-origin","-moz-box-sizing":"box-sizing","-webkit-box-sizing":"box-sizing"};function a(){l={},u=1}function t(){var c,d,g,w,x,S=[];for(c in l)o[c]&&S.push({actual:c,needed:o[c]});for(d=0,g=S.length;d<g;d++)w=S[d].needed,x=S[d].actual,l[w]?l[w][0].pos<l[x][0].pos&&e.report("Standard property '"+w+"' should come after vendor-prefixed property '"+x+"'.",l[x][0].name.line,l[x][0].name.col,s):e.report("Missing standard property '"+w+"' to go along with '"+x+"'.",l[x][0].name.line,l[x][0].name.col,s)}i.addListener("startrule",a),i.addListener("startfontface",a),i.addListener("startpage",a),i.addListener("startpagemargin",a),i.addListener("startkeyframerule",a),i.addListener("startviewport",a),i.addListener("property",function(c){var d=c.property.text.toLowerCase();l[d]||(l[d]=[]),l[d].push({name:c.property,value:c.value,pos:u++})}),i.addListener("endrule",t),i.addListener("endfontface",t),i.addListener("endpage",t),i.addListener("endpagemargin",t),i.addListener("endkeyframerule",t),i.addListener("endviewport",t)}}),p.addRule({id:"zero-units",name:"Disallow units for 0 values",desc:"You don't need to specify units when a value is 0.",url:"https://github.com/CSSLint/csslint/wiki/Disallow-units-for-zero-values",browsers:"All",init:function(i,e){var s=this;i.addListener("property",function(l){for(var u=l.value.parts,o=0,a=u.length;o<a;)(u[o].units||u[o].type==="percentage")&&u[o].value===0&&u[o].type!=="time"&&e.report("Values of 0 shouldn't have units specified.",u[o].line,u[o].col,s),o++})}}),function(){var i=function(e){return!e||e.constructor!==String?"":e.replace(/["&><]/g,function(s){switch(s){case'"':return"&quot;";case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;"}})};p.addFormatter({id:"checkstyle-xml",name:"Checkstyle XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><checkstyle>'},endFormat:function(){return"</checkstyle>"},readError:function(e,s){return'<file name="'+i(e)+'"><error line="0" column="0" severty="error" message="'+i(s)+'"></error></file>'},formatResults:function(e,s){var l=e.messages,u=[],o=function(a){return!a||!("name"in a)?"":"net.csslint."+a.name.replace(/\s/g,"")};return l.length>0&&(u.push('<file name="'+s+'">'),p.Util.forEach(l,function(a){a.rollup||u.push('<error line="'+a.line+'" column="'+a.col+'" severity="'+a.type+'" message="'+i(a.message)+'" source="'+o(a.rule)+'"/>')}),u.push("</file>")),u.join("")}})}(),p.addFormatter({id:"compact",name:"Compact, 'porcelain' format",startFormat:function(){return""},endFormat:function(){return""},formatResults:function(i,e,s){var l=i.messages,u="";s=s||{};var o=function(a){return a.charAt(0).toUpperCase()+a.slice(1)};return l.length===0?s.quiet?"":e+": Lint Free!":(p.Util.forEach(l,function(a){a.rollup?u+=e+": "+o(a.type)+" - "+a.message+" ("+a.rule.id+`)
  12. `:u+=e+": line "+a.line+", col "+a.col+", "+o(a.type)+" - "+a.message+" ("+a.rule.id+`)
  13. `}),u)}}),p.addFormatter({id:"csslint-xml",name:"CSSLint XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><csslint>'},endFormat:function(){return"</csslint>"},formatResults:function(i,e){var s=i.messages,l=[],u=function(o){return!o||o.constructor!==String?"":o.replace(/"/g,"'").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};return s.length>0&&(l.push('<file name="'+e+'">'),p.Util.forEach(s,function(o){o.rollup?l.push('<issue severity="'+o.type+'" reason="'+u(o.message)+'" evidence="'+u(o.evidence)+'"/>'):l.push('<issue line="'+o.line+'" char="'+o.col+'" severity="'+o.type+'" reason="'+u(o.message)+'" evidence="'+u(o.evidence)+'"/>')}),l.push("</file>")),l.join("")}}),p.addFormatter({id:"json",name:"JSON",startFormat:function(){return this.json=[],""},endFormat:function(){var i="";return this.json.length>0&&(this.json.length===1?i=JSON.stringify(this.json[0]):i=JSON.stringify(this.json)),i},formatResults:function(i,e,s){return(i.messages.length>0||!s.quiet)&&this.json.push({filename:e,messages:i.messages,stats:i.stats}),""}}),p.addFormatter({id:"junit-xml",name:"JUNIT XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><testsuites>'},endFormat:function(){return"</testsuites>"},formatResults:function(i,e){var s=i.messages,l=[],u={error:0,failure:0},o=function(t){return!t||!("name"in t)?"":"net.csslint."+t.name.replace(/\s/g,"")},a=function(t){return!t||t.constructor!==String?"":t.replace(/"/g,"'").replace(/</g,"&lt;").replace(/>/g,"&gt;")};return s.length>0&&(s.forEach(function(t){var c=t.type==="warning"?"error":t.type;t.rollup||(l.push('<testcase time="0" name="'+o(t.rule)+'">'),l.push("<"+c+' message="'+a(t.message)+'"><![CDATA['+t.line+":"+t.col+":"+a(t.evidence)+"]]></"+c+">"),l.push("</testcase>"),u[c]+=1)}),l.unshift('<testsuite time="0" tests="'+s.length+'" skipped="0" errors="'+u.error+'" failures="'+u.failure+'" package="net.csslint" name="'+e+'">'),l.push("</testsuite>")),l.join("")}}),p.addFormatter({id:"lint-xml",name:"Lint XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><lint>'},endFormat:function(){return"</lint>"},formatResults:function(i,e){var s=i.messages,l=[],u=function(o){return!o||o.constructor!==String?"":o.replace(/"/g,"'").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};return s.length>0&&(l.push('<file name="'+e+'">'),p.Util.forEach(s,function(o){if(o.rollup)l.push('<issue severity="'+o.type+'" reason="'+u(o.message)+'" evidence="'+u(o.evidence)+'"/>');else{var a="";o.rule&&o.rule.id&&(a='rule="'+u(o.rule.id)+'" '),l.push("<issue "+a+'line="'+o.line+'" char="'+o.col+'" severity="'+o.type+'" reason="'+u(o.message)+'" evidence="'+u(o.evidence)+'"/>')}}),l.push("</file>")),l.join("")}}),p.addFormatter({id:"text",name:"Plain Text",startFormat:function(){return""},endFormat:function(){return""},formatResults:function(i,e,s){var l=i.messages,u="";if(s=s||{},l.length===0)return s.quiet?"":`
  14. csslint: No errors in `+e+".";u=`
  15. csslint: There `,l.length===1?u+="is 1 problem":u+="are "+l.length+" problems",u+=" in "+e+".";var o=e.lastIndexOf("/"),a=e;return o===-1&&(o=e.lastIndexOf("\\")),o>-1&&(a=e.substring(o+1)),p.Util.forEach(l,function(t,c){u=u+`
  16. `+a,t.rollup?(u+=`
  17. `+(c+1)+": "+t.type,u+=`
  18. `+t.message):(u+=`
  19. `+(c+1)+": "+t.type+" at line "+t.line+", col "+t.col,u+=`
  20. `+t.message,u+=`
  21. `+t.evidence)}),u}}),p}();F.exports.CSSLint=P});ace.define("ace/mode/css_worker",[],function(E,I,F){var P=E("../lib/oop"),L=E("../lib/lang"),y=E("../worker/mirror").Mirror,b=E("./css/csslint").CSSLint,p=I.Worker=function(k){y.call(this,k),this.setTimeout(400),this.ruleset=null,this.setDisabledRules("ids|order-alphabetical"),this.setInfoRules("adjoining-classes|zero-units|gradients|box-model|import|outline-none|vendor-prefix")};P.inherits(p,y),function(){this.setInfoRules=function(k){typeof k=="string"&&(k=k.split("|")),this.infoRules=L.arrayToMap(k),this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.setDisabledRules=function(k){if(!k)this.ruleset=null;else{typeof k=="string"&&(k=k.split("|"));var i={};b.getRules().forEach(function(e){i[e.id]=!0}),k.forEach(function(e){delete i[e]}),this.ruleset=i}this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.onUpdate=function(){var k=this.doc.getValue();if(!k)return this.sender.emit("annotate",[]);var i=this.infoRules,e=b.verify(k,this.ruleset);this.sender.emit("annotate",e.messages.map(function(s){return{row:s.line-1,column:s.col-1,text:s.message,type:i[s.rule.id]?"info":s.type,rule:s.rule.name}}))}}.call(p.prototype)});const q=V({__proto__:null,default:j},[j]);export{q as w};