mirror of
https://github.com/alibaba/lowcode-engine.git
synced 2026-01-13 09:41:57 +00:00
Link: https://code.aone.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/codereview/3677476 * chore: remove unnecessary code * refactor: react-render using TypeScript * chore: build-script * refactor: editor-skeleton * refactor: designer * refactor: material-parser * refactor: editor-setters * refactor: js to ts for rax-provider Link: https://code.aone.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/codereview/3678180 * refactor: rax-provider * feat: add build command * chore: compilerOptions for rax-provider * refactor: JS to TS for Rax Renderer Link: https://code.aone.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/codereview/3678935 * refactor: rax-renderer * Merge remote-tracking branch 'origin/refactor/js-to-ts' into refactor/js2ts-rax-renderer * Merge remote-tracking branch 'origin/refactor/js-to-ts' into refactor/js2ts-rax-renderer * refactor: ts-nocheck * chore: ts compile error * fix: ts rootDir * fix: compile error * chore: using same tsconfig for rax component * refactor: ts compile rax-renderer && rax-provider * Merge remote-tracking branch 'origin/release/1.0.0' into refactor/js-to-ts # Conflicts: # packages/rax-render/src/utils/appHelper.js # packages/rax-render/src/utils/appHelper.ts # packages/utils/src/appHelper.ts * refactor: no JS file
52 lines
1.0 KiB
TypeScript
52 lines
1.0 KiB
TypeScript
// @ts-nocheck
|
|
|
|
import EventEmitter from 'events';
|
|
|
|
let instance = null;
|
|
|
|
EventEmitter.defaultMaxListeners = 100;
|
|
|
|
export class AppHelper extends EventEmitter {
|
|
static getInstance = () => {
|
|
if (!instance) {
|
|
instance = new AppHelper();
|
|
}
|
|
return instance;
|
|
};
|
|
|
|
constructor(config) {
|
|
super();
|
|
instance = this;
|
|
Object.assign(this, config);
|
|
}
|
|
|
|
get(key) {
|
|
return this[key];
|
|
}
|
|
|
|
set(key, val) {
|
|
if (typeof key === 'string') {
|
|
this[key] = val;
|
|
} else if (typeof key === 'object') {
|
|
Object.keys(key).forEach((item) => {
|
|
this[item] = key[item];
|
|
});
|
|
}
|
|
}
|
|
|
|
batchOn(events, lisenter) {
|
|
if (!Array.isArray(events)) return;
|
|
events.forEach((event) => this.on(event, lisenter));
|
|
}
|
|
|
|
batchOnce(events, lisenter) {
|
|
if (!Array.isArray(events)) return;
|
|
events.forEach((event) => this.once(event, lisenter));
|
|
}
|
|
|
|
batchOff(events, lisenter) {
|
|
if (!Array.isArray(events)) return;
|
|
events.forEach((event) => this.off(event, lisenter));
|
|
}
|
|
}
|