UNPKG

@redocly/respect-core

Version:
27 lines 1.11 kB
import JsonPointerLib from 'json-pointer'; import { evaluateRuntimeExpressionPayload } from '../runtime-expressions/index.js'; export function handlePayloadReplacements({ payload, replacements, expressionContext, logger, }) { for (const replacement of replacements) { const { target, value } = replacement; if (typeof target !== 'string') { throw new Error(`Invalid JSON Pointer: ${target}`); } try { // Get the current value using JSON Pointer const currentValue = JsonPointerLib.get(payload, target); const evaluatedValue = evaluateRuntimeExpressionPayload({ payload: value, context: expressionContext, logger, }); if (currentValue !== undefined) { // Replace the value using JSON Pointer JsonPointerLib.set(payload, target, evaluatedValue); } } catch { throw new Error(`Invalid JSON Pointer: ${target}`); } } } //# sourceMappingURL=handle-request-body-replacements.js.map