apollo-client-code-first-request
Version:
36 lines • 1.54 kB
JavaScript
;
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
exports.__esModule = true;
exports.OmitType = void 0;
var decorators_1 = require("../decorators");
var utils_1 = require("../utils");
var type_helpers_util_1 = require("./type-helpers.util");
function OmitType(classRef, keys) {
var parentPropertyNames = utils_1.Metadata.getPropertyNames(classRef.prototype);
var isInheritedPredicate = function (propertyKey) { return !keys.includes(propertyKey); };
var OmitObjectType = (function () {
function OmitObjectType() {
(0, type_helpers_util_1.inheritPropertyInitializers)(this, classRef, isInheritedPredicate);
}
return OmitObjectType;
}());
parentPropertyNames
.filter(function (propertyName) { return !keys.includes(propertyName); })
.forEach(function (propertyName) {
var fieldInfo = utils_1.Metadata.getFieldInfo(classRef.prototype, propertyName);
(0, decorators_1.Field)(__assign(__assign({}, fieldInfo), (fieldInfo.isArray && { type: [fieldInfo.type] })))(OmitObjectType.prototype, propertyName);
});
return OmitObjectType;
}
exports.OmitType = OmitType;
//# sourceMappingURL=omit-type.util.js.map