{"version":3,"sources":["jsdelivr-header.js","/npm/@datafire/amazonaws_route53resolver@5.0.0/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,aAEA,IAAI,SAAW,QAAQ,YACnB,QAAU,QAAQ,kBAElB,IAAM,QAAQ,WAClB,MAAM,eAAiB,4BACjB,OAAS,kBAEf,IAAI,MAAQ,OAAO,QAAU,IAAI,SAAS,YAAY,CACpD,GAAI,eACJ,MAAO,QAAQ,KAAK,MACpB,YAAa,QAAQ,KAAK,YAC1B,KAAM,QAAQ,KAAK,YAWrB,SAAS,eAAe,GACtB,OAAO,EAAI,QAAQ,UAAU,CAAC,EAAO,IAAS,EAAK,eACrD,CAXA,MAAM,SAAS,gBAAiB,CAC9B,YAAa,eACb,OAAQ,CACN,YAAa,GACb,gBAAiB,GACjB,OAAQ,+BASZ,IAAI,cAAgB,IAAI,IAAI,QAAQ,CAAC,QAAS,QAAQ,QAAS,SAAU,QAEzE,IAAK,IAAI,KAAQ,QAAQ,MACvB,IAAK,IAAI,KAAU,QAAQ,MAAM,GAAO,CACtC,GAAe,eAAX,EAAyB,SAC7B,IAAI,EAAK,QAAQ,MAAM,GAAM,GACzB,EAAW,EAAG,YAClB,EAAW,EAAS,QAAQ,sBAAuB,KACpB,IAA3B,EAAS,QAAQ,OACnB,EAAW,EAAS,MAAM,KAAK,IAEjC,IAAI,EAAa,EAAS,OAAO,GAAG,cAAgB,EAAS,UAAU,GACvE,IAAK,cAAc,GAAa,CAC9B,QAAQ,MAAM,WAAa,OAAS,cAAgB,EAAa,cACjE,QAAQ,IAAI,EAAQ,EAAM,EAAG,YAAa,GAC1C,QACF,CAEA,IAAI,GAAc,EAAG,YAAc,IAAI,QAAO,GAAc,SAAT,EAAE,KAAe,IAAM,CAAC,EACvE,GAAY,EAAG,WAAa,CAAC,GAAG,MAAQ,CAAC,EACzC,EAAc,CAChB,KAAM,SACN,WAAY,CAAC,GAaf,SAAS,EAAU,GACjB,GAAK,EACL,OAAO,OAAO,OAAO,CAAC,YAAa,QAAQ,aAAc,EAC3D,CAdI,EAAW,SAAQ,EAAY,MAAQ,CAAC,EAAW,UACtD,EAAG,YAAc,IAAI,SAAQ,IACb,WAAX,EAAE,MAAgC,YAAX,EAAE,MAAiC,SAAX,EAAE,MAAoB,EAAE,KAAK,WAAW,QACzF,EAAY,WAAW,eAAe,EAAE,OAAS,CAAC,KAAM,EAAE,MACtD,EAAE,WACJ,EAAY,SAAW,EAAY,UAAY,GAC/C,EAAY,SAAS,KAAK,EAAE,OAEhC,IAOF,MAAM,UAAU,EAAU,IAAI,SAAS,OAAO,CAC5C,YAAa,EAAU,GACvB,aAAc,EAAU,EAAS,QACjC,QAAS,CAAC,EAAO,IACL,IAAI,IAAI,QAAQ,OAAO,OAAO,CACtC,QAAS,QAAQ,KAAK,SACrB,EAAQ,SAAS,kBACT,GAAY,GAAO,UAC3B,MAAK,GACG,KAAK,MAAM,KAAK,UAAU,QAI3C","file":"/npm/@datafire/amazonaws_route53resolver@5.0.0/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@datafire/amazonaws_route53resolver@5.0.0/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use strict';\n\nlet datafire = require('datafire');\nlet openapi = require('./openapi.json');\n\nlet aws = require('aws-sdk');\nconst INTEGRATION_ID = 'amazonaws_route53resolver';\nconst SDK_ID = 'Route53Resolver';\n\nlet integ = module.exports = new datafire.Integration({\n  id: INTEGRATION_ID,\n  title: openapi.info.title,\n  description: openapi.info.description,\n  logo: openapi.info['x-logo'],\n});\ninteg.security[INTEGRATION_ID]= {\n  integration: INTEGRATION_ID,\n  fields: {\n    accessKeyId: \"\",\n    secretAccessKey: \"\",\n    region: \"AWS region (if applicable)\",\n  }\n}\n\nfunction maybeCamelCase(str) {\n  return str.replace(/_(\\w)/g, (match, char) => char.toUpperCase())\n}\n\n// We use this instance to make sure each action is available in the SDK at startup.\nlet dummyInstance = new aws[SDK_ID]({version: openapi.version, endpoint: 'foo'});\n\nfor (let path in openapi.paths) {\n  for (let method in openapi.paths[path]) {\n    if (method === 'parameters') continue;\n    let op = openapi.paths[path][method];\n    let actionID = op.operationId;\n    actionID = actionID.replace(/\\d\\d\\d\\d_\\d\\d_\\d\\d$/, '');\n    if (actionID.indexOf('_') !== -1) {\n      actionID = actionID.split('_')[1];\n    }\n    let functionID = actionID.charAt(0).toLowerCase() + actionID.substring(1);\n    if (!dummyInstance[functionID]) {\n      console.error(\"AWS SDK \" + SDK_ID + \": Function \" + functionID + \" not found\");\n      console.log(method, path, op.operationId, actionID);\n      continue;\n    }\n\n    let inputParam = (op.parameters || []).filter(p => p.in === 'body')[0] || {};\n    let response = (op.responses || {})[200] || {};\n    let inputSchema = {\n      type: 'object',\n      properties: {},\n    };\n    if (inputParam.schema) inputSchema.allOf = [inputParam.schema];\n    (op.parameters || []).forEach(p => {\n      if (p.name !== 'Action' && p.name !== 'Version' && p.name !== 'body' && !p.name.startsWith('X-')) {\n        inputSchema.properties[maybeCamelCase(p.name)] = {type: p.type};\n        if (p.required) {\n          inputSchema.required = inputSchema.required || [];\n          inputSchema.required.push(p.name);\n        }\n      }\n    })\n\n    function getSchema(schema) {\n      if (!schema) return;\n      return Object.assign({definitions: openapi.definitions}, schema);\n    }\n    integ.addAction(actionID, new datafire.Action({\n      inputSchema: getSchema(inputSchema),\n      outputSchema: getSchema(response.schema),\n      handler: (input, context) => {\n        let lib = new aws[SDK_ID](Object.assign({\n          version: openapi.info.version,\n        }, context.accounts[INTEGRATION_ID]));\n        return lib[functionID](input).promise()\n          .then(data => {\n            return JSON.parse(JSON.stringify(data));\n          })\n      }\n    }));\n  }\n}\n\n\n"]}