@dreamkit/app 0.0.7-next.2 → 0.0.7-next.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/App.d.ts +2 -2
- package/lib/App.d.ts.map +1 -1
- package/lib/App.js +2 -2
- package/lib/builders/ApiBuilder.d.ts +0 -1
- package/lib/builders/ApiBuilder.d.ts.map +1 -1
- package/lib/builders/ApiBuilder.js +0 -4
- package/lib/builders/MiddlewareBuilder.d.ts +24 -0
- package/lib/builders/MiddlewareBuilder.d.ts.map +1 -0
- package/lib/builders/MiddlewareBuilder.js +35 -0
- package/lib/builders/ServiceBuilder.d.ts +33 -0
- package/lib/builders/ServiceBuilder.d.ts.map +1 -0
- package/lib/builders/ServiceBuilder.js +35 -0
- package/lib/index.d.ts +4 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +4 -2
- package/lib/objects/$api.d.ts.map +1 -1
- package/lib/objects/$api.js +7 -2
- package/lib/objects/$middleware.d.ts +3 -0
- package/lib/objects/$middleware.d.ts.map +1 -0
- package/lib/objects/$middleware.js +2 -0
- package/lib/objects/$service.d.ts +3 -0
- package/lib/objects/$service.d.ts.map +1 -0
- package/lib/objects/$service.js +2 -0
- package/package.json +4 -4
- package/lib/objects/middleware.d.ts +0 -8
- package/lib/objects/middleware.d.ts.map +0 -1
- package/lib/objects/middleware.js +0 -9
- package/lib/objects/service.d.ts +0 -20
- package/lib/objects/service.d.ts.map +0 -1
- package/lib/objects/service.js +0 -13
package/lib/App.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
import { MiddlewareConstructor } from "./builders/MiddlewareBuilder.js";
|
|
1
2
|
import { Route } from "./builders/RouteBuilder.js";
|
|
3
|
+
import { AppService, ServiceConstructor } from "./builders/ServiceBuilder.js";
|
|
2
4
|
import { SettingsConstructor } from "./builders/SettingsBuilder.js";
|
|
3
5
|
import { AppContext } from "./contexts/AppContext.js";
|
|
4
6
|
import { RequestContext } from "./contexts/RequestContext.js";
|
|
5
7
|
import { SettingsHandler, SettingsHandlerConstructor } from "./handlers/SettingsHandler.js";
|
|
6
|
-
import { MiddlewareConstructor } from "./objects/middleware.js";
|
|
7
|
-
import { AppService, ServiceConstructor } from "./objects/service.js";
|
|
8
8
|
export declare class App {
|
|
9
9
|
static instanceKey: string;
|
|
10
10
|
readonly started = false;
|
package/lib/App.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAc,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAEL,eAAe,EACf,0BAA0B,EAC3B,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,qBAAqB,EACtB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EACL,UAAU,EAEV,kBAAkB,EACnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAc,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAEL,eAAe,EACf,0BAA0B,EAC3B,MAAM,+BAA+B,CAAC;AAYvC,qBAAa,GAAG;IAId,MAAM,CAAC,WAAW,SAAY;IAC9B,QAAQ,CAAC,OAAO,SAAS;IACzB,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,OAAO,mBAA0B;IAC1C,QAAQ,CAAC,MAAM,aAAoB;IACnC,QAAQ,CAAC,QAAQ,kBAAyB;IAC1C,QAAQ,CAAC,WAAW,6BAAoC;IACxD,QAAQ,CAAC,QAAQ,iTAAkC;IAC5C,eAAe,EAAE,0BAA0B,GAAG,SAAS,CAAC;IAC/D,SAAS,CAAC,SAAS;wBACG;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,OAAO,CAAA;SAAE,KAAK,GAAG;2BACnC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,OAAO,CAAA;SAAE,KAAK,GAAG;2BAEpD;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,OAAO,CAAC;YAAC,MAAM,EAAE,KAAK,GAAG,QAAQ,CAAA;SAAE,KAAK,GAAG;MAEzE;;IAOF,MAAM,CAAC,QAAQ,IAAI,GAAG;IAKtB,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG;IAGjC,MAAM,CAAC,oBAAoB,IAAI,GAAG;IAKlC,EAAE,CACA,KAAK,EAAE,KAAK,GAAG,QAAQ,EACvB,EAAE,EAAE,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,KAAK,GAAG,GAChD,IAAI;IACP,EAAE,CACA,KAAK,EAAE,QAAQ,EACf,EAAE,EAAE,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,KAAK,GAAG,QAAQ,CAAA;KAAE,KAAK,GAAG,GAC1E,IAAI;IAKP,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,EAAE,EAAE,EAAE,GAAG,GAAG,IAAI;IAItD,WAAW,CAAC,KAAK,EAAE,OAAO;IAMpB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB1C,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,kBAAkB,GAAG,UAAU;cAiB7C,YAAY,CAAC,IAAI,EAAE,UAAU;cAU7B,WAAW,CAAC,IAAI,EAAE,UAAU;IAQtC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAuD5D,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,cAAc;IAahD,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;cAU9C,iBAAiB,CAAC,WAAW,EAAE,mBAAmB;;;cAgBlD,mBAAmB;cAanB,gBAAgB,CAAC,WAAW,EAAE,mBAAmB;IAUjE,SAAS,CAAC,cAAc,CAAC,WAAW,EAAE,mBAAmB;IAKzD,SAAS,CAAC,gBAAgB,IAAI,eAAe,GAAG,SAAS;IAGnD,KAAK;IAOL,IAAI;CAkBX"}
|
package/lib/App.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { RequestUrl } from "./RequestUrl.js";
|
|
2
2
|
import { isApi } from "./builders/ApiBuilder.js";
|
|
3
|
+
import { isMiddleware, } from "./builders/MiddlewareBuilder.js";
|
|
4
|
+
import { isService, } from "./builders/ServiceBuilder.js";
|
|
3
5
|
import { isSettings } from "./builders/SettingsBuilder.js";
|
|
4
6
|
import { AppContext } from "./contexts/AppContext.js";
|
|
5
7
|
import { RequestContext } from "./contexts/RequestContext.js";
|
|
6
8
|
import { isSettingsHandler, SettingsHandler, } from "./handlers/SettingsHandler.js";
|
|
7
|
-
import { isMiddleware } from "./objects/middleware.js";
|
|
8
|
-
import { isService, } from "./objects/service.js";
|
|
9
9
|
import { isRoute, kindApp } from "./utils/kind.js";
|
|
10
10
|
import { log } from "./utils/log.js";
|
|
11
11
|
import { IocBaseClass, normalizeIocParams, } from "@dreamkit/ioc";
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Func, FuncBuilder, FuncData } from "@dreamkit/func";
|
|
2
2
|
export declare const kindApi: (input: object, name?: string) => void, isApi: (input: unknown) => input is Func;
|
|
3
3
|
export declare class ApiBuilder<T extends FuncData> extends FuncBuilder<T> {
|
|
4
|
-
protected onCreate(func: Func): Func;
|
|
5
4
|
}
|
|
6
5
|
//# sourceMappingURL=ApiBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApiBuilder.d.ts","sourceRoot":"","sources":["../../src/builders/ApiBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG7D,eAAO,MAAO,OAAO,0CAAE,KAAK,mCAAyC,CAAC;AAEtE,qBAAa,UAAU,CAAC,CAAC,SAAS,QAAQ,CAAE,SAAQ,WAAW,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ApiBuilder.d.ts","sourceRoot":"","sources":["../../src/builders/ApiBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG7D,eAAO,MAAO,OAAO,0CAAE,KAAK,mCAAyC,CAAC;AAEtE,qBAAa,UAAU,CAAC,CAAC,SAAS,QAAQ,CAAE,SAAQ,WAAW,CAAC,CAAC,CAAC;CAAG"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { IocClass, IocParamsUserConfig } from "@dreamkit/ioc";
|
|
2
|
+
import type { Constructor, Merge } from "@dreamkit/utils/ts.js";
|
|
3
|
+
export declare const kindMiddleware: (input: object, name?: string) => void, isMiddleware: (input: unknown) => input is MiddlewareConstructor;
|
|
4
|
+
export type MiddlewareSelf = IocParamsUserConfig | undefined;
|
|
5
|
+
export type MiddlewareData<TSelf extends MiddlewareSelf = MiddlewareSelf> = {
|
|
6
|
+
self?: TSelf;
|
|
7
|
+
};
|
|
8
|
+
export type MiddlewareOptions<T extends MiddlewareData = MiddlewareData> = T & {};
|
|
9
|
+
export type MergeMiddlewareData<D1 extends MiddlewareData, D2 extends Partial<MiddlewareData>> = Merge<MiddlewareData, D1, D2>;
|
|
10
|
+
export declare abstract class Middleware {
|
|
11
|
+
abstract onRequest(): any;
|
|
12
|
+
}
|
|
13
|
+
export type MiddlewareConstructor = Constructor<Middleware>;
|
|
14
|
+
export declare class MiddlewareBuilder<T extends MiddlewareData = {}> {
|
|
15
|
+
readonly data: T;
|
|
16
|
+
readonly options: MiddlewareOptions<T>;
|
|
17
|
+
constructor(options?: MiddlewareOptions<T>);
|
|
18
|
+
protected clone(next: Partial<MiddlewareOptions>): this;
|
|
19
|
+
self<TSelf extends MiddlewareSelf>(value: TSelf): MiddlewareBuilder<MergeMiddlewareData<T, {
|
|
20
|
+
self: TSelf;
|
|
21
|
+
}>>;
|
|
22
|
+
create(): IocClass<T["self"] & {}, Middleware>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=MiddlewareBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MiddlewareBuilder.d.ts","sourceRoot":"","sources":["../../src/builders/MiddlewareBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EAER,mBAAmB,EACpB,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEhE,eAAO,MAAO,cAAc,0CAAE,YAAY,oDAEzC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,mBAAmB,GAAG,SAAS,CAAC;AAC7D,MAAM,MAAM,cAAc,CAAC,KAAK,SAAS,cAAc,GAAG,cAAc,IAAI;IAC1E,IAAI,CAAC,EAAE,KAAK,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,IACrE,CAAC,GAAG,EAAE,CAAC;AAET,MAAM,MAAM,mBAAmB,CAC7B,EAAE,SAAS,cAAc,EACzB,EAAE,SAAS,OAAO,CAAC,cAAc,CAAC,IAChC,KAAK,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAElC,8BAAsB,UAAU;IAI9B,QAAQ,CAAC,SAAS,IAAI,GAAG;CAC1B;AAED,MAAM,MAAM,qBAAqB,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;AAI5D,qBAAa,iBAAiB,CAAC,CAAC,SAAS,cAAc,GAAG,EAAE;IAC1D,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACjB,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;gBAC3B,OAAO,GAAE,iBAAiB,CAAC,CAAC,CAAa;IASrD,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAOvD,IAAI,CAAC,KAAK,SAAS,cAAc,EAC/B,KAAK,EAAE,KAAK,GACX,iBAAiB,CAAC,mBAAmB,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,KAAK,CAAA;KAAE,CAAC,CAAC;IAG7D,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC;CAG/C"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { createIocClass, } from "@dreamkit/ioc";
|
|
2
|
+
import { createKind } from "@dreamkit/kind";
|
|
3
|
+
export const [kindMiddleware, isMiddleware] = createKind("@dreamkit/app/middleware");
|
|
4
|
+
export class Middleware {
|
|
5
|
+
static {
|
|
6
|
+
kindMiddleware(this);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
const MiddlewareClass = createIocClass(Middleware);
|
|
10
|
+
export class MiddlewareBuilder {
|
|
11
|
+
data;
|
|
12
|
+
options;
|
|
13
|
+
constructor(options = {}) {
|
|
14
|
+
const $this = this;
|
|
15
|
+
this.options = options;
|
|
16
|
+
this.data = {
|
|
17
|
+
get self() {
|
|
18
|
+
return $this.options.self;
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
clone(next) {
|
|
23
|
+
const prev = this.options;
|
|
24
|
+
return new MiddlewareBuilder({
|
|
25
|
+
...prev,
|
|
26
|
+
...next,
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
self(value) {
|
|
30
|
+
return this.clone({ self: value });
|
|
31
|
+
}
|
|
32
|
+
create() {
|
|
33
|
+
return MiddlewareClass(this.options.self || {});
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { IocClass, IocParamsUserConfig } from "@dreamkit/ioc";
|
|
2
|
+
import type { Constructor, Merge } from "@dreamkit/utils/ts.js";
|
|
3
|
+
export declare const kindService: (input: object, name?: string) => void, isService: (input: unknown) => input is ServiceConstructor;
|
|
4
|
+
export type ServiceSelf = IocParamsUserConfig | undefined;
|
|
5
|
+
export type ServiceData<TSelf extends ServiceSelf = ServiceSelf> = {
|
|
6
|
+
self?: TSelf;
|
|
7
|
+
};
|
|
8
|
+
export type ServiceOptions<T extends ServiceData = ServiceData> = T & {};
|
|
9
|
+
export type MergeServiceData<D1 extends ServiceData, D2 extends Partial<ServiceData>> = Merge<ServiceData, D1, D2>;
|
|
10
|
+
type SyncOrAsync<T> = T | Promise<T>;
|
|
11
|
+
export type Shutdown = () => SyncOrAsync<void>;
|
|
12
|
+
export type AppService = {
|
|
13
|
+
name: string;
|
|
14
|
+
service: ServiceConstructor;
|
|
15
|
+
started: boolean;
|
|
16
|
+
shutdown?: Shutdown;
|
|
17
|
+
};
|
|
18
|
+
export declare abstract class Service {
|
|
19
|
+
abstract onStart(): any;
|
|
20
|
+
}
|
|
21
|
+
export type ServiceConstructor = Constructor<Service>;
|
|
22
|
+
export declare class ServiceBuilder<T extends ServiceData = {}> {
|
|
23
|
+
readonly data: T;
|
|
24
|
+
readonly options: ServiceOptions<T>;
|
|
25
|
+
constructor(options?: ServiceOptions<T>);
|
|
26
|
+
protected clone(next: Partial<ServiceOptions>): this;
|
|
27
|
+
self<TSelf extends ServiceSelf>(value: TSelf): ServiceBuilder<MergeServiceData<T, {
|
|
28
|
+
self: TSelf;
|
|
29
|
+
}>>;
|
|
30
|
+
create(): IocClass<T["self"] & {}, Service>;
|
|
31
|
+
}
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=ServiceBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceBuilder.d.ts","sourceRoot":"","sources":["../../src/builders/ServiceBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,QAAQ,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAE9E,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEhE,eAAO,MAAO,WAAW,0CAAE,SAAS,iDAEnC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,mBAAmB,GAAG,SAAS,CAAC;AAC1D,MAAM,MAAM,WAAW,CAAC,KAAK,SAAS,WAAW,GAAG,WAAW,IAAI;IACjE,IAAI,CAAC,EAAE,KAAK,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI,CAAC,GAAG,EAAE,CAAC;AAEzE,MAAM,MAAM,gBAAgB,CAC1B,EAAE,SAAS,WAAW,EACtB,EAAE,SAAS,OAAO,CAAC,WAAW,CAAC,IAC7B,KAAK,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAE/B,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AACrC,MAAM,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;AAC/C,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,kBAAkB,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF,8BAAsB,OAAO;IAI3B,QAAQ,CAAC,OAAO,IAAI,GAAG;CACxB;AAED,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAItD,qBAAa,cAAc,CAAC,CAAC,SAAS,WAAW,GAAG,EAAE;IACpD,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACjB,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;gBACxB,OAAO,GAAE,cAAc,CAAC,CAAC,CAAa;IASlD,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAOpD,IAAI,CAAC,KAAK,SAAS,WAAW,EAC5B,KAAK,EAAE,KAAK,GACX,cAAc,CAAC,gBAAgB,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,KAAK,CAAA;KAAE,CAAC,CAAC;IAGvD,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC;CAG5C"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { createIocClass } from "@dreamkit/ioc";
|
|
2
|
+
import { createKind } from "@dreamkit/kind";
|
|
3
|
+
export const [kindService, isService] = createKind("@dreamkit/app/service");
|
|
4
|
+
export class Service {
|
|
5
|
+
static {
|
|
6
|
+
kindService(this);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
const ServiceClass = createIocClass(Service);
|
|
10
|
+
export class ServiceBuilder {
|
|
11
|
+
data;
|
|
12
|
+
options;
|
|
13
|
+
constructor(options = {}) {
|
|
14
|
+
const $this = this;
|
|
15
|
+
this.options = options;
|
|
16
|
+
this.data = {
|
|
17
|
+
get self() {
|
|
18
|
+
return $this.options.self;
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
clone(next) {
|
|
23
|
+
const prev = this.options;
|
|
24
|
+
return new ServiceBuilder({
|
|
25
|
+
...prev,
|
|
26
|
+
...next,
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
self(value) {
|
|
30
|
+
return this.clone({ self: value });
|
|
31
|
+
}
|
|
32
|
+
create() {
|
|
33
|
+
return ServiceClass(this.options.self || {});
|
|
34
|
+
}
|
|
35
|
+
}
|
package/lib/index.d.ts
CHANGED
|
@@ -7,10 +7,12 @@ export { AppContext } from "./contexts/AppContext.js";
|
|
|
7
7
|
export { RequestContext } from "./contexts/RequestContext.js";
|
|
8
8
|
export { $api } from "./objects/$api.js";
|
|
9
9
|
export { $route } from "./objects/$route.js";
|
|
10
|
+
export { $middleware } from "./objects/$middleware.js";
|
|
11
|
+
export { $service } from "./objects/$service.js";
|
|
10
12
|
export { RouteBuilder, type RouteOptions, type Route, type RouteData, type RouteProps, } from "./builders/RouteBuilder.js";
|
|
11
13
|
export { $settings } from "./objects/$settings.js";
|
|
12
14
|
export { Settings, SettingsBuilder, type SettingsConstructor, type SettingsData, isSettings, } from "./builders/SettingsBuilder.js";
|
|
13
|
-
export { Middleware,
|
|
14
|
-
export { Service,
|
|
15
|
+
export { Middleware, isMiddleware, type MiddlewareConstructor, type MiddlewareOptions, type MiddlewareData, } from "./builders/MiddlewareBuilder.js";
|
|
16
|
+
export { Service, type ServiceConstructor, type ServiceOptions, type ServiceData, isService, } from "./builders/ServiceBuilder.js";
|
|
15
17
|
export { SettingsHandler, SettingsHandlerClass, type SettingsHandlerSaveResult, } from "./handlers/SettingsHandler.js";
|
|
16
18
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EACL,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,KAAK,EACV,KAAK,SAAS,EACd,KAAK,UAAU,GAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EACL,QAAQ,EACR,eAAe,EACf,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,UAAU,GACX,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,UAAU,EACV,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EACL,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,KAAK,EACV,KAAK,SAAS,EACd,KAAK,UAAU,GAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EACL,QAAQ,EACR,eAAe,EACf,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,UAAU,GACX,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,UAAU,EACV,YAAY,EACZ,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,cAAc,GACpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,OAAO,EACP,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,SAAS,GACV,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,KAAK,yBAAyB,GAC/B,MAAM,+BAA+B,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -9,10 +9,12 @@ export { RequestContext } from "./contexts/RequestContext.js";
|
|
|
9
9
|
// objects
|
|
10
10
|
export { $api } from "./objects/$api.js";
|
|
11
11
|
export { $route } from "./objects/$route.js";
|
|
12
|
+
export { $middleware } from "./objects/$middleware.js";
|
|
13
|
+
export { $service } from "./objects/$service.js";
|
|
12
14
|
export { RouteBuilder, } from "./builders/RouteBuilder.js";
|
|
13
15
|
export { $settings } from "./objects/$settings.js";
|
|
14
16
|
export { Settings, SettingsBuilder, isSettings, } from "./builders/SettingsBuilder.js";
|
|
15
|
-
export { Middleware,
|
|
16
|
-
export { Service,
|
|
17
|
+
export { Middleware, isMiddleware, } from "./builders/MiddlewareBuilder.js";
|
|
18
|
+
export { Service, isService, } from "./builders/ServiceBuilder.js";
|
|
17
19
|
// handlers
|
|
18
20
|
export { SettingsHandler, SettingsHandlerClass, } from "./handlers/SettingsHandler.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"$api.d.ts","sourceRoot":"","sources":["../../src/objects/$api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"$api.d.ts","sourceRoot":"","sources":["../../src/objects/$api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAW,MAAM,2BAA2B,CAAC;AAEhE,eAAO,MAAM,IAAI,gBAKf,CAAC"}
|
package/lib/objects/$api.js
CHANGED
|
@@ -1,2 +1,7 @@
|
|
|
1
|
-
import { ApiBuilder } from "../builders/ApiBuilder.js";
|
|
2
|
-
export const $api = /*#__PURE__*/ new ApiBuilder({})
|
|
1
|
+
import { ApiBuilder, kindApi } from "../builders/ApiBuilder.js";
|
|
2
|
+
export const $api = /*#__PURE__*/ new ApiBuilder({})["clone"]({
|
|
3
|
+
onCreate: (func) => {
|
|
4
|
+
kindApi(func);
|
|
5
|
+
return func;
|
|
6
|
+
},
|
|
7
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"$middleware.d.ts","sourceRoot":"","sources":["../../src/objects/$middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,eAAO,MAAM,WAAW,uBAA0C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"$service.d.ts","sourceRoot":"","sources":["../../src/objects/$service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,eAAO,MAAM,QAAQ,oBAAuC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dreamkit/app",
|
|
3
|
-
"version": "0.0.7-next.
|
|
3
|
+
"version": "0.0.7-next.3",
|
|
4
4
|
"description": "Set of utils to create applications.",
|
|
5
5
|
"homepage": "https://dreamkit.dev",
|
|
6
6
|
"repository": {
|
|
@@ -27,10 +27,10 @@
|
|
|
27
27
|
],
|
|
28
28
|
"dependencies": {
|
|
29
29
|
"debug": "^4.3.7",
|
|
30
|
-
"@dreamkit/func": "0.0.3-next.
|
|
31
|
-
"@dreamkit/ioc": "0.0.2-next.
|
|
30
|
+
"@dreamkit/func": "0.0.3-next.3",
|
|
31
|
+
"@dreamkit/ioc": "0.0.2-next.2",
|
|
32
32
|
"@dreamkit/kind": "0.0.2",
|
|
33
|
-
"@dreamkit/schema": "0.0.5-next.
|
|
33
|
+
"@dreamkit/schema": "0.0.5-next.1",
|
|
34
34
|
"@dreamkit/utils": "0.0.5-next.0"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { Constructor } from "@dreamkit/utils/ts.js";
|
|
2
|
-
export declare const kindMiddleware: (input: object, name?: string) => void, isMiddleware: (input: unknown) => input is MiddlewareConstructor;
|
|
3
|
-
export type MiddlewareConstructor = Constructor<Middleware>;
|
|
4
|
-
export declare abstract class Middleware {
|
|
5
|
-
abstract onRequest(): any;
|
|
6
|
-
}
|
|
7
|
-
export declare const MiddlewareClass: <P extends import("@dreamkit/ioc").IocParamsUserConfig = {}>(params: P) => import("@dreamkit/ioc").IocClass<P & {}, Middleware, never, import("@dreamkit/ioc").IocParams<P & {}>>;
|
|
8
|
-
//# sourceMappingURL=middleware.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../src/objects/middleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,eAAO,MAAO,cAAc,0CAAE,YAAY,oDAEzC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;AAC5D,8BAAsB,UAAU;IAI9B,QAAQ,CAAC,SAAS,IAAI,GAAG;CAC1B;AAED,eAAO,MAAM,eAAe,mLAA6B,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { createIocClass } from "@dreamkit/ioc";
|
|
2
|
-
import { createKind } from "@dreamkit/kind";
|
|
3
|
-
export const [kindMiddleware, isMiddleware] = createKind("@dreamkit/app/middleware");
|
|
4
|
-
export class Middleware {
|
|
5
|
-
static {
|
|
6
|
-
kindMiddleware(this);
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
export const MiddlewareClass = createIocClass(Middleware);
|
package/lib/objects/service.d.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Constructor } from "@dreamkit/utils/ts.js";
|
|
2
|
-
export declare const kindService: (input: object, name?: string) => void, isService: (input: unknown) => input is ServiceConstructor;
|
|
3
|
-
type SyncOrAsync<T> = T | Promise<T>;
|
|
4
|
-
export type Shutdown = () => SyncOrAsync<void>;
|
|
5
|
-
export type AppService = {
|
|
6
|
-
name: string;
|
|
7
|
-
service: ServiceConstructor;
|
|
8
|
-
started: boolean;
|
|
9
|
-
shutdown?: Shutdown;
|
|
10
|
-
};
|
|
11
|
-
export type ServiceStop = SyncOrAsync<void> | Shutdown;
|
|
12
|
-
export type ServiceConstructor = Constructor<Service>;
|
|
13
|
-
export declare abstract class Service {
|
|
14
|
-
get name(): string | undefined;
|
|
15
|
-
abstract onStart(): ServiceStop;
|
|
16
|
-
onStop(): any;
|
|
17
|
-
}
|
|
18
|
-
export declare const ServiceClass: <P extends import("@dreamkit/ioc").IocParamsUserConfig = {}>(params: P) => import("@dreamkit/ioc").IocClass<P & {}, Service, never, import("@dreamkit/ioc").IocParams<P & {}>>;
|
|
19
|
-
export {};
|
|
20
|
-
//# sourceMappingURL=service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/objects/service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,eAAO,MAAO,WAAW,0CAAE,SAAS,iDAEnC,CAAC;AAEF,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AACrC,MAAM,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;AAC/C,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,kBAAkB,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AACF,MAAM,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;AACvD,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AACtD,8BAAsB,OAAO;IAI3B,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAE7B;IACD,QAAQ,CAAC,OAAO,IAAI,WAAW;IAC/B,MAAM,IAAI,GAAG;CACd;AAED,eAAO,MAAM,YAAY,gLAA0B,CAAC"}
|
package/lib/objects/service.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { createIocClass } from "@dreamkit/ioc";
|
|
2
|
-
import { createKind } from "@dreamkit/kind";
|
|
3
|
-
export const [kindService, isService] = createKind("@dreamkit/app/service");
|
|
4
|
-
export class Service {
|
|
5
|
-
static {
|
|
6
|
-
kindService(this);
|
|
7
|
-
}
|
|
8
|
-
get name() {
|
|
9
|
-
return;
|
|
10
|
-
}
|
|
11
|
-
onStop() { }
|
|
12
|
-
}
|
|
13
|
-
export const ServiceClass = createIocClass(Service);
|