zova-core 5.0.110 → 5.0.112
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/package.json +4 -3
- package/src/bean/beanBase.ts +53 -0
- package/src/bean/beanBaseSimple.ts +33 -0
- package/src/bean/beanContainer.ts +963 -0
- package/src/bean/beanControllerBase.ts +58 -0
- package/src/bean/beanControllerLike.ts +29 -0
- package/src/bean/beanControllerPageBase.ts +18 -0
- package/src/bean/beanRenderBase.ts +7 -0
- package/src/bean/beanRenderLike.ts +33 -0
- package/src/bean/beanSimple.ts +11 -0
- package/src/bean/beanStyleBase.ts +3 -0
- package/src/bean/index.ts +13 -0
- package/src/bean/resource/component/index.ts +1 -0
- package/src/bean/resource/component/type.ts +5 -0
- package/src/bean/resource/config/index.ts +1 -0
- package/src/bean/resource/config/type.ts +32 -0
- package/src/bean/resource/constant/index.ts +1 -0
- package/src/bean/resource/constant/type.ts +1 -0
- package/src/bean/resource/error/beanScopeError.ts +21 -0
- package/src/bean/resource/error/errorClass.ts +57 -0
- package/src/bean/resource/error/errorGlobal.ts +7 -0
- package/src/bean/resource/error/errorInternal.ts +66 -0
- package/src/bean/resource/error/errorObject.ts +4 -0
- package/src/bean/resource/error/index.ts +6 -0
- package/src/bean/resource/error/type.ts +10 -0
- package/src/bean/resource/icon/icon.ts +161 -0
- package/src/bean/resource/icon/iconGroup.ts +10 -0
- package/src/bean/resource/icon/index.ts +4 -0
- package/src/bean/resource/icon/types.ts +21 -0
- package/src/bean/resource/icon/useZovaIcon.ts +20 -0
- package/src/bean/resource/icon/utils.ts +20 -0
- package/src/bean/resource/icon/zovaIcon.ts +52 -0
- package/src/bean/resource/index.ts +8 -0
- package/src/bean/resource/locale/beanScopeLocale.ts +22 -0
- package/src/bean/resource/locale/index.ts +2 -0
- package/src/bean/resource/locale/type.ts +21 -0
- package/src/bean/resource/page/index.ts +1 -0
- package/src/bean/resource/page/type.ts +12 -0
- package/src/bean/resource/service/beanScopeService.ts +24 -0
- package/src/bean/resource/service/index.ts +2 -0
- package/src/bean/resource/service/type.ts +8 -0
- package/src/bean/scope/beanScopeBase.ts +74 -0
- package/src/bean/scope/index.ts +4 -0
- package/src/bean/scope/type.ts +23 -0
- package/src/bean/type.ts +31 -0
- package/src/composables/index.ts +4 -0
- package/src/composables/onControllerMounted.ts +12 -0
- package/src/composables/useApp.ts +7 -0
- package/src/composables/useContext.ts +7 -0
- package/src/composables/useController.ts +125 -0
- package/src/core/app/application.ts +76 -0
- package/src/core/app/config.ts +68 -0
- package/src/core/app/constant.ts +11 -0
- package/src/core/app/index.ts +6 -0
- package/src/core/app/locale.ts +12 -0
- package/src/core/app/meta.ts +44 -0
- package/src/core/app/util.ts +31 -0
- package/src/core/component/component.ts +44 -0
- package/src/core/component/cookie.ts +16 -0
- package/src/core/component/error.ts +18 -0
- package/src/core/component/event.ts +87 -0
- package/src/core/component/index.ts +3 -0
- package/src/core/component/locale.ts +97 -0
- package/src/core/component/module.ts +281 -0
- package/src/core/context/component.ts +34 -0
- package/src/core/context/context.ts +38 -0
- package/src/core/context/index.ts +4 -0
- package/src/core/context/meta.ts +26 -0
- package/src/core/context/state.ts +28 -0
- package/src/core/context/util.ts +20 -0
- package/src/core/index.ts +5 -0
- package/src/core/metadata.ts +54 -0
- package/src/core/resource.ts +188 -0
- package/src/decorator/class/bean.ts +19 -0
- package/src/decorator/class/index.ts +12 -0
- package/src/decorator/class/local.ts +18 -0
- package/src/decorator/class/model.ts +18 -0
- package/src/decorator/class/scope.ts +18 -0
- package/src/decorator/class/store.ts +18 -0
- package/src/decorator/class/style.ts +18 -0
- package/src/decorator/class/theme.ts +18 -0
- package/src/decorator/class/tool.ts +18 -0
- package/src/decorator/class/use.ts +34 -0
- package/src/decorator/class/useComposable.ts +16 -0
- package/src/decorator/class/useScope.ts +21 -0
- package/src/decorator/class/virtual.ts +20 -0
- package/src/decorator/index.ts +7 -0
- package/src/decorator/interface/beanOptions.ts +80 -0
- package/src/decorator/interface/useOptions.ts +37 -0
- package/src/decorator/type/constructable.ts +1 -0
- package/src/decorator/type/containerScope.ts +1 -0
- package/src/decorator/type/functionable.ts +1 -0
- package/src/decorator/type/injectionScope.ts +1 -0
- package/src/index.ts +9 -0
- package/src/plugins/bean.ts +16 -0
- package/src/plugins/index.ts +2 -0
- package/src/plugins/zova.ts +28 -0
- package/src/types/index.ts +2 -0
- package/src/types/interface/component.ts +36 -0
- package/src/types/interface/event.ts +28 -0
- package/src/types/interface/index.ts +6 -0
- package/src/types/interface/inject.ts +2 -0
- package/src/types/interface/module.ts +38 -0
- package/src/types/interface/monkey.ts +38 -0
- package/src/types/interface/pluginZova.ts +17 -0
- package/src/types/utils/cast.ts +8 -0
- package/src/types/utils/env.ts +35 -0
- package/src/types/utils/index.ts +3 -0
- package/src/types/utils/powerPartial.ts +3 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/isClass.ts +17 -0
- package/src/utils/stateLock.ts +47 -0
- package/src/utils/uuid.ts +84 -0
- package/src/vue/composable.ts +10 -0
- package/src/vue/computed.ts +7 -0
- package/src/vue/customRef.ts +5 -0
- package/src/vue/index.ts +4 -0
- package/src/vue/ref.ts +12 -0
- package/src/zod/index.ts +2 -0
- package/src/zod/zz.ts +77 -0
- package/dist/decorator/class/data.d.ts +0 -3
- package/dist/decorator/class/data.d.ts.map +0 -1
- package/dist/decorator/class/data.js +0 -18
- package/dist/decorator/class/data.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zova-core",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.112",
|
|
4
4
|
"description": "A vue3 framework with ioc",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -14,7 +14,8 @@
|
|
|
14
14
|
"./*": "./*"
|
|
15
15
|
},
|
|
16
16
|
"files": [
|
|
17
|
-
"dist"
|
|
17
|
+
"dist",
|
|
18
|
+
"src"
|
|
18
19
|
],
|
|
19
20
|
"author": "zhennann",
|
|
20
21
|
"license": "MIT",
|
|
@@ -53,5 +54,5 @@
|
|
|
53
54
|
"vue": "^3.4.27",
|
|
54
55
|
"zod": "^3.23.8"
|
|
55
56
|
},
|
|
56
|
-
"gitHead": "
|
|
57
|
+
"gitHead": "61b1b2ac3c9466f18a8a19ed50020a365d8ea405"
|
|
57
58
|
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { RendererNode } from 'vue';
|
|
2
|
+
import { BeanBaseSimple, SymbolModuleBelong } from './beanBaseSimple.js';
|
|
3
|
+
import { IBeanScopeRecord, TypeBeanScopeRecordKeys } from './type.js';
|
|
4
|
+
import { AppEvent } from '../core/component/event.js';
|
|
5
|
+
import { IModuleLocaleText } from './resource/index.js';
|
|
6
|
+
|
|
7
|
+
const SymbolText = Symbol('SymbolText');
|
|
8
|
+
|
|
9
|
+
export class BeanBase<TScopeModule = unknown> extends BeanBaseSimple {
|
|
10
|
+
protected get $el(): RendererNode {
|
|
11
|
+
if (!this.ctx) {
|
|
12
|
+
throw new Error('$el can not be used inside global bean.');
|
|
13
|
+
}
|
|
14
|
+
return this.ctx.meta.el;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
protected get $text(): IModuleLocaleText {
|
|
18
|
+
if (!this[SymbolText]) {
|
|
19
|
+
this[SymbolText] = this.app.meta.locale.createLocaleText(this[SymbolModuleBelong]);
|
|
20
|
+
}
|
|
21
|
+
return this[SymbolText];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
protected get $event(): AppEvent {
|
|
25
|
+
return this.app.meta.event;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
// need not
|
|
29
|
+
// protected async __init__() {}
|
|
30
|
+
// protected __dispose__() {}
|
|
31
|
+
|
|
32
|
+
protected get scope() {
|
|
33
|
+
return this.getScope() as TScopeModule;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
protected getScope<K extends TypeBeanScopeRecordKeys>(moduleScope: K): IBeanScopeRecord[K];
|
|
37
|
+
protected getScope<T>(moduleScope: string): T;
|
|
38
|
+
protected getScope(): TScopeModule;
|
|
39
|
+
protected getScope(moduleScope?: string) {
|
|
40
|
+
if (!moduleScope) {
|
|
41
|
+
return this.app.bean.scope(this[SymbolModuleBelong]) as TScopeModule;
|
|
42
|
+
}
|
|
43
|
+
return this.app.bean.scope(moduleScope);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// need not
|
|
47
|
+
// public dispose() {
|
|
48
|
+
// const self = Cast(this);
|
|
49
|
+
// if (self.__dispose__) {
|
|
50
|
+
// self.__dispose__();
|
|
51
|
+
// }
|
|
52
|
+
// }
|
|
53
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { appResource } from '../core/resource.js';
|
|
2
|
+
import { StateLock } from '../utils/stateLock.js';
|
|
3
|
+
import { BeanSimple } from './beanSimple.js';
|
|
4
|
+
|
|
5
|
+
export const SymbolBeanFullName = Symbol('SymbolBeanFullName');
|
|
6
|
+
export const SymbolModuleBelongInner = Symbol('SymbolModuleBelongInner');
|
|
7
|
+
export const SymbolModuleBelong = Symbol('SymbolModuleBelong');
|
|
8
|
+
export const SymbolModuleName = Symbol('SymbolModuleName');
|
|
9
|
+
export const SymbolInited = Symbol('SymbolInited');
|
|
10
|
+
|
|
11
|
+
export class BeanBaseSimple extends BeanSimple {
|
|
12
|
+
private [SymbolBeanFullName]: string;
|
|
13
|
+
private [SymbolModuleBelongInner]?: string;
|
|
14
|
+
// @ts-ignore: ignore
|
|
15
|
+
private [SymbolInited]: StateLock;
|
|
16
|
+
|
|
17
|
+
constructor(moduleBelong?: string) {
|
|
18
|
+
super();
|
|
19
|
+
if (moduleBelong && typeof moduleBelong !== 'string') {
|
|
20
|
+
throw new Error(`moduleBelong not valid: ${moduleBelong}`);
|
|
21
|
+
}
|
|
22
|
+
this[SymbolModuleBelongInner] = moduleBelong;
|
|
23
|
+
this[SymbolInited] = StateLock.create();
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
protected get [SymbolModuleBelong]() {
|
|
27
|
+
return this[SymbolModuleBelongInner] || appResource._getModuleBelong(this[SymbolBeanFullName]);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
protected get [SymbolModuleName]() {
|
|
31
|
+
return appResource._getModuleName(this[SymbolBeanFullName]);
|
|
32
|
+
}
|
|
33
|
+
}
|