Skip to content

Commit 9494642

Browse files
authored
fix: inline origin resolution, drop original dependency (#281)
1 parent aa7a408 commit 9494642

File tree

3 files changed

+11685
-923
lines changed

3 files changed

+11685
-923
lines changed

lib/eventsource.js

+16-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
var original = require('original')
21
var parse = require('url').parse
32
var events = require('events')
43
var https = require('https')
@@ -157,8 +156,8 @@ function EventSource (url, eventSourceInitDict) {
157156
_emit('error', new Event('error', {status: res.statusCode, message: res.statusMessage}))
158157
return
159158
}
160-
var prevOrigin = original(url)
161-
var nextOrigin = original(location)
159+
var prevOrigin = getOrigin(url)
160+
var nextOrigin = getOrigin(location)
162161
hasNewOrigin = prevOrigin !== nextOrigin
163162
if (res.statusCode === 307) reconnectUrl = url
164163
url = location
@@ -280,7 +279,7 @@ function EventSource (url, eventSourceInitDict) {
280279
_emit(type, new MessageEvent(type, {
281280
data: data.slice(0, -1), // remove trailing newline
282281
lastEventId: lastEventId,
283-
origin: original(url)
282+
origin: getOrigin(url)
284283
}))
285284
data = ''
286285
}
@@ -471,3 +470,16 @@ function removeUnsafeHeaders (headers) {
471470

472471
return safe
473472
}
473+
474+
/**
475+
* Transform an URL to a valid origin value.
476+
*
477+
* @param {String|Object} url URL to transform to it's origin.
478+
* @returns {String} The origin.
479+
* @api private
480+
*/
481+
function getOrigin (url) {
482+
if (typeof url === 'string') url = parse(url)
483+
if (!url.protocol || !url.hostname) return 'null'
484+
return (url.protocol + '//' + url.host).toLowerCase()
485+
}

0 commit comments

Comments
 (0)