diff --git a/core/paginator/package.json b/core/paginator/package.json index de0cecfcd05..b6eef895802 100644 --- a/core/paginator/package.json +++ b/core/paginator/package.json @@ -34,7 +34,6 @@ "author": "Google Inc.", "license": "Apache-2.0", "devDependencies": { - "@types/extend": "^3.0.4", "@types/mocha": "^10.0.10", "@types/node": "^22.13.8", "@types/proxyquire": "^1.3.31", @@ -54,9 +53,6 @@ "typescript": "^5.8.2", "uuid": "^11.1.0" }, - "dependencies": { - "extend": "^3.0.2" - }, "engines": { "node": ">=18" }, diff --git a/core/paginator/src/index.ts b/core/paginator/src/index.ts index dd5f569840c..fa321c0b315 100644 --- a/core/paginator/src/index.ts +++ b/core/paginator/src/index.ts @@ -18,7 +18,6 @@ * @module common/paginator */ -import * as extend from 'extend'; import {TransformOptions} from 'stream'; import {ResourceStream} from './resource-stream'; @@ -157,7 +156,7 @@ export class Paginator { } if (typeof query === 'object') { - query = extend<{}, ParsedArguments>(true, {}, query) as ParsedArguments; + query = structuredClone(query); // Check if the user only asked for a certain amount of results. if (query.maxResults && typeof query.maxResults === 'number') { @@ -187,11 +186,7 @@ export class Paginator { callback, } as ParsedArguments; - parsedArguments.streamOptions = extend<{}, ParsedArguments>( - true, - {}, - parsedArguments.query as ParsedArguments, - ); + parsedArguments.streamOptions = structuredClone(parsedArguments.query); delete parsedArguments.streamOptions.autoPaginate; delete parsedArguments.streamOptions.maxResults; delete parsedArguments.streamOptions.pageSize;