MCPcopy Create free account
hub / github.com/vercel/vercel / applyTransform

Function applyTransform

packages/cli/src/util/dev/transforms.ts:216–247  ·  view source on GitHub ↗
(
  data: TransformData,
  transform: TargetTransform,
  isHeader: boolean
)

Source from the content-addressed store, hash-verified

214}
215
216function applyTransform(
217 data: TransformData,
218 transform: TargetTransform,
219 isHeader: boolean
220) {
221 const keySelector = transform.target?.key;
222 if (keySelector == null) {
223 return;
224 }
225 if (isHeader && (transform.op === 'set' || transform.op === 'append')) {
226 if (typeof keySelector === 'string' && !isValidHeaderName(keySelector)) {
227 return;
228 }
229 if (!hasValidHeaderArgs(transform.args)) {
230 return;
231 }
232 }
233 const matchedKeys = findMatchingKeys(data, keySelector);
234 switch (transform.op) {
235 case 'set':
236 opSet(data, matchedKeys, keySelector, transform.args);
237 break;
238 case 'append':
239 opAppend(data, matchedKeys, keySelector, transform.args, isHeader);
240 break;
241 case 'delete':
242 opDelete(data, matchedKeys, transform.args, isHeader);
243 break;
244 default:
245 break;
246 }
247}
248
249function isValidRequestPath(path: string): boolean {
250 if (path === '' || path.length > 2048) {

Callers 3

applyResponseTransformsFunction · 0.85
applyQueryTransformsFunction · 0.85

Calls 6

isValidHeaderNameFunction · 0.85
hasValidHeaderArgsFunction · 0.85
findMatchingKeysFunction · 0.85
opSetFunction · 0.85
opAppendFunction · 0.85
opDeleteFunction · 0.85

Tested by

no test coverage detected