Files
discord-clone/node_modules/unenv/runtime/mock/proxy.mjs
2023-01-03 09:29:04 -06:00

31 lines
720 B
JavaScript

const fn = function() {
};
function createMock(name, overrides = {}) {
fn.prototype.name = name;
const props = {};
return new Proxy(fn, {
get(_target, prop) {
if (prop === "caller") {
return null;
}
if (prop === "__createMock__") {
return createMock;
}
if (prop in overrides) {
return overrides[prop];
}
return props[prop] = props[prop] || createMock(`${name}.${prop.toString()}`);
},
apply(_target, _this, _args) {
return createMock(`${name}()`);
},
construct(_target, _args, _newT) {
return createMock(`[${name}]`);
},
enumerate(_target) {
return [];
}
});
}
export default createMock("mock");