Skip to content

Commit 205b4bc

Browse files
committed
app cleanup
1 parent d0143d2 commit 205b4bc

File tree

3 files changed

+15
-25
lines changed

3 files changed

+15
-25
lines changed

packages/gemi/app/App.ts

+12-21
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import { ViewRouter } from "../http/ViewRouter";
33
import type { WebSocketHandler } from "bun";
44
import { ComponentType } from "react";
55
import { Kernel } from "../kernel";
6-
import { I18nServiceContainer } from "../http/I18nServiceContainer";
76
import { KernelContext } from "../kernel/KernelContext";
87

98
interface AppParams {
@@ -20,46 +19,40 @@ export class App {
2019
private viewRouter: new () => ViewRouter;
2120
private Root: ComponentType;
2221
private kernel: Kernel;
23-
private i18nServiceContainer: I18nServiceContainer;
2422

2523
constructor(params: AppParams) {
2624
this.apiRouter = params.apiRouter;
2725
this.viewRouter = params.viewRouter;
2826
this.Root = params.root;
2927
this.kernel = new params.kernel();
3028

31-
this.prepare();
32-
33-
this.i18nServiceContainer = this.kernel.getServices().i18nServiceContainer;
34-
this.i18nServiceContainer.boot();
35-
}
36-
37-
private prepare() {
3829
const kernelServices = this.kernel.getServices();
3930

4031
const authBasePath =
4132
kernelServices.authenticationServiceContainer.provider.basePath;
4233

43-
let viewRouters = {
34+
const viewRouters = {
4435
"/": this.viewRouter,
4536
[authBasePath]:
4637
kernelServices.authenticationServiceContainer.provider.routers.view,
4738
};
48-
let apiRouters = {
39+
40+
const apiRouters = {
4941
"/": this.apiRouter,
5042
[authBasePath]:
5143
kernelServices.authenticationServiceContainer.provider.routers.api,
5244
"/__gemi__/services/i18n":
5345
kernelServices.i18nServiceContainer.routers.api,
5446
};
5547

56-
this.kernel
57-
.getServices()
58-
.apiRouterServiceContainer.service.boot(apiRouters);
48+
kernelServices.apiRouterServiceContainer.service.boot(apiRouters);
49+
50+
kernelServices.viewRouterServiceContainer.service.boot(
51+
viewRouters,
52+
this.Root,
53+
);
5954

60-
this.kernel
61-
.getServices()
62-
.viewRouterServiceContainer.service.boot(viewRouters, this.Root);
55+
kernelServices.i18nServiceContainer.boot();
6356
}
6457

6558
public getComponentTree() {
@@ -72,12 +65,10 @@ export class App {
7265
.flatComponentTree;
7366
}
7467

75-
async fetch(req: Request): Promise<Response> {
68+
public async fetch(req: Request): Promise<Response> {
7669
const url = new URL(req.url);
7770

78-
const kernelRun = this.kernel.run.bind(this.kernel);
79-
80-
return kernelRun(async () => {
71+
return this.kernel.run.call(this.kernel, async () => {
8172
if (url.pathname.startsWith("/api")) {
8273
return await this.kernel.services.apiRouterServiceContainer.handleApiRequest(
8374
req,

packages/gemi/http/I18nServiceContainer.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ import { I18nServiceProvider } from "./I18nServiceProvider";
55

66
class Router extends ApiRouter {
77
routes = {
8-
"/translations": this.get(async (req = new HttpRequest()) => {
8+
"/translations": this.get(async () => {
9+
const req = new HttpRequest<any, any>();
910
const { scope, locale: forcedLocale } = req.search.toJSON() as {
1011
scope: string;
1112
locale: string;
@@ -50,8 +51,6 @@ export class I18nServiceContainer {
5051
};
5152

5253
boot() {
53-
// await this.service.init();
54-
5554
const tmpStore = new Map<string, Map<string, string>>();
5655

5756
for (const [scope, translations] of Object.entries(

packages/gemi/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "gemi",
3-
"version": "0.4.92",
3+
"version": "0.4.93",
44
"devDependencies": {
55
"@babel/parser": "^7.25.4",
66
"@repo/eslint-config": "*",

0 commit comments

Comments
 (0)