"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = inherits; var _constants = require("../constants"); var _inheritsComments = require("../comments/inheritsComments"); function inherits(child, parent) { if (!child || !parent) return child; for (const key of _constants.INHERIT_KEYS.optional) { if (child[key] == null) { child[key] = parent[key]; } } for (const key of Object.keys(parent)) { if (key[0] === "_" && key !== "__clone") child[key] = parent[key]; } for (const key of _constants.INHERIT_KEYS.force) { child[key] = parent[key]; } (0, _inheritsComments.default)(child, parent); return child; }