a71f801c3f
- Prisma schema: User, Session, RepoConfig, Preview, Job, WebhookToken, NoConfigComment, AdminSettings - Backend: auth (login/logout/me/first-user setup), webhook handler with HMAC verification, EC2 service, SSH service, deploy pipeline, job queue worker, cron workers - Frontend: Login with first-user detection, Dashboard, PreviewDetail with live log streaming, Settings, Repos config, Admin panel, SetupWizard, Privacy page - Docker Compose and Dockerfile for self-hosted deployment - Uses bcryptjs for Node 24 compatibility Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
27 lines
697 B
JavaScript
27 lines
697 B
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.safeApply = safeApply;
|
|
const untouchedApply = Function.prototype.apply;
|
|
const ApplySymbol = Symbol('apply');
|
|
function safeExtractApply(f) {
|
|
try {
|
|
return f.apply;
|
|
}
|
|
catch (err) {
|
|
return undefined;
|
|
}
|
|
}
|
|
function safeApplyHacky(f, instance, args) {
|
|
const ff = f;
|
|
ff[ApplySymbol] = untouchedApply;
|
|
const out = ff[ApplySymbol](instance, args);
|
|
delete ff[ApplySymbol];
|
|
return out;
|
|
}
|
|
function safeApply(f, instance, args) {
|
|
if (safeExtractApply(f) === untouchedApply) {
|
|
return f.apply(instance, args);
|
|
}
|
|
return safeApplyHacky(f, instance, args);
|
|
}
|