UNPKG

@heroku-cli/command

Version:
31 lines (30 loc) 903 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.RequestId = exports.requestIdHeader = void 0; const node_crypto_1 = require("node:crypto"); exports.requestIdHeader = 'Request-Id'; class RequestId { static create() { const tracked = RequestId.ids; const generatedId = RequestId._generate(); RequestId.ids = [generatedId, ...tracked]; return RequestId.ids; } static empty() { RequestId.ids = []; } static get headerValue() { return RequestId.ids.join(','); } static track(...ids) { const tracked = RequestId.ids; ids = ids.filter(id => !(tracked.includes(id))); RequestId.ids = [...ids, ...tracked]; return RequestId.ids; } static _generate() { return (0, node_crypto_1.randomUUID)(); } } exports.RequestId = RequestId; RequestId.ids = [];