You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1 line
197 KiB

2 years ago
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).csso={})}(this,(function(e){"use strict";"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var t=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(e,t){e.exports=function(){function e(e){return{prev:null,next:null,data:e}}function t(e,t,n){var a;return null!==r?(a=r,r=r.cursor,a.prev=t,a.next=n,a.cursor=e.cursor):a={prev:t,next:n,cursor:e.cursor},e.cursor=a,a}function n(e){var t=e.cursor;e.cursor=t.cursor,t.prev=null,t.next=null,t.cursor=r,r=t}var r=null,a=function(){this.cursor=null,this.head=null,this.tail=null};a.createItem=e,a.prototype.createItem=e,a.prototype.updateCursors=function(e,t,n,r){for(var a=this.cursor;null!==a;)a.prev===e&&(a.prev=t),a.next===n&&(a.next=r),a=a.cursor},a.prototype.getSize=function(){for(var e=0,t=this.head;t;)e++,t=t.next;return e},a.prototype.fromArray=function(t){var n=null;this.head=null;for(var r=0;r<t.length;r++){var a=e(t[r]);null!==n?n.next=a:this.head=a,a.prev=n,n=a}return this.tail=n,this},a.prototype.toArray=function(){for(var e=this.head,t=[];e;)t.push(e.data),e=e.next;return t},a.prototype.toJSON=a.prototype.toArray,a.prototype.isEmpty=function(){return null===this.head},a.prototype.first=function(){return this.head&&this.head.data},a.prototype.last=function(){return this.tail&&this.tail.data},a.prototype.each=function(e,r){var a;void 0===r&&(r=this);for(var i=t(this,null,this.head);null!==i.next;)a=i.next,i.next=a.next,e.call(r,a.data,a,this);n(this)},a.prototype.forEach=a.prototype.each,a.prototype.eachRight=function(e,r){var a;void 0===r&&(r=this);for(var i=t(this,this.tail,null);null!==i.prev;)a=i.prev,i.prev=a.prev,e.call(r,a.data,a,this);n(this)},a.prototype.forEachRight=a.prototype.eachRight,a.prototype.reduce=function(e,r,a){var i;void 0===a&&(a=this);for(var o=t(this,null,this.head),s=r;null!==o.next;)i=o.next,o.next=i.next,s=e.call(a,s,i.data,i,this);return n(this),s},a.prototype.reduceRight=function(e,r,a){var i;void 0===a&&(a=this);for(var o=t(this,this.tail,null),s=r;null!==o.prev;)i=o.prev,o.prev=i.prev,s=e.call(a,s,i.data,i,this);return n(this),s},a.prototype.nextUntil=function(e,r,a){if(null!==e){var i;void 0===a&&(a=this);for(var o=t(this,null,e);null!==o.next&&(i=o.next,o.next=i.next,!r.call(a,i.data,i,this)););n(this)}},a.prototype.prevUntil=function(e,r,a){if(null!==e){var i;void 0===a&&(a=this);for(var o=t(this,e,null);null!==o.prev&&(i=o.prev,o.prev=i.prev,!r.call(a,i.data,i,this)););n(this)}},a.prototype.some=function(e,t){var n=this.head;for(void 0===t&&(t=this);null!==n;){if(e.call(t,n.data,n,this))return!0;n=n.next}return!1},a.prototype.map=function(e,t){var n=new a,r=this.head;for(void 0===t&&(t=this);null!==r;)n.appendData(e.call(t,r.data,r,this)),r=r.next;return n},a.prototype.filter=function(e,t){var n=new a,r=this.head;for(void 0===t&&(t=this);null!==r;)e.call(t,r.data,r,this)&&n.appendData(r.data),r=r.next;return n},a.prototype.clear=function(){this.head=null,this.tail=null},a.prototype.copy=function(){for(var t=new a,n=this.head;null!==n;)t.insert(e(n.data)),n=n.next;return t},a.prototype.prepend=function(e){return this.updateCursors(null,e,this.head,e),null!==this.head?(this.head.prev=e,e.next=this.head):this.tail=e,this.head=e,this},a.prototype.prependData=function(t){return this.prepend(e(t))},a.prototype.append=function(e){return this.insert(e)},a.prototype.appendData=function(t){return this.insert(e(t))},a.prototype.insert=function(e,t){if(null!=t)if(this.updateCursors(t.prev,e,t,e),null===t.prev){if(this.head!==t)throw new Error("before doesn't belong to list");this.head=e,t.prev=e,e.next=t,this.updateCursors(null,e)}else t.prev.next=e,e.prev=t.prev,t.prev=e,e.next=t;else this.updateCursors(this.tail,e,null,e),null!==this.tail?(this.tail.next=e,e.prev=this.tail):this.head=e,this.tail=e;return this},a.prototype.insertData=function(t,n){return this.insert(e(t),n)},a.prototype.remo