UNPKG

featurehub-javascript-client-sdk

Version:
46 lines 1.38 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.w3cBaggageHeader = void 0; function createBaseBaggageHeader(header) { let newHeader = ''; if (header) { newHeader = header.split(',').filter(p => !p.startsWith('fhub')).join(','); } return newHeader; } function createBaggageHeader(features, newHeader) { if (features.length > 0) { if (newHeader.length > 0) { return newHeader + ',fhub=' + features; } else { return 'fhub=' + features; } } else if (newHeader.length > 0) { return newHeader; } else { return undefined; } } function w3cBaggageHeader({ repo, values, header }) { const newHeader = createBaseBaggageHeader(header); let features; if (values) { features = encodeURIComponent(Array.from(values) .map(e => e[0] + '=' + (e[1] ? encodeURIComponent(e[1]) : '')) .join(',')); } else if (repo) { features = encodeURIComponent(Array.from(repo.simpleFeatures().entries()) .map(e => e[0] + '=' + (e[1] ? encodeURIComponent(e[1]) : '')) .join(',')); } else { return undefined; } return createBaggageHeader(features, newHeader); } exports.w3cBaggageHeader = w3cBaggageHeader; //# sourceMappingURL=baggage_header.js.map