forked from projectmoon/tenebrous-dicebot
34 lines
981 B
JavaScript
34 lines
981 B
JavaScript
'use strict';
|
|
|
|
var inherits = require('inherits')
|
|
, IframeTransport = require('../iframe')
|
|
, objectUtils = require('../../utils/object')
|
|
;
|
|
|
|
module.exports = function(transport) {
|
|
|
|
function IframeWrapTransport(transUrl, baseUrl) {
|
|
IframeTransport.call(this, transport.transportName, transUrl, baseUrl);
|
|
}
|
|
|
|
inherits(IframeWrapTransport, IframeTransport);
|
|
|
|
IframeWrapTransport.enabled = function(url, info) {
|
|
if (!global.document) {
|
|
return false;
|
|
}
|
|
|
|
var iframeInfo = objectUtils.extend({}, info);
|
|
iframeInfo.sameOrigin = true;
|
|
return transport.enabled(iframeInfo) && IframeTransport.enabled();
|
|
};
|
|
|
|
IframeWrapTransport.transportName = 'iframe-' + transport.transportName;
|
|
IframeWrapTransport.needBody = true;
|
|
IframeWrapTransport.roundTrips = IframeTransport.roundTrips + transport.roundTrips - 1; // html, javascript (2) + transport - no CORS (1)
|
|
|
|
IframeWrapTransport.facadeTransport = transport;
|
|
|
|
return IframeWrapTransport;
|
|
};
|