diff --git a/dist/restore-only/index.js b/dist/restore-only/index.js index f7d9223..b8b9784 100644 --- a/dist/restore-only/index.js +++ b/dist/restore-only/index.js @@ -8754,7 +8754,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge }); }; Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.internalCacheTwirpClient = exports.CacheServiceClient = void 0; +exports.internalCacheTwirpClient = void 0; const core_1 = __nccwpck_require__(9728); const user_agent_1 = __nccwpck_require__(3909); const errors_1 = __nccwpck_require__(1069); @@ -8899,7 +8899,6 @@ class CacheServiceClient { return Math.trunc(Math.random() * (maxTime - minTime) + minTime); } } -exports.CacheServiceClient = CacheServiceClient; function internalCacheTwirpClient(options) { const client = new CacheServiceClient((0, user_agent_1.getUserAgentString)(), options === null || options === void 0 ? void 0 : options.maxAttempts, options === null || options === void 0 ? void 0 : options.retryIntervalMs, options === null || options === void 0 ? void 0 : options.retryMultiplier); return new cache_twirp_client_1.CacheServiceClientJSON(client); @@ -9024,127 +9023,37 @@ function maskSigUrl(url) { if (!url) return url; try { - const rawSigRegex = /[?&](sig)=([^&=#]+)/gi; - let match; - while ((match = rawSigRegex.exec(url)) !== null) { - const rawSignature = match[2]; - if (rawSignature) { - (0, core_1.setSecret)(rawSignature); - } - } - let parsedUrl; - try { - parsedUrl = new URL(url); - } - catch (_a) { - try { - parsedUrl = new URL(url, 'https://example.com'); - } - catch (error) { - (0, core_1.debug)(`Failed to parse URL: ${url}`); - return maskSigWithRegex(url); - } - } - let masked = false; - const paramNames = Array.from(parsedUrl.searchParams.keys()); - for (const paramName of paramNames) { - if (paramName.toLowerCase() === 'sig') { - const signature = parsedUrl.searchParams.get(paramName); - if (signature) { - (0, core_1.setSecret)(signature); - (0, core_1.setSecret)(encodeURIComponent(signature)); - parsedUrl.searchParams.set(paramName, '***'); - masked = true; - } - } - } - if (masked) { + const parsedUrl = new URL(url); + const signature = parsedUrl.searchParams.get('sig'); + if (signature) { + (0, core_1.setSecret)(signature); + (0, core_1.setSecret)(encodeURIComponent(signature)); + parsedUrl.searchParams.set('sig', '***'); return parsedUrl.toString(); } - if (/([:?&]|^)(sig)=([^&=#]+)/i.test(url)) { - return maskSigWithRegex(url); - } } catch (error) { - (0, core_1.debug)(`Error masking URL: ${error instanceof Error ? error.message : String(error)}`); - return maskSigWithRegex(url); + (0, core_1.debug)(`Failed to parse URL: ${url} ${error instanceof Error ? error.message : String(error)}`); } return url; } exports.maskSigUrl = maskSigUrl; -/** - * Fallback method to mask signatures using regex when URL parsing fails - */ -function maskSigWithRegex(url) { - try { - const regex = /([:?&]|^)(sig)=([^&=#]+)/gi; - return url.replace(regex, (fullMatch, prefix, paramName, value) => { - if (value) { - (0, core_1.setSecret)(value); - try { - (0, core_1.setSecret)(decodeURIComponent(value)); - } - catch (_a) { - // Ignore decoding errors - } - return `${prefix}${paramName}=***`; - } - return fullMatch; - }); - } - catch (error) { - (0, core_1.debug)(`Error in maskSigWithRegex: ${error instanceof Error ? error.message : String(error)}`); - return url; - } -} /** * Masks any URLs containing signature parameters in the provided object - * Recursively searches through nested objects and arrays */ function maskSecretUrls(body) { if (typeof body !== 'object' || body === null) { (0, core_1.debug)('body is not an object or is null'); return; } - const processUrl = (url) => { - maskSigUrl(url); - }; - const processObject = (obj) => { - if (typeof obj !== 'object' || obj === null) { - return; - } - if (Array.isArray(obj)) { - for (const item of obj) { - if (typeof item === 'string') { - processUrl(item); - } - else if (typeof item === 'object' && item !== null) { - processObject(item); - } - } - return; - } - if ('signed_upload_url' in obj && - typeof obj.signed_upload_url === 'string') { - maskSigUrl(obj.signed_upload_url); - } - if ('signed_download_url' in obj && - typeof obj.signed_download_url === 'string') { - maskSigUrl(obj.signed_download_url); - } - for (const key in obj) { - const value = obj[key]; - if (typeof value === 'string') { - if (/([:?&]|^)(sig)=/i.test(value)) { - maskSigUrl(value); - } - } - else if (typeof value === 'object' && value !== null) { - processObject(value); - } - } - }; - processObject(body); + if ('signed_upload_url' in body && + typeof body.signed_upload_url === 'string') { + maskSigUrl(body.signed_upload_url); + } + if ('signed_download_url' in body && + typeof body.signed_download_url === 'string') { + maskSigUrl(body.signed_download_url); + } } exports.maskSecretUrls = maskSecretUrls; //# sourceMappingURL=util.js.map diff --git a/dist/restore/index.js b/dist/restore/index.js index df76568..38cc807 100644 --- a/dist/restore/index.js +++ b/dist/restore/index.js @@ -8754,7 +8754,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge }); }; Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.internalCacheTwirpClient = exports.CacheServiceClient = void 0; +exports.internalCacheTwirpClient = void 0; const core_1 = __nccwpck_require__(9728); const user_agent_1 = __nccwpck_require__(3909); const errors_1 = __nccwpck_require__(1069); @@ -8899,7 +8899,6 @@ class CacheServiceClient { return Math.trunc(Math.random() * (maxTime - minTime) + minTime); } } -exports.CacheServiceClient = CacheServiceClient; function internalCacheTwirpClient(options) { const client = new CacheServiceClient((0, user_agent_1.getUserAgentString)(), options === null || options === void 0 ? void 0 : options.maxAttempts, options === null || options === void 0 ? void 0 : options.retryIntervalMs, options === null || options === void 0 ? void 0 : options.retryMultiplier); return new cache_twirp_client_1.CacheServiceClientJSON(client); @@ -9024,127 +9023,37 @@ function maskSigUrl(url) { if (!url) return url; try { - const rawSigRegex = /[?&](sig)=([^&=#]+)/gi; - let match; - while ((match = rawSigRegex.exec(url)) !== null) { - const rawSignature = match[2]; - if (rawSignature) { - (0, core_1.setSecret)(rawSignature); - } - } - let parsedUrl; - try { - parsedUrl = new URL(url); - } - catch (_a) { - try { - parsedUrl = new URL(url, 'https://example.com'); - } - catch (error) { - (0, core_1.debug)(`Failed to parse URL: ${url}`); - return maskSigWithRegex(url); - } - } - let masked = false; - const paramNames = Array.from(parsedUrl.searchParams.keys()); - for (const paramName of paramNames) { - if (paramName.toLowerCase() === 'sig') { - const signature = parsedUrl.searchParams.get(paramName); - if (signature) { - (0, core_1.setSecret)(signature); - (0, core_1.setSecret)(encodeURIComponent(signature)); - parsedUrl.searchParams.set(paramName, '***'); - masked = true; - } - } - } - if (masked) { + const parsedUrl = new URL(url); + const signature = parsedUrl.searchParams.get('sig'); + if (signature) { + (0, core_1.setSecret)(signature); + (0, core_1.setSecret)(encodeURIComponent(signature)); + parsedUrl.searchParams.set('sig', '***'); return parsedUrl.toString(); } - if (/([:?&]|^)(sig)=([^&=#]+)/i.test(url)) { - return maskSigWithRegex(url); - } } catch (error) { - (0, core_1.debug)(`Error masking URL: ${error instanceof Error ? error.message : String(error)}`); - return maskSigWithRegex(url); + (0, core_1.debug)(`Failed to parse URL: ${url} ${error instanceof Error ? error.message : String(error)}`); } return url; } exports.maskSigUrl = maskSigUrl; -/** - * Fallback method to mask signatures using regex when URL parsing fails - */ -function maskSigWithRegex(url) { - try { - const regex = /([:?&]|^)(sig)=([^&=#]+)/gi; - return url.replace(regex, (fullMatch, prefix, paramName, value) => { - if (value) { - (0, core_1.setSecret)(value); - try { - (0, core_1.setSecret)(decodeURIComponent(value)); - } - catch (_a) { - // Ignore decoding errors - } - return `${prefix}${paramName}=***`; - } - return fullMatch; - }); - } - catch (error) { - (0, core_1.debug)(`Error in maskSigWithRegex: ${error instanceof Error ? error.message : String(error)}`); - return url; - } -} /** * Masks any URLs containing signature parameters in the provided object - * Recursively searches through nested objects and arrays */ function maskSecretUrls(body) { if (typeof body !== 'object' || body === null) { (0, core_1.debug)('body is not an object or is null'); return; } - const processUrl = (url) => { - maskSigUrl(url); - }; - const processObject = (obj) => { - if (typeof obj !== 'object' || obj === null) { - return; - } - if (Array.isArray(obj)) { - for (const item of obj) { - if (typeof item === 'string') { - processUrl(item); - } - else if (typeof item === 'object' && item !== null) { - processObject(item); - } - } - return; - } - if ('signed_upload_url' in obj && - typeof obj.signed_upload_url === 'string') { - maskSigUrl(obj.signed_upload_url); - } - if ('signed_download_url' in obj && - typeof obj.signed_download_url === 'string') { - maskSigUrl(obj.signed_download_url); - } - for (const key in obj) { - const value = obj[key]; - if (typeof value === 'string') { - if (/([:?&]|^)(sig)=/i.test(value)) { - maskSigUrl(value); - } - } - else if (typeof value === 'object' && value !== null) { - processObject(value); - } - } - }; - processObject(body); + if ('signed_upload_url' in body && + typeof body.signed_upload_url === 'string') { + maskSigUrl(body.signed_upload_url); + } + if ('signed_download_url' in body && + typeof body.signed_download_url === 'string') { + maskSigUrl(body.signed_download_url); + } } exports.maskSecretUrls = maskSecretUrls; //# sourceMappingURL=util.js.map diff --git a/dist/save-only/index.js b/dist/save-only/index.js index 7ba8d66..5f17fde 100644 --- a/dist/save-only/index.js +++ b/dist/save-only/index.js @@ -8754,7 +8754,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge }); }; Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.internalCacheTwirpClient = exports.CacheServiceClient = void 0; +exports.internalCacheTwirpClient = void 0; const core_1 = __nccwpck_require__(9728); const user_agent_1 = __nccwpck_require__(3909); const errors_1 = __nccwpck_require__(1069); @@ -8899,7 +8899,6 @@ class CacheServiceClient { return Math.trunc(Math.random() * (maxTime - minTime) + minTime); } } -exports.CacheServiceClient = CacheServiceClient; function internalCacheTwirpClient(options) { const client = new CacheServiceClient((0, user_agent_1.getUserAgentString)(), options === null || options === void 0 ? void 0 : options.maxAttempts, options === null || options === void 0 ? void 0 : options.retryIntervalMs, options === null || options === void 0 ? void 0 : options.retryMultiplier); return new cache_twirp_client_1.CacheServiceClientJSON(client); @@ -9024,127 +9023,37 @@ function maskSigUrl(url) { if (!url) return url; try { - const rawSigRegex = /[?&](sig)=([^&=#]+)/gi; - let match; - while ((match = rawSigRegex.exec(url)) !== null) { - const rawSignature = match[2]; - if (rawSignature) { - (0, core_1.setSecret)(rawSignature); - } - } - let parsedUrl; - try { - parsedUrl = new URL(url); - } - catch (_a) { - try { - parsedUrl = new URL(url, 'https://example.com'); - } - catch (error) { - (0, core_1.debug)(`Failed to parse URL: ${url}`); - return maskSigWithRegex(url); - } - } - let masked = false; - const paramNames = Array.from(parsedUrl.searchParams.keys()); - for (const paramName of paramNames) { - if (paramName.toLowerCase() === 'sig') { - const signature = parsedUrl.searchParams.get(paramName); - if (signature) { - (0, core_1.setSecret)(signature); - (0, core_1.setSecret)(encodeURIComponent(signature)); - parsedUrl.searchParams.set(paramName, '***'); - masked = true; - } - } - } - if (masked) { + const parsedUrl = new URL(url); + const signature = parsedUrl.searchParams.get('sig'); + if (signature) { + (0, core_1.setSecret)(signature); + (0, core_1.setSecret)(encodeURIComponent(signature)); + parsedUrl.searchParams.set('sig', '***'); return parsedUrl.toString(); } - if (/([:?&]|^)(sig)=([^&=#]+)/i.test(url)) { - return maskSigWithRegex(url); - } } catch (error) { - (0, core_1.debug)(`Error masking URL: ${error instanceof Error ? error.message : String(error)}`); - return maskSigWithRegex(url); + (0, core_1.debug)(`Failed to parse URL: ${url} ${error instanceof Error ? error.message : String(error)}`); } return url; } exports.maskSigUrl = maskSigUrl; -/** - * Fallback method to mask signatures using regex when URL parsing fails - */ -function maskSigWithRegex(url) { - try { - const regex = /([:?&]|^)(sig)=([^&=#]+)/gi; - return url.replace(regex, (fullMatch, prefix, paramName, value) => { - if (value) { - (0, core_1.setSecret)(value); - try { - (0, core_1.setSecret)(decodeURIComponent(value)); - } - catch (_a) { - // Ignore decoding errors - } - return `${prefix}${paramName}=***`; - } - return fullMatch; - }); - } - catch (error) { - (0, core_1.debug)(`Error in maskSigWithRegex: ${error instanceof Error ? error.message : String(error)}`); - return url; - } -} /** * Masks any URLs containing signature parameters in the provided object - * Recursively searches through nested objects and arrays */ function maskSecretUrls(body) { if (typeof body !== 'object' || body === null) { (0, core_1.debug)('body is not an object or is null'); return; } - const processUrl = (url) => { - maskSigUrl(url); - }; - const processObject = (obj) => { - if (typeof obj !== 'object' || obj === null) { - return; - } - if (Array.isArray(obj)) { - for (const item of obj) { - if (typeof item === 'string') { - processUrl(item); - } - else if (typeof item === 'object' && item !== null) { - processObject(item); - } - } - return; - } - if ('signed_upload_url' in obj && - typeof obj.signed_upload_url === 'string') { - maskSigUrl(obj.signed_upload_url); - } - if ('signed_download_url' in obj && - typeof obj.signed_download_url === 'string') { - maskSigUrl(obj.signed_download_url); - } - for (const key in obj) { - const value = obj[key]; - if (typeof value === 'string') { - if (/([:?&]|^)(sig)=/i.test(value)) { - maskSigUrl(value); - } - } - else if (typeof value === 'object' && value !== null) { - processObject(value); - } - } - }; - processObject(body); + if ('signed_upload_url' in body && + typeof body.signed_upload_url === 'string') { + maskSigUrl(body.signed_upload_url); + } + if ('signed_download_url' in body && + typeof body.signed_download_url === 'string') { + maskSigUrl(body.signed_download_url); + } } exports.maskSecretUrls = maskSecretUrls; //# sourceMappingURL=util.js.map diff --git a/dist/save/index.js b/dist/save/index.js index 345a1b0..dc52682 100644 --- a/dist/save/index.js +++ b/dist/save/index.js @@ -8754,7 +8754,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge }); }; Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.internalCacheTwirpClient = exports.CacheServiceClient = void 0; +exports.internalCacheTwirpClient = void 0; const core_1 = __nccwpck_require__(9728); const user_agent_1 = __nccwpck_require__(3909); const errors_1 = __nccwpck_require__(1069); @@ -8899,7 +8899,6 @@ class CacheServiceClient { return Math.trunc(Math.random() * (maxTime - minTime) + minTime); } } -exports.CacheServiceClient = CacheServiceClient; function internalCacheTwirpClient(options) { const client = new CacheServiceClient((0, user_agent_1.getUserAgentString)(), options === null || options === void 0 ? void 0 : options.maxAttempts, options === null || options === void 0 ? void 0 : options.retryIntervalMs, options === null || options === void 0 ? void 0 : options.retryMultiplier); return new cache_twirp_client_1.CacheServiceClientJSON(client); @@ -9024,127 +9023,37 @@ function maskSigUrl(url) { if (!url) return url; try { - const rawSigRegex = /[?&](sig)=([^&=#]+)/gi; - let match; - while ((match = rawSigRegex.exec(url)) !== null) { - const rawSignature = match[2]; - if (rawSignature) { - (0, core_1.setSecret)(rawSignature); - } - } - let parsedUrl; - try { - parsedUrl = new URL(url); - } - catch (_a) { - try { - parsedUrl = new URL(url, 'https://example.com'); - } - catch (error) { - (0, core_1.debug)(`Failed to parse URL: ${url}`); - return maskSigWithRegex(url); - } - } - let masked = false; - const paramNames = Array.from(parsedUrl.searchParams.keys()); - for (const paramName of paramNames) { - if (paramName.toLowerCase() === 'sig') { - const signature = parsedUrl.searchParams.get(paramName); - if (signature) { - (0, core_1.setSecret)(signature); - (0, core_1.setSecret)(encodeURIComponent(signature)); - parsedUrl.searchParams.set(paramName, '***'); - masked = true; - } - } - } - if (masked) { + const parsedUrl = new URL(url); + const signature = parsedUrl.searchParams.get('sig'); + if (signature) { + (0, core_1.setSecret)(signature); + (0, core_1.setSecret)(encodeURIComponent(signature)); + parsedUrl.searchParams.set('sig', '***'); return parsedUrl.toString(); } - if (/([:?&]|^)(sig)=([^&=#]+)/i.test(url)) { - return maskSigWithRegex(url); - } } catch (error) { - (0, core_1.debug)(`Error masking URL: ${error instanceof Error ? error.message : String(error)}`); - return maskSigWithRegex(url); + (0, core_1.debug)(`Failed to parse URL: ${url} ${error instanceof Error ? error.message : String(error)}`); } return url; } exports.maskSigUrl = maskSigUrl; -/** - * Fallback method to mask signatures using regex when URL parsing fails - */ -function maskSigWithRegex(url) { - try { - const regex = /([:?&]|^)(sig)=([^&=#]+)/gi; - return url.replace(regex, (fullMatch, prefix, paramName, value) => { - if (value) { - (0, core_1.setSecret)(value); - try { - (0, core_1.setSecret)(decodeURIComponent(value)); - } - catch (_a) { - // Ignore decoding errors - } - return `${prefix}${paramName}=***`; - } - return fullMatch; - }); - } - catch (error) { - (0, core_1.debug)(`Error in maskSigWithRegex: ${error instanceof Error ? error.message : String(error)}`); - return url; - } -} /** * Masks any URLs containing signature parameters in the provided object - * Recursively searches through nested objects and arrays */ function maskSecretUrls(body) { if (typeof body !== 'object' || body === null) { (0, core_1.debug)('body is not an object or is null'); return; } - const processUrl = (url) => { - maskSigUrl(url); - }; - const processObject = (obj) => { - if (typeof obj !== 'object' || obj === null) { - return; - } - if (Array.isArray(obj)) { - for (const item of obj) { - if (typeof item === 'string') { - processUrl(item); - } - else if (typeof item === 'object' && item !== null) { - processObject(item); - } - } - return; - } - if ('signed_upload_url' in obj && - typeof obj.signed_upload_url === 'string') { - maskSigUrl(obj.signed_upload_url); - } - if ('signed_download_url' in obj && - typeof obj.signed_download_url === 'string') { - maskSigUrl(obj.signed_download_url); - } - for (const key in obj) { - const value = obj[key]; - if (typeof value === 'string') { - if (/([:?&]|^)(sig)=/i.test(value)) { - maskSigUrl(value); - } - } - else if (typeof value === 'object' && value !== null) { - processObject(value); - } - } - }; - processObject(body); + if ('signed_upload_url' in body && + typeof body.signed_upload_url === 'string') { + maskSigUrl(body.signed_upload_url); + } + if ('signed_download_url' in body && + typeof body.signed_download_url === 'string') { + maskSigUrl(body.signed_download_url); + } } exports.maskSecretUrls = maskSecretUrls; //# sourceMappingURL=util.js.map