socket.io-rails 1.3.6 → 1.3.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3f22957093aa6bf4ba2da2b2c78c49e05a57747b
4
- data.tar.gz: a4e5f60b340825b517b75d6b9c63bd271c992f39
3
+ metadata.gz: f6496ec223a7bdf29259c61f6ce1d2b234b5fec6
4
+ data.tar.gz: 06099bd6582d8061c2360cf4f1054fe7b914025a
5
5
  SHA512:
6
- metadata.gz: ed67cfe4990fbe27559dc12393a954088948e92bcadeebd3492b5a7f2127e86b4895e85bd9f9adcbef49eea16812afd292f5c6fd9da16954d17137971b888441
7
- data.tar.gz: fc5c58d5fee3a176203924957e990077a4da0707df768c88f255bca7b3a3a59e87bfd65f54028a38e6aa2015c8b492b3c959bedb89bb9384c5085c66adb0c957
6
+ metadata.gz: 68abdebf1c1b0ac5aa9dedb5fef28de98cce5f285d534a7b8f6fc50cf7fa736cbbc3bf9941ec3803d1aa3355570a269c4f98a5c7afc716147ea9a1784bd0eab2
7
+ data.tar.gz: 8fad63659d3f61a19fd6edd1f3ad6be29d3587526b73e350a1c588dbb3aac5397d5a0bae76ef86d55c66f97e635eca233ba5e870c6a0e397732e087bdc87c9f1
@@ -1,5 +1,5 @@
1
1
  module Socketio
2
2
  module Rails
3
- VERSION = "1.3.6"
3
+ VERSION = "1.3.7"
4
4
  end
5
5
  end
@@ -91,7 +91,7 @@ exports.connect = lookup;
91
91
  exports.Manager = _dereq_('./manager');
92
92
  exports.Socket = _dereq_('./socket');
93
93
 
94
- },{"./manager":3,"./socket":5,"./url":6,"debug":10,"socket.io-parser":46}],3:[function(_dereq_,module,exports){
94
+ },{"./manager":3,"./socket":5,"./url":6,"debug":10,"socket.io-parser":44}],3:[function(_dereq_,module,exports){
95
95
 
96
96
  /**
97
97
  * Module dependencies.
@@ -596,7 +596,7 @@ Manager.prototype.onreconnect = function(){
596
596
  this.emitAll('reconnect', attempt);
597
597
  };
598
598
 
599
- },{"./on":4,"./socket":5,"./url":6,"backo2":7,"component-bind":8,"component-emitter":9,"debug":10,"engine.io-client":11,"indexof":42,"object-component":43,"socket.io-parser":46}],4:[function(_dereq_,module,exports){
599
+ },{"./on":4,"./socket":5,"./url":6,"backo2":7,"component-bind":8,"component-emitter":9,"debug":10,"engine.io-client":11,"indexof":40,"object-component":41,"socket.io-parser":44}],4:[function(_dereq_,module,exports){
600
600
 
601
601
  /**
602
602
  * Module exports.
@@ -1009,7 +1009,7 @@ Socket.prototype.disconnect = function(){
1009
1009
  return this;
1010
1010
  };
1011
1011
 
1012
- },{"./on":4,"component-bind":8,"component-emitter":9,"debug":10,"has-binary":38,"socket.io-parser":46,"to-array":50}],6:[function(_dereq_,module,exports){
1012
+ },{"./on":4,"component-bind":8,"component-emitter":9,"debug":10,"has-binary":36,"socket.io-parser":44,"to-array":48}],6:[function(_dereq_,module,exports){
1013
1013
  (function (global){
1014
1014
 
1015
1015
  /**
@@ -1086,7 +1086,7 @@ function url(uri, loc){
1086
1086
  }
1087
1087
 
1088
1088
  }).call(this,typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
1089
- },{"debug":10,"parseuri":44}],7:[function(_dereq_,module,exports){
1089
+ },{"debug":10,"parseuri":42}],7:[function(_dereq_,module,exports){
1090
1090
 
1091
1091
  /**
1092
1092
  * Expose `Backoff`.
@@ -2228,7 +2228,7 @@ Socket.prototype.filterUpgrades = function (upgrades) {
2228
2228
  };
2229
2229
 
2230
2230
  }).call(this,typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
2231
- },{"./transport":14,"./transports":15,"component-emitter":9,"debug":22,"engine.io-parser":25,"indexof":42,"parsejson":34,"parseqs":35,"parseuri":36}],14:[function(_dereq_,module,exports){
2231
+ },{"./transport":14,"./transports":15,"component-emitter":9,"debug":22,"engine.io-parser":25,"indexof":40,"parsejson":32,"parseqs":33,"parseuri":34}],14:[function(_dereq_,module,exports){
2232
2232
  /**
2233
2233
  * Module dependencies.
2234
2234
  */
@@ -2586,7 +2586,7 @@ JSONPPolling.prototype.doPoll = function () {
2586
2586
  this.script = script;
2587
2587
 
2588
2588
  var isUAgecko = 'undefined' != typeof navigator && /gecko/i.test(navigator.userAgent);
2589
-
2589
+
2590
2590
  if (isUAgecko) {
2591
2591
  setTimeout(function () {
2592
2592
  var iframe = document.createElement('iframe');
@@ -3318,7 +3318,7 @@ Polling.prototype.uri = function(){
3318
3318
  return schema + '://' + this.hostname + port + this.path + query;
3319
3319
  };
3320
3320
 
3321
- },{"../transport":14,"component-inherit":21,"debug":22,"engine.io-parser":25,"parseqs":35,"xmlhttprequest":20}],19:[function(_dereq_,module,exports){
3321
+ },{"../transport":14,"component-inherit":21,"debug":22,"engine.io-parser":25,"parseqs":33,"xmlhttprequest":20}],19:[function(_dereq_,module,exports){
3322
3322
  /**
3323
3323
  * Module dependencies.
3324
3324
  */
@@ -3558,7 +3558,7 @@ WS.prototype.check = function(){
3558
3558
  return !!WebSocket && !('__initialize' in WebSocket && this.name === WS.prototype.name);
3559
3559
  };
3560
3560
 
3561
- },{"../transport":14,"component-inherit":21,"debug":22,"engine.io-parser":25,"parseqs":35,"ws":37}],20:[function(_dereq_,module,exports){
3561
+ },{"../transport":14,"component-inherit":21,"debug":22,"engine.io-parser":25,"parseqs":33,"ws":35}],20:[function(_dereq_,module,exports){
3562
3562
  // browser shim for xmlhttprequest module
3563
3563
  var hasCORS = _dereq_('has-cors');
3564
3564
 
@@ -3596,7 +3596,7 @@ module.exports = function(opts) {
3596
3596
  }
3597
3597
  }
3598
3598
 
3599
- },{"has-cors":40}],21:[function(_dereq_,module,exports){
3599
+ },{"has-cors":38}],21:[function(_dereq_,module,exports){
3600
3600
 
3601
3601
  module.exports = function(a, b){
3602
3602
  var fn = function(){};
@@ -3687,7 +3687,7 @@ function formatArgs() {
3687
3687
  var index = 0;
3688
3688
  var lastC = 0;
3689
3689
  args[0].replace(/%[a-z%]/g, function(match) {
3690
- if ('%' === match) return;
3690
+ if ('%%' === match) return;
3691
3691
  index++;
3692
3692
  if ('%c' === match) {
3693
3693
  // we only are interested in the *last* %c
@@ -3852,7 +3852,7 @@ function debug(namespace) {
3852
3852
  var index = 0;
3853
3853
  args[0] = args[0].replace(/%([a-z%])/g, function(match, format) {
3854
3854
  // if we encounter an escaped % then don't increase the array index
3855
- if (match === '%') return match;
3855
+ if (match === '%%') return match;
3856
3856
  index++;
3857
3857
  var formatter = exports.formatters[format];
3858
3858
  if ('function' === typeof formatter) {
@@ -4663,7 +4663,7 @@ exports.decodePayloadAsBinary = function (data, binaryType, callback) {
4663
4663
  };
4664
4664
 
4665
4665
  }).call(this,typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
4666
- },{"./keys":26,"after":27,"arraybuffer.slice":28,"base64-arraybuffer":29,"blob":30,"has-binary":31,"utf8":33}],26:[function(_dereq_,module,exports){
4666
+ },{"./keys":26,"after":27,"arraybuffer.slice":28,"base64-arraybuffer":29,"blob":30,"has-binary":36,"utf8":31}],26:[function(_dereq_,module,exports){
4667
4667
 
4668
4668
  /**
4669
4669
  * Gets the keys for an object.
@@ -4823,8 +4823,22 @@ var BlobBuilder = global.BlobBuilder
4823
4823
 
4824
4824
  var blobSupported = (function() {
4825
4825
  try {
4826
- var b = new Blob(['hi']);
4827
- return b.size == 2;
4826
+ var a = new Blob(['hi']);
4827
+ return a.size === 2;
4828
+ } catch(e) {
4829
+ return false;
4830
+ }
4831
+ })();
4832
+
4833
+ /**
4834
+ * Check if Blob constructor supports ArrayBufferViews
4835
+ * Fails in Safari 6, so we need to map to ArrayBuffers there.
4836
+ */
4837
+
4838
+ var blobSupportsArrayBufferView = blobSupported && (function() {
4839
+ try {
4840
+ var b = new Blob([new Uint8Array([1,2])]);
4841
+ return b.size === 2;
4828
4842
  } catch(e) {
4829
4843
  return false;
4830
4844
  }
@@ -4838,19 +4852,52 @@ var blobBuilderSupported = BlobBuilder
4838
4852
  && BlobBuilder.prototype.append
4839
4853
  && BlobBuilder.prototype.getBlob;
4840
4854
 
4855
+ /**
4856
+ * Helper function that maps ArrayBufferViews to ArrayBuffers
4857
+ * Used by BlobBuilder constructor and old browsers that didn't
4858
+ * support it in the Blob constructor.
4859
+ */
4860
+
4861
+ function mapArrayBufferViews(ary) {
4862
+ for (var i = 0; i < ary.length; i++) {
4863
+ var chunk = ary[i];
4864
+ if (chunk.buffer instanceof ArrayBuffer) {
4865
+ var buf = chunk.buffer;
4866
+
4867
+ // if this is a subarray, make a copy so we only
4868
+ // include the subarray region from the underlying buffer
4869
+ if (chunk.byteLength !== buf.byteLength) {
4870
+ var copy = new Uint8Array(chunk.byteLength);
4871
+ copy.set(new Uint8Array(buf, chunk.byteOffset, chunk.byteLength));
4872
+ buf = copy.buffer;
4873
+ }
4874
+
4875
+ ary[i] = buf;
4876
+ }
4877
+ }
4878
+ }
4879
+
4841
4880
  function BlobBuilderConstructor(ary, options) {
4842
4881
  options = options || {};
4843
4882
 
4844
4883
  var bb = new BlobBuilder();
4884
+ mapArrayBufferViews(ary);
4885
+
4845
4886
  for (var i = 0; i < ary.length; i++) {
4846
4887
  bb.append(ary[i]);
4847
4888
  }
4889
+
4848
4890
  return (options.type) ? bb.getBlob(options.type) : bb.getBlob();
4849
4891
  };
4850
4892
 
4893
+ function BlobConstructor(ary, options) {
4894
+ mapArrayBufferViews(ary);
4895
+ return new Blob(ary, options || {});
4896
+ };
4897
+
4851
4898
  module.exports = (function() {
4852
4899
  if (blobSupported) {
4853
- return global.Blob;
4900
+ return blobSupportsArrayBufferView ? global.Blob : BlobConstructor;
4854
4901
  } else if (blobBuilderSupported) {
4855
4902
  return BlobBuilderConstructor;
4856
4903
  } else {
@@ -4861,315 +4908,253 @@ module.exports = (function() {
4861
4908
  }).call(this,typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
4862
4909
  },{}],31:[function(_dereq_,module,exports){
4863
4910
  (function (global){
4864
-
4865
- /*
4866
- * Module requirements.
4867
- */
4868
-
4869
- var isArray = _dereq_('isarray');
4870
-
4871
- /**
4872
- * Module exports.
4873
- */
4874
-
4875
- module.exports = hasBinary;
4876
-
4877
- /**
4878
- * Checks for binary data.
4879
- *
4880
- * Right now only Buffer and ArrayBuffer are supported..
4881
- *
4882
- * @param {Object} anything
4883
- * @api public
4884
- */
4885
-
4886
- function hasBinary(data) {
4887
-
4888
- function _hasBinary(obj) {
4889
- if (!obj) return false;
4890
-
4891
- if ( (global.Buffer && global.Buffer.isBuffer(obj)) ||
4892
- (global.ArrayBuffer && obj instanceof ArrayBuffer) ||
4893
- (global.Blob && obj instanceof Blob) ||
4894
- (global.File && obj instanceof File)
4895
- ) {
4896
- return true;
4897
- }
4898
-
4899
- if (isArray(obj)) {
4900
- for (var i = 0; i < obj.length; i++) {
4901
- if (_hasBinary(obj[i])) {
4902
- return true;
4903
- }
4904
- }
4905
- } else if (obj && 'object' == typeof obj) {
4906
- if (obj.toJSON) {
4907
- obj = obj.toJSON();
4908
- }
4909
-
4910
- for (var key in obj) {
4911
- if (obj.hasOwnProperty(key) && _hasBinary(obj[key])) {
4912
- return true;
4913
- }
4914
- }
4915
- }
4916
-
4917
- return false;
4918
- }
4919
-
4920
- return _hasBinary(data);
4921
- }
4922
-
4923
- }).call(this,typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
4924
- },{"isarray":32}],32:[function(_dereq_,module,exports){
4925
- module.exports = Array.isArray || function (arr) {
4926
- return Object.prototype.toString.call(arr) == '[object Array]';
4927
- };
4928
-
4929
- },{}],33:[function(_dereq_,module,exports){
4930
- (function (global){
4931
- /*! http://mths.be/utf8js v2.0.0 by @mathias */
4911
+ /*! https://mths.be/utf8js v2.0.0 by @mathias */
4932
4912
  ;(function(root) {
4933
4913
 
4934
- // Detect free variables `exports`
4935
- var freeExports = typeof exports == 'object' && exports;
4936
-
4937
- // Detect free variable `module`
4938
- var freeModule = typeof module == 'object' && module &&
4939
- module.exports == freeExports && module;
4940
-
4941
- // Detect free variable `global`, from Node.js or Browserified code,
4942
- // and use it as `root`
4943
- var freeGlobal = typeof global == 'object' && global;
4944
- if (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal) {
4945
- root = freeGlobal;
4946
- }
4947
-
4948
- /*--------------------------------------------------------------------------*/
4949
-
4950
- var stringFromCharCode = String.fromCharCode;
4951
-
4952
- // Taken from http://mths.be/punycode
4953
- function ucs2decode(string) {
4954
- var output = [];
4955
- var counter = 0;
4956
- var length = string.length;
4957
- var value;
4958
- var extra;
4959
- while (counter < length) {
4960
- value = string.charCodeAt(counter++);
4961
- if (value >= 0xD800 && value <= 0xDBFF && counter < length) {
4962
- // high surrogate, and there is a next character
4963
- extra = string.charCodeAt(counter++);
4964
- if ((extra & 0xFC00) == 0xDC00) { // low surrogate
4965
- output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);
4966
- } else {
4967
- // unmatched surrogate; only append this code unit, in case the next
4968
- // code unit is the high surrogate of a surrogate pair
4969
- output.push(value);
4970
- counter--;
4971
- }
4972
- } else {
4973
- output.push(value);
4974
- }
4975
- }
4976
- return output;
4977
- }
4978
-
4979
- // Taken from http://mths.be/punycode
4980
- function ucs2encode(array) {
4981
- var length = array.length;
4982
- var index = -1;
4983
- var value;
4984
- var output = '';
4985
- while (++index < length) {
4986
- value = array[index];
4987
- if (value > 0xFFFF) {
4988
- value -= 0x10000;
4989
- output += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800);
4990
- value = 0xDC00 | value & 0x3FF;
4991
- }
4992
- output += stringFromCharCode(value);
4993
- }
4994
- return output;
4995
- }
4996
-
4997
- /*--------------------------------------------------------------------------*/
4998
-
4999
- function createByte(codePoint, shift) {
5000
- return stringFromCharCode(((codePoint >> shift) & 0x3F) | 0x80);
5001
- }
5002
-
5003
- function encodeCodePoint(codePoint) {
5004
- if ((codePoint & 0xFFFFFF80) == 0) { // 1-byte sequence
5005
- return stringFromCharCode(codePoint);
5006
- }
5007
- var symbol = '';
5008
- if ((codePoint & 0xFFFFF800) == 0) { // 2-byte sequence
5009
- symbol = stringFromCharCode(((codePoint >> 6) & 0x1F) | 0xC0);
5010
- }
5011
- else if ((codePoint & 0xFFFF0000) == 0) { // 3-byte sequence
5012
- symbol = stringFromCharCode(((codePoint >> 12) & 0x0F) | 0xE0);
5013
- symbol += createByte(codePoint, 6);
5014
- }
5015
- else if ((codePoint & 0xFFE00000) == 0) { // 4-byte sequence
5016
- symbol = stringFromCharCode(((codePoint >> 18) & 0x07) | 0xF0);
5017
- symbol += createByte(codePoint, 12);
5018
- symbol += createByte(codePoint, 6);
5019
- }
5020
- symbol += stringFromCharCode((codePoint & 0x3F) | 0x80);
5021
- return symbol;
5022
- }
5023
-
5024
- function utf8encode(string) {
5025
- var codePoints = ucs2decode(string);
5026
-
5027
- // console.log(JSON.stringify(codePoints.map(function(x) {
5028
- // return 'U+' + x.toString(16).toUpperCase();
5029
- // })));
5030
-
5031
- var length = codePoints.length;
5032
- var index = -1;
5033
- var codePoint;
5034
- var byteString = '';
5035
- while (++index < length) {
5036
- codePoint = codePoints[index];
5037
- byteString += encodeCodePoint(codePoint);
5038
- }
5039
- return byteString;
5040
- }
5041
-
5042
- /*--------------------------------------------------------------------------*/
5043
-
5044
- function readContinuationByte() {
5045
- if (byteIndex >= byteCount) {
5046
- throw Error('Invalid byte index');
5047
- }
5048
-
5049
- var continuationByte = byteArray[byteIndex] & 0xFF;
5050
- byteIndex++;
5051
-
5052
- if ((continuationByte & 0xC0) == 0x80) {
5053
- return continuationByte & 0x3F;
5054
- }
5055
-
5056
- // If we end up here, it’s not a continuation byte
5057
- throw Error('Invalid continuation byte');
5058
- }
5059
-
5060
- function decodeSymbol() {
5061
- var byte1;
5062
- var byte2;
5063
- var byte3;
5064
- var byte4;
5065
- var codePoint;
5066
-
5067
- if (byteIndex > byteCount) {
5068
- throw Error('Invalid byte index');
5069
- }
5070
-
5071
- if (byteIndex == byteCount) {
5072
- return false;
5073
- }
5074
-
5075
- // Read first byte
5076
- byte1 = byteArray[byteIndex] & 0xFF;
5077
- byteIndex++;
5078
-
5079
- // 1-byte sequence (no continuation bytes)
5080
- if ((byte1 & 0x80) == 0) {
5081
- return byte1;
5082
- }
5083
-
5084
- // 2-byte sequence
5085
- if ((byte1 & 0xE0) == 0xC0) {
5086
- var byte2 = readContinuationByte();
5087
- codePoint = ((byte1 & 0x1F) << 6) | byte2;
5088
- if (codePoint >= 0x80) {
5089
- return codePoint;
5090
- } else {
5091
- throw Error('Invalid continuation byte');
5092
- }
5093
- }
5094
-
5095
- // 3-byte sequence (may include unpaired surrogates)
5096
- if ((byte1 & 0xF0) == 0xE0) {
5097
- byte2 = readContinuationByte();
5098
- byte3 = readContinuationByte();
5099
- codePoint = ((byte1 & 0x0F) << 12) | (byte2 << 6) | byte3;
5100
- if (codePoint >= 0x0800) {
5101
- return codePoint;
5102
- } else {
5103
- throw Error('Invalid continuation byte');
5104
- }
5105
- }
5106
-
5107
- // 4-byte sequence
5108
- if ((byte1 & 0xF8) == 0xF0) {
5109
- byte2 = readContinuationByte();
5110
- byte3 = readContinuationByte();
5111
- byte4 = readContinuationByte();
5112
- codePoint = ((byte1 & 0x0F) << 0x12) | (byte2 << 0x0C) |
5113
- (byte3 << 0x06) | byte4;
5114
- if (codePoint >= 0x010000 && codePoint <= 0x10FFFF) {
5115
- return codePoint;
5116
- }
5117
- }
5118
-
5119
- throw Error('Invalid UTF-8 detected');
5120
- }
5121
-
5122
- var byteArray;
5123
- var byteCount;
5124
- var byteIndex;
5125
- function utf8decode(byteString) {
5126
- byteArray = ucs2decode(byteString);
5127
- byteCount = byteArray.length;
5128
- byteIndex = 0;
5129
- var codePoints = [];
5130
- var tmp;
5131
- while ((tmp = decodeSymbol()) !== false) {
5132
- codePoints.push(tmp);
5133
- }
5134
- return ucs2encode(codePoints);
5135
- }
5136
-
5137
- /*--------------------------------------------------------------------------*/
5138
-
5139
- var utf8 = {
5140
- 'version': '2.0.0',
5141
- 'encode': utf8encode,
5142
- 'decode': utf8decode
5143
- };
5144
-
5145
- // Some AMD build optimizers, like r.js, check for specific condition patterns
5146
- // like the following:
5147
- if (
5148
- typeof define == 'function' &&
5149
- typeof define.amd == 'object' &&
5150
- define.amd
5151
- ) {
5152
- define(function() {
5153
- return utf8;
5154
- });
5155
- } else if (freeExports && !freeExports.nodeType) {
5156
- if (freeModule) { // in Node.js or RingoJS v0.8.0+
5157
- freeModule.exports = utf8;
5158
- } else { // in Narwhal or RingoJS v0.7.0-
5159
- var object = {};
5160
- var hasOwnProperty = object.hasOwnProperty;
5161
- for (var key in utf8) {
5162
- hasOwnProperty.call(utf8, key) && (freeExports[key] = utf8[key]);
5163
- }
5164
- }
5165
- } else { // in Rhino or a web browser
5166
- root.utf8 = utf8;
5167
- }
4914
+ // Detect free variables `exports`
4915
+ var freeExports = typeof exports == 'object' && exports;
4916
+
4917
+ // Detect free variable `module`
4918
+ var freeModule = typeof module == 'object' && module &&
4919
+ module.exports == freeExports && module;
4920
+
4921
+ // Detect free variable `global`, from Node.js or Browserified code,
4922
+ // and use it as `root`
4923
+ var freeGlobal = typeof global == 'object' && global;
4924
+ if (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal) {
4925
+ root = freeGlobal;
4926
+ }
4927
+
4928
+ /*--------------------------------------------------------------------------*/
4929
+
4930
+ var stringFromCharCode = String.fromCharCode;
4931
+
4932
+ // Taken from https://mths.be/punycode
4933
+ function ucs2decode(string) {
4934
+ var output = [];
4935
+ var counter = 0;
4936
+ var length = string.length;
4937
+ var value;
4938
+ var extra;
4939
+ while (counter < length) {
4940
+ value = string.charCodeAt(counter++);
4941
+ if (value >= 0xD800 && value <= 0xDBFF && counter < length) {
4942
+ // high surrogate, and there is a next character
4943
+ extra = string.charCodeAt(counter++);
4944
+ if ((extra & 0xFC00) == 0xDC00) { // low surrogate
4945
+ output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);
4946
+ } else {
4947
+ // unmatched surrogate; only append this code unit, in case the next
4948
+ // code unit is the high surrogate of a surrogate pair
4949
+ output.push(value);
4950
+ counter--;
4951
+ }
4952
+ } else {
4953
+ output.push(value);
4954
+ }
4955
+ }
4956
+ return output;
4957
+ }
4958
+
4959
+ // Taken from https://mths.be/punycode
4960
+ function ucs2encode(array) {
4961
+ var length = array.length;
4962
+ var index = -1;
4963
+ var value;
4964
+ var output = '';
4965
+ while (++index < length) {
4966
+ value = array[index];
4967
+ if (value > 0xFFFF) {
4968
+ value -= 0x10000;
4969
+ output += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800);
4970
+ value = 0xDC00 | value & 0x3FF;
4971
+ }
4972
+ output += stringFromCharCode(value);
4973
+ }
4974
+ return output;
4975
+ }
4976
+
4977
+ function checkScalarValue(codePoint) {
4978
+ if (codePoint >= 0xD800 && codePoint <= 0xDFFF) {
4979
+ throw Error(
4980
+ 'Lone surrogate U+' + codePoint.toString(16).toUpperCase() +
4981
+ ' is not a scalar value'
4982
+ );
4983
+ }
4984
+ }
4985
+ /*--------------------------------------------------------------------------*/
4986
+
4987
+ function createByte(codePoint, shift) {
4988
+ return stringFromCharCode(((codePoint >> shift) & 0x3F) | 0x80);
4989
+ }
4990
+
4991
+ function encodeCodePoint(codePoint) {
4992
+ if ((codePoint & 0xFFFFFF80) == 0) { // 1-byte sequence
4993
+ return stringFromCharCode(codePoint);
4994
+ }
4995
+ var symbol = '';
4996
+ if ((codePoint & 0xFFFFF800) == 0) { // 2-byte sequence
4997
+ symbol = stringFromCharCode(((codePoint >> 6) & 0x1F) | 0xC0);
4998
+ }
4999
+ else if ((codePoint & 0xFFFF0000) == 0) { // 3-byte sequence
5000
+ checkScalarValue(codePoint);
5001
+ symbol = stringFromCharCode(((codePoint >> 12) & 0x0F) | 0xE0);
5002
+ symbol += createByte(codePoint, 6);
5003
+ }
5004
+ else if ((codePoint & 0xFFE00000) == 0) { // 4-byte sequence
5005
+ symbol = stringFromCharCode(((codePoint >> 18) & 0x07) | 0xF0);
5006
+ symbol += createByte(codePoint, 12);
5007
+ symbol += createByte(codePoint, 6);
5008
+ }
5009
+ symbol += stringFromCharCode((codePoint & 0x3F) | 0x80);
5010
+ return symbol;
5011
+ }
5012
+
5013
+ function utf8encode(string) {
5014
+ var codePoints = ucs2decode(string);
5015
+ var length = codePoints.length;
5016
+ var index = -1;
5017
+ var codePoint;
5018
+ var byteString = '';
5019
+ while (++index < length) {
5020
+ codePoint = codePoints[index];
5021
+ byteString += encodeCodePoint(codePoint);
5022
+ }
5023
+ return byteString;
5024
+ }
5025
+
5026
+ /*--------------------------------------------------------------------------*/
5027
+
5028
+ function readContinuationByte() {
5029
+ if (byteIndex >= byteCount) {
5030
+ throw Error('Invalid byte index');
5031
+ }
5032
+
5033
+ var continuationByte = byteArray[byteIndex] & 0xFF;
5034
+ byteIndex++;
5035
+
5036
+ if ((continuationByte & 0xC0) == 0x80) {
5037
+ return continuationByte & 0x3F;
5038
+ }
5039
+
5040
+ // If we end up here, it’s not a continuation byte
5041
+ throw Error('Invalid continuation byte');
5042
+ }
5043
+
5044
+ function decodeSymbol() {
5045
+ var byte1;
5046
+ var byte2;
5047
+ var byte3;
5048
+ var byte4;
5049
+ var codePoint;
5050
+
5051
+ if (byteIndex > byteCount) {
5052
+ throw Error('Invalid byte index');
5053
+ }
5054
+
5055
+ if (byteIndex == byteCount) {
5056
+ return false;
5057
+ }
5058
+
5059
+ // Read first byte
5060
+ byte1 = byteArray[byteIndex] & 0xFF;
5061
+ byteIndex++;
5062
+
5063
+ // 1-byte sequence (no continuation bytes)
5064
+ if ((byte1 & 0x80) == 0) {
5065
+ return byte1;
5066
+ }
5067
+
5068
+ // 2-byte sequence
5069
+ if ((byte1 & 0xE0) == 0xC0) {
5070
+ var byte2 = readContinuationByte();
5071
+ codePoint = ((byte1 & 0x1F) << 6) | byte2;
5072
+ if (codePoint >= 0x80) {
5073
+ return codePoint;
5074
+ } else {
5075
+ throw Error('Invalid continuation byte');
5076
+ }
5077
+ }
5078
+
5079
+ // 3-byte sequence (may include unpaired surrogates)
5080
+ if ((byte1 & 0xF0) == 0xE0) {
5081
+ byte2 = readContinuationByte();
5082
+ byte3 = readContinuationByte();
5083
+ codePoint = ((byte1 & 0x0F) << 12) | (byte2 << 6) | byte3;
5084
+ if (codePoint >= 0x0800) {
5085
+ checkScalarValue(codePoint);
5086
+ return codePoint;
5087
+ } else {
5088
+ throw Error('Invalid continuation byte');
5089
+ }
5090
+ }
5091
+
5092
+ // 4-byte sequence
5093
+ if ((byte1 & 0xF8) == 0xF0) {
5094
+ byte2 = readContinuationByte();
5095
+ byte3 = readContinuationByte();
5096
+ byte4 = readContinuationByte();
5097
+ codePoint = ((byte1 & 0x0F) << 0x12) | (byte2 << 0x0C) |
5098
+ (byte3 << 0x06) | byte4;
5099
+ if (codePoint >= 0x010000 && codePoint <= 0x10FFFF) {
5100
+ return codePoint;
5101
+ }
5102
+ }
5103
+
5104
+ throw Error('Invalid UTF-8 detected');
5105
+ }
5106
+
5107
+ var byteArray;
5108
+ var byteCount;
5109
+ var byteIndex;
5110
+ function utf8decode(byteString) {
5111
+ byteArray = ucs2decode(byteString);
5112
+ byteCount = byteArray.length;
5113
+ byteIndex = 0;
5114
+ var codePoints = [];
5115
+ var tmp;
5116
+ while ((tmp = decodeSymbol()) !== false) {
5117
+ codePoints.push(tmp);
5118
+ }
5119
+ return ucs2encode(codePoints);
5120
+ }
5121
+
5122
+ /*--------------------------------------------------------------------------*/
5123
+
5124
+ var utf8 = {
5125
+ 'version': '2.0.0',
5126
+ 'encode': utf8encode,
5127
+ 'decode': utf8decode
5128
+ };
5129
+
5130
+ // Some AMD build optimizers, like r.js, check for specific condition patterns
5131
+ // like the following:
5132
+ if (
5133
+ typeof define == 'function' &&
5134
+ typeof define.amd == 'object' &&
5135
+ define.amd
5136
+ ) {
5137
+ define(function() {
5138
+ return utf8;
5139
+ });
5140
+ } else if (freeExports && !freeExports.nodeType) {
5141
+ if (freeModule) { // in Node.js or RingoJS v0.8.0+
5142
+ freeModule.exports = utf8;
5143
+ } else { // in Narwhal or RingoJS v0.7.0-
5144
+ var object = {};
5145
+ var hasOwnProperty = object.hasOwnProperty;
5146
+ for (var key in utf8) {
5147
+ hasOwnProperty.call(utf8, key) && (freeExports[key] = utf8[key]);
5148
+ }
5149
+ }
5150
+ } else { // in Rhino or a web browser
5151
+ root.utf8 = utf8;
5152
+ }
5168
5153
 
5169
5154
  }(this));
5170
5155
 
5171
5156
  }).call(this,typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
5172
- },{}],34:[function(_dereq_,module,exports){
5157
+ },{}],32:[function(_dereq_,module,exports){
5173
5158
  (function (global){
5174
5159
  /**
5175
5160
  * JSON parse.
@@ -5204,7 +5189,7 @@ module.exports = function parsejson(data) {
5204
5189
  }
5205
5190
  };
5206
5191
  }).call(this,typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
5207
- },{}],35:[function(_dereq_,module,exports){
5192
+ },{}],33:[function(_dereq_,module,exports){
5208
5193
  /**
5209
5194
  * Compiles a querystring
5210
5195
  * Returns string representation of the object
@@ -5243,7 +5228,7 @@ exports.decode = function(qs){
5243
5228
  return qry;
5244
5229
  };
5245
5230
 
5246
- },{}],36:[function(_dereq_,module,exports){
5231
+ },{}],34:[function(_dereq_,module,exports){
5247
5232
  /**
5248
5233
  * Parses an URI
5249
5234
  *
@@ -5284,7 +5269,7 @@ module.exports = function parseuri(str) {
5284
5269
  return uri;
5285
5270
  };
5286
5271
 
5287
- },{}],37:[function(_dereq_,module,exports){
5272
+ },{}],35:[function(_dereq_,module,exports){
5288
5273
 
5289
5274
  /**
5290
5275
  * Module dependencies.
@@ -5329,7 +5314,7 @@ function ws(uri, protocols, opts) {
5329
5314
 
5330
5315
  if (WebSocket) ws.prototype = WebSocket.prototype;
5331
5316
 
5332
- },{}],38:[function(_dereq_,module,exports){
5317
+ },{}],36:[function(_dereq_,module,exports){
5333
5318
  (function (global){
5334
5319
 
5335
5320
  /*
@@ -5391,9 +5376,12 @@ function hasBinary(data) {
5391
5376
  }
5392
5377
 
5393
5378
  }).call(this,typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
5394
- },{"isarray":39}],39:[function(_dereq_,module,exports){
5395
- module.exports=_dereq_(32)
5396
- },{}],40:[function(_dereq_,module,exports){
5379
+ },{"isarray":37}],37:[function(_dereq_,module,exports){
5380
+ module.exports = Array.isArray || function (arr) {
5381
+ return Object.prototype.toString.call(arr) == '[object Array]';
5382
+ };
5383
+
5384
+ },{}],38:[function(_dereq_,module,exports){
5397
5385
 
5398
5386
  /**
5399
5387
  * Module dependencies.
@@ -5418,7 +5406,7 @@ try {
5418
5406
  module.exports = false;
5419
5407
  }
5420
5408
 
5421
- },{"global":41}],41:[function(_dereq_,module,exports){
5409
+ },{"global":39}],39:[function(_dereq_,module,exports){
5422
5410
 
5423
5411
  /**
5424
5412
  * Returns `this`. Execute this without a "context" (i.e. without it being
@@ -5428,7 +5416,7 @@ try {
5428
5416
 
5429
5417
  module.exports = (function () { return this; })();
5430
5418
 
5431
- },{}],42:[function(_dereq_,module,exports){
5419
+ },{}],40:[function(_dereq_,module,exports){
5432
5420
 
5433
5421
  var indexOf = [].indexOf;
5434
5422
 
@@ -5439,7 +5427,7 @@ module.exports = function(arr, obj){
5439
5427
  }
5440
5428
  return -1;
5441
5429
  };
5442
- },{}],43:[function(_dereq_,module,exports){
5430
+ },{}],41:[function(_dereq_,module,exports){
5443
5431
 
5444
5432
  /**
5445
5433
  * HOP ref.
@@ -5524,7 +5512,7 @@ exports.length = function(obj){
5524
5512
  exports.isEmpty = function(obj){
5525
5513
  return 0 == exports.length(obj);
5526
5514
  };
5527
- },{}],44:[function(_dereq_,module,exports){
5515
+ },{}],42:[function(_dereq_,module,exports){
5528
5516
  /**
5529
5517
  * Parses an URI
5530
5518
  *
@@ -5551,7 +5539,7 @@ module.exports = function parseuri(str) {
5551
5539
  return uri;
5552
5540
  };
5553
5541
 
5554
- },{}],45:[function(_dereq_,module,exports){
5542
+ },{}],43:[function(_dereq_,module,exports){
5555
5543
  (function (global){
5556
5544
  /*global Blob,File*/
5557
5545
 
@@ -5696,7 +5684,7 @@ exports.removeBlobs = function(data, callback) {
5696
5684
  };
5697
5685
 
5698
5686
  }).call(this,typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
5699
- },{"./is-buffer":47,"isarray":48}],46:[function(_dereq_,module,exports){
5687
+ },{"./is-buffer":45,"isarray":46}],44:[function(_dereq_,module,exports){
5700
5688
 
5701
5689
  /**
5702
5690
  * Module dependencies.
@@ -6098,7 +6086,7 @@ function error(data){
6098
6086
  };
6099
6087
  }
6100
6088
 
6101
- },{"./binary":45,"./is-buffer":47,"component-emitter":9,"debug":10,"isarray":48,"json3":49}],47:[function(_dereq_,module,exports){
6089
+ },{"./binary":43,"./is-buffer":45,"component-emitter":9,"debug":10,"isarray":46,"json3":47}],45:[function(_dereq_,module,exports){
6102
6090
  (function (global){
6103
6091
 
6104
6092
  module.exports = isBuf;
@@ -6115,9 +6103,9 @@ function isBuf(obj) {
6115
6103
  }
6116
6104
 
6117
6105
  }).call(this,typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
6118
- },{}],48:[function(_dereq_,module,exports){
6119
- module.exports=_dereq_(32)
6120
- },{}],49:[function(_dereq_,module,exports){
6106
+ },{}],46:[function(_dereq_,module,exports){
6107
+ module.exports=_dereq_(37)
6108
+ },{}],47:[function(_dereq_,module,exports){
6121
6109
  /*! JSON v3.2.6 | http://bestiejs.github.io/json3 | Copyright 2012-2013, Kit Cambridge | http://kit.mit-license.org */
6122
6110
  ;(function (window) {
6123
6111
  // Convenience aliases.
@@ -6980,7 +6968,7 @@ module.exports=_dereq_(32)
6980
6968
  }
6981
6969
  }(this));
6982
6970
 
6983
- },{}],50:[function(_dereq_,module,exports){
6971
+ },{}],48:[function(_dereq_,module,exports){
6984
6972
  module.exports = toArray
6985
6973
 
6986
6974
  function toArray(list, index) {
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: socket.io-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.6
4
+ version: 1.3.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Chen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-15 00:00:00.000000000 Z
11
+ date: 2015-10-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: railties