UNPKG

@apistudio/apim-cli

Version:

CLI for API Management Products

33 lines (32 loc) 1.29 kB
import { isNullOrUndefined } from "../../common/data-helper.js"; import { POLICY } from "../../../constants/app-constants.js"; function addAssetRefValuesForStage(refObjects, result) { if (!isNullOrUndefined(refObjects)) { refObjects.forEach((policy) => { if (!isNullOrUndefined(policy.$ref)) { result.push({ kind: POLICY, ref: policy.$ref, isNewlyAdded: true }); } }); } } const getRefsFromPolicySeqAsset = (asset) => { const policySeqAsset = asset; const spec = policySeqAsset.spec; const result = []; const transport = spec.transport; addAssetRefValuesForStage(transport, result); const monitoring = spec.monitoring; addAssetRefValuesForStage(monitoring, result); const reqProcessing = spec["req-processing"]; addAssetRefValuesForStage(reqProcessing, result); const respProcessing = spec["res-processing"]; addAssetRefValuesForStage(respProcessing, result); const iam = spec.iam; addAssetRefValuesForStage(iam, result); const errorProcessing = spec["error-handling"]; addAssetRefValuesForStage(errorProcessing, result); const routing = spec.routing; addAssetRefValuesForStage(routing, result); return result; }; export { getRefsFromPolicySeqAsset };