| Server IP : 14.225.204.176 / Your IP : 216.73.216.6 Web Server : nginx/1.24.0 System : Linux nodejs-ybgk 6.8.0-40-generic #40-Ubuntu SMP PREEMPT_DYNAMIC Fri Jul 5 10:34:03 UTC 2024 x86_64 User : root ( 0) PHP Version : 8.1.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/share/nodejs/caller-callsite/ |
Upload File : |
import callsites from 'callsites';
export default function callerCallsite({depth = 0} = {}) {
const callers = [];
const callerFileSet = new Set();
for (const callsite of callsites()) {
const fileName = callsite.getFileName();
const hasReceiver = callsite.getTypeName() !== null && fileName !== null;
if (!callerFileSet.has(fileName)) {
callerFileSet.add(fileName);
callers.unshift(callsite);
}
if (hasReceiver) {
return callers[depth];
}
}
}