UNPKG

featurehub-javascript-client-sdk

Version:
42 lines 1.23 kB
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; } } export 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); } //# sourceMappingURL=baggage_header.js.map