@eggjs/standalone 4.0.0-beta.34 → 4.0.0-beta.36

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.
@@ -1,20 +1,24 @@
1
- import { AccessLevel, type EggProtoImplClass, type EggPrototypeName, type MetaDataKey, type ObjectInitTypeLike, type QualifierInfo, type Id, type QualifierValue } from '@eggjs/tegg';
2
- import type { EggPrototype, InjectObjectProto, EggPrototypeLifecycleContext } from '@eggjs/metadata';
3
- export declare class StandaloneInnerObjectProto implements EggPrototype {
4
- [key: symbol]: PropertyDescriptor;
5
- private readonly clazz;
6
- private readonly qualifiers;
7
- readonly id: string;
8
- readonly name: EggPrototypeName;
9
- readonly initType: ObjectInitTypeLike;
10
- readonly accessLevel: AccessLevel;
11
- readonly injectObjects: InjectObjectProto[];
12
- readonly loadUnitId: Id;
13
- constructor(id: string, name: EggPrototypeName, clazz: EggProtoImplClass, initType: ObjectInitTypeLike, loadUnitId: Id, qualifiers: QualifierInfo[]);
14
- verifyQualifiers(qualifiers: QualifierInfo[]): boolean;
15
- verifyQualifier(qualifier: QualifierInfo): boolean;
16
- constructEggObject(): object;
17
- getMetaData<T>(metadataKey: MetaDataKey): T | undefined;
18
- getQualifier(attribute: string): QualifierValue | undefined;
19
- static create(ctx: EggPrototypeLifecycleContext): EggPrototype;
1
+ import { EggPrototype, EggPrototypeLifecycleContext, InjectObjectProto } from "@eggjs/metadata";
2
+ import { AccessLevel, EggProtoImplClass, EggPrototypeName, Id, MetaDataKey, ObjectInitTypeLike, QualifierInfo, QualifierValue } from "@eggjs/tegg";
3
+
4
+ //#region src/StandaloneInnerObjectProto.d.ts
5
+ declare class StandaloneInnerObjectProto implements EggPrototype {
6
+ [key: symbol]: PropertyDescriptor;
7
+ private readonly clazz;
8
+ private readonly qualifiers;
9
+ readonly id: string;
10
+ readonly name: EggPrototypeName;
11
+ readonly initType: ObjectInitTypeLike;
12
+ readonly accessLevel: AccessLevel;
13
+ readonly injectObjects: InjectObjectProto[];
14
+ readonly loadUnitId: Id;
15
+ constructor(id: string, name: EggPrototypeName, clazz: EggProtoImplClass, initType: ObjectInitTypeLike, loadUnitId: Id, qualifiers: QualifierInfo[]);
16
+ verifyQualifiers(qualifiers: QualifierInfo[]): boolean;
17
+ verifyQualifier(qualifier: QualifierInfo): boolean;
18
+ constructEggObject(): object;
19
+ getMetaData<T>(metadataKey: MetaDataKey): T | undefined;
20
+ getQualifier(attribute: string): QualifierValue | undefined;
21
+ static create(ctx: EggPrototypeLifecycleContext): EggPrototype;
20
22
  }
23
+ //#endregion
24
+ export { StandaloneInnerObjectProto };
@@ -1,50 +1,47 @@
1
- import { AccessLevel, MetadataUtil, QualifierUtil, IdenticalUtil, } from '@eggjs/tegg';
2
- export class StandaloneInnerObjectProto {
3
- clazz;
4
- qualifiers;
5
- id;
6
- name;
7
- initType;
8
- accessLevel;
9
- injectObjects;
10
- loadUnitId;
11
- constructor(id, name, clazz, initType, loadUnitId, qualifiers) {
12
- this.id = id;
13
- this.clazz = clazz;
14
- this.name = name;
15
- this.initType = initType;
16
- this.accessLevel = AccessLevel.PUBLIC;
17
- this.injectObjects = [];
18
- this.loadUnitId = loadUnitId;
19
- this.qualifiers = qualifiers;
20
- }
21
- verifyQualifiers(qualifiers) {
22
- for (const qualifier of qualifiers) {
23
- if (!this.verifyQualifier(qualifier)) {
24
- return false;
25
- }
26
- }
27
- return true;
28
- }
29
- verifyQualifier(qualifier) {
30
- const selfQualifiers = this.qualifiers.find((t) => t.attribute === qualifier.attribute);
31
- return selfQualifiers?.value === qualifier.value;
32
- }
33
- constructEggObject() {
34
- return Reflect.apply(this.clazz, null, []);
35
- }
36
- getMetaData(metadataKey) {
37
- return MetadataUtil.getMetaData(metadataKey, this.clazz);
38
- }
39
- getQualifier(attribute) {
40
- return this.qualifiers.find((t) => t.attribute === attribute)?.value;
41
- }
42
- static create(ctx) {
43
- const { clazz, loadUnit } = ctx;
44
- const name = ctx.prototypeInfo.name;
45
- const id = IdenticalUtil.createProtoId(loadUnit.id, name);
46
- const proto = new StandaloneInnerObjectProto(id, name, clazz, ctx.prototypeInfo.initType, loadUnit.id, QualifierUtil.getProtoQualifiers(clazz));
47
- return proto;
48
- }
49
- }
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhbmRhbG9uZUlubmVyT2JqZWN0UHJvdG8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvU3RhbmRhbG9uZUlubmVyT2JqZWN0UHJvdG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFdBQVcsRUFJWCxZQUFZLEVBR1osYUFBYSxFQUViLGFBQWEsR0FFZCxNQUFNLGFBQWEsQ0FBQztBQUdyQixNQUFNLE9BQU8sMEJBQTBCO0lBRXBCLEtBQUssQ0FBb0I7SUFDekIsVUFBVSxDQUFrQjtJQUVwQyxFQUFFLENBQVM7SUFDWCxJQUFJLENBQW1CO0lBQ3ZCLFFBQVEsQ0FBcUI7SUFDN0IsV0FBVyxDQUFjO0lBQ3pCLGFBQWEsQ0FBc0I7SUFDbkMsVUFBVSxDQUFLO0lBRXhCLFlBQ0UsRUFBVSxFQUNWLElBQXNCLEVBQ3RCLEtBQXdCLEVBQ3hCLFFBQTRCLEVBQzVCLFVBQWMsRUFDZCxVQUEyQjtRQUUzQixJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQztRQUN0QyxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUMvQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsVUFBMkI7UUFDMUMsS0FBSyxNQUFNLFNBQVMsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUNyQyxPQUFPLEtBQUssQ0FBQztZQUNmLENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsZUFBZSxDQUFDLFNBQXdCO1FBQ3RDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxLQUFLLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4RixPQUFPLGNBQWMsRUFBRSxLQUFLLEtBQUssU0FBUyxDQUFDLEtBQUssQ0FBQztJQUNuRCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsV0FBVyxDQUFJLFdBQXdCO1FBQ3JDLE9BQU8sWUFBWSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxZQUFZLENBQUMsU0FBaUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsRUFBRSxLQUFLLENBQUM7SUFDdkUsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBaUM7UUFDN0MsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsR0FBRyxHQUFHLENBQUM7UUFDaEMsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUM7UUFDcEMsTUFBTSxFQUFFLEdBQUcsYUFBYSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzFELE1BQU0sS0FBSyxHQUFHLElBQUksMEJBQTBCLENBQzFDLEVBQUUsRUFDRixJQUFJLEVBQ0osS0FBSyxFQUNMLEdBQUcsQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUMxQixRQUFRLENBQUMsRUFBRSxFQUNYLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FDeEMsQ0FBQztRQUNGLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztDQUNGIn0=
1
+ import { AccessLevel, IdenticalUtil, MetadataUtil, QualifierUtil } from "@eggjs/tegg";
2
+
3
+ //#region src/StandaloneInnerObjectProto.ts
4
+ var StandaloneInnerObjectProto = class StandaloneInnerObjectProto {
5
+ clazz;
6
+ qualifiers;
7
+ id;
8
+ name;
9
+ initType;
10
+ accessLevel;
11
+ injectObjects;
12
+ loadUnitId;
13
+ constructor(id, name, clazz, initType, loadUnitId, qualifiers) {
14
+ this.id = id;
15
+ this.clazz = clazz;
16
+ this.name = name;
17
+ this.initType = initType;
18
+ this.accessLevel = AccessLevel.PUBLIC;
19
+ this.injectObjects = [];
20
+ this.loadUnitId = loadUnitId;
21
+ this.qualifiers = qualifiers;
22
+ }
23
+ verifyQualifiers(qualifiers) {
24
+ for (const qualifier of qualifiers) if (!this.verifyQualifier(qualifier)) return false;
25
+ return true;
26
+ }
27
+ verifyQualifier(qualifier) {
28
+ return this.qualifiers.find((t) => t.attribute === qualifier.attribute)?.value === qualifier.value;
29
+ }
30
+ constructEggObject() {
31
+ return Reflect.apply(this.clazz, null, []);
32
+ }
33
+ getMetaData(metadataKey) {
34
+ return MetadataUtil.getMetaData(metadataKey, this.clazz);
35
+ }
36
+ getQualifier(attribute) {
37
+ return this.qualifiers.find((t) => t.attribute === attribute)?.value;
38
+ }
39
+ static create(ctx) {
40
+ const { clazz, loadUnit } = ctx;
41
+ const name = ctx.prototypeInfo.name;
42
+ return new StandaloneInnerObjectProto(IdenticalUtil.createProtoId(loadUnit.id, name), name, clazz, ctx.prototypeInfo.initType, loadUnit.id, QualifierUtil.getProtoQualifiers(clazz));
43
+ }
44
+ };
45
+
46
+ //#endregion
47
+ export { StandaloneInnerObjectProto };
@@ -1,23 +1,10 @@
1
- import { type EggPrototype, type LoadUnit } from '@eggjs/metadata';
2
- import { type QualifierInfo } from '@eggjs/tegg';
3
- export declare const StandaloneLoadUnitType = "StandaloneLoadUnitType";
4
- export interface InnerObject {
5
- obj: object;
6
- qualifiers?: QualifierInfo[];
7
- }
8
- export declare class StandaloneLoadUnit implements LoadUnit {
9
- readonly id: string;
10
- readonly name: string;
11
- readonly unitPath: string;
12
- readonly type: string;
13
- private innerObject;
14
- private protoMap;
15
- constructor(innerObject: Record<string, InnerObject[]>);
16
- init(): Promise<void>;
17
- containPrototype(proto: EggPrototype): boolean;
18
- getEggPrototype(name: string, qualifiers: QualifierInfo[]): EggPrototype[];
19
- registerEggPrototype(proto: EggPrototype): void;
20
- deletePrototype(proto: EggPrototype): void;
21
- destroy(): Promise<void>;
22
- iterateEggPrototype(): IterableIterator<EggPrototype>;
1
+ import { EggPrototype, LoadUnit } from "@eggjs/metadata";
2
+ import { QualifierInfo } from "@eggjs/tegg";
3
+
4
+ //#region src/StandaloneLoadUnit.d.ts
5
+ interface InnerObject {
6
+ obj: object;
7
+ qualifiers?: QualifierInfo[];
23
8
  }
9
+ //#endregion
10
+ export { InnerObject };
@@ -1,61 +1,54 @@
1
- import { EggPrototypeFactory } from '@eggjs/metadata';
2
- import { ObjectInitType } from '@eggjs/tegg';
3
- import { MapUtil } from '@eggjs/tegg-common-util';
4
- import { IdenticalUtil } from '@eggjs/lifecycle';
5
1
  import { StandaloneInnerObjectProto } from "./StandaloneInnerObjectProto.js";
6
- export const StandaloneLoadUnitType = 'StandaloneLoadUnitType';
7
- export class StandaloneLoadUnit {
8
- id = 'StandaloneLoadUnit';
9
- name = 'StandaloneLoadUnit';
10
- unitPath = 'MockStandaloneLoadUnitPath';
11
- type = StandaloneLoadUnitType;
12
- innerObject;
13
- protoMap = new Map();
14
- constructor(innerObject) {
15
- this.innerObject = innerObject;
16
- }
17
- async init() {
18
- for (const [name, objs] of Object.entries(this.innerObject)) {
19
- for (const { obj, qualifiers } of objs) {
20
- const proto = new StandaloneInnerObjectProto(IdenticalUtil.createProtoId(this.id, name), name, (() => obj), ObjectInitType.SINGLETON, this.id, qualifiers || []);
21
- EggPrototypeFactory.instance.registerPrototype(proto, this);
22
- }
23
- }
24
- }
25
- containPrototype(proto) {
26
- return !!this.protoMap.get(proto.name)?.find((t) => t === proto);
27
- }
28
- getEggPrototype(name, qualifiers) {
29
- const protos = this.protoMap.get(name);
30
- return protos?.filter((proto) => proto.verifyQualifiers(qualifiers)) || [];
31
- }
32
- registerEggPrototype(proto) {
33
- const protoList = MapUtil.getOrStore(this.protoMap, proto.name, []);
34
- protoList.push(proto);
35
- }
36
- deletePrototype(proto) {
37
- const protos = this.protoMap.get(proto.name);
38
- if (protos) {
39
- const index = protos.indexOf(proto);
40
- if (index !== -1) {
41
- protos.splice(index, 1);
42
- }
43
- }
44
- }
45
- async destroy() {
46
- for (const namedProtoMap of this.protoMap.values()) {
47
- for (const proto of namedProtoMap.values()) {
48
- EggPrototypeFactory.instance.deletePrototype(proto, this);
49
- }
50
- }
51
- this.protoMap.clear();
52
- }
53
- iterateEggPrototype() {
54
- const protos = Array.from(this.protoMap.values()).reduce((p, c) => {
55
- p = p.concat(c);
56
- return p;
57
- }, []);
58
- return protos.values();
59
- }
60
- }
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhbmRhbG9uZUxvYWRVbml0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1N0YW5kYWxvbmVMb2FkVW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLG1CQUFtQixFQUFpQixNQUFNLGlCQUFpQixDQUFDO0FBQ3hGLE9BQU8sRUFBeUIsY0FBYyxFQUFzQixNQUFNLGFBQWEsQ0FBQztBQUN4RixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWpELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTdFLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLHdCQUF3QixDQUFDO0FBTy9ELE1BQU0sT0FBTyxrQkFBa0I7SUFDcEIsRUFBRSxHQUFXLG9CQUFvQixDQUFDO0lBQ2xDLElBQUksR0FBVyxvQkFBb0IsQ0FBQztJQUNwQyxRQUFRLEdBQVcsNEJBQTRCLENBQUM7SUFDaEQsSUFBSSxHQUFXLHNCQUFzQixDQUFDO0lBRXZDLFdBQVcsQ0FBZ0M7SUFDM0MsUUFBUSxHQUEwQyxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBRXBFLFlBQVksV0FBMEM7UUFDcEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFJO1FBQ1IsS0FBSyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7WUFDNUQsS0FBSyxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUN2QyxNQUFNLEtBQUssR0FBRyxJQUFJLDBCQUEwQixDQUMxQyxhQUFhLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUs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
2
+ import { EggPrototypeFactory } from "@eggjs/metadata";
3
+ import { ObjectInitType } from "@eggjs/tegg";
4
+ import { MapUtil } from "@eggjs/tegg-common-util";
5
+ import { IdenticalUtil as IdenticalUtil$1 } from "@eggjs/lifecycle";
6
+
7
+ //#region src/StandaloneLoadUnit.ts
8
+ const StandaloneLoadUnitType = "StandaloneLoadUnitType";
9
+ var StandaloneLoadUnit = class {
10
+ id = "StandaloneLoadUnit";
11
+ name = "StandaloneLoadUnit";
12
+ unitPath = "MockStandaloneLoadUnitPath";
13
+ type = StandaloneLoadUnitType;
14
+ innerObject;
15
+ protoMap = /* @__PURE__ */ new Map();
16
+ constructor(innerObject) {
17
+ this.innerObject = innerObject;
18
+ }
19
+ async init() {
20
+ for (const [name, objs] of Object.entries(this.innerObject)) for (const { obj, qualifiers } of objs) {
21
+ const proto = new StandaloneInnerObjectProto(IdenticalUtil$1.createProtoId(this.id, name), name, (() => obj), ObjectInitType.SINGLETON, this.id, qualifiers || []);
22
+ EggPrototypeFactory.instance.registerPrototype(proto, this);
23
+ }
24
+ }
25
+ containPrototype(proto) {
26
+ return !!this.protoMap.get(proto.name)?.find((t) => t === proto);
27
+ }
28
+ getEggPrototype(name, qualifiers) {
29
+ return this.protoMap.get(name)?.filter((proto) => proto.verifyQualifiers(qualifiers)) || [];
30
+ }
31
+ registerEggPrototype(proto) {
32
+ MapUtil.getOrStore(this.protoMap, proto.name, []).push(proto);
33
+ }
34
+ deletePrototype(proto) {
35
+ const protos = this.protoMap.get(proto.name);
36
+ if (protos) {
37
+ const index = protos.indexOf(proto);
38
+ if (index !== -1) protos.splice(index, 1);
39
+ }
40
+ }
41
+ async destroy() {
42
+ for (const namedProtoMap of this.protoMap.values()) for (const proto of namedProtoMap.values()) EggPrototypeFactory.instance.deletePrototype(proto, this);
43
+ this.protoMap.clear();
44
+ }
45
+ iterateEggPrototype() {
46
+ return Array.from(this.protoMap.values()).reduce((p, c) => {
47
+ p = p.concat(c);
48
+ return p;
49
+ }, []).values();
50
+ }
51
+ };
52
+
53
+ //#endregion
54
+ export { StandaloneLoadUnit, StandaloneLoadUnitType };
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
- export * from './EggModuleLoader.ts';
2
- export * from './Runner.ts';
3
- export * from './main.ts';
4
- export * from './StandaloneInnerObjectProto.ts';
5
- export * from './StandaloneContext.ts';
6
- export * from './StandaloneInnerObject.ts';
1
+ import { EggModuleLoader, EggModuleLoaderOptions } from "./EggModuleLoader.js";
2
+ import { ModuleDependency, Runner, RunnerOptions } from "./Runner.js";
3
+ import { main, preLoad } from "./main.js";
4
+ import { StandaloneInnerObjectProto } from "./StandaloneInnerObjectProto.js";
5
+ import { StandaloneContext } from "./StandaloneContext.js";
6
+ import { StandaloneInnerObject } from "./StandaloneInnerObject.js";
7
+ export { EggModuleLoader, EggModuleLoaderOptions, ModuleDependency, Runner, RunnerOptions, StandaloneContext, StandaloneInnerObject, StandaloneInnerObjectProto, main, preLoad };
package/dist/index.js CHANGED
@@ -1,7 +1,8 @@
1
- export * from "./EggModuleLoader.js";
2
- export * from "./Runner.js";
3
- export * from "./main.js";
4
- export * from "./StandaloneInnerObjectProto.js";
5
- export * from "./StandaloneContext.js";
6
- export * from "./StandaloneInnerObject.js";
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyw0QkFBNEIsQ0FBQyJ9
1
+ import { EggModuleLoader } from "./EggModuleLoader.js";
2
+ import { StandaloneContext } from "./StandaloneContext.js";
3
+ import { StandaloneInnerObjectProto } from "./StandaloneInnerObjectProto.js";
4
+ import { Runner } from "./Runner.js";
5
+ import { main, preLoad } from "./main.js";
6
+ import { StandaloneInnerObject } from "./StandaloneInnerObject.js";
7
+
8
+ export { EggModuleLoader, Runner, StandaloneContext, StandaloneInnerObject, StandaloneInnerObjectProto, main, preLoad };
package/dist/main.d.ts CHANGED
@@ -1,3 +1,7 @@
1
- import { type RunnerOptions } from './Runner.ts';
2
- export declare function preLoad(cwd: string, dependencies?: RunnerOptions['dependencies']): Promise<void>;
3
- export declare function main<T = void>(cwd: string, options?: RunnerOptions): Promise<T>;
1
+ import { RunnerOptions } from "./Runner.js";
2
+
3
+ //#region src/main.d.ts
4
+ declare function preLoad(cwd: string, dependencies?: RunnerOptions["dependencies"]): Promise<void>;
5
+ declare function main<T = void>(cwd: string, options?: RunnerOptions): Promise<T>;
6
+ //#endregion
7
+ export { main, preLoad };
package/dist/main.js CHANGED
@@ -1,34 +1,31 @@
1
1
  import { Runner } from "./Runner.js";
2
- export async function preLoad(cwd, dependencies) {
3
- try {
4
- await Runner.preLoad(cwd, dependencies);
5
- }
6
- catch (e) {
7
- if (e instanceof Error) {
8
- e.message = `[tegg/standalone] bootstrap standalone preLoad failed: ${e.message}`;
9
- }
10
- throw e;
11
- }
2
+
3
+ //#region src/main.ts
4
+ async function preLoad(cwd, dependencies) {
5
+ try {
6
+ await Runner.preLoad(cwd, dependencies);
7
+ } catch (e) {
8
+ if (e instanceof Error) e.message = `[tegg/standalone] bootstrap standalone preLoad failed: ${e.message}`;
9
+ throw e;
10
+ }
12
11
  }
13
- export async function main(cwd, options) {
14
- const runner = new Runner(cwd, options);
15
- try {
16
- await runner.init();
17
- }
18
- catch (e) {
19
- if (e instanceof Error) {
20
- e.message = `[tegg/standalone] bootstrap tegg failed: ${e.message}`;
21
- }
22
- throw e;
23
- }
24
- try {
25
- return await runner.run();
26
- }
27
- finally {
28
- runner.destroy().catch((e) => {
29
- e.message = `[tegg/standalone] destroy tegg failed: ${e.message}`;
30
- console.warn(e);
31
- });
32
- }
12
+ async function main(cwd, options) {
13
+ const runner = new Runner(cwd, options);
14
+ try {
15
+ await runner.init();
16
+ } catch (e) {
17
+ if (e instanceof Error) e.message = `[tegg/standalone] bootstrap tegg failed: ${e.message}`;
18
+ throw e;
19
+ }
20
+ try {
21
+ return await runner.run();
22
+ } finally {
23
+ runner.destroy().catch((e) => {
24
+ e.message = `[tegg/standalone] destroy tegg failed: ${e.message}`;
25
+ console.warn(e);
26
+ });
27
+ }
33
28
  }
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQXNCLE1BQU0sYUFBYSxDQUFDO0FBRXpELE1BQU0sQ0FBQyxLQUFLLFVBQVUsT0FBTyxDQUFDLEdBQVcsRUFBRSxZQUE0QztJQUNyRixJQUFJLENBQUM7UUFDSCxNQUFNLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ1gsSUFBSSxDQUFDLFlBQVksS0FBSyxFQUFFLENBQUM7WUFDdkIsQ0FBQyxDQUFDLE9BQU8sR0FBRywwREFBMEQsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BGLENBQUM7UUFDRCxNQUFNLENBQUMsQ0FBQztJQUNWLENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBTSxDQUFDLEtBQUssVUFBVSxJQUFJLENBQVcsR0FBVyxFQUFFLE9BQXVCO0lBQ3ZFLE1BQU0sTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN4QyxJQUFJLENBQUM7UUFDSCxNQUFNLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNYLElBQUksQ0FBQyxZQUFZLEtBQUssRUFBRSxDQUFDO1lBQ3ZCLENBQUMsQ0FBQyxPQUFPLEdBQUcsNENBQTRDLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN0RSxDQUFDO1FBQ0QsTUFBTSxDQUFDLENBQUM7SUFDVixDQUFDO0lBQ0QsSUFBSSxDQUFDO1FBQ0gsT0FBTyxNQUFNLE1BQU0sQ0FBQyxHQUFHLEVBQUssQ0FBQztJQUMvQixDQUFDO1lBQVMsQ0FBQztRQUNULE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUMzQixDQUFDLENBQUMsT0FBTyxHQUFHLDBDQUEwQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7QUFDSCxDQUFDIn0=
29
+
30
+ //#endregion
31
+ export { main, preLoad };
package/package.json CHANGED
@@ -1,68 +1,64 @@
1
1
  {
2
2
  "name": "@eggjs/standalone",
3
+ "version": "4.0.0-beta.36",
3
4
  "description": "tegg standalone",
4
- "version": "4.0.0-beta.34",
5
5
  "keywords": [
6
- "egg",
7
- "typescript",
8
- "background",
9
6
  "async",
7
+ "background",
8
+ "egg",
9
+ "standalone",
10
10
  "tegg",
11
- "standalone"
12
- ],
13
- "files": [
14
- "dist"
11
+ "typescript"
15
12
  ],
16
- "type": "module",
17
- "exports": {
18
- ".": "./dist/index.js",
19
- "./package.json": "./package.json"
20
- },
21
13
  "homepage": "https://github.com/eggjs/egg/tree/next/tegg/standalone/standalone",
22
14
  "bugs": {
23
15
  "url": "https://github.com/eggjs/egg/issues"
24
16
  },
17
+ "license": "MIT",
18
+ "author": "killagu <killa123@126.com>",
25
19
  "repository": {
26
20
  "type": "git",
27
- "url": "git@github.com:eggjs/egg.git",
21
+ "url": "git+https://github.com/eggjs/egg.git",
28
22
  "directory": "tegg/standalone/standalone"
29
23
  },
30
- "engines": {
31
- "node": ">=22.18.0"
32
- },
33
- "author": "killagu <killa123@126.com>",
34
- "license": "MIT",
35
- "dependencies": {
36
- "@eggjs/tegg": "4.0.0-beta.34",
37
- "@eggjs/aop-runtime": "4.0.0-beta.34",
38
- "@eggjs/tegg-common-util": "4.0.0-beta.34",
39
- "@eggjs/dal-plugin": "4.0.0-beta.34",
40
- "@eggjs/lifecycle": "4.0.0-beta.34",
41
- "@eggjs/tegg-loader": "4.0.0-beta.34",
42
- "@eggjs/tegg-runtime": "4.0.0-beta.34",
43
- "@eggjs/metadata": "4.0.0-beta.34"
24
+ "files": [
25
+ "dist"
26
+ ],
27
+ "type": "module",
28
+ "main": "./dist/index.js",
29
+ "module": "./dist/index.js",
30
+ "types": "./dist/index.d.ts",
31
+ "exports": {
32
+ ".": "./dist/index.js",
33
+ "./package.json": "./package.json"
44
34
  },
45
35
  "publishConfig": {
46
36
  "access": "public"
47
37
  },
38
+ "dependencies": {
39
+ "@eggjs/aop-runtime": "4.0.0-beta.36",
40
+ "@eggjs/dal-plugin": "4.0.0-beta.36",
41
+ "@eggjs/lifecycle": "4.0.0-beta.36",
42
+ "@eggjs/metadata": "4.0.0-beta.36",
43
+ "@eggjs/tegg": "4.0.0-beta.36",
44
+ "@eggjs/tegg-common-util": "4.0.0-beta.36",
45
+ "@eggjs/tegg-loader": "4.0.0-beta.36",
46
+ "@eggjs/tegg-runtime": "4.0.0-beta.36"
47
+ },
48
48
  "devDependencies": {
49
- "@types/node": "^24.9.1",
49
+ "@types/node": "^24.10.2",
50
50
  "mm": "^4.0.2",
51
51
  "typescript": "^5.9.3",
52
- "tsdown": "0.15.11",
53
- "unplugin-unused": "^0.5.4",
54
- "@eggjs/bin": "8.0.0-beta.34",
55
- "@eggjs/ajv-plugin": "4.0.0-beta.34",
56
- "@eggjs/dal-decorator": "4.0.0-beta.34",
57
- "@eggjs/core-decorator": "4.0.0-beta.34",
58
- "@eggjs/utils": "5.0.0-beta.34"
52
+ "@eggjs/ajv-plugin": "4.0.0-beta.36",
53
+ "@eggjs/bin": "8.0.0-beta.36",
54
+ "@eggjs/dal-decorator": "4.0.0-beta.36",
55
+ "@eggjs/utils": "5.0.0-beta.36",
56
+ "@eggjs/core-decorator": "4.0.0-beta.36"
57
+ },
58
+ "engines": {
59
+ "node": ">=22.18.0"
59
60
  },
60
- "main": "./dist/index.js",
61
- "module": "./dist/index.js",
62
- "types": "./dist/index.d.ts",
63
61
  "scripts": {
64
- "clean": "tsc -b --clean && rimraf dist *.tsbuildinfo",
65
- "build": "tsdown && npm run clean && tsc -p tsconfig.build.json",
66
- "typecheck": "tsc --noEmit"
62
+ "typecheck": "tsgo --noEmit"
67
63
  }
68
64
  }
@@ -1,9 +0,0 @@
1
- import type { LoadUnit, LoadUnitLifecycleContext } from '@eggjs/metadata';
2
- import { type LifecycleHook } from '@eggjs/tegg';
3
- /**
4
- * Hook for inject moduleConfig.
5
- * Add default qualifier value is current module name.
6
- */
7
- export declare class ConfigSourceLoadUnitHook implements LifecycleHook<LoadUnitLifecycleContext, LoadUnit> {
8
- preCreate(ctx: LoadUnitLifecycleContext, loadUnit: LoadUnit): Promise<void>;
9
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,9 +0,0 @@
1
- // import 'egg';
2
- export {};
3
- // for declare merging
4
- // declare module 'egg' {
5
- // export interface ModuleConfig {
6
- // // ...
7
- // }
8
- // }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL01vZHVsZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7O0FBRWhCLHNCQUFzQjtBQUN0Qix5QkFBeUI7QUFDekIsb0NBQW9DO0FBQ3BDLGFBQWE7QUFDYixNQUFNO0FBQ04sSUFBSSJ9
@@ -1,6 +0,0 @@
1
- import { AsyncLocalStorage } from 'node:async_hooks';
2
- import { type EggContext } from '@eggjs/tegg-runtime';
3
- export declare class StandaloneContextHandler {
4
- static storage: AsyncLocalStorage<EggContext>;
5
- static register(): void;
6
- }
@@ -1,5 +0,0 @@
1
- import { AbstractEggContext } from '@eggjs/tegg-runtime';
2
- export declare class StandaloneContextImpl extends AbstractEggContext {
3
- readonly id: string;
4
- constructor();
5
- }
@@ -1,10 +0,0 @@
1
- import { AbstractEggContext } from '@eggjs/tegg-runtime';
2
- import { IdenticalUtil } from '@eggjs/tegg';
3
- export class StandaloneContextImpl extends AbstractEggContext {
4
- id;
5
- constructor() {
6
- super();
7
- this.id = IdenticalUtil.createContextId();
8
- }
9
- }
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhbmRhbG9uZUNvbnRleHRJbXBsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1N0YW5kYWxvbmVDb250ZXh0SW1wbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTVDLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxrQkFBa0I7SUFDbEQsRUFBRSxDQUFTO0lBRXBCO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsRUFBRSxHQUFHLGFBQWEsQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0NBQ0YifQ==