49 lines
1.2 KiB
JavaScript
49 lines
1.2 KiB
JavaScript
import { ensureArgon2Sync } from './argon2-polyfill.mjs';
|
|
import { loadProjectEnv } from './load-env.mjs';
|
|
import {
|
|
USER_COOKIE,
|
|
clearUserSessionCookie,
|
|
parseCookies,
|
|
resolveCookieDomainForRequest,
|
|
userLoginCookies,
|
|
} from './local-auth.mjs';
|
|
|
|
ensureArgon2Sync();
|
|
import { bootstrapAdminServices } from './bootstrap.mjs';
|
|
import { createAdminApp } from './app.mjs';
|
|
|
|
loadProjectEnv();
|
|
|
|
const port = Number(process.env.ADM_API_PORT ?? 8085);
|
|
|
|
const ready = bootstrapAdminServices();
|
|
const services = {
|
|
ready,
|
|
USER_COOKIE,
|
|
parseCookies,
|
|
userLoginCookies,
|
|
clearUserSessionCookie,
|
|
resolveCookieDomainForRequest,
|
|
};
|
|
|
|
ready
|
|
.then(({ pool, userAuth, llmProviderService, plazaOps, createOpsApi, wechatAdmin }) => {
|
|
Object.assign(services, {
|
|
pool,
|
|
userAuth,
|
|
llmProviderService,
|
|
plazaOps,
|
|
createOpsApi,
|
|
wechatAdmin,
|
|
});
|
|
const app = createAdminApp(services);
|
|
const server = app.listen(port, '127.0.0.1', () => {
|
|
console.log(`TKMind Admin API @ http://127.0.0.1:${port}`);
|
|
});
|
|
globalThis.__tkmindAdminServer = server;
|
|
})
|
|
.catch((err) => {
|
|
console.error('Admin server bootstrap failed:', err);
|
|
process.exit(1);
|
|
});
|