Testing component used to fake protocols from the browser. Overrides window.location.protocol properties with fake ones using Object.defineProperty, so it won't work on IE8. Probably a good thing to only use in testing.
$ npm install @segment/protocolReturns the current protocol that the document is using
protocol(); // 'http:'When supplied with an argument, sets a custom protocol for the document.
protocol('chrome-extension:');
protocol(); // 'chrome-extension:'Sets the protocol to be http
protocol(); // 'file:'
protocol.http(); // 'http:'Sets the protocol to be https:
protocol(); // 'file:'
protocol.https(); // 'https:'Resets the protocol to be whatever it was at page load.
protocol('x:');
protocol.reset();
protocol(); // 'http:'