UNPKG

@mintlify/validation

Version:

Validates mint.json files

20 lines (19 loc) 929 B
import hash from 'object-hash'; import { v4 as uuidv4 } from 'uuid'; export const mapSecurityRequirement = ({ security, refUuidMap, uuidObjectHashMap, hashedNodeMap, uuid, }) => { const securityRequirementObject = {}; Object.entries(security).forEach(([securitySchemeName, securitySchemeScopes]) => { // create security requirement object // add $ref to matching security scheme from components.securitySchemes // add scopes to the security requirement object const refId = `#/components/securitySchemes/${securitySchemeName}`; const refUuid = refUuidMap[refId] || uuidv4(); securityRequirementObject[securitySchemeName] = { $ref: refUuid, scopes: securitySchemeScopes, }; }); const objectHash = hash(securityRequirementObject); uuidObjectHashMap[uuid] = objectHash; hashedNodeMap[objectHash] = securityRequirementObject; };