System.register([], function (_export) {
'use strict';
var Headers;
function _classCallCheck(instance, Constructor) { Iif (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
return {
setters: [],
execute: function () {
Headers = (function () {
function Headers() {
var headers = arguments[0] === undefined ? {} : arguments[0];
_classCallCheck(this, Headers);
this.headers = headers;
}
Headers.prototype.add = function add(key, value) {
this.headers[key] = value;
};
Headers.prototype.get = function get(key) {
return this.headers[key];
};
Headers.prototype.clear = function clear() {
this.headers = {};
};
Headers.prototype.configureXHR = function configureXHR(xhr) {
var headers = this.headers,
key;
for (key in headers) {
xhr.setRequestHeader(key, headers[key]);
}
};
/**
* XmlHttpRequest's getAllResponseHeaders() method returns a string of response
* headers according to the format described here:
* http://www.w3.org/TR/XMLHttpRequest/#the-getallresponseheaders-method
* This method parses that string into a user-friendly key/value pair object.
*/
Headers.parse = function parse(headerStr) {
var headers = new Headers();
if (!headerStr) {
return headers;
}
var headerPairs = headerStr.split('\r\n');
for (var i = 0; i < headerPairs.length; i++) {
var headerPair = headerPairs[i];
// Can't use split() here because it does the wrong thing
// if the header value has the string ": " in it.
var index = headerPair.indexOf(': ');
if (index > 0) {
var key = headerPair.substring(0, index);
var val = headerPair.substring(index + 2);
headers.add(key, val);
}
}
return headers;
};
return Headers;
})();
_export('Headers', Headers);
}
};
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9FaXNlbmJlcmdFZmZlY3QvRG9jdW1lbnRzL0dpdEh1Yi9UaGUgRHVyYW5kYWwgUHJvamVjdC9hdXJlbGlhL2h0dHAtY2xpZW50L3NyYy9oZWFkZXJzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztNQUFhLE9BQU87Ozs7Ozs7QUFBUCxhQUFPO0FBQ1AsaUJBREEsT0FBTyxHQUNLO2NBQVgsT0FBTyxnQ0FBQyxFQUFFOztnQ0FEWCxPQUFPOztBQUVoQixjQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztTQUN4Qjs7QUFIVSxlQUFPLFdBS2xCLEdBQUcsR0FBQSxhQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUM7QUFDYixjQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztTQUMzQjs7QUFQVSxlQUFPLFdBU2xCLEdBQUcsR0FBQSxhQUFDLEdBQUcsRUFBQztBQUNOLGlCQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDMUI7O0FBWFUsZUFBTyxXQWFsQixLQUFLLEdBQUEsaUJBQUU7QUFDTCxjQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztTQUNuQjs7QUFmVSxlQUFPLFdBaUJsQixZQUFZLEdBQUEsc0JBQUMsR0FBRyxFQUFDO0FBQ2YsY0FBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU87Y0FBRSxHQUFHLENBQUM7O0FBRWhDLGVBQUksR0FBRyxJQUFJLE9BQU8sRUFBQztBQUNqQixlQUFHLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1dBQ3pDO1NBQ0Y7Ozs7Ozs7OztBQXZCVSxlQUFPLENBK0JYLEtBQUssR0FBQSxlQUFDLFNBQVMsRUFBQztBQUNyQixjQUFJLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0FBQzVCLGNBQUksQ0FBQyxTQUFTLEVBQUU7QUFDZCxtQkFBTyxPQUFPLENBQUM7V0FDaEI7O0FBRUQsY0FBSSxXQUFXLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxNQUFjLENBQUMsQ0FBQztBQUNsRCxlQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtBQUMzQyxnQkFBSSxVQUFVLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDOzs7QUFHaEMsZ0JBQUksS0FBSyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBYyxDQUFDLENBQUM7QUFDL0MsZ0JBQUksS0FBSyxHQUFHLENBQUMsRUFBRTtBQUNiLGtCQUFJLEdBQUcsR0FBRyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUN6QyxrQkFBSSxHQUFHLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDMUMscUJBQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3RCO1dBQ0Y7O0FBRUQsaUJBQU8sT0FBTyxDQUFDO1NBQ2hCOztlQW5EVSxPQUFPOzs7eUJBQVAsT0FBTyIsImZpbGUiOiIvVXNlcnMvRWlzZW5iZXJnRWZmZWN0L0RvY3VtZW50cy9HaXRIdWIvVGhlIER1cmFuZGFsIFByb2plY3QvYXVyZWxpYS9odHRwLWNsaWVudC9zcmMvaGVhZGVycy5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBIZWFkZXJzIHtcbiAgY29uc3RydWN0b3IoaGVhZGVycz17fSl7XG4gICAgdGhpcy5oZWFkZXJzID0gaGVhZGVycztcbiAgfVxuXG4gIGFkZChrZXksIHZhbHVlKXtcbiAgICB0aGlzLmhlYWRlcnNba2V5XSA9IHZhbHVlO1xuICB9XG5cbiAgZ2V0KGtleSl7XG4gICAgcmV0dXJuIHRoaXMuaGVhZGVyc1trZXldO1xuICB9XG5cbiAgY2xlYXIoKXtcbiAgICB0aGlzLmhlYWRlcnMgPSB7fTtcbiAgfVxuXG4gIGNvbmZpZ3VyZVhIUih4aHIpe1xuICAgIHZhciBoZWFkZXJzID0gdGhpcy5oZWFkZXJzLCBrZXk7XG5cbiAgICBmb3Ioa2V5IGluIGhlYWRlcnMpe1xuICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoa2V5LCBoZWFkZXJzW2tleV0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBYbWxIdHRwUmVxdWVzdCdzIGdldEFsbFJlc3BvbnNlSGVhZGVycygpIG1ldGhvZCByZXR1cm5zIGEgc3RyaW5nIG9mIHJlc3BvbnNlXG4gICAqIGhlYWRlcnMgYWNjb3JkaW5nIHRvIHRoZSBmb3JtYXQgZGVzY3JpYmVkIGhlcmU6XG4gICAqIGh0dHA6Ly93d3cudzMub3JnL1RSL1hNTEh0dHBSZXF1ZXN0LyN0aGUtZ2V0YWxscmVzcG9uc2VoZWFkZXJzLW1ldGhvZFxuICAgKiBUaGlzIG1ldGhvZCBwYXJzZXMgdGhhdCBzdHJpbmcgaW50byBhIHVzZXItZnJpZW5kbHkga2V5L3ZhbHVlIHBhaXIgb2JqZWN0LlxuICAgKi9cbiAgc3RhdGljIHBhcnNlKGhlYWRlclN0cil7XG4gICAgdmFyIGhlYWRlcnMgPSBuZXcgSGVhZGVycygpO1xuICAgIGlmICghaGVhZGVyU3RyKSB7XG4gICAgICByZXR1cm4gaGVhZGVycztcbiAgICB9XG5cbiAgICB2YXIgaGVhZGVyUGFpcnMgPSBoZWFkZXJTdHIuc3BsaXQoJ1xcdTAwMGRcXHUwMDBhJyk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBoZWFkZXJQYWlycy5sZW5ndGg7IGkrKykge1xuICAgICAgdmFyIGhlYWRlclBhaXIgPSBoZWFkZXJQYWlyc1tpXTtcbiAgICAgIC8vIENhbid0IHVzZSBzcGxpdCgpIGhlcmUgYmVjYXVzZSBpdCBkb2VzIHRoZSB3cm9uZyB0aGluZ1xuICAgICAgLy8gaWYgdGhlIGhlYWRlciB2YWx1ZSBoYXMgdGhlIHN0cmluZyBcIjogXCIgaW4gaXQuXG4gICAgICB2YXIgaW5kZXggPSBoZWFkZXJQYWlyLmluZGV4T2YoJ1xcdTAwM2FcXHUwMDIwJyk7XG4gICAgICBpZiAoaW5kZXggPiAwKSB7XG4gICAgICAgIHZhciBrZXkgPSBoZWFkZXJQYWlyLnN1YnN0cmluZygwLCBpbmRleCk7XG4gICAgICAgIHZhciB2YWwgPSBoZWFkZXJQYWlyLnN1YnN0cmluZyhpbmRleCArIDIpO1xuICAgICAgICBoZWFkZXJzLmFkZChrZXksdmFsKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gaGVhZGVycztcbiAgfVxufVxuIl19 |