gads
Version:
An unofficial JS client library for the SOAP-based DFP Ads API
35 lines • 1.51 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const util_1 = require("./util");
class WsdlElementToMetaInterfaceTranslator {
constructor() { }
translate(element) {
return new Promise(resolve => {
const _interface = {
description: element.annotation ? element.annotation.documentation : '',
extends: element.$.type ? [util_1.parseSoapTypeName(element.$.type)] : [],
methods: {},
name: util_1.capitalize(element.$.name),
properties: {}
};
// Define properties
if (element.complexType && element.complexType.sequence) {
util_1.toArray(element.complexType.sequence.element)
.forEach(prop => {
const name = prop.$.name;
_interface.properties[name] = {
description: '',
isArray: prop.$.maxOccurs === 'unbounded' || +prop.$.maxOccurs > 1,
isOptional: !+prop.$.minOccurs,
isPrimitive: prop.$.type.startsWith('xsd:'),
name,
type: util_1.parseSoapTypeName(prop.$.type)
};
});
}
resolve(_interface);
});
}
}
exports.WsdlElementToMetaInterfaceTranslator = WsdlElementToMetaInterfaceTranslator;
//# sourceMappingURL=wsdlElementToMetaInterfaceTranslator.js.map