@esengine/ecs-framework 2.1.2 → 2.1.4
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/bin/Core.js +17 -21
- package/bin/Core.js.map +1 -1
- package/bin/ECS/Component.js +1 -5
- package/bin/ECS/Component.js.map +1 -1
- package/bin/ECS/Core/BitMaskOptimizer.js +1 -5
- package/bin/ECS/Core/BitMaskOptimizer.js.map +1 -1
- package/bin/ECS/Core/ComponentPool.js +2 -7
- package/bin/ECS/Core/ComponentPool.js.map +1 -1
- package/bin/ECS/Core/ComponentStorage.js +3 -9
- package/bin/ECS/Core/ComponentStorage.js.map +1 -1
- package/bin/ECS/Core/EventSystem.js +6 -12
- package/bin/ECS/Core/EventSystem.js.map +1 -1
- package/bin/ECS/Core/FluentAPI.js +18 -24
- package/bin/ECS/Core/FluentAPI.js.map +1 -1
- package/bin/ECS/Core/IndexUpdateBatcher.js +3 -7
- package/bin/ECS/Core/IndexUpdateBatcher.js.map +1 -1
- package/bin/ECS/Core/QuerySystem.js +16 -21
- package/bin/ECS/Core/QuerySystem.js.map +1 -1
- package/bin/ECS/CoreEvents.js +2 -5
- package/bin/ECS/CoreEvents.js.map +1 -1
- package/bin/ECS/Entity.js +12 -17
- package/bin/ECS/Entity.js.map +1 -1
- package/bin/ECS/Scene.js +17 -21
- package/bin/ECS/Scene.js.map +1 -1
- package/bin/ECS/Systems/EntitySystem.js +5 -9
- package/bin/ECS/Systems/EntitySystem.js.map +1 -1
- package/bin/ECS/Systems/IntervalSystem.js +4 -8
- package/bin/ECS/Systems/IntervalSystem.js.map +1 -1
- package/bin/ECS/Systems/PassiveSystem.js +2 -6
- package/bin/ECS/Systems/PassiveSystem.js.map +1 -1
- package/bin/ECS/Systems/ProcessingSystem.js +2 -6
- package/bin/ECS/Systems/ProcessingSystem.js.map +1 -1
- package/bin/ECS/Systems/index.js +4 -11
- package/bin/ECS/Systems/index.js.map +1 -1
- package/bin/ECS/Utils/Bits.js +1 -5
- package/bin/ECS/Utils/Bits.js.map +1 -1
- package/bin/ECS/Utils/ComponentTypeManager.js +4 -8
- package/bin/ECS/Utils/ComponentTypeManager.js.map +1 -1
- package/bin/ECS/Utils/EntityList.js +1 -5
- package/bin/ECS/Utils/EntityList.js.map +1 -1
- package/bin/ECS/Utils/EntityProcessorList.js +1 -5
- package/bin/ECS/Utils/EntityProcessorList.js.map +1 -1
- package/bin/ECS/Utils/IdentifierPool.js +1 -5
- package/bin/ECS/Utils/IdentifierPool.js.map +1 -1
- package/bin/ECS/Utils/Matcher.js +4 -8
- package/bin/ECS/Utils/Matcher.js.map +1 -1
- package/bin/ECS/Utils/index.js +6 -15
- package/bin/ECS/Utils/index.js.map +1 -1
- package/bin/Testing/Performance/component-performance.d.ts +2 -0
- package/bin/Testing/Performance/component-performance.d.ts.map +1 -0
- package/bin/Testing/Performance/component-performance.js +43 -0
- package/bin/Testing/Performance/component-performance.js.map +1 -0
- package/bin/Types/index.js +4 -7
- package/bin/Types/index.js.map +1 -1
- package/bin/Utils/Emitter.js +2 -7
- package/bin/Utils/Emitter.js.map +1 -1
- package/bin/Utils/Extensions/NumberExtension.js +1 -5
- package/bin/Utils/Extensions/NumberExtension.js.map +1 -1
- package/bin/Utils/Extensions/TypeUtils.js +1 -5
- package/bin/Utils/Extensions/TypeUtils.js.map +1 -1
- package/bin/Utils/Extensions/index.js +2 -7
- package/bin/Utils/Extensions/index.js.map +1 -1
- package/bin/Utils/GlobalManager.js +1 -5
- package/bin/Utils/GlobalManager.js.map +1 -1
- package/bin/Utils/PerformanceMonitor.js +3 -7
- package/bin/Utils/PerformanceMonitor.js.map +1 -1
- package/bin/Utils/Pool.js +3 -9
- package/bin/Utils/Pool.js.map +1 -1
- package/bin/Utils/Time.js +1 -5
- package/bin/Utils/Time.js.map +1 -1
- package/bin/Utils/Timers/ITimer.js +1 -2
- package/bin/Utils/Timers/Timer.js +3 -7
- package/bin/Utils/Timers/Timer.js.map +1 -1
- package/bin/Utils/Timers/TimerManager.js +4 -8
- package/bin/Utils/Timers/TimerManager.js.map +1 -1
- package/bin/Utils/WasmCore.js +14 -52
- package/bin/Utils/WasmCore.js.map +1 -1
- package/bin/Utils/index.d.ts +2 -1
- package/bin/Utils/index.d.ts.map +1 -1
- package/bin/Utils/index.js.map +1 -1
- package/bin/index.d.ts +3 -2
- package/bin/index.d.ts.map +1 -1
- package/bin/index.esm.d.ts +3 -2
- package/bin/index.esm.d.ts.map +1 -1
- package/bin/index.esm.js +36 -67
- package/bin/index.esm.js.map +1 -1
- package/bin/index.js.map +1 -1
- package/bin/wasm/ecs_wasm_core.d.ts +141 -0
- package/bin/wasm/ecs_wasm_core.js +415 -0
- package/bin/wasm/ecs_wasm_core_bg.wasm +0 -0
- package/bin/wasm/ecs_wasm_core_bg.wasm.d.ts +29 -0
- package/bin/wasm/package.json +15 -0
- package/package.json +16 -10
- /package/bin/{index.js → index.cjs} +0 -0
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.IntervalSystem = void 0;
|
|
4
|
-
const EntitySystem_1 = require("./EntitySystem");
|
|
5
|
-
const Time_1 = require("../../Utils/Time");
|
|
1
|
+
import { EntitySystem } from './EntitySystem';
|
|
2
|
+
import { Time } from '../../Utils/Time';
|
|
6
3
|
/**
|
|
7
4
|
* 间隔系统抽象类
|
|
8
5
|
* 定义一个按时间间隔处理的抽象类,继承自EntitySystem类
|
|
9
6
|
* 子类需要实现process方法,用于实现具体的处理逻辑
|
|
10
7
|
*/
|
|
11
|
-
class IntervalSystem extends
|
|
8
|
+
export class IntervalSystem extends EntitySystem {
|
|
12
9
|
/**
|
|
13
10
|
* 构造函数,初始化时间间隔
|
|
14
11
|
* @param matcher 实体匹配器
|
|
@@ -29,7 +26,7 @@ class IntervalSystem extends EntitySystem_1.EntitySystem {
|
|
|
29
26
|
*/
|
|
30
27
|
checkProcessing() {
|
|
31
28
|
// 更新累积增量
|
|
32
|
-
this.acc +=
|
|
29
|
+
this.acc += Time.deltaTime;
|
|
33
30
|
// 如果累积增量超过时间间隔,则进行处理
|
|
34
31
|
if (this.acc >= this.interval) {
|
|
35
32
|
// 更新时间间隔余数
|
|
@@ -50,5 +47,4 @@ class IntervalSystem extends EntitySystem_1.EntitySystem {
|
|
|
50
47
|
return this.interval + this.intervalRemainder;
|
|
51
48
|
}
|
|
52
49
|
}
|
|
53
|
-
exports.IntervalSystem = IntervalSystem;
|
|
54
50
|
//# sourceMappingURL=IntervalSystem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IntervalSystem.js","sourceRoot":"","sources":["../../../src/ECS/Systems/IntervalSystem.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"IntervalSystem.js","sourceRoot":"","sources":["../../../src/ECS/Systems/IntervalSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC;;;;GAIG;AACH,MAAM,OAAgB,cAAe,SAAQ,YAAY;IAQrD;;;;OAIG;IACH,YAAY,OAAgB,EAAE,QAAgB;QAC1C,KAAK,CAAC,OAAO,CAAC,CAAC;QAbnB,gBAAgB;QACR,QAAG,GAAW,CAAC,CAAC;QAGxB,6BAA6B;QACrB,sBAAiB,GAAW,CAAC,CAAC;QASlC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACgB,eAAe;QAC9B,SAAS;QACT,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC;QAE3B,qBAAqB;QACrB,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,WAAW;YACX,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC;YAClD,SAAS;YACT,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;YACb,kBAAkB;YAClB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,oBAAoB;QACpB,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;OAGG;IACO,gBAAgB;QACtB,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC;IAClD,CAAC;CACJ"}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PassiveSystem = void 0;
|
|
4
|
-
const EntitySystem_1 = require("./EntitySystem");
|
|
1
|
+
import { EntitySystem } from './EntitySystem';
|
|
5
2
|
/**
|
|
6
3
|
* 被动实体系统
|
|
7
4
|
* 定义一个被动的实体系统,继承自EntitySystem类
|
|
8
5
|
* 被动的实体系统不会对实体进行任何修改,只会被动地接收实体的变化事件
|
|
9
6
|
*/
|
|
10
|
-
class PassiveSystem extends
|
|
7
|
+
export class PassiveSystem extends EntitySystem {
|
|
11
8
|
/**
|
|
12
9
|
* 当实体发生变化时,不进行任何操作
|
|
13
10
|
* @param entity 发生变化的实体
|
|
@@ -21,5 +18,4 @@ class PassiveSystem extends EntitySystem_1.EntitySystem {
|
|
|
21
18
|
// 被动系统不进行任何处理
|
|
22
19
|
}
|
|
23
20
|
}
|
|
24
|
-
exports.PassiveSystem = PassiveSystem;
|
|
25
21
|
//# sourceMappingURL=PassiveSystem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PassiveSystem.js","sourceRoot":"","sources":["../../../src/ECS/Systems/PassiveSystem.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PassiveSystem.js","sourceRoot":"","sources":["../../../src/ECS/Systems/PassiveSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C;;;;GAIG;AACH,MAAM,OAAgB,aAAc,SAAQ,YAAY;IACpD;;;OAGG;IACa,SAAS,CAAC,MAAc,IAAU,CAAC;IAEnD;;;OAGG;IACgB,OAAO,CAAC,QAAkB;QACzC,cAAc;IAClB,CAAC;CACJ"}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ProcessingSystem = void 0;
|
|
4
|
-
const EntitySystem_1 = require("./EntitySystem");
|
|
1
|
+
import { EntitySystem } from './EntitySystem';
|
|
5
2
|
/**
|
|
6
3
|
* 处理系统抽象类
|
|
7
4
|
* 定义一个处理实体的抽象类,继承自EntitySystem类
|
|
8
5
|
* 子类需要实现processSystem方法,用于实现具体的处理逻辑
|
|
9
6
|
*/
|
|
10
|
-
class ProcessingSystem extends
|
|
7
|
+
export class ProcessingSystem extends EntitySystem {
|
|
11
8
|
/**
|
|
12
9
|
* 当实体发生变化时,不进行任何操作
|
|
13
10
|
* @param entity 发生变化的实体
|
|
@@ -22,5 +19,4 @@ class ProcessingSystem extends EntitySystem_1.EntitySystem {
|
|
|
22
19
|
this.processSystem();
|
|
23
20
|
}
|
|
24
21
|
}
|
|
25
|
-
exports.ProcessingSystem = ProcessingSystem;
|
|
26
22
|
//# sourceMappingURL=ProcessingSystem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProcessingSystem.js","sourceRoot":"","sources":["../../../src/ECS/Systems/ProcessingSystem.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ProcessingSystem.js","sourceRoot":"","sources":["../../../src/ECS/Systems/ProcessingSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C;;;;GAIG;AACH,MAAM,OAAgB,gBAAiB,SAAQ,YAAY;IACvD;;;OAGG;IACa,SAAS,CAAC,MAAc,IAAU,CAAC;IAEnD;;;OAGG;IACgB,OAAO,CAAC,QAAkB;QACzC,+BAA+B;QAC/B,IAAI,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;CAMJ"}
|
package/bin/ECS/Systems/index.js
CHANGED
|
@@ -1,13 +1,6 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.IntervalSystem = exports.PassiveSystem = exports.ProcessingSystem = exports.EntitySystem = void 0;
|
|
4
1
|
// ECS系统模块导出
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
var PassiveSystem_1 = require("./PassiveSystem");
|
|
10
|
-
Object.defineProperty(exports, "PassiveSystem", { enumerable: true, get: function () { return PassiveSystem_1.PassiveSystem; } });
|
|
11
|
-
var IntervalSystem_1 = require("./IntervalSystem");
|
|
12
|
-
Object.defineProperty(exports, "IntervalSystem", { enumerable: true, get: function () { return IntervalSystem_1.IntervalSystem; } });
|
|
2
|
+
export { EntitySystem } from './EntitySystem';
|
|
3
|
+
export { ProcessingSystem } from './ProcessingSystem';
|
|
4
|
+
export { PassiveSystem } from './PassiveSystem';
|
|
5
|
+
export { IntervalSystem } from './IntervalSystem';
|
|
13
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ECS/Systems/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ECS/Systems/index.ts"],"names":[],"mappings":"AAAA,YAAY;AACZ,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
|
package/bin/ECS/Utils/Bits.js
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Bits = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* 高性能位操作类
|
|
6
3
|
* 用于快速操作位数组,支持组件匹配等场景
|
|
7
4
|
*/
|
|
8
|
-
class Bits {
|
|
5
|
+
export class Bits {
|
|
9
6
|
constructor() {
|
|
10
7
|
this._words = [];
|
|
11
8
|
this._words = [];
|
|
@@ -141,6 +138,5 @@ class Bits {
|
|
|
141
138
|
return newBits;
|
|
142
139
|
}
|
|
143
140
|
}
|
|
144
|
-
exports.Bits = Bits;
|
|
145
141
|
Bits.WORD_SIZE = 32;
|
|
146
142
|
//# sourceMappingURL=Bits.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Bits.js","sourceRoot":"","sources":["../../../src/ECS/Utils/Bits.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Bits.js","sourceRoot":"","sources":["../../../src/ECS/Utils/Bits.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ComponentTypeManager = void 0;
|
|
4
|
-
const Bits_1 = require("./Bits");
|
|
1
|
+
import { Bits } from './Bits';
|
|
5
2
|
/**
|
|
6
3
|
* 组件类型管理器
|
|
7
4
|
* 负责管理组件类型的注册和ID分配
|
|
8
5
|
*/
|
|
9
|
-
class ComponentTypeManager {
|
|
6
|
+
export class ComponentTypeManager {
|
|
10
7
|
/**
|
|
11
8
|
* 获取单例实例
|
|
12
9
|
*/
|
|
@@ -49,7 +46,7 @@ class ComponentTypeManager {
|
|
|
49
46
|
* @returns Bits对象
|
|
50
47
|
*/
|
|
51
48
|
createBits(...componentTypes) {
|
|
52
|
-
const bits = new
|
|
49
|
+
const bits = new Bits();
|
|
53
50
|
for (const componentType of componentTypes) {
|
|
54
51
|
const typeId = this.getTypeId(componentType);
|
|
55
52
|
bits.set(typeId);
|
|
@@ -62,7 +59,7 @@ class ComponentTypeManager {
|
|
|
62
59
|
* @returns Bits对象
|
|
63
60
|
*/
|
|
64
61
|
getEntityBits(components) {
|
|
65
|
-
const bits = new
|
|
62
|
+
const bits = new Bits();
|
|
66
63
|
for (const component of components) {
|
|
67
64
|
const typeId = this.getTypeId(component.constructor);
|
|
68
65
|
bits.set(typeId);
|
|
@@ -84,5 +81,4 @@ class ComponentTypeManager {
|
|
|
84
81
|
return this._componentTypes.size;
|
|
85
82
|
}
|
|
86
83
|
}
|
|
87
|
-
exports.ComponentTypeManager = ComponentTypeManager;
|
|
88
84
|
//# sourceMappingURL=ComponentTypeManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentTypeManager.js","sourceRoot":"","sources":["../../../src/ECS/Utils/ComponentTypeManager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ComponentTypeManager.js","sourceRoot":"","sources":["../../../src/ECS/Utils/ComponentTypeManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B;;;GAGG;AACH,MAAM,OAAO,oBAAoB;IAM7B;;OAEG;IACI,MAAM,KAAK,QAAQ;QACtB,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,CAAC;YAClC,oBAAoB,CAAC,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAChE,CAAC;QACD,OAAO,oBAAoB,CAAC,SAAS,CAAC;IAC1C,CAAC;IAED;QAdQ,oBAAe,GAAG,IAAI,GAAG,EAAoB,CAAC;QAC9C,eAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;QACvC,gBAAW,GAAG,CAAC,CAAC;IAYD,CAAC;IAExB;;;;OAIG;IACI,SAAS,CAAsB,aAAwC;QAC1E,IAAI,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAErD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAChD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACI,WAAW,CAAC,MAAc;QAC7B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACI,UAAU,CAAC,GAAG,cAAqD;QACtE,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAExB,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YAC7C,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAC,UAAuB;QACxC,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAExB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAgD,CAAC,CAAC;YAC1F,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACI,KAAK;QACR,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAW,mBAAmB;QAC1B,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;IACrC,CAAC;CACJ"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EntityList = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* 高性能实体列表管理器
|
|
6
3
|
* 管理场景中的所有实体,支持快速查找和批量操作
|
|
7
4
|
*/
|
|
8
|
-
class EntityList {
|
|
5
|
+
export class EntityList {
|
|
9
6
|
get count() {
|
|
10
7
|
return this.buffer.length;
|
|
11
8
|
}
|
|
@@ -249,5 +246,4 @@ class EntityList {
|
|
|
249
246
|
};
|
|
250
247
|
}
|
|
251
248
|
}
|
|
252
|
-
exports.EntityList = EntityList;
|
|
253
249
|
//# sourceMappingURL=EntityList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityList.js","sourceRoot":"","sources":["../../../src/ECS/Utils/EntityList.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EntityList.js","sourceRoot":"","sources":["../../../src/ECS/Utils/EntityList.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EntityProcessorList = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* 实体处理器列表管理器
|
|
6
3
|
* 管理场景中的所有实体系统
|
|
7
4
|
*/
|
|
8
|
-
class EntityProcessorList {
|
|
5
|
+
export class EntityProcessorList {
|
|
9
6
|
constructor() {
|
|
10
7
|
this._processors = [];
|
|
11
8
|
this._isDirty = false;
|
|
@@ -96,5 +93,4 @@ class EntityProcessorList {
|
|
|
96
93
|
return this._processors.length;
|
|
97
94
|
}
|
|
98
95
|
}
|
|
99
|
-
exports.EntityProcessorList = EntityProcessorList;
|
|
100
96
|
//# sourceMappingURL=EntityProcessorList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityProcessorList.js","sourceRoot":"","sources":["../../../src/ECS/Utils/EntityProcessorList.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EntityProcessorList.js","sourceRoot":"","sources":["../../../src/ECS/Utils/EntityProcessorList.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,OAAO,mBAAmB;IAAhC;QACY,gBAAW,GAAmB,EAAE,CAAC;QACjC,aAAQ,GAAG,KAAK,CAAC;IAmG7B,CAAC;IAjGG;;OAEG;IACI,QAAQ;QACX,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACzB,CAAC;IAED;;;OAGG;IACI,GAAG,CAAC,SAAuB;QAC9B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,SAAuB;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACtC,CAAC;IACL,CAAC;IAED;;;OAGG;IACI,YAAY,CAAyB,IAA+B;QACvE,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACvC,IAAI,SAAS,YAAY,IAAI,EAAE,CAAC;gBAC5B,OAAO,SAAc,CAAC;YAC1B,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACI,KAAK;QACR,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACvC,SAAS,CAAC,UAAU,EAAE,CAAC;QAC3B,CAAC;IACL,CAAC;IAED;;OAEG;IACI,GAAG;QACN,QAAQ;IACZ,CAAC;IAED;;OAEG;IACI,MAAM;QACT,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACvC,SAAS,CAAC,MAAM,EAAE,CAAC;QACvB,CAAC;IACL,CAAC;IAED;;OAEG;IACI,UAAU;QACb,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACvC,SAAS,CAAC,UAAU,EAAE,CAAC;QAC3B,CAAC;IACL,CAAC;IAED;;OAEG;IACK,cAAc;QAClB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC;YAC/D,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC1B,CAAC;IACL,CAAC;IAED,cAAc;IACd,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,cAAc;IACd,IAAW,KAAK;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;IACnC,CAAC;CAGJ"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.IdentifierPool = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* ID池管理器
|
|
6
3
|
* 用于管理实体ID的分配和回收
|
|
7
4
|
*/
|
|
8
|
-
class IdentifierPool {
|
|
5
|
+
export class IdentifierPool {
|
|
9
6
|
constructor() {
|
|
10
7
|
this._nextAvailableId = 0;
|
|
11
8
|
this._ids = [];
|
|
@@ -27,5 +24,4 @@ class IdentifierPool {
|
|
|
27
24
|
this._ids.push(id);
|
|
28
25
|
}
|
|
29
26
|
}
|
|
30
|
-
exports.IdentifierPool = IdentifierPool;
|
|
31
27
|
//# sourceMappingURL=IdentifierPool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdentifierPool.js","sourceRoot":"","sources":["../../../src/ECS/Utils/IdentifierPool.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"IdentifierPool.js","sourceRoot":"","sources":["../../../src/ECS/Utils/IdentifierPool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,cAAc;IAA3B;QACY,qBAAgB,GAAG,CAAC,CAAC;QACrB,SAAI,GAAa,EAAE,CAAC;IAmBhC,CAAC;IAjBG;;OAEG;IACI,QAAQ;QACX,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAG,CAAC;QAC5B,CAAC;QACD,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;IACnC,CAAC;IAED;;;OAGG;IACI,OAAO,CAAC,EAAU;QACrB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,CAAC;CACJ"}
|
package/bin/ECS/Utils/Matcher.js
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Matcher = void 0;
|
|
4
|
-
const ComponentTypeManager_1 = require("./ComponentTypeManager");
|
|
1
|
+
import { ComponentTypeManager } from './ComponentTypeManager';
|
|
5
2
|
/**
|
|
6
3
|
* 高性能实体匹配器
|
|
7
4
|
* 用于快速匹配符合条件的实体
|
|
8
5
|
*/
|
|
9
|
-
class Matcher {
|
|
6
|
+
export class Matcher {
|
|
10
7
|
constructor() {
|
|
11
8
|
this.allSet = [];
|
|
12
9
|
this.exclusionSet = [];
|
|
@@ -89,7 +86,7 @@ class Matcher {
|
|
|
89
86
|
*/
|
|
90
87
|
getEntityBits(entity) {
|
|
91
88
|
const components = entity.components;
|
|
92
|
-
return
|
|
89
|
+
return ComponentTypeManager.instance.getEntityBits(components);
|
|
93
90
|
}
|
|
94
91
|
/**
|
|
95
92
|
* 如果位掩码已过期,则更新它们
|
|
@@ -98,7 +95,7 @@ class Matcher {
|
|
|
98
95
|
if (!this._isDirty) {
|
|
99
96
|
return;
|
|
100
97
|
}
|
|
101
|
-
const typeManager =
|
|
98
|
+
const typeManager = ComponentTypeManager.instance;
|
|
102
99
|
// 更新必须包含的组件位掩码
|
|
103
100
|
if (this.allSet.length > 0) {
|
|
104
101
|
this._allBits = typeManager.createBits(...this.allSet);
|
|
@@ -140,5 +137,4 @@ class Matcher {
|
|
|
140
137
|
return `Matcher(${parts.join(', ')})`;
|
|
141
138
|
}
|
|
142
139
|
}
|
|
143
|
-
exports.Matcher = Matcher;
|
|
144
140
|
//# sourceMappingURL=Matcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Matcher.js","sourceRoot":"","sources":["../../../src/ECS/Utils/Matcher.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Matcher.js","sourceRoot":"","sources":["../../../src/ECS/Utils/Matcher.ts"],"names":[],"mappings":"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"}
|
package/bin/ECS/Utils/index.js
CHANGED
|
@@ -1,17 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ComponentTypeManager = exports.Bits = exports.Matcher = exports.IdentifierPool = exports.EntityProcessorList = exports.EntityList = void 0;
|
|
4
1
|
// ECS工具类导出
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
var Matcher_1 = require("./Matcher");
|
|
12
|
-
Object.defineProperty(exports, "Matcher", { enumerable: true, get: function () { return Matcher_1.Matcher; } });
|
|
13
|
-
var Bits_1 = require("./Bits");
|
|
14
|
-
Object.defineProperty(exports, "Bits", { enumerable: true, get: function () { return Bits_1.Bits; } });
|
|
15
|
-
var ComponentTypeManager_1 = require("./ComponentTypeManager");
|
|
16
|
-
Object.defineProperty(exports, "ComponentTypeManager", { enumerable: true, get: function () { return ComponentTypeManager_1.ComponentTypeManager; } });
|
|
2
|
+
export { EntityList } from './EntityList';
|
|
3
|
+
export { EntityProcessorList } from './EntityProcessorList';
|
|
4
|
+
export { IdentifierPool } from './IdentifierPool';
|
|
5
|
+
export { Matcher } from './Matcher';
|
|
6
|
+
export { Bits } from './Bits';
|
|
7
|
+
export { ComponentTypeManager } from './ComponentTypeManager';
|
|
17
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ECS/Utils/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ECS/Utils/index.ts"],"names":[],"mappings":"AAAA,WAAW;AACX,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component-performance.d.ts","sourceRoot":"","sources":["../../../src/Testing/Performance/component-performance.js"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const { Scene } = require('./bin/ECS/Scene.js');
|
|
3
|
+
const { Component } = require('./bin/ECS/Component.js');
|
|
4
|
+
// 简单的组件类
|
|
5
|
+
class TestComponent extends Component {
|
|
6
|
+
constructor(value) {
|
|
7
|
+
super();
|
|
8
|
+
this.value = value;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
console.log('🔬 组件添加性能分析');
|
|
12
|
+
// 创建场景和实体
|
|
13
|
+
const scene = new Scene();
|
|
14
|
+
console.log('✅ 创建场景完成');
|
|
15
|
+
const startCreate = performance.now();
|
|
16
|
+
const entities = scene.createEntities(5000, 'TestEntity');
|
|
17
|
+
const endCreate = performance.now();
|
|
18
|
+
console.log(`✅ 创建了 ${entities.length} 个实体,耗时: ${(endCreate - startCreate).toFixed(2)}ms`);
|
|
19
|
+
// 测试单个组件添加性能
|
|
20
|
+
console.log('\n📊 测试组件添加性能:');
|
|
21
|
+
const startAdd = performance.now();
|
|
22
|
+
for (let i = 0; i < entities.length; i++) {
|
|
23
|
+
const entity = entities[i];
|
|
24
|
+
entity.addComponent(new TestComponent(i));
|
|
25
|
+
}
|
|
26
|
+
const endAdd = performance.now();
|
|
27
|
+
const addTime = endAdd - startAdd;
|
|
28
|
+
console.log(`添加 ${entities.length} 个组件耗时: ${addTime.toFixed(2)}ms`);
|
|
29
|
+
console.log(`平均每个组件: ${(addTime / entities.length).toFixed(4)}ms`);
|
|
30
|
+
console.log(`添加速度: ${(entities.length / (addTime / 1000)).toFixed(0)} 组件/秒`);
|
|
31
|
+
// 测试组件获取性能
|
|
32
|
+
console.log('\n📊 测试组件获取性能:');
|
|
33
|
+
const startGet = performance.now();
|
|
34
|
+
for (let i = 0; i < entities.length; i++) {
|
|
35
|
+
const entity = entities[i];
|
|
36
|
+
const component = entity.getComponent(TestComponent);
|
|
37
|
+
}
|
|
38
|
+
const endGet = performance.now();
|
|
39
|
+
const getTime = endGet - startGet;
|
|
40
|
+
console.log(`获取 ${entities.length} 个组件耗时: ${getTime.toFixed(2)}ms`);
|
|
41
|
+
console.log(`平均每个组件: ${(getTime / entities.length).toFixed(4)}ms`);
|
|
42
|
+
console.log(`获取速度: ${(entities.length / (getTime / 1000)).toFixed(0)} 组件/秒`);
|
|
43
|
+
//# sourceMappingURL=component-performance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component-performance.js","sourceRoot":"","sources":["../../../src/Testing/Performance/component-performance.js"],"names":[],"mappings":"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"}
|
package/bin/Types/index.js
CHANGED
|
@@ -1,23 +1,20 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* 框架核心类型定义
|
|
4
3
|
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ComponentTransform = exports.LogType = void 0;
|
|
7
4
|
/** 日志类型枚举 */
|
|
8
|
-
var LogType;
|
|
5
|
+
export var LogType;
|
|
9
6
|
(function (LogType) {
|
|
10
7
|
LogType[LogType["Error"] = 0] = "Error";
|
|
11
8
|
LogType[LogType["Assert"] = 1] = "Assert";
|
|
12
9
|
LogType[LogType["Warning"] = 2] = "Warning";
|
|
13
10
|
LogType[LogType["Log"] = 3] = "Log";
|
|
14
11
|
LogType[LogType["Exception"] = 4] = "Exception";
|
|
15
|
-
})(LogType || (
|
|
12
|
+
})(LogType || (LogType = {}));
|
|
16
13
|
/** 组件变换类型枚举 */
|
|
17
|
-
var ComponentTransform;
|
|
14
|
+
export var ComponentTransform;
|
|
18
15
|
(function (ComponentTransform) {
|
|
19
16
|
ComponentTransform[ComponentTransform["Position"] = 1] = "Position";
|
|
20
17
|
ComponentTransform[ComponentTransform["Scale"] = 2] = "Scale";
|
|
21
18
|
ComponentTransform[ComponentTransform["Rotation"] = 4] = "Rotation";
|
|
22
|
-
})(ComponentTransform || (
|
|
19
|
+
})(ComponentTransform || (ComponentTransform = {}));
|
|
23
20
|
//# sourceMappingURL=index.js.map
|
package/bin/Types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Types/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,aAAa;AACb,MAAM,CAAN,IAAY,OAMX;AAND,WAAY,OAAO;IACf,uCAAS,CAAA;IACT,yCAAU,CAAA;IACV,2CAAW,CAAA;IACX,mCAAO,CAAA;IACP,+CAAa,CAAA;AACjB,CAAC,EANW,OAAO,KAAP,OAAO,QAMlB;AAED,eAAe;AACf,MAAM,CAAN,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC1B,mEAAY,CAAA;IACZ,6DAAS,CAAA;IACT,mEAAY,CAAA;AAChB,CAAC,EAJW,kBAAkB,KAAlB,kBAAkB,QAI7B"}
|
package/bin/Utils/Emitter.js
CHANGED
|
@@ -1,20 +1,16 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Emitter = exports.FuncPack = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* 用于包装事件的一个小类
|
|
6
3
|
*/
|
|
7
|
-
class FuncPack {
|
|
4
|
+
export class FuncPack {
|
|
8
5
|
constructor(func, context) {
|
|
9
6
|
this.func = func;
|
|
10
7
|
this.context = context;
|
|
11
8
|
}
|
|
12
9
|
}
|
|
13
|
-
exports.FuncPack = FuncPack;
|
|
14
10
|
/**
|
|
15
11
|
* 用于事件管理
|
|
16
12
|
*/
|
|
17
|
-
class Emitter {
|
|
13
|
+
export class Emitter {
|
|
18
14
|
constructor() {
|
|
19
15
|
this._messageTable = new Map();
|
|
20
16
|
}
|
|
@@ -70,5 +66,4 @@ class Emitter {
|
|
|
70
66
|
return list ? list.some(observer => observer.func === handler) : false;
|
|
71
67
|
}
|
|
72
68
|
}
|
|
73
|
-
exports.Emitter = Emitter;
|
|
74
69
|
//# sourceMappingURL=Emitter.js.map
|
package/bin/Utils/Emitter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Emitter.js","sourceRoot":"","sources":["../../src/Utils/Emitter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Emitter.js","sourceRoot":"","sources":["../../src/Utils/Emitter.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,QAAQ;IAMjB,YAAY,IAAc,EAAE,OAAY;QACpC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,OAAO;IAGhB;QACI,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,EAAiB,CAAC;IAClD,CAAC;IAED;;;;;OAKG;IACI,WAAW,CAAC,SAAY,EAAE,OAAiB,EAAE,OAAY;QAC5D,IAAI,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,IAAI,GAAG,EAAE,CAAC;YACV,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,cAAc,CAAC,SAAY,EAAE,OAAiB;QACjD,IAAI,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,WAAW,EAAE,CAAC;YACd,IAAI,KAAK,GAAG,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,CAAC;YAChE,IAAI,KAAK,IAAI,CAAC,CAAC;gBACX,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACrC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,IAAI,CAAC,SAAY,EAAE,GAAG,IAAW;QACpC,IAAI,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,IAAI,EAAE,CAAC;YACP,KAAK,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;gBACxB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;YAClD,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,WAAW,CAAC,SAAY,EAAE,OAAiB;QAC9C,IAAI,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3E,CAAC;CACJ"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NumberExtension = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* 数字扩展工具类
|
|
6
3
|
* 提供数字转换的实用方法
|
|
7
4
|
*/
|
|
8
|
-
class NumberExtension {
|
|
5
|
+
export class NumberExtension {
|
|
9
6
|
/**
|
|
10
7
|
* 将值转换为数字
|
|
11
8
|
* @param value 要转换的值
|
|
@@ -17,5 +14,4 @@ class NumberExtension {
|
|
|
17
14
|
return Number(value);
|
|
18
15
|
}
|
|
19
16
|
}
|
|
20
|
-
exports.NumberExtension = NumberExtension;
|
|
21
17
|
//# sourceMappingURL=NumberExtension.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NumberExtension.js","sourceRoot":"","sources":["../../../src/Utils/Extensions/NumberExtension.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NumberExtension.js","sourceRoot":"","sources":["../../../src/Utils/Extensions/NumberExtension.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,eAAe;IACxB;;;;OAIG;IACI,MAAM,CAAC,QAAQ,CAAC,KAAU;QAC7B,IAAI,KAAK,IAAI,SAAS;YAAE,OAAO,CAAC,CAAC;QACjC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;CACJ"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TypeUtils = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* 类型工具类
|
|
6
3
|
* 提供类型相关的实用方法
|
|
7
4
|
*/
|
|
8
|
-
class TypeUtils {
|
|
5
|
+
export class TypeUtils {
|
|
9
6
|
/**
|
|
10
7
|
* 获取对象的类型
|
|
11
8
|
* @param obj 对象
|
|
@@ -15,5 +12,4 @@ class TypeUtils {
|
|
|
15
12
|
return obj.constructor;
|
|
16
13
|
}
|
|
17
14
|
}
|
|
18
|
-
exports.TypeUtils = TypeUtils;
|
|
19
15
|
//# sourceMappingURL=TypeUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TypeUtils.js","sourceRoot":"","sources":["../../../src/Utils/Extensions/TypeUtils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TypeUtils.js","sourceRoot":"","sources":["../../../src/Utils/Extensions/TypeUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,SAAS;IAClB;;;;OAIG;IACI,MAAM,CAAC,OAAO,CAAC,GAAQ;QAC1B,OAAO,GAAG,CAAC,WAAW,CAAC;IAC3B,CAAC;CACJ"}
|
|
@@ -1,9 +1,4 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NumberExtension = exports.TypeUtils = void 0;
|
|
4
1
|
// 扩展工具类导出
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var NumberExtension_1 = require("./NumberExtension");
|
|
8
|
-
Object.defineProperty(exports, "NumberExtension", { enumerable: true, get: function () { return NumberExtension_1.NumberExtension; } });
|
|
2
|
+
export { TypeUtils } from './TypeUtils';
|
|
3
|
+
export { NumberExtension } from './NumberExtension';
|
|
9
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Utils/Extensions/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Utils/Extensions/index.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|