From 374f7002d236ad0b2f9bf0c70df793b5c3d45638 Mon Sep 17 00:00:00 2001 From: Dave Conway-Jones Date: Fri, 29 Oct 2021 11:30:03 +0100 Subject: [PATCH] Add pbf layer support to close #123 --- worldmap/index.html | 1 + worldmap/leaflet/VectorTileLayer.umd.min.js | 4 ++++ worldmap/leaflet/sockjs.min.js.map | 1 - worldmap/worldmap.js | 3 +++ 4 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 worldmap/leaflet/VectorTileLayer.umd.min.js delete mode 100644 worldmap/leaflet/sockjs.min.js.map diff --git a/worldmap/index.html b/worldmap/index.html index cd4450e..70cb5e0 100644 --- a/worldmap/index.html +++ b/worldmap/index.html @@ -70,6 +70,7 @@ + diff --git a/worldmap/leaflet/VectorTileLayer.umd.min.js b/worldmap/leaflet/VectorTileLayer.umd.min.js new file mode 100644 index 0000000..6b12722 --- /dev/null +++ b/worldmap/leaflet/VectorTileLayer.umd.min.js @@ -0,0 +1,4 @@ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("leaflet")):"function"==typeof define&&define.amd?define(["leaflet"],e):(t="undefined"!=typeof globalThis?globalThis:t||self).VectorTileLayer=e(t.L)}(this,(function(t){"use strict";var e=i;function i(t,e){this.x=t,this.y=e}i.prototype={clone:function(){return new i(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,i=t.y-this.y;return e*e+i*i},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[0]*this.x+t[1]*this.y,i=t[2]*this.x+t[3]*this.y;return this.x=e,this.y=i,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),i=Math.sin(t),r=e*this.x-i*this.y,n=i*this.x+e*this.y;return this.x=r,this.y=n,this},_rotateAround:function(t,e){var i=Math.cos(t),r=Math.sin(t),n=e.x+i*(this.x-e.x)-r*(this.y-e.y),s=e.y+r*(this.x-e.x)+i*(this.y-e.y);return this.x=n,this.y=s,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},i.convert=function(t){return t instanceof i?t:Array.isArray(t)?new i(t[0],t[1]):t};var r=e,n=s;function s(t,e,i,r,n){this.properties={},this.extent=i,this.type=0,this._pbf=t,this._geometry=-1,this._keys=r,this._values=n,t.readFields(o,this,e)}function o(t,e,i){1==t?e.id=i.readVarint():2==t?function(t,e){var i=t.readVarint()+t.pos;for(;t.pos>3}if(s--,1===n||2===n)o+=t.readSVarint(),a+=t.readSVarint(),1===n&&(e&&u.push(e),e=[]),e.push(new r(o,a));else{if(7!==n)throw new Error("unknown command "+n);e&&e.push(e[0].clone())}}return e&&u.push(e),u},s.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,i=1,r=0,n=0,s=0,o=1/0,a=-1/0,u=1/0,h=-1/0;t.pos>3}if(r--,1===i||2===i)(n+=t.readSVarint())a&&(a=n),(s+=t.readSVarint())h&&(h=s);else if(7!==i)throw new Error("unknown command "+i)}return[o,u,a,h]},s.prototype.toGeoJSON=function(t,e,i){var r,n,o=this.extent*Math.pow(2,i),u=this.extent*t,h=this.extent*e,f=this.loadGeometry(),l=s.types[this.type];function c(t){for(var e=0;e>3;e=1===r?t.readString():2===r?t.readFloat():3===r?t.readDouble():4===r?t.readVarint64():5===r?t.readVarint():6===r?t.readSVarint():7===r?t.readBoolean():null}return e}(i))}f.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new u(this._pbf,e,this.extent,this._keys,this._values)};var c=h,d=function(t,e){this.layers=t.readFields(p,{},e)};function p(t,e,i){if(3===t){var r=new c(i,i.readVarint()+i.pos);r.length&&(e[r.name]=r)}}var y=d,v=n;var w,g=Object.freeze((function(e,i,r,n,s){var o=new t.Layer(s),a=t.SVG.create("path"),u=v.types[e.type];s=t.extend({},s),o.feature=e,o.layerName=i,o.properties=e.properties,o.addTo=function(t){o._map=t,o.addInteractiveTarget(a)},o.removeFrom=function(){o.removeInteractiveTarget(a),delete o._map},o.setStyle=function(e){var i=a;return(e=t.extend({},"Polygon"===u?t.Polygon.prototype.options:t.Path.prototype.options,e)).stroke?(i.setAttribute("stroke",e.color),i.setAttribute("stroke-opacity",e.opacity),i.setAttribute("stroke-width",e.weight),i.setAttribute("stroke-linecap",e.lineCap),i.setAttribute("stroke-linejoin",e.lineJoin),e.dashArray?i.setAttribute("stroke-dasharray",e.dashArray):i.removeAttribute("stroke-dasharray"),e.dashOffset?i.setAttribute("stroke-dashoffset",e.dashOffset):i.removeAttribute("stroke-dashoffset")):i.setAttribute("stroke","none"),e.fill?(i.setAttribute("fill",e.fillColor||e.color),i.setAttribute("fill-opacity",e.fillOpacity),i.setAttribute("fill-rule",e.fillRule||"evenodd")):i.setAttribute("fill","none"),e.interactive?(i.setAttribute("pointer-events","auto"),t.DomUtil.addClass(i,"leaflet-interactive")):(t.DomUtil.removeClass(i,"leaflet-interactive"),i.removeAttribute("pointer-events")),i};var h=function(e){return t.point(e).scaleBy(n)};switch(o.bbox=function(){var i=e.bbox(),r=i[0],n=i[1],s=i[2],o=i[3];return t.bounds(h([r,n]),h([s,o]))},u){case"Point":break;case"LineString":case"Polygon":a.setAttribute("d",t.SVG.pointsToPath(e.loadGeometry().map((function(t){return t.map(h)})),"Polygon"===u)),s.className&&t.DomUtil.addClass(a,s.className),o.setStyle(s),r.appendChild(a)}return o})),x=Object.freeze((function(e,i){var r={},n=i.getTileSize(),s=t.SVG.create("svg"),o=t.SVG.create("g"),a=[];function u(t,e,r){var n=i.getFeatureStyle(t,e);if(n){var s=g(t,e,o,r,n);a.push(s),i.addFeatureLayer(s)}}return s.setAttribute("viewBox","0 0 "+n.x+" "+n.y),s.appendChild(o),r.addVectorTile=function(t){return Object.keys(t.layers).forEach((function(e){for(var i=t.layers[e],r=n.divideBy(i.extent),s=0;s!==i.length;)u(i.feature(s),e,r),s+=1})),r},r.global=function(t){return e.scaleBy(n).add(t)},r.eachFeatureLayer=function(t){return a.forEach((function(){for(var e=[],i=arguments.length;i--;)e[i]=arguments[i];return t.apply(void 0,e.concat([r]))}))},r.domElement=function(){return s},r.coords=function(){return e},r}));w="function"==typeof window.fetch?window.fetch:function(t){var e=new XMLHttpRequest;return e.open("GET",t),e.responseType="arraybuffer",new Promise((function(t){e.onload=function(){return t({ok:200===e.status,status:e.status,statusText:e.statusText,arrayBuffer:function(){return e.response}})},e.send()}))};var b=Object.freeze(w),m={ +/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ +read:function(t,e,i,r,n){var s,o,a=8*n-r-1,u=(1<>1,f=-7,l=i?n-1:0,c=i?-1:1,d=t[e+l];for(l+=c,s=d&(1<<-f)-1,d>>=-f,f+=a;f>0;s=256*s+t[e+l],l+=c,f-=8);for(o=s&(1<<-f)-1,s>>=-f,f+=r;f>0;o=256*o+t[e+l],l+=c,f-=8);if(0===s)s=1-h;else{if(s===u)return o?NaN:1/0*(d?-1:1);o+=Math.pow(2,r),s-=h}return(d?-1:1)*o*Math.pow(2,s-r)},write:function(t,e,i,r,n,s){var o,a,u,h=8*s-n-1,f=(1<>1,c=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:s-1,p=r?1:-1,y=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,o=f):(o=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-o))<1&&(o--,u*=2),(e+=o+l>=1?c/u:c*Math.pow(2,1-l))*u>=2&&(o++,u/=2),o+l>=f?(a=0,o=f):o+l>=1?(a=(e*u-1)*Math.pow(2,n),o+=l):(a=e*Math.pow(2,l-1)*Math.pow(2,n),o=0));n>=8;t[i+d]=255&a,d+=p,a/=256,n-=8);for(o=o<0;t[i+d]=255&o,d+=p,o/=256,h-=8);t[i+d-p]|=128*y}},F=V,S=m;function V(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}V.Varint=0,V.Fixed64=1,V.Bytes=2,V.Fixed32=5;var _=4294967296,M=1/_,B="undefined"==typeof TextDecoder?null:new TextDecoder("utf8");function k(t){return t.type===V.Bytes?t.readVarint()+t.pos:t.pos+1}function P(t,e,i){return i?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function T(t,e,i){var r=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));i.realloc(r);for(var n=i.pos-1;n>=t;n--)i.buf[n+r]=i.buf[n]}function A(t,e){for(var i=0;i>>8,t[i+2]=e>>>16,t[i+3]=e>>>24}function Z(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}function R(t){return b(t).then((function(e){if(e.ok)return e.arrayBuffer();if(404!==e.status)throw function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];return new Error(t.join(": "))}(t,e.status,e.statusText)}))}function q(t){return t.x+"|"+t.y+"|"+t.z}V.prototype={destroy:function(){this.buf=null},readFields:function(t,e,i){for(i=i||this.length;this.pos>3,s=this.pos;this.type=7&r,t(n,e,this),this.pos===s&&this.skip(r)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=j(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=Z(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=j(this.buf,this.pos)+j(this.buf,this.pos+4)*_;return this.pos+=8,t},readSFixed64:function(){var t=j(this.buf,this.pos)+Z(this.buf,this.pos+4)*_;return this.pos+=8,t},readFloat:function(){var t=S.read(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=S.read(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,i,r=this.buf;return e=127&(i=r[this.pos++]),i<128?e:(e|=(127&(i=r[this.pos++]))<<7,i<128?e:(e|=(127&(i=r[this.pos++]))<<14,i<128?e:(e|=(127&(i=r[this.pos++]))<<21,i<128?e:function(t,e,i){var r,n,s=i.buf;if(n=s[i.pos++],r=(112&n)>>4,n<128)return P(t,r,e);if(n=s[i.pos++],r|=(127&n)<<3,n<128)return P(t,r,e);if(n=s[i.pos++],r|=(127&n)<<10,n<128)return P(t,r,e);if(n=s[i.pos++],r|=(127&n)<<17,n<128)return P(t,r,e);if(n=s[i.pos++],r|=(127&n)<<24,n<128)return P(t,r,e);if(n=s[i.pos++],r|=(1&n)<<31,n<128)return P(t,r,e);throw new Error("Expected varint not more than 10 bytes")}(e|=(15&(i=r[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=12&&B?function(t,e,i){return B.decode(t.subarray(e,i))}(this.buf,e,t):function(t,e,i){var r="",n=e;for(;n239?4:u>223?3:u>191?2:1;if(n+f>i)break;1===f?u<128&&(h=u):2===f?128==(192&(s=t[n+1]))&&(h=(31&u)<<6|63&s)<=127&&(h=null):3===f?(s=t[n+1],o=t[n+2],128==(192&s)&&128==(192&o)&&((h=(15&u)<<12|(63&s)<<6|63&o)<=2047||h>=55296&&h<=57343)&&(h=null)):4===f&&(s=t[n+1],o=t[n+2],a=t[n+3],128==(192&s)&&128==(192&o)&&128==(192&a)&&((h=(15&u)<<18|(63&s)<<12|(63&o)<<6|63&a)<=65535||h>=1114112)&&(h=null)),null===h?(h=65533,f=1):h>65535&&(h-=65536,r+=String.fromCharCode(h>>>10&1023|55296),h=56320|1023&h),r+=String.fromCharCode(h),n+=f}return r}(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==V.Bytes)return t.push(this.readVarint(e));var i=k(this);for(t=t||[];this.pos127;);else if(e===V.Bytes)this.pos=this.readVarint()+this.pos;else if(e===V.Fixed32)this.pos+=4;else{if(e!==V.Fixed64)throw new Error("Unimplemented type: "+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e268435455||t<0?function(t,e){var i,r;t>=0?(i=t%4294967296|0,r=t/4294967296|0):(r=~(-t/4294967296),4294967295^(i=~(-t%4294967296))?i=i+1|0:(i=0,r=r+1|0));if(t>=0x10000000000000000||t<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),function(t,e,i){i.buf[i.pos++]=127&t|128,t>>>=7,i.buf[i.pos++]=127&t|128,t>>>=7,i.buf[i.pos++]=127&t|128,t>>>=7,i.buf[i.pos++]=127&t|128,t>>>=7,i.buf[i.pos]=127&t}(i,0,e),function(t,e){var i=(7&t)<<4;if(e.buf[e.pos++]|=i|((t>>>=3)?128:0),!t)return;if(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),!t)return;if(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),!t)return;if(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),!t)return;if(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),!t)return;e.buf[e.pos++]=127&t}(r,e)}(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=function(t,e,i){for(var r,n,s=0;s55295&&r<57344){if(!n){r>56319||s+1===e.length?(t[i++]=239,t[i++]=191,t[i++]=189):n=r;continue}if(r<56320){t[i++]=239,t[i++]=191,t[i++]=189,n=r;continue}r=n-55296<<10|r-56320|65536,n=null}else n&&(t[i++]=239,t[i++]=191,t[i++]=189,n=null);r<128?t[i++]=r:(r<2048?t[i++]=r>>6|192:(r<65536?t[i++]=r>>12|224:(t[i++]=r>>18|240,t[i++]=r>>12&63|128),t[i++]=r>>6&63|128),t[i++]=63&r|128)}return i}(this.buf,t,this.pos);var i=this.pos-e;i>=128&&T(e,i,this),this.pos=e-1,this.writeVarint(i),this.pos+=i},writeFloat:function(t){this.realloc(4),S.write(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),S.write(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var i=0;i=128&&T(i,r,this),this.pos=i-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,e,i){this.writeTag(t,V.Bytes),this.writeRawMessage(e,i)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,A,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,D,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,E,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,L,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,z,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,O,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,N,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,C,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,U,e)},writeBytesField:function(t,e){this.writeTag(t,V.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,V.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,V.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,V.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,V.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,V.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,V.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,V.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,V.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,V.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}};var I={filter:void 0,minZoom:0,maxZoom:18,maxDetailZoom:void 0,minDetailZoom:void 0,subdomains:"abc",zoomOffset:0,zoomReverse:!1},W=Object.freeze((function(e,i){var r=new t.GridLayer(i),n=Object.getPrototypeOf(r),s={};"string"==typeof(i=t.Util.extend({},I,i)).subdomains&&(i.subdomains=i.subdomains.split("")),i.vectorTileLayerStyles&&(i.style=function(t,e,r){var n=i.getFeatureId,o=i.vectorTileLayerStyles[e];if(n){var a=n(t);s[a]&&(o=s[a])}if("function"==typeof o&&(o=o(t.properties,r)),Array.isArray(o)){if(!o.length)return;o=o[0]}return o});var o,a,u={};function h(){a=o.getZoom()}function f(t){var e=i.minDetailZoom,r=i.maxDetailZoom;return void 0!==e&&t0;)i[s]=arguments[s+1];return(o=t).on("zoomend",h),h(),(e=n.onAdd).call.apply(e,[r,t].concat(i))},r.onRemove=function(){for(var t,e=[],i=arguments.length;i--;)e[i]=arguments[i];return o.off("zoomend",h),o=void 0,(t=n.onRemove).call.apply(t,[r].concat(e))},r.createTile=function(t,e){var i=q(t),n=x(t,r);return u[i]=n,R(r.getTileUrl(t)).then((function(t){n.addVectorTile(new y(new F(t))),e(null,n)}),(function(t){e(t,n)})),n.domElement()},r.getTileUrl=function(n){var s,a,u,h,l={s:(u=n,h=Math.abs(u.x+u.y)%i.subdomains.length,i.subdomains[h]),x:n.x,y:n.y,z:(s=n.z,a=i.maxZoom,i.zoomReverse&&(s=a-s),f(s+i.zoomOffset))};return o.options.crs.infinite||(l["-y"]=r._globalTileRange.max.y-n.y),t.Util.template(e,t.Util.extend(l,i))},r.setStyle=function(t){return i.style=t,l((function(t){var e=t.feature,i=t.layerName,n=r.getFeatureStyle(e,i);t.setStyle(n)})),r},r.setFeatureStyle=function(t,e){return s[t]=e,r.setStyle(i.style),r},r.resetFeatureStyle=function(t){return delete s[t],r.setStyle(i.style),r},r.getTileSize=function(){var t=n.getTileSize.call(r),e=r._tileZoom;return t.divideBy(o.getZoomScale(f(e),e)).round()},r.getFeatureStyle=function(t,e){if(!i.filter||i.filter(t,e,a)){var r=i.style;return"function"==typeof r?r(t,e,a):r}},r.addFeatureLayer=function(t){return t.addTo(o),t.addEventParent(r),r},r.removeFeatureLayer=function(t){return t.removeEventParent(r),t.removeFrom(o),r},r.getBounds=function(){var e;return l((function(i,r,n,s){var a=function(t){return o.unproject(s.global(t),s.coords().z)},u=i.bbox(),h=t.latLngBounds(a(u.min),a(u.max));e?e.extend(h):e=h})),e},r}));return W})); +//# sourceMappingURL=VectorTileLayer.umd.min.js.map diff --git a/worldmap/leaflet/sockjs.min.js.map b/worldmap/leaflet/sockjs.min.js.map deleted file mode 100644 index 9d67c21..0000000 --- a/worldmap/leaflet/sockjs.min.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["node_modules/browser-pack/_prelude.js","lib/entry.js","lib/event/close.js","lib/event/emitter.js","lib/event/event.js","lib/event/eventtarget.js","lib/event/trans-message.js","lib/facade.js","lib/iframe-bootstrap.js","lib/info-ajax.js","lib/info-iframe-receiver.js","lib/info-iframe.js","lib/info-receiver.js","lib/location.js","lib/main.js","lib/shims.js","lib/transport-list.js","lib/transport/browser/abstract-xhr.js","lib/transport/browser/eventsource.js","lib/transport/browser/websocket.js","lib/transport/eventsource.js","lib/transport/htmlfile.js","lib/transport/iframe.js","lib/transport/jsonp-polling.js","lib/transport/lib/ajax-based.js","lib/transport/lib/buffered-sender.js","lib/transport/lib/iframe-wrap.js","lib/transport/lib/polling.js","lib/transport/lib/sender-receiver.js","lib/transport/receiver/eventsource.js","lib/transport/receiver/htmlfile.js","lib/transport/receiver/jsonp.js","lib/transport/receiver/xhr.js","lib/transport/sender/jsonp.js","lib/transport/sender/xdr.js","lib/transport/sender/xhr-cors.js","lib/transport/sender/xhr-fake.js","lib/transport/sender/xhr-local.js","lib/transport/websocket.js","lib/transport/xdr-polling.js","lib/transport/xdr-streaming.js","lib/transport/xhr-polling.js","lib/transport/xhr-streaming.js","lib/utils/browser-crypto.js","lib/utils/browser.js","lib/utils/escape.js","lib/utils/event.js","lib/utils/iframe.js","lib/utils/log.js","lib/utils/object.js","lib/utils/random.js","lib/utils/transport.js","lib/utils/url.js","lib/version.js","node_modules/inherits/inherits_browser.js","node_modules/json3/lib/json3.js","node_modules/querystringify/index.js","node_modules/requires-port/index.js","node_modules/url-parse/index.js"],"names":["f","exports","module","define","amd","window","global","self","this","SockJS","r","e","n","t","o","i","c","require","u","a","Error","code","p","call","length","1","transportList","setTimeout","_sockjs_onload","inherits","Event","CloseEvent","initEvent","wasClean","reason","EventTarget","EventEmitter","prototype","removeAllListeners","type","_listeners","once","listener","fired","on","g","removeListener","apply","arguments","emit","listeners","l","args","Array","ai","addListener","addEventListener","removeEventListener","eventType","canBubble","cancelable","bubbles","timeStamp","Date","stopPropagation","preventDefault","CAPTURING_PHASE","AT_TARGET","BUBBLING_PHASE","arr","indexOf","concat","idx","slice","dispatchEvent","event","TransportMessageEvent","data","JSON3","iframeUtils","FacadeJS","transport","_transport","_transportMessage","bind","_transportClose","postMessage","stringify","frame","_send","send","_close","close","urlUtils","eventUtils","InfoIframeReceiver","loc","debug","availableTransports","parentOrigin","transportMap","forEach","at","facadeTransport","transportName","bootstrap_iframe","facade","currentWindowId","hash","attachEvent","source","parent","origin","iframeMessage","parse","ignored","windowId","version","transUrl","baseUrl","isOriginEqual","href","objectUtils","InfoAjax","url","AjaxObject","t0","xo","status","text","info","rtt","isObject","XHRLocalObject","InfoReceiverIframe","ir","utils","IframeTransport","InfoIframe","go","ifr","msg","d","document","body","enabled","XDR","XHRCors","XHRLocal","XHRFake","InfoReceiver","urlInfo","doXhr","_getReceiver","sameOrigin","sameScheme","addPath","timeoutRef","_cleanup","timeout","clearTimeout","location","protocol","host","port","transports","URL","random","escape","browser","log","protocols","options","TypeError","readyState","CONNECTING","extensions","protocols_whitelist","warn","_transportsWhitelist","_transportOptions","transportOptions","_timeout","sessionId","_generateSessionId","string","_server","server","numberString","parsedUrl","SyntaxError","secure","isLoopbackAddr","hostname","isArray","sortedProtocols","sort","proto","getOrigin","_origin","toLowerCase","set","pathname","replace","_urlInfo","nullOrigin","hasDomain","isSchemeEqual","_ir","_receiveInfo","userSetCode","CLOSING","CLOSED","OPEN","quote","_rto","countRTO","_transUrl","base_url","extend","enabledTransports","filterToEnabled","_transports","main","_connect","Transport","shift","needBody","unshift","timeoutMs","Math","max","roundTrips","_transportTimeoutId","_transportTimeout","transportUrl","transportObj","payload","content","_open","forceFail","onmessage","onclose","onerror","isFunction","val","ObjectPrototype","toString","isString","obj","_toString","defineProperty","ArrayPrototype","Object","FunctionPrototype","Function","StringPrototype","String","array_slice","supportsDescriptors","object","name","method","forceAssign","configurable","enumerable","writable","value","defineProperties","map","hasOwnProperty","toObject","Empty","that","target","boundLength","boundArgs","push","bound","join","result","properlyBoxesNonStrict","properlyBoxesStrict","boxedString","splitString","fun","split","thisp","_","__","context","hasFirefox2IndexOfBug","sought","num","floor","abs","toInteger","compliantExecNpcg","string_split","exec","separator","limit","separator2","match","lastIndex","lastLength","output","flags","ignoreCase","multiline","extended","sticky","lastLastIndex","RegExp","x","ToUint32","index","test","string_substr","substr","hasNegativeSubstrBug","start","XHR","XMLHttpRequest","AbstractXHRObject","opts","_start","xhr","addQuery","unloadRef","unloadAdd","open","ontimeout","noCredentials","supportsCORS","withCredentials","headers","key","setRequestHeader","onreadystatechange","responseText","abort","unloadDel","axo","cors","EventSource","Driver","WebSocket","MozWebSocket","undefined","AjaxBasedTransport","EventSourceReceiver","XHRCorsObject","EventSourceDriver","EventSourceTransport","HtmlfileReceiver","HtmlFileTransport","iframeUrl","iframeObj","createIframe","onmessageCallback","_message","detachEvent","cleanup","loaded","cdata","post","message","iframeEnabled","SenderReceiver","JsonpReceiver","jsonpSender","JsonPTransport","urlSuffix","Receiver","callback","opt","Content-type","ajaxUrl","err","createAjaxSender","BufferedSender","sender","sendBuffer","sendStop","sendSchedule","sendScheduleWait","tref","IframeWrapTransport","iframeInfo","Polling","receiveUrl","_scheduleReceiver","poll","pollIsClosing","senderFunc","pollUrl","es","decodeURI","polluteGlobalNamespace","id","decodeURIComponent","WPrefix","htmlfileEnabled","constructFunc","createHtmlfile","stop","urlWithId","encodeURIComponent","_callback","_createScript","timeoutId","_abort","scriptErrorTimeout","aborting","script2","parentNode","removeChild","script","onload","onclick","_scriptError","errorTimer","loadedOkay","createElement","src","charset","htmlFor","async","isOpera","head","getElementsByTagName","insertBefore","firstChild","XhrReceiver","bufferPosition","_chunkHandler","buf","form","area","style","display","position","enctype","acceptCharset","appendChild","action","iframe","submit","completed","XDRObject","xdr","XDomainRequest","_error","onprogress","XhrDriver","to","WebsocketDriver","WebSocketTransport","ignore","ws","XdrStreamingTransport","XdrPollingTransport","cookie_needed","XhrPollingTransport","XhrStreamingTransport","crypto","getRandomValues","randomBytes","bytes","Uint8Array","navigator","userAgent","isKonqueror","domain","extraLookup","extraEscapable","quoted","escapable","unrolled","fromCharCode","charCodeAt","unrollLookup","onUnload","afterUnload","isChromePackagedApp","chrome","app","runtime","ref","triggerUnloadCallbacks","errorCallback","unattach","contentWindow","doc","CollectGarbage","write","parentWindow","logObject","level","levelExists","console","prop","_randomStringChars","ret","number","transportsWhitelist","trans","websocket","b","res","path","qs","q","addr","create","ctor","superCtor","super_","constructor","TempCtor","objectTypes","function","freeExports","nodeType","root","freeGlobal","runInContext","Number","nativeJSON","JSON","objectProto","getClass","isProperty","attempt","func","errorFunc","exception","isExtended","has","isSupported","serialized","stringifySupported","toJSON","parseSupported","getUTCFullYear","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","getUTCMilliseconds","functionClass","numberClass","stringClass","arrayClass","charIndexBuggy","forOwn","Properties","dontEnums","property","size","valueOf","isConstructor","hasProperty","toPaddedString","width","Escapes","92","34","8","12","10","13","9","serializeDate","getData","year","month","date","time","hours","minutes","seconds","milliseconds","getDay","Months","dateToJSON","nativeStringify","filter","nativeToJSON","escapeChar","character","charCode","escaped","reEscape","serialize","properties","whitespace","indentation","stack","className","results","element","prefix","pop","Index","Source","lex","begin","isSigned","charAt","Unescapes","temp","update","walk","47","98","116","110","102","114","get","hasMembers","previousJSON","isRestored","noConflict","decode","input","pairs","isNaN","query","part","parser","required","slashes","protocolre","windowsDriveLetter","left","trimLeft","str","rules","address","isSpecial","NaN","lolcation","finaldestination","Url","unescape","scheme","extractProtocol","rest","forwardSlashes","otherSlashes","slashesCount","relative","extracted","instruction","instructions","base","last","up","splice","resolve","username","password","auth","fn","char","ins"],"mappings":"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","file":"sockjs.min.js","sourcesContent":["(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i 1) {\n // Make a copy so as not to interfere with a current dispatchEvent.\n this._listeners[eventType] = arr.slice(0, idx).concat(arr.slice(idx + 1));\n } else {\n delete this._listeners[eventType];\n }\n return;\n }\n};\n\nEventTarget.prototype.dispatchEvent = function() {\n var event = arguments[0];\n var t = event.type;\n // equivalent of Array.prototype.slice.call(arguments, 0);\n var args = arguments.length === 1 ? [event] : Array.apply(null, arguments);\n // TODO: This doesn't match the real behavior; per spec, onfoo get\n // their place in line from the /first/ time they're set from\n // non-null. Although WebKit bumps it to the end every time it's\n // set.\n if (this['on' + t]) {\n this['on' + t].apply(this, args);\n }\n if (t in this._listeners) {\n // Grab a reference to the listeners list. removeEventListener may alter the list.\n var listeners = this._listeners[t];\n for (var i = 0; i < listeners.length; i++) {\n listeners[i].apply(this, args);\n }\n }\n};\n\nmodule.exports = EventTarget;\n","'use strict';\n\nvar inherits = require('inherits')\n , Event = require('./event')\n ;\n\nfunction TransportMessageEvent(data) {\n Event.call(this);\n this.initEvent('message', false, false);\n this.data = data;\n}\n\ninherits(TransportMessageEvent, Event);\n\nmodule.exports = TransportMessageEvent;\n","'use strict';\n\nvar JSON3 = require('json3')\n , iframeUtils = require('./utils/iframe')\n ;\n\nfunction FacadeJS(transport) {\n this._transport = transport;\n transport.on('message', this._transportMessage.bind(this));\n transport.on('close', this._transportClose.bind(this));\n}\n\nFacadeJS.prototype._transportClose = function(code, reason) {\n iframeUtils.postMessage('c', JSON3.stringify([code, reason]));\n};\nFacadeJS.prototype._transportMessage = function(frame) {\n iframeUtils.postMessage('t', frame);\n};\nFacadeJS.prototype._send = function(data) {\n this._transport.send(data);\n};\nFacadeJS.prototype._close = function() {\n this._transport.close();\n this._transport.removeAllListeners();\n};\n\nmodule.exports = FacadeJS;\n","'use strict';\n\nvar urlUtils = require('./utils/url')\n , eventUtils = require('./utils/event')\n , JSON3 = require('json3')\n , FacadeJS = require('./facade')\n , InfoIframeReceiver = require('./info-iframe-receiver')\n , iframeUtils = require('./utils/iframe')\n , loc = require('./location')\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:iframe-bootstrap');\n}\n\nmodule.exports = function(SockJS, availableTransports) {\n var transportMap = {};\n availableTransports.forEach(function(at) {\n if (at.facadeTransport) {\n transportMap[at.facadeTransport.transportName] = at.facadeTransport;\n }\n });\n\n // hard-coded for the info iframe\n // TODO see if we can make this more dynamic\n transportMap[InfoIframeReceiver.transportName] = InfoIframeReceiver;\n var parentOrigin;\n\n /* eslint-disable camelcase */\n SockJS.bootstrap_iframe = function() {\n /* eslint-enable camelcase */\n var facade;\n iframeUtils.currentWindowId = loc.hash.slice(1);\n var onMessage = function(e) {\n if (e.source !== parent) {\n return;\n }\n if (typeof parentOrigin === 'undefined') {\n parentOrigin = e.origin;\n }\n if (e.origin !== parentOrigin) {\n return;\n }\n\n var iframeMessage;\n try {\n iframeMessage = JSON3.parse(e.data);\n } catch (ignored) {\n debug('bad json', e.data);\n return;\n }\n\n if (iframeMessage.windowId !== iframeUtils.currentWindowId) {\n return;\n }\n switch (iframeMessage.type) {\n case 's':\n var p;\n try {\n p = JSON3.parse(iframeMessage.data);\n } catch (ignored) {\n debug('bad json', iframeMessage.data);\n break;\n }\n var version = p[0];\n var transport = p[1];\n var transUrl = p[2];\n var baseUrl = p[3];\n debug(version, transport, transUrl, baseUrl);\n // change this to semver logic\n if (version !== SockJS.version) {\n throw new Error('Incompatible SockJS! Main site uses:' +\n ' \"' + version + '\", the iframe:' +\n ' \"' + SockJS.version + '\".');\n }\n\n if (!urlUtils.isOriginEqual(transUrl, loc.href) ||\n !urlUtils.isOriginEqual(baseUrl, loc.href)) {\n throw new Error('Can\\'t connect to different domain from within an ' +\n 'iframe. (' + loc.href + ', ' + transUrl + ', ' + baseUrl + ')');\n }\n facade = new FacadeJS(new transportMap[transport](transUrl, baseUrl));\n break;\n case 'm':\n facade._send(iframeMessage.data);\n break;\n case 'c':\n if (facade) {\n facade._close();\n }\n facade = null;\n break;\n }\n };\n\n eventUtils.attachEvent('message', onMessage);\n\n // Start\n iframeUtils.postMessage('s');\n };\n};\n","'use strict';\n\nvar EventEmitter = require('events').EventEmitter\n , inherits = require('inherits')\n , JSON3 = require('json3')\n , objectUtils = require('./utils/object')\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:info-ajax');\n}\n\nfunction InfoAjax(url, AjaxObject) {\n EventEmitter.call(this);\n\n var self = this;\n var t0 = +new Date();\n this.xo = new AjaxObject('GET', url);\n\n this.xo.once('finish', function(status, text) {\n var info, rtt;\n if (status === 200) {\n rtt = (+new Date()) - t0;\n if (text) {\n try {\n info = JSON3.parse(text);\n } catch (e) {\n debug('bad json', text);\n }\n }\n\n if (!objectUtils.isObject(info)) {\n info = {};\n }\n }\n self.emit('finish', info, rtt);\n self.removeAllListeners();\n });\n}\n\ninherits(InfoAjax, EventEmitter);\n\nInfoAjax.prototype.close = function() {\n this.removeAllListeners();\n this.xo.close();\n};\n\nmodule.exports = InfoAjax;\n","'use strict';\n\nvar inherits = require('inherits')\n , EventEmitter = require('events').EventEmitter\n , JSON3 = require('json3')\n , XHRLocalObject = require('./transport/sender/xhr-local')\n , InfoAjax = require('./info-ajax')\n ;\n\nfunction InfoReceiverIframe(transUrl) {\n var self = this;\n EventEmitter.call(this);\n\n this.ir = new InfoAjax(transUrl, XHRLocalObject);\n this.ir.once('finish', function(info, rtt) {\n self.ir = null;\n self.emit('message', JSON3.stringify([info, rtt]));\n });\n}\n\ninherits(InfoReceiverIframe, EventEmitter);\n\nInfoReceiverIframe.transportName = 'iframe-info-receiver';\n\nInfoReceiverIframe.prototype.close = function() {\n if (this.ir) {\n this.ir.close();\n this.ir = null;\n }\n this.removeAllListeners();\n};\n\nmodule.exports = InfoReceiverIframe;\n","'use strict';\n\nvar EventEmitter = require('events').EventEmitter\n , inherits = require('inherits')\n , JSON3 = require('json3')\n , utils = require('./utils/event')\n , IframeTransport = require('./transport/iframe')\n , InfoReceiverIframe = require('./info-iframe-receiver')\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:info-iframe');\n}\n\nfunction InfoIframe(baseUrl, url) {\n var self = this;\n EventEmitter.call(this);\n\n var go = function() {\n var ifr = self.ifr = new IframeTransport(InfoReceiverIframe.transportName, url, baseUrl);\n\n ifr.once('message', function(msg) {\n if (msg) {\n var d;\n try {\n d = JSON3.parse(msg);\n } catch (e) {\n debug('bad json', msg);\n self.emit('finish');\n self.close();\n return;\n }\n\n var info = d[0], rtt = d[1];\n self.emit('finish', info, rtt);\n }\n self.close();\n });\n\n ifr.once('close', function() {\n self.emit('finish');\n self.close();\n });\n };\n\n // TODO this seems the same as the 'needBody' from transports\n if (!global.document.body) {\n utils.attachEvent('load', go);\n } else {\n go();\n }\n}\n\ninherits(InfoIframe, EventEmitter);\n\nInfoIframe.enabled = function() {\n return IframeTransport.enabled();\n};\n\nInfoIframe.prototype.close = function() {\n if (this.ifr) {\n this.ifr.close();\n }\n this.removeAllListeners();\n this.ifr = null;\n};\n\nmodule.exports = InfoIframe;\n","'use strict';\n\nvar EventEmitter = require('events').EventEmitter\n , inherits = require('inherits')\n , urlUtils = require('./utils/url')\n , XDR = require('./transport/sender/xdr')\n , XHRCors = require('./transport/sender/xhr-cors')\n , XHRLocal = require('./transport/sender/xhr-local')\n , XHRFake = require('./transport/sender/xhr-fake')\n , InfoIframe = require('./info-iframe')\n , InfoAjax = require('./info-ajax')\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:info-receiver');\n}\n\nfunction InfoReceiver(baseUrl, urlInfo) {\n debug(baseUrl);\n var self = this;\n EventEmitter.call(this);\n\n setTimeout(function() {\n self.doXhr(baseUrl, urlInfo);\n }, 0);\n}\n\ninherits(InfoReceiver, EventEmitter);\n\n// TODO this is currently ignoring the list of available transports and the whitelist\n\nInfoReceiver._getReceiver = function(baseUrl, url, urlInfo) {\n // determine method of CORS support (if needed)\n if (urlInfo.sameOrigin) {\n return new InfoAjax(url, XHRLocal);\n }\n if (XHRCors.enabled) {\n return new InfoAjax(url, XHRCors);\n }\n if (XDR.enabled && urlInfo.sameScheme) {\n return new InfoAjax(url, XDR);\n }\n if (InfoIframe.enabled()) {\n return new InfoIframe(baseUrl, url);\n }\n return new InfoAjax(url, XHRFake);\n};\n\nInfoReceiver.prototype.doXhr = function(baseUrl, urlInfo) {\n var self = this\n , url = urlUtils.addPath(baseUrl, '/info')\n ;\n debug('doXhr', url);\n\n this.xo = InfoReceiver._getReceiver(baseUrl, url, urlInfo);\n\n this.timeoutRef = setTimeout(function() {\n debug('timeout');\n self._cleanup(false);\n self.emit('finish');\n }, InfoReceiver.timeout);\n\n this.xo.once('finish', function(info, rtt) {\n debug('finish', info, rtt);\n self._cleanup(true);\n self.emit('finish', info, rtt);\n });\n};\n\nInfoReceiver.prototype._cleanup = function(wasClean) {\n debug('_cleanup');\n clearTimeout(this.timeoutRef);\n this.timeoutRef = null;\n if (!wasClean && this.xo) {\n this.xo.close();\n }\n this.xo = null;\n};\n\nInfoReceiver.prototype.close = function() {\n debug('close');\n this.removeAllListeners();\n this._cleanup(false);\n};\n\nInfoReceiver.timeout = 8000;\n\nmodule.exports = InfoReceiver;\n","'use strict';\n\nmodule.exports = global.location || {\n origin: 'http://localhost:80'\n, protocol: 'http:'\n, host: 'localhost'\n, port: 80\n, href: 'http://localhost/'\n, hash: ''\n};\n","'use strict';\n\nrequire('./shims');\n\nvar URL = require('url-parse')\n , inherits = require('inherits')\n , JSON3 = require('json3')\n , random = require('./utils/random')\n , escape = require('./utils/escape')\n , urlUtils = require('./utils/url')\n , eventUtils = require('./utils/event')\n , transport = require('./utils/transport')\n , objectUtils = require('./utils/object')\n , browser = require('./utils/browser')\n , log = require('./utils/log')\n , Event = require('./event/event')\n , EventTarget = require('./event/eventtarget')\n , loc = require('./location')\n , CloseEvent = require('./event/close')\n , TransportMessageEvent = require('./event/trans-message')\n , InfoReceiver = require('./info-receiver')\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:main');\n}\n\nvar transports;\n\n// follow constructor steps defined at http://dev.w3.org/html5/websockets/#the-websocket-interface\nfunction SockJS(url, protocols, options) {\n if (!(this instanceof SockJS)) {\n return new SockJS(url, protocols, options);\n }\n if (arguments.length < 1) {\n throw new TypeError(\"Failed to construct 'SockJS: 1 argument required, but only 0 present\");\n }\n EventTarget.call(this);\n\n this.readyState = SockJS.CONNECTING;\n this.extensions = '';\n this.protocol = '';\n\n // non-standard extension\n options = options || {};\n if (options.protocols_whitelist) {\n log.warn(\"'protocols_whitelist' is DEPRECATED. Use 'transports' instead.\");\n }\n this._transportsWhitelist = options.transports;\n this._transportOptions = options.transportOptions || {};\n this._timeout = options.timeout || 0;\n\n var sessionId = options.sessionId || 8;\n if (typeof sessionId === 'function') {\n this._generateSessionId = sessionId;\n } else if (typeof sessionId === 'number') {\n this._generateSessionId = function() {\n return random.string(sessionId);\n };\n } else {\n throw new TypeError('If sessionId is used in the options, it needs to be a number or a function.');\n }\n\n this._server = options.server || random.numberString(1000);\n\n // Step 1 of WS spec - parse and validate the url. Issue #8\n var parsedUrl = new URL(url);\n if (!parsedUrl.host || !parsedUrl.protocol) {\n throw new SyntaxError(\"The URL '\" + url + \"' is invalid\");\n } else if (parsedUrl.hash) {\n throw new SyntaxError('The URL must not contain a fragment');\n } else if (parsedUrl.protocol !== 'http:' && parsedUrl.protocol !== 'https:') {\n throw new SyntaxError(\"The URL's scheme must be either 'http:' or 'https:'. '\" + parsedUrl.protocol + \"' is not allowed.\");\n }\n\n var secure = parsedUrl.protocol === 'https:';\n // Step 2 - don't allow secure origin with an insecure protocol\n if (loc.protocol === 'https:' && !secure) {\n // exception is 127.0.0.0/8 and ::1 urls\n if (!urlUtils.isLoopbackAddr(parsedUrl.hostname)) {\n throw new Error('SecurityError: An insecure SockJS connection may not be initiated from a page loaded over HTTPS');\n }\n }\n\n // Step 3 - check port access - no need here\n // Step 4 - parse protocols argument\n if (!protocols) {\n protocols = [];\n } else if (!Array.isArray(protocols)) {\n protocols = [protocols];\n }\n\n // Step 5 - check protocols argument\n var sortedProtocols = protocols.sort();\n sortedProtocols.forEach(function(proto, i) {\n if (!proto) {\n throw new SyntaxError(\"The protocols entry '\" + proto + \"' is invalid.\");\n }\n if (i < (sortedProtocols.length - 1) && proto === sortedProtocols[i + 1]) {\n throw new SyntaxError(\"The protocols entry '\" + proto + \"' is duplicated.\");\n }\n });\n\n // Step 6 - convert origin\n var o = urlUtils.getOrigin(loc.href);\n this._origin = o ? o.toLowerCase() : null;\n\n // remove the trailing slash\n parsedUrl.set('pathname', parsedUrl.pathname.replace(/\\/+$/, ''));\n\n // store the sanitized url\n this.url = parsedUrl.href;\n debug('using url', this.url);\n\n // Step 7 - start connection in background\n // obtain server info\n // http://sockjs.github.io/sockjs-protocol/sockjs-protocol-0.3.3.html#section-26\n this._urlInfo = {\n nullOrigin: !browser.hasDomain()\n , sameOrigin: urlUtils.isOriginEqual(this.url, loc.href)\n , sameScheme: urlUtils.isSchemeEqual(this.url, loc.href)\n };\n\n this._ir = new InfoReceiver(this.url, this._urlInfo);\n this._ir.once('finish', this._receiveInfo.bind(this));\n}\n\ninherits(SockJS, EventTarget);\n\nfunction userSetCode(code) {\n return code === 1000 || (code >= 3000 && code <= 4999);\n}\n\nSockJS.prototype.close = function(code, reason) {\n // Step 1\n if (code && !userSetCode(code)) {\n throw new Error('InvalidAccessError: Invalid code');\n }\n // Step 2.4 states the max is 123 bytes, but we are just checking length\n if (reason && reason.length > 123) {\n throw new SyntaxError('reason argument has an invalid length');\n }\n\n // Step 3.1\n if (this.readyState === SockJS.CLOSING || this.readyState === SockJS.CLOSED) {\n return;\n }\n\n // TODO look at docs to determine how to set this\n var wasClean = true;\n this._close(code || 1000, reason || 'Normal closure', wasClean);\n};\n\nSockJS.prototype.send = function(data) {\n // #13 - convert anything non-string to string\n // TODO this currently turns objects into [object Object]\n if (typeof data !== 'string') {\n data = '' + data;\n }\n if (this.readyState === SockJS.CONNECTING) {\n throw new Error('InvalidStateError: The connection has not been established yet');\n }\n if (this.readyState !== SockJS.OPEN) {\n return;\n }\n this._transport.send(escape.quote(data));\n};\n\nSockJS.version = require('./version');\n\nSockJS.CONNECTING = 0;\nSockJS.OPEN = 1;\nSockJS.CLOSING = 2;\nSockJS.CLOSED = 3;\n\nSockJS.prototype._receiveInfo = function(info, rtt) {\n debug('_receiveInfo', rtt);\n this._ir = null;\n if (!info) {\n this._close(1002, 'Cannot connect to server');\n return;\n }\n\n // establish a round-trip timeout (RTO) based on the\n // round-trip time (RTT)\n this._rto = this.countRTO(rtt);\n // allow server to override url used for the actual transport\n this._transUrl = info.base_url ? info.base_url : this.url;\n info = objectUtils.extend(info, this._urlInfo);\n debug('info', info);\n // determine list of desired and supported transports\n var enabledTransports = transports.filterToEnabled(this._transportsWhitelist, info);\n this._transports = enabledTransports.main;\n debug(this._transports.length + ' enabled transports');\n\n this._connect();\n};\n\nSockJS.prototype._connect = function() {\n for (var Transport = this._transports.shift(); Transport; Transport = this._transports.shift()) {\n debug('attempt', Transport.transportName);\n if (Transport.needBody) {\n if (!global.document.body ||\n (typeof global.document.readyState !== 'undefined' &&\n global.document.readyState !== 'complete' &&\n global.document.readyState !== 'interactive')) {\n debug('waiting for body');\n this._transports.unshift(Transport);\n eventUtils.attachEvent('load', this._connect.bind(this));\n return;\n }\n }\n\n // calculate timeout based on RTO and round trips. Default to 5s\n var timeoutMs = Math.max(this._timeout, (this._rto * Transport.roundTrips) || 5000);\n this._transportTimeoutId = setTimeout(this._transportTimeout.bind(this), timeoutMs);\n debug('using timeout', timeoutMs);\n\n var transportUrl = urlUtils.addPath(this._transUrl, '/' + this._server + '/' + this._generateSessionId());\n var options = this._transportOptions[Transport.transportName];\n debug('transport url', transportUrl);\n var transportObj = new Transport(transportUrl, this._transUrl, options);\n transportObj.on('message', this._transportMessage.bind(this));\n transportObj.once('close', this._transportClose.bind(this));\n transportObj.transportName = Transport.transportName;\n this._transport = transportObj;\n\n return;\n }\n this._close(2000, 'All transports failed', false);\n};\n\nSockJS.prototype._transportTimeout = function() {\n debug('_transportTimeout');\n if (this.readyState === SockJS.CONNECTING) {\n if (this._transport) {\n this._transport.close();\n }\n\n this._transportClose(2007, 'Transport timed out');\n }\n};\n\nSockJS.prototype._transportMessage = function(msg) {\n debug('_transportMessage', msg);\n var self = this\n , type = msg.slice(0, 1)\n , content = msg.slice(1)\n , payload\n ;\n\n // first check for messages that don't need a payload\n switch (type) {\n case 'o':\n this._open();\n return;\n case 'h':\n this.dispatchEvent(new Event('heartbeat'));\n debug('heartbeat', this.transport);\n return;\n }\n\n if (content) {\n try {\n payload = JSON3.parse(content);\n } catch (e) {\n debug('bad json', content);\n }\n }\n\n if (typeof payload === 'undefined') {\n debug('empty payload', content);\n return;\n }\n\n switch (type) {\n case 'a':\n if (Array.isArray(payload)) {\n payload.forEach(function(p) {\n debug('message', self.transport, p);\n self.dispatchEvent(new TransportMessageEvent(p));\n });\n }\n break;\n case 'm':\n debug('message', this.transport, payload);\n this.dispatchEvent(new TransportMessageEvent(payload));\n break;\n case 'c':\n if (Array.isArray(payload) && payload.length === 2) {\n this._close(payload[0], payload[1], true);\n }\n break;\n }\n};\n\nSockJS.prototype._transportClose = function(code, reason) {\n debug('_transportClose', this.transport, code, reason);\n if (this._transport) {\n this._transport.removeAllListeners();\n this._transport = null;\n this.transport = null;\n }\n\n if (!userSetCode(code) && code !== 2000 && this.readyState === SockJS.CONNECTING) {\n this._connect();\n return;\n }\n\n this._close(code, reason);\n};\n\nSockJS.prototype._open = function() {\n debug('_open', this._transport && this._transport.transportName, this.readyState);\n if (this.readyState === SockJS.CONNECTING) {\n if (this._transportTimeoutId) {\n clearTimeout(this._transportTimeoutId);\n this._transportTimeoutId = null;\n }\n this.readyState = SockJS.OPEN;\n this.transport = this._transport.transportName;\n this.dispatchEvent(new Event('open'));\n debug('connected', this.transport);\n } else {\n // The server might have been restarted, and lost track of our\n // connection.\n this._close(1006, 'Server lost session');\n }\n};\n\nSockJS.prototype._close = function(code, reason, wasClean) {\n debug('_close', this.transport, code, reason, wasClean, this.readyState);\n var forceFail = false;\n\n if (this._ir) {\n forceFail = true;\n this._ir.close();\n this._ir = null;\n }\n if (this._transport) {\n this._transport.close();\n this._transport = null;\n this.transport = null;\n }\n\n if (this.readyState === SockJS.CLOSED) {\n throw new Error('InvalidStateError: SockJS has already been closed');\n }\n\n this.readyState = SockJS.CLOSING;\n setTimeout(function() {\n this.readyState = SockJS.CLOSED;\n\n if (forceFail) {\n this.dispatchEvent(new Event('error'));\n }\n\n var e = new CloseEvent('close');\n e.wasClean = wasClean || false;\n e.code = code || 1000;\n e.reason = reason;\n\n this.dispatchEvent(e);\n this.onmessage = this.onclose = this.onerror = null;\n debug('disconnected');\n }.bind(this), 0);\n};\n\n// See: http://www.erg.abdn.ac.uk/~gerrit/dccp/notes/ccid2/rto_estimator/\n// and RFC 2988.\nSockJS.prototype.countRTO = function(rtt) {\n // In a local environment, when using IE8/9 and the `jsonp-polling`\n // transport the time needed to establish a connection (the time that pass\n // from the opening of the transport to the call of `_dispatchOpen`) is\n // around 200msec (the lower bound used in the article above) and this\n // causes spurious timeouts. For this reason we calculate a value slightly\n // larger than that used in the article.\n if (rtt > 100) {\n return 4 * rtt; // rto > 400msec\n }\n return 300 + rtt; // 300msec < rto <= 400msec\n};\n\nmodule.exports = function(availableTransports) {\n transports = transport(availableTransports);\n require('./iframe-bootstrap')(SockJS, availableTransports);\n return SockJS;\n};\n","/* eslint-disable */\n/* jscs: disable */\n'use strict';\n\n// pulled specific shims from https://github.com/es-shims/es5-shim\n\nvar ArrayPrototype = Array.prototype;\nvar ObjectPrototype = Object.prototype;\nvar FunctionPrototype = Function.prototype;\nvar StringPrototype = String.prototype;\nvar array_slice = ArrayPrototype.slice;\n\nvar _toString = ObjectPrototype.toString;\nvar isFunction = function (val) {\n return ObjectPrototype.toString.call(val) === '[object Function]';\n};\nvar isArray = function isArray(obj) {\n return _toString.call(obj) === '[object Array]';\n};\nvar isString = function isString(obj) {\n return _toString.call(obj) === '[object String]';\n};\n\nvar supportsDescriptors = Object.defineProperty && (function () {\n try {\n Object.defineProperty({}, 'x', {});\n return true;\n } catch (e) { /* this is ES3 */\n return false;\n }\n}());\n\n// Define configurable, writable and non-enumerable props\n// if they don't exist.\nvar defineProperty;\nif (supportsDescriptors) {\n defineProperty = function (object, name, method, forceAssign) {\n if (!forceAssign && (name in object)) { return; }\n Object.defineProperty(object, name, {\n configurable: true,\n enumerable: false,\n writable: true,\n value: method\n });\n };\n} else {\n defineProperty = function (object, name, method, forceAssign) {\n if (!forceAssign && (name in object)) { return; }\n object[name] = method;\n };\n}\nvar defineProperties = function (object, map, forceAssign) {\n for (var name in map) {\n if (ObjectPrototype.hasOwnProperty.call(map, name)) {\n defineProperty(object, name, map[name], forceAssign);\n }\n }\n};\n\nvar toObject = function (o) {\n if (o == null) { // this matches both null and undefined\n throw new TypeError(\"can't convert \" + o + ' to object');\n }\n return Object(o);\n};\n\n//\n// Util\n// ======\n//\n\n// ES5 9.4\n// http://es5.github.com/#x9.4\n// http://jsperf.com/to-integer\n\nfunction toInteger(num) {\n var n = +num;\n if (n !== n) { // isNaN\n n = 0;\n } else if (n !== 0 && n !== (1 / 0) && n !== -(1 / 0)) {\n n = (n > 0 || -1) * Math.floor(Math.abs(n));\n }\n return n;\n}\n\nfunction ToUint32(x) {\n return x >>> 0;\n}\n\n//\n// Function\n// ========\n//\n\n// ES-5 15.3.4.5\n// http://es5.github.com/#x15.3.4.5\n\nfunction Empty() {}\n\ndefineProperties(FunctionPrototype, {\n bind: function bind(that) { // .length is 1\n // 1. Let Target be the this value.\n var target = this;\n // 2. If IsCallable(Target) is false, throw a TypeError exception.\n if (!isFunction(target)) {\n throw new TypeError('Function.prototype.bind called on incompatible ' + target);\n }\n // 3. Let A be a new (possibly empty) internal list of all of the\n // argument values provided after thisArg (arg1, arg2 etc), in order.\n // XXX slicedArgs will stand in for \"A\" if used\n var args = array_slice.call(arguments, 1); // for normal call\n // 4. Let F be a new native ECMAScript object.\n // 11. Set the [[Prototype]] internal property of F to the standard\n // built-in Function prototype object as specified in 15.3.3.1.\n // 12. Set the [[Call]] internal property of F as described in\n // 15.3.4.5.1.\n // 13. Set the [[Construct]] internal property of F as described in\n // 15.3.4.5.2.\n // 14. Set the [[HasInstance]] internal property of F as described in\n // 15.3.4.5.3.\n var binder = function () {\n\n if (this instanceof bound) {\n // 15.3.4.5.2 [[Construct]]\n // When the [[Construct]] internal method of a function object,\n // F that was created using the bind function is called with a\n // list of arguments ExtraArgs, the following steps are taken:\n // 1. Let target be the value of F's [[TargetFunction]]\n // internal property.\n // 2. If target has no [[Construct]] internal method, a\n // TypeError exception is thrown.\n // 3. Let boundArgs be the value of F's [[BoundArgs]] internal\n // property.\n // 4. Let args be a new list containing the same values as the\n // list boundArgs in the same order followed by the same\n // values as the list ExtraArgs in the same order.\n // 5. Return the result of calling the [[Construct]] internal\n // method of target providing args as the arguments.\n\n var result = target.apply(\n this,\n args.concat(array_slice.call(arguments))\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n\n } else {\n // 15.3.4.5.1 [[Call]]\n // When the [[Call]] internal method of a function object, F,\n // which was created using the bind function is called with a\n // this value and a list of arguments ExtraArgs, the following\n // steps are taken:\n // 1. Let boundArgs be the value of F's [[BoundArgs]] internal\n // property.\n // 2. Let boundThis be the value of F's [[BoundThis]] internal\n // property.\n // 3. Let target be the value of F's [[TargetFunction]] internal\n // property.\n // 4. Let args be a new list containing the same values as the\n // list boundArgs in the same order followed by the same\n // values as the list ExtraArgs in the same order.\n // 5. Return the result of calling the [[Call]] internal method\n // of target providing boundThis as the this value and\n // providing args as the arguments.\n\n // equiv: target.call(this, ...boundArgs, ...args)\n return target.apply(\n that,\n args.concat(array_slice.call(arguments))\n );\n\n }\n\n };\n\n // 15. If the [[Class]] internal property of Target is \"Function\", then\n // a. Let L be the length property of Target minus the length of A.\n // b. Set the length own property of F to either 0 or L, whichever is\n // larger.\n // 16. Else set the length own property of F to 0.\n\n var boundLength = Math.max(0, target.length - args.length);\n\n // 17. Set the attributes of the length own property of F to the values\n // specified in 15.3.5.1.\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs.push('$' + i);\n }\n\n // XXX Build a dynamic function with desired amount of arguments is the only\n // way to set the length property of a function.\n // In environments where Content Security Policies enabled (Chrome extensions,\n // for ex.) all use of eval or Function costructor throws an exception.\n // However in all of these environments Function.prototype.bind exists\n // and so this code will never be executed.\n var bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this, arguments); }')(binder);\n\n if (target.prototype) {\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n // Clean up dangling references.\n Empty.prototype = null;\n }\n\n // TODO\n // 18. Set the [[Extensible]] internal property of F to true.\n\n // TODO\n // 19. Let thrower be the [[ThrowTypeError]] function Object (13.2.3).\n // 20. Call the [[DefineOwnProperty]] internal method of F with\n // arguments \"caller\", PropertyDescriptor {[[Get]]: thrower, [[Set]]:\n // thrower, [[Enumerable]]: false, [[Configurable]]: false}, and\n // false.\n // 21. Call the [[DefineOwnProperty]] internal method of F with\n // arguments \"arguments\", PropertyDescriptor {[[Get]]: thrower,\n // [[Set]]: thrower, [[Enumerable]]: false, [[Configurable]]: false},\n // and false.\n\n // TODO\n // NOTE Function objects created using Function.prototype.bind do not\n // have a prototype property or the [[Code]], [[FormalParameters]], and\n // [[Scope]] internal properties.\n // XXX can't delete prototype in pure-js.\n\n // 22. Return F.\n return bound;\n }\n});\n\n//\n// Array\n// =====\n//\n\n// ES5 15.4.3.2\n// http://es5.github.com/#x15.4.3.2\n// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/isArray\ndefineProperties(Array, { isArray: isArray });\n\n\nvar boxedString = Object('a');\nvar splitString = boxedString[0] !== 'a' || !(0 in boxedString);\n\nvar properlyBoxesContext = function properlyBoxed(method) {\n // Check node 0.6.21 bug where third parameter is not boxed\n var properlyBoxesNonStrict = true;\n var properlyBoxesStrict = true;\n if (method) {\n method.call('foo', function (_, __, context) {\n if (typeof context !== 'object') { properlyBoxesNonStrict = false; }\n });\n\n method.call([1], function () {\n 'use strict';\n properlyBoxesStrict = typeof this === 'string';\n }, 'x');\n }\n return !!method && properlyBoxesNonStrict && properlyBoxesStrict;\n};\n\ndefineProperties(ArrayPrototype, {\n forEach: function forEach(fun /*, thisp*/) {\n var object = toObject(this),\n self = splitString && isString(this) ? this.split('') : object,\n thisp = arguments[1],\n i = -1,\n length = self.length >>> 0;\n\n // If no callback function or if callback is not a callable function\n if (!isFunction(fun)) {\n throw new TypeError(); // TODO message\n }\n\n while (++i < length) {\n if (i in self) {\n // Invoke the callback function with call, passing arguments:\n // context, property value, property key, thisArg object\n // context\n fun.call(thisp, self[i], i, object);\n }\n }\n }\n}, !properlyBoxesContext(ArrayPrototype.forEach));\n\n// ES5 15.4.4.14\n// http://es5.github.com/#x15.4.4.14\n// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf\nvar hasFirefox2IndexOfBug = Array.prototype.indexOf && [0, 1].indexOf(1, 2) !== -1;\ndefineProperties(ArrayPrototype, {\n indexOf: function indexOf(sought /*, fromIndex */ ) {\n var self = splitString && isString(this) ? this.split('') : toObject(this),\n length = self.length >>> 0;\n\n if (!length) {\n return -1;\n }\n\n var i = 0;\n if (arguments.length > 1) {\n i = toInteger(arguments[1]);\n }\n\n // handle negative indices\n i = i >= 0 ? i : Math.max(0, length + i);\n for (; i < length; i++) {\n if (i in self && self[i] === sought) {\n return i;\n }\n }\n return -1;\n }\n}, hasFirefox2IndexOfBug);\n\n//\n// String\n// ======\n//\n\n// ES5 15.5.4.14\n// http://es5.github.com/#x15.5.4.14\n\n// [bugfix, IE lt 9, firefox 4, Konqueror, Opera, obscure browsers]\n// Many browsers do not split properly with regular expressions or they\n// do not perform the split correctly under obscure conditions.\n// See http://blog.stevenlevithan.com/archives/cross-browser-split\n// I've tested in many browsers and this seems to cover the deviant ones:\n// 'ab'.split(/(?:ab)*/) should be [\"\", \"\"], not [\"\"]\n// '.'.split(/(.?)(.?)/) should be [\"\", \".\", \"\", \"\"], not [\"\", \"\"]\n// 'tesst'.split(/(s)*/) should be [\"t\", undefined, \"e\", \"s\", \"t\"], not\n// [undefined, \"t\", undefined, \"e\", ...]\n// ''.split(/.?/) should be [], not [\"\"]\n// '.'.split(/()()/) should be [\".\"], not [\"\", \"\", \".\"]\n\nvar string_split = StringPrototype.split;\nif (\n 'ab'.split(/(?:ab)*/).length !== 2 ||\n '.'.split(/(.?)(.?)/).length !== 4 ||\n 'tesst'.split(/(s)*/)[1] === 't' ||\n 'test'.split(/(?:)/, -1).length !== 4 ||\n ''.split(/.?/).length ||\n '.'.split(/()()/).length > 1\n) {\n (function () {\n var compliantExecNpcg = /()??/.exec('')[1] === void 0; // NPCG: nonparticipating capturing group\n\n StringPrototype.split = function (separator, limit) {\n var string = this;\n if (separator === void 0 && limit === 0) {\n return [];\n }\n\n // If `separator` is not a regex, use native split\n if (_toString.call(separator) !== '[object RegExp]') {\n return string_split.call(this, separator, limit);\n }\n\n var output = [],\n flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.extended ? 'x' : '') + // Proposed for ES6\n (separator.sticky ? 'y' : ''), // Firefox 3+\n lastLastIndex = 0,\n // Make `global` and avoid `lastIndex` issues by working with a copy\n separator2, match, lastIndex, lastLength;\n separator = new RegExp(separator.source, flags + 'g');\n string += ''; // Type-convert\n if (!compliantExecNpcg) {\n // Doesn't need flags gy, but they don't hurt\n separator2 = new RegExp('^' + separator.source + '$(?!\\\\s)', flags);\n }\n /* Values for `limit`, per the spec:\n * If undefined: 4294967295 // Math.pow(2, 32) - 1\n * If 0, Infinity, or NaN: 0\n * If positive number: limit = Math.floor(limit); if (limit > 4294967295) limit -= 4294967296;\n * If negative number: 4294967296 - Math.floor(Math.abs(limit))\n * If other: Type-convert, then use the above rules\n */\n limit = limit === void 0 ?\n -1 >>> 0 : // Math.pow(2, 32) - 1\n ToUint32(limit);\n while (match = separator.exec(string)) {\n // `separator.lastIndex` is not reliable cross-browser\n lastIndex = match.index + match[0].length;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n // Fix browsers whose `exec` methods don't consistently return `undefined` for\n // nonparticipating capturing groups\n if (!compliantExecNpcg && match.length > 1) {\n match[0].replace(separator2, function () {\n for (var i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === void 0) {\n match[i] = void 0;\n }\n }\n });\n }\n if (match.length > 1 && match.index < string.length) {\n ArrayPrototype.push.apply(output, match.slice(1));\n }\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= limit) {\n break;\n }\n }\n if (separator.lastIndex === match.index) {\n separator.lastIndex++; // Avoid an infinite loop\n }\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separator.test('')) {\n output.push('');\n }\n } else {\n output.push(string.slice(lastLastIndex));\n }\n return output.length > limit ? output.slice(0, limit) : output;\n };\n }());\n\n// [bugfix, chrome]\n// If separator is undefined, then the result array contains just one String,\n// which is the this value (converted to a String). If limit is not undefined,\n// then the output array is truncated so that it contains no more than limit\n// elements.\n// \"0\".split(undefined, 0) -> []\n} else if ('0'.split(void 0, 0).length) {\n StringPrototype.split = function split(separator, limit) {\n if (separator === void 0 && limit === 0) { return []; }\n return string_split.call(this, separator, limit);\n };\n}\n\n// ECMA-262, 3rd B.2.3\n// Not an ECMAScript standard, although ECMAScript 3rd Edition has a\n// non-normative section suggesting uniform semantics and it should be\n// normalized across all browsers\n// [bugfix, IE lt 9] IE < 9 substr() with negative value not working in IE\nvar string_substr = StringPrototype.substr;\nvar hasNegativeSubstrBug = ''.substr && '0b'.substr(-1) !== 'b';\ndefineProperties(StringPrototype, {\n substr: function substr(start, length) {\n return string_substr.call(\n this,\n start < 0 ? ((start = this.length + start) < 0 ? 0 : start) : start,\n length\n );\n }\n}, hasNegativeSubstrBug);\n","'use strict';\n\nmodule.exports = [\n // streaming transports\n require('./transport/websocket')\n, require('./transport/xhr-streaming')\n, require('./transport/xdr-streaming')\n, require('./transport/eventsource')\n, require('./transport/lib/iframe-wrap')(require('./transport/eventsource'))\n\n // polling transports\n, require('./transport/htmlfile')\n, require('./transport/lib/iframe-wrap')(require('./transport/htmlfile'))\n, require('./transport/xhr-polling')\n, require('./transport/xdr-polling')\n, require('./transport/lib/iframe-wrap')(require('./transport/xhr-polling'))\n, require('./transport/jsonp-polling')\n];\n","'use strict';\n\nvar EventEmitter = require('events').EventEmitter\n , inherits = require('inherits')\n , utils = require('../../utils/event')\n , urlUtils = require('../../utils/url')\n , XHR = global.XMLHttpRequest\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:browser:xhr');\n}\n\nfunction AbstractXHRObject(method, url, payload, opts) {\n debug(method, url);\n var self = this;\n EventEmitter.call(this);\n\n setTimeout(function () {\n self._start(method, url, payload, opts);\n }, 0);\n}\n\ninherits(AbstractXHRObject, EventEmitter);\n\nAbstractXHRObject.prototype._start = function(method, url, payload, opts) {\n var self = this;\n\n try {\n this.xhr = new XHR();\n } catch (x) {\n // intentionally empty\n }\n\n if (!this.xhr) {\n debug('no xhr');\n this.emit('finish', 0, 'no xhr support');\n this._cleanup();\n return;\n }\n\n // several browsers cache POSTs\n url = urlUtils.addQuery(url, 't=' + (+new Date()));\n\n // Explorer tends to keep connection open, even after the\n // tab gets closed: http://bugs.jquery.com/ticket/5280\n this.unloadRef = utils.unloadAdd(function() {\n debug('unload cleanup');\n self._cleanup(true);\n });\n try {\n this.xhr.open(method, url, true);\n if (this.timeout && 'timeout' in this.xhr) {\n this.xhr.timeout = this.timeout;\n this.xhr.ontimeout = function() {\n debug('xhr timeout');\n self.emit('finish', 0, '');\n self._cleanup(false);\n };\n }\n } catch (e) {\n debug('exception', e);\n // IE raises an exception on wrong port.\n this.emit('finish', 0, '');\n this._cleanup(false);\n return;\n }\n\n if ((!opts || !opts.noCredentials) && AbstractXHRObject.supportsCORS) {\n debug('withCredentials');\n // Mozilla docs says https://developer.mozilla.org/en/XMLHttpRequest :\n // \"This never affects same-site requests.\"\n\n this.xhr.withCredentials = true;\n }\n if (opts && opts.headers) {\n for (var key in opts.headers) {\n this.xhr.setRequestHeader(key, opts.headers[key]);\n }\n }\n\n this.xhr.onreadystatechange = function() {\n if (self.xhr) {\n var x = self.xhr;\n var text, status;\n debug('readyState', x.readyState);\n switch (x.readyState) {\n case 3:\n // IE doesn't like peeking into responseText or status\n // on Microsoft.XMLHTTP and readystate=3\n try {\n status = x.status;\n text = x.responseText;\n } catch (e) {\n // intentionally empty\n }\n debug('status', status);\n // IE returns 1223 for 204: http://bugs.jquery.com/ticket/1450\n if (status === 1223) {\n status = 204;\n }\n\n // IE does return readystate == 3 for 404 answers.\n if (status === 200 && text && text.length > 0) {\n debug('chunk');\n self.emit('chunk', status, text);\n }\n break;\n case 4:\n status = x.status;\n debug('status', status);\n // IE returns 1223 for 204: http://bugs.jquery.com/ticket/1450\n if (status === 1223) {\n status = 204;\n }\n // IE returns this for a bad port\n // http://msdn.microsoft.com/en-us/library/windows/desktop/aa383770(v=vs.85).aspx\n if (status === 12005 || status === 12029) {\n status = 0;\n }\n\n debug('finish', status, x.responseText);\n self.emit('finish', status, x.responseText);\n self._cleanup(false);\n break;\n }\n }\n };\n\n try {\n self.xhr.send(payload);\n } catch (e) {\n self.emit('finish', 0, '');\n self._cleanup(false);\n }\n};\n\nAbstractXHRObject.prototype._cleanup = function(abort) {\n debug('cleanup');\n if (!this.xhr) {\n return;\n }\n this.removeAllListeners();\n utils.unloadDel(this.unloadRef);\n\n // IE needs this field to be a function\n this.xhr.onreadystatechange = function() {};\n if (this.xhr.ontimeout) {\n this.xhr.ontimeout = null;\n }\n\n if (abort) {\n try {\n this.xhr.abort();\n } catch (x) {\n // intentionally empty\n }\n }\n this.unloadRef = this.xhr = null;\n};\n\nAbstractXHRObject.prototype.close = function() {\n debug('close');\n this._cleanup(true);\n};\n\nAbstractXHRObject.enabled = !!XHR;\n// override XMLHttpRequest for IE6/7\n// obfuscate to avoid firewalls\nvar axo = ['Active'].concat('Object').join('X');\nif (!AbstractXHRObject.enabled && (axo in global)) {\n debug('overriding xmlhttprequest');\n XHR = function() {\n try {\n return new global[axo]('Microsoft.XMLHTTP');\n } catch (e) {\n return null;\n }\n };\n AbstractXHRObject.enabled = !!new XHR();\n}\n\nvar cors = false;\ntry {\n cors = 'withCredentials' in new XHR();\n} catch (ignored) {\n // intentionally empty\n}\n\nAbstractXHRObject.supportsCORS = cors;\n\nmodule.exports = AbstractXHRObject;\n","module.exports = global.EventSource;\n","'use strict';\n\nvar Driver = global.WebSocket || global.MozWebSocket;\nif (Driver) {\n\tmodule.exports = function WebSocketBrowserDriver(url) {\n\t\treturn new Driver(url);\n\t};\n} else {\n\tmodule.exports = undefined;\n}\n","'use strict';\n\nvar inherits = require('inherits')\n , AjaxBasedTransport = require('./lib/ajax-based')\n , EventSourceReceiver = require('./receiver/eventsource')\n , XHRCorsObject = require('./sender/xhr-cors')\n , EventSourceDriver = require('eventsource')\n ;\n\nfunction EventSourceTransport(transUrl) {\n if (!EventSourceTransport.enabled()) {\n throw new Error('Transport created when disabled');\n }\n\n AjaxBasedTransport.call(this, transUrl, '/eventsource', EventSourceReceiver, XHRCorsObject);\n}\n\ninherits(EventSourceTransport, AjaxBasedTransport);\n\nEventSourceTransport.enabled = function() {\n return !!EventSourceDriver;\n};\n\nEventSourceTransport.transportName = 'eventsource';\nEventSourceTransport.roundTrips = 2;\n\nmodule.exports = EventSourceTransport;\n","'use strict';\n\nvar inherits = require('inherits')\n , HtmlfileReceiver = require('./receiver/htmlfile')\n , XHRLocalObject = require('./sender/xhr-local')\n , AjaxBasedTransport = require('./lib/ajax-based')\n ;\n\nfunction HtmlFileTransport(transUrl) {\n if (!HtmlfileReceiver.enabled) {\n throw new Error('Transport created when disabled');\n }\n AjaxBasedTransport.call(this, transUrl, '/htmlfile', HtmlfileReceiver, XHRLocalObject);\n}\n\ninherits(HtmlFileTransport, AjaxBasedTransport);\n\nHtmlFileTransport.enabled = function(info) {\n return HtmlfileReceiver.enabled && info.sameOrigin;\n};\n\nHtmlFileTransport.transportName = 'htmlfile';\nHtmlFileTransport.roundTrips = 2;\n\nmodule.exports = HtmlFileTransport;\n","'use strict';\n\n// Few cool transports do work only for same-origin. In order to make\n// them work cross-domain we shall use iframe, served from the\n// remote domain. New browsers have capabilities to communicate with\n// cross domain iframe using postMessage(). In IE it was implemented\n// from IE 8+, but of course, IE got some details wrong:\n// http://msdn.microsoft.com/en-us/library/cc197015(v=VS.85).aspx\n// http://stevesouders.com/misc/test-postmessage.php\n\nvar inherits = require('inherits')\n , JSON3 = require('json3')\n , EventEmitter = require('events').EventEmitter\n , version = require('../version')\n , urlUtils = require('../utils/url')\n , iframeUtils = require('../utils/iframe')\n , eventUtils = require('../utils/event')\n , random = require('../utils/random')\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:transport:iframe');\n}\n\nfunction IframeTransport(transport, transUrl, baseUrl) {\n if (!IframeTransport.enabled()) {\n throw new Error('Transport created when disabled');\n }\n EventEmitter.call(this);\n\n var self = this;\n this.origin = urlUtils.getOrigin(baseUrl);\n this.baseUrl = baseUrl;\n this.transUrl = transUrl;\n this.transport = transport;\n this.windowId = random.string(8);\n\n var iframeUrl = urlUtils.addPath(baseUrl, '/iframe.html') + '#' + this.windowId;\n debug(transport, transUrl, iframeUrl);\n\n this.iframeObj = iframeUtils.createIframe(iframeUrl, function(r) {\n debug('err callback');\n self.emit('close', 1006, 'Unable to load an iframe (' + r + ')');\n self.close();\n });\n\n this.onmessageCallback = this._message.bind(this);\n eventUtils.attachEvent('message', this.onmessageCallback);\n}\n\ninherits(IframeTransport, EventEmitter);\n\nIframeTransport.prototype.close = function() {\n debug('close');\n this.removeAllListeners();\n if (this.iframeObj) {\n eventUtils.detachEvent('message', this.onmessageCallback);\n try {\n // When the iframe is not loaded, IE raises an exception\n // on 'contentWindow'.\n this.postMessage('c');\n } catch (x) {\n // intentionally empty\n }\n this.iframeObj.cleanup();\n this.iframeObj = null;\n this.onmessageCallback = this.iframeObj = null;\n }\n};\n\nIframeTransport.prototype._message = function(e) {\n debug('message', e.data);\n if (!urlUtils.isOriginEqual(e.origin, this.origin)) {\n debug('not same origin', e.origin, this.origin);\n return;\n }\n\n var iframeMessage;\n try {\n iframeMessage = JSON3.parse(e.data);\n } catch (ignored) {\n debug('bad json', e.data);\n return;\n }\n\n if (iframeMessage.windowId !== this.windowId) {\n debug('mismatched window id', iframeMessage.windowId, this.windowId);\n return;\n }\n\n switch (iframeMessage.type) {\n case 's':\n this.iframeObj.loaded();\n // window global dependency\n this.postMessage('s', JSON3.stringify([\n version\n , this.transport\n , this.transUrl\n , this.baseUrl\n ]));\n break;\n case 't':\n this.emit('message', iframeMessage.data);\n break;\n case 'c':\n var cdata;\n try {\n cdata = JSON3.parse(iframeMessage.data);\n } catch (ignored) {\n debug('bad json', iframeMessage.data);\n return;\n }\n this.emit('close', cdata[0], cdata[1]);\n this.close();\n break;\n }\n};\n\nIframeTransport.prototype.postMessage = function(type, data) {\n debug('postMessage', type, data);\n this.iframeObj.post(JSON3.stringify({\n windowId: this.windowId\n , type: type\n , data: data || ''\n }), this.origin);\n};\n\nIframeTransport.prototype.send = function(message) {\n debug('send', message);\n this.postMessage('m', message);\n};\n\nIframeTransport.enabled = function() {\n return iframeUtils.iframeEnabled;\n};\n\nIframeTransport.transportName = 'iframe';\nIframeTransport.roundTrips = 2;\n\nmodule.exports = IframeTransport;\n","'use strict';\n\n// The simplest and most robust transport, using the well-know cross\n// domain hack - JSONP. This transport is quite inefficient - one\n// message could use up to one http request. But at least it works almost\n// everywhere.\n// Known limitations:\n// o you will get a spinning cursor\n// o for Konqueror a dumb timer is needed to detect errors\n\nvar inherits = require('inherits')\n , SenderReceiver = require('./lib/sender-receiver')\n , JsonpReceiver = require('./receiver/jsonp')\n , jsonpSender = require('./sender/jsonp')\n ;\n\nfunction JsonPTransport(transUrl) {\n if (!JsonPTransport.enabled()) {\n throw new Error('Transport created when disabled');\n }\n SenderReceiver.call(this, transUrl, '/jsonp', jsonpSender, JsonpReceiver);\n}\n\ninherits(JsonPTransport, SenderReceiver);\n\nJsonPTransport.enabled = function() {\n return !!global.document;\n};\n\nJsonPTransport.transportName = 'jsonp-polling';\nJsonPTransport.roundTrips = 1;\nJsonPTransport.needBody = true;\n\nmodule.exports = JsonPTransport;\n","'use strict';\n\nvar inherits = require('inherits')\n , urlUtils = require('../../utils/url')\n , SenderReceiver = require('./sender-receiver')\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:ajax-based');\n}\n\nfunction createAjaxSender(AjaxObject) {\n return function(url, payload, callback) {\n debug('create ajax sender', url, payload);\n var opt = {};\n if (typeof payload === 'string') {\n opt.headers = {'Content-type': 'text/plain'};\n }\n var ajaxUrl = urlUtils.addPath(url, '/xhr_send');\n var xo = new AjaxObject('POST', ajaxUrl, payload, opt);\n xo.once('finish', function(status) {\n debug('finish', status);\n xo = null;\n\n if (status !== 200 && status !== 204) {\n return callback(new Error('http status ' + status));\n }\n callback();\n });\n return function() {\n debug('abort');\n xo.close();\n xo = null;\n\n var err = new Error('Aborted');\n err.code = 1000;\n callback(err);\n };\n };\n}\n\nfunction AjaxBasedTransport(transUrl, urlSuffix, Receiver, AjaxObject) {\n SenderReceiver.call(this, transUrl, urlSuffix, createAjaxSender(AjaxObject), Receiver, AjaxObject);\n}\n\ninherits(AjaxBasedTransport, SenderReceiver);\n\nmodule.exports = AjaxBasedTransport;\n","'use strict';\n\nvar inherits = require('inherits')\n , EventEmitter = require('events').EventEmitter\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:buffered-sender');\n}\n\nfunction BufferedSender(url, sender) {\n debug(url);\n EventEmitter.call(this);\n this.sendBuffer = [];\n this.sender = sender;\n this.url = url;\n}\n\ninherits(BufferedSender, EventEmitter);\n\nBufferedSender.prototype.send = function(message) {\n debug('send', message);\n this.sendBuffer.push(message);\n if (!this.sendStop) {\n this.sendSchedule();\n }\n};\n\n// For polling transports in a situation when in the message callback,\n// new message is being send. If the sending connection was started\n// before receiving one, it is possible to saturate the network and\n// timeout due to the lack of receiving socket. To avoid that we delay\n// sending messages by some small time, in order to let receiving\n// connection be started beforehand. This is only a halfmeasure and\n// does not fix the big problem, but it does make the tests go more\n// stable on slow networks.\nBufferedSender.prototype.sendScheduleWait = function() {\n debug('sendScheduleWait');\n var self = this;\n var tref;\n this.sendStop = function() {\n debug('sendStop');\n self.sendStop = null;\n clearTimeout(tref);\n };\n tref = setTimeout(function() {\n debug('timeout');\n self.sendStop = null;\n self.sendSchedule();\n }, 25);\n};\n\nBufferedSender.prototype.sendSchedule = function() {\n debug('sendSchedule', this.sendBuffer.length);\n var self = this;\n if (this.sendBuffer.length > 0) {\n var payload = '[' + this.sendBuffer.join(',') + ']';\n this.sendStop = this.sender(this.url, payload, function(err) {\n self.sendStop = null;\n if (err) {\n debug('error', err);\n self.emit('close', err.code || 1006, 'Sending error: ' + err);\n self.close();\n } else {\n self.sendScheduleWait();\n }\n });\n this.sendBuffer = [];\n }\n};\n\nBufferedSender.prototype._cleanup = function() {\n debug('_cleanup');\n this.removeAllListeners();\n};\n\nBufferedSender.prototype.close = function() {\n debug('close');\n this._cleanup();\n if (this.sendStop) {\n this.sendStop();\n this.sendStop = null;\n }\n};\n\nmodule.exports = BufferedSender;\n","'use strict';\n\nvar inherits = require('inherits')\n , IframeTransport = require('../iframe')\n , objectUtils = require('../../utils/object')\n ;\n\nmodule.exports = function(transport) {\n\n function IframeWrapTransport(transUrl, baseUrl) {\n IframeTransport.call(this, transport.transportName, transUrl, baseUrl);\n }\n\n inherits(IframeWrapTransport, IframeTransport);\n\n IframeWrapTransport.enabled = function(url, info) {\n if (!global.document) {\n return false;\n }\n\n var iframeInfo = objectUtils.extend({}, info);\n iframeInfo.sameOrigin = true;\n return transport.enabled(iframeInfo) && IframeTransport.enabled();\n };\n\n IframeWrapTransport.transportName = 'iframe-' + transport.transportName;\n IframeWrapTransport.needBody = true;\n IframeWrapTransport.roundTrips = IframeTransport.roundTrips + transport.roundTrips - 1; // html, javascript (2) + transport - no CORS (1)\n\n IframeWrapTransport.facadeTransport = transport;\n\n return IframeWrapTransport;\n};\n","'use strict';\n\nvar inherits = require('inherits')\n , EventEmitter = require('events').EventEmitter\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:polling');\n}\n\nfunction Polling(Receiver, receiveUrl, AjaxObject) {\n debug(receiveUrl);\n EventEmitter.call(this);\n this.Receiver = Receiver;\n this.receiveUrl = receiveUrl;\n this.AjaxObject = AjaxObject;\n this._scheduleReceiver();\n}\n\ninherits(Polling, EventEmitter);\n\nPolling.prototype._scheduleReceiver = function() {\n debug('_scheduleReceiver');\n var self = this;\n var poll = this.poll = new this.Receiver(this.receiveUrl, this.AjaxObject);\n\n poll.on('message', function(msg) {\n debug('message', msg);\n self.emit('message', msg);\n });\n\n poll.once('close', function(code, reason) {\n debug('close', code, reason, self.pollIsClosing);\n self.poll = poll = null;\n\n if (!self.pollIsClosing) {\n if (reason === 'network') {\n self._scheduleReceiver();\n } else {\n self.emit('close', code || 1006, reason);\n self.removeAllListeners();\n }\n }\n });\n};\n\nPolling.prototype.abort = function() {\n debug('abort');\n this.removeAllListeners();\n this.pollIsClosing = true;\n if (this.poll) {\n this.poll.abort();\n }\n};\n\nmodule.exports = Polling;\n","'use strict';\n\nvar inherits = require('inherits')\n , urlUtils = require('../../utils/url')\n , BufferedSender = require('./buffered-sender')\n , Polling = require('./polling')\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:sender-receiver');\n}\n\nfunction SenderReceiver(transUrl, urlSuffix, senderFunc, Receiver, AjaxObject) {\n var pollUrl = urlUtils.addPath(transUrl, urlSuffix);\n debug(pollUrl);\n var self = this;\n BufferedSender.call(this, transUrl, senderFunc);\n\n this.poll = new Polling(Receiver, pollUrl, AjaxObject);\n this.poll.on('message', function(msg) {\n debug('poll message', msg);\n self.emit('message', msg);\n });\n this.poll.once('close', function(code, reason) {\n debug('poll close', code, reason);\n self.poll = null;\n self.emit('close', code, reason);\n self.close();\n });\n}\n\ninherits(SenderReceiver, BufferedSender);\n\nSenderReceiver.prototype.close = function() {\n BufferedSender.prototype.close.call(this);\n debug('close');\n this.removeAllListeners();\n if (this.poll) {\n this.poll.abort();\n this.poll = null;\n }\n};\n\nmodule.exports = SenderReceiver;\n","'use strict';\n\nvar inherits = require('inherits')\n , EventEmitter = require('events').EventEmitter\n , EventSourceDriver = require('eventsource')\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:receiver:eventsource');\n}\n\nfunction EventSourceReceiver(url) {\n debug(url);\n EventEmitter.call(this);\n\n var self = this;\n var es = this.es = new EventSourceDriver(url);\n es.onmessage = function(e) {\n debug('message', e.data);\n self.emit('message', decodeURI(e.data));\n };\n es.onerror = function(e) {\n debug('error', es.readyState, e);\n // ES on reconnection has readyState = 0 or 1.\n // on network error it's CLOSED = 2\n var reason = (es.readyState !== 2 ? 'network' : 'permanent');\n self._cleanup();\n self._close(reason);\n };\n}\n\ninherits(EventSourceReceiver, EventEmitter);\n\nEventSourceReceiver.prototype.abort = function() {\n debug('abort');\n this._cleanup();\n this._close('user');\n};\n\nEventSourceReceiver.prototype._cleanup = function() {\n debug('cleanup');\n var es = this.es;\n if (es) {\n es.onmessage = es.onerror = null;\n es.close();\n this.es = null;\n }\n};\n\nEventSourceReceiver.prototype._close = function(reason) {\n debug('close', reason);\n var self = this;\n // Safari and chrome < 15 crash if we close window before\n // waiting for ES cleanup. See:\n // https://code.google.com/p/chromium/issues/detail?id=89155\n setTimeout(function() {\n self.emit('close', null, reason);\n self.removeAllListeners();\n }, 200);\n};\n\nmodule.exports = EventSourceReceiver;\n","'use strict';\n\nvar inherits = require('inherits')\n , iframeUtils = require('../../utils/iframe')\n , urlUtils = require('../../utils/url')\n , EventEmitter = require('events').EventEmitter\n , random = require('../../utils/random')\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:receiver:htmlfile');\n}\n\nfunction HtmlfileReceiver(url) {\n debug(url);\n EventEmitter.call(this);\n var self = this;\n iframeUtils.polluteGlobalNamespace();\n\n this.id = 'a' + random.string(6);\n url = urlUtils.addQuery(url, 'c=' + decodeURIComponent(iframeUtils.WPrefix + '.' + this.id));\n\n debug('using htmlfile', HtmlfileReceiver.htmlfileEnabled);\n var constructFunc = HtmlfileReceiver.htmlfileEnabled ?\n iframeUtils.createHtmlfile : iframeUtils.createIframe;\n\n global[iframeUtils.WPrefix][this.id] = {\n start: function() {\n debug('start');\n self.iframeObj.loaded();\n }\n , message: function(data) {\n debug('message', data);\n self.emit('message', data);\n }\n , stop: function() {\n debug('stop');\n self._cleanup();\n self._close('network');\n }\n };\n this.iframeObj = constructFunc(url, function() {\n debug('callback');\n self._cleanup();\n self._close('permanent');\n });\n}\n\ninherits(HtmlfileReceiver, EventEmitter);\n\nHtmlfileReceiver.prototype.abort = function() {\n debug('abort');\n this._cleanup();\n this._close('user');\n};\n\nHtmlfileReceiver.prototype._cleanup = function() {\n debug('_cleanup');\n if (this.iframeObj) {\n this.iframeObj.cleanup();\n this.iframeObj = null;\n }\n delete global[iframeUtils.WPrefix][this.id];\n};\n\nHtmlfileReceiver.prototype._close = function(reason) {\n debug('_close', reason);\n this.emit('close', null, reason);\n this.removeAllListeners();\n};\n\nHtmlfileReceiver.htmlfileEnabled = false;\n\n// obfuscate to avoid firewalls\nvar axo = ['Active'].concat('Object').join('X');\nif (axo in global) {\n try {\n HtmlfileReceiver.htmlfileEnabled = !!new global[axo]('htmlfile');\n } catch (x) {\n // intentionally empty\n }\n}\n\nHtmlfileReceiver.enabled = HtmlfileReceiver.htmlfileEnabled || iframeUtils.iframeEnabled;\n\nmodule.exports = HtmlfileReceiver;\n","'use strict';\n\nvar utils = require('../../utils/iframe')\n , random = require('../../utils/random')\n , browser = require('../../utils/browser')\n , urlUtils = require('../../utils/url')\n , inherits = require('inherits')\n , EventEmitter = require('events').EventEmitter\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:receiver:jsonp');\n}\n\nfunction JsonpReceiver(url) {\n debug(url);\n var self = this;\n EventEmitter.call(this);\n\n utils.polluteGlobalNamespace();\n\n this.id = 'a' + random.string(6);\n var urlWithId = urlUtils.addQuery(url, 'c=' + encodeURIComponent(utils.WPrefix + '.' + this.id));\n\n global[utils.WPrefix][this.id] = this._callback.bind(this);\n this._createScript(urlWithId);\n\n // Fallback mostly for Konqueror - stupid timer, 35 seconds shall be plenty.\n this.timeoutId = setTimeout(function() {\n debug('timeout');\n self._abort(new Error('JSONP script loaded abnormally (timeout)'));\n }, JsonpReceiver.timeout);\n}\n\ninherits(JsonpReceiver, EventEmitter);\n\nJsonpReceiver.prototype.abort = function() {\n debug('abort');\n if (global[utils.WPrefix][this.id]) {\n var err = new Error('JSONP user aborted read');\n err.code = 1000;\n this._abort(err);\n }\n};\n\nJsonpReceiver.timeout = 35000;\nJsonpReceiver.scriptErrorTimeout = 1000;\n\nJsonpReceiver.prototype._callback = function(data) {\n debug('_callback', data);\n this._cleanup();\n\n if (this.aborting) {\n return;\n }\n\n if (data) {\n debug('message', data);\n this.emit('message', data);\n }\n this.emit('close', null, 'network');\n this.removeAllListeners();\n};\n\nJsonpReceiver.prototype._abort = function(err) {\n debug('_abort', err);\n this._cleanup();\n this.aborting = true;\n this.emit('close', err.code, err.message);\n this.removeAllListeners();\n};\n\nJsonpReceiver.prototype._cleanup = function() {\n debug('_cleanup');\n clearTimeout(this.timeoutId);\n if (this.script2) {\n this.script2.parentNode.removeChild(this.script2);\n this.script2 = null;\n }\n if (this.script) {\n var script = this.script;\n // Unfortunately, you can't really abort script loading of\n // the script.\n script.parentNode.removeChild(script);\n script.onreadystatechange = script.onerror =\n script.onload = script.onclick = null;\n this.script = null;\n }\n delete global[utils.WPrefix][this.id];\n};\n\nJsonpReceiver.prototype._scriptError = function() {\n debug('_scriptError');\n var self = this;\n if (this.errorTimer) {\n return;\n }\n\n this.errorTimer = setTimeout(function() {\n if (!self.loadedOkay) {\n self._abort(new Error('JSONP script loaded abnormally (onerror)'));\n }\n }, JsonpReceiver.scriptErrorTimeout);\n};\n\nJsonpReceiver.prototype._createScript = function(url) {\n debug('_createScript', url);\n var self = this;\n var script = this.script = global.document.createElement('script');\n var script2; // Opera synchronous load trick.\n\n script.id = 'a' + random.string(8);\n script.src = url;\n script.type = 'text/javascript';\n script.charset = 'UTF-8';\n script.onerror = this._scriptError.bind(this);\n script.onload = function() {\n debug('onload');\n self._abort(new Error('JSONP script loaded abnormally (onload)'));\n };\n\n // IE9 fires 'error' event after onreadystatechange or before, in random order.\n // Use loadedOkay to determine if actually errored\n script.onreadystatechange = function() {\n debug('onreadystatechange', script.readyState);\n if (/loaded|closed/.test(script.readyState)) {\n if (script && script.htmlFor && script.onclick) {\n self.loadedOkay = true;\n try {\n // In IE, actually execute the script.\n script.onclick();\n } catch (x) {\n // intentionally empty\n }\n }\n if (script) {\n self._abort(new Error('JSONP script loaded abnormally (onreadystatechange)'));\n }\n }\n };\n // IE: event/htmlFor/onclick trick.\n // One can't rely on proper order for onreadystatechange. In order to\n // make sure, set a 'htmlFor' and 'event' properties, so that\n // script code will be installed as 'onclick' handler for the\n // script object. Later, onreadystatechange, manually execute this\n // code. FF and Chrome doesn't work with 'event' and 'htmlFor'\n // set. For reference see:\n // http://jaubourg.net/2010/07/loading-script-as-onclick-handler-of.html\n // Also, read on that about script ordering:\n // http://wiki.whatwg.org/wiki/Dynamic_Script_Execution_Order\n if (typeof script.async === 'undefined' && global.document.attachEvent) {\n // According to mozilla docs, in recent browsers script.async defaults\n // to 'true', so we may use it to detect a good browser:\n // https://developer.mozilla.org/en/HTML/Element/script\n if (!browser.isOpera()) {\n // Naively assume we're in IE\n try {\n script.htmlFor = script.id;\n script.event = 'onclick';\n } catch (x) {\n // intentionally empty\n }\n script.async = true;\n } else {\n // Opera, second sync script hack\n script2 = this.script2 = global.document.createElement('script');\n script2.text = \"try{var a = document.getElementById('\" + script.id + \"'); if(a)a.onerror();}catch(x){};\";\n script.async = script2.async = false;\n }\n }\n if (typeof script.async !== 'undefined') {\n script.async = true;\n }\n\n var head = global.document.getElementsByTagName('head')[0];\n head.insertBefore(script, head.firstChild);\n if (script2) {\n head.insertBefore(script2, head.firstChild);\n }\n};\n\nmodule.exports = JsonpReceiver;\n","'use strict';\n\nvar inherits = require('inherits')\n , EventEmitter = require('events').EventEmitter\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:receiver:xhr');\n}\n\nfunction XhrReceiver(url, AjaxObject) {\n debug(url);\n EventEmitter.call(this);\n var self = this;\n\n this.bufferPosition = 0;\n\n this.xo = new AjaxObject('POST', url, null);\n this.xo.on('chunk', this._chunkHandler.bind(this));\n this.xo.once('finish', function(status, text) {\n debug('finish', status, text);\n self._chunkHandler(status, text);\n self.xo = null;\n var reason = status === 200 ? 'network' : 'permanent';\n debug('close', reason);\n self.emit('close', null, reason);\n self._cleanup();\n });\n}\n\ninherits(XhrReceiver, EventEmitter);\n\nXhrReceiver.prototype._chunkHandler = function(status, text) {\n debug('_chunkHandler', status);\n if (status !== 200 || !text) {\n return;\n }\n\n for (var idx = -1; ; this.bufferPosition += idx + 1) {\n var buf = text.slice(this.bufferPosition);\n idx = buf.indexOf('\\n');\n if (idx === -1) {\n break;\n }\n var msg = buf.slice(0, idx);\n if (msg) {\n debug('message', msg);\n this.emit('message', msg);\n }\n }\n};\n\nXhrReceiver.prototype._cleanup = function() {\n debug('_cleanup');\n this.removeAllListeners();\n};\n\nXhrReceiver.prototype.abort = function() {\n debug('abort');\n if (this.xo) {\n this.xo.close();\n debug('close');\n this.emit('close', null, 'user');\n this.xo = null;\n }\n this._cleanup();\n};\n\nmodule.exports = XhrReceiver;\n","'use strict';\n\nvar random = require('../../utils/random')\n , urlUtils = require('../../utils/url')\n ;\n\nvar debug = function() {};\nif (\"production\" !== 'production') {\n debug = require('debug')('sockjs-client:sender:jsonp');\n}\n\nvar form, area;\n\nfunction createIframe(id) {\n debug('createIframe', id);\n try {\n // ie6 dynamic iframes with target=\"\" support (thanks Chris Lambacher)\n return global.document.createElement('