@joker.front/core 1.2.170 → 1.2.237
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/dist/bundle.es.js +1 -3633
- package/dist/bundle.js +1 -3691
- package/package.json +6 -5
- package/types/component.d.ts +9 -3
- package/types/event-bus.d.ts +29 -4
- package/types/export.d.ts +11 -0
- package/types/index.d.ts +5 -4
- package/types/observer/dep.d.ts +0 -2
- package/types/observer/watcher.d.ts +2 -0
- package/types/parser/command/code.d.ts +1 -0
- package/types/parser/command/for.d.ts +1 -0
- package/types/parser/component.d.ts +0 -1
- package/types/parser/index.d.ts +2 -0
- package/types/parser/parser.d.ts +1 -0
- package/types/parser/render.d.ts +1 -0
- package/types/parser/vnode.d.ts +10 -7
- package/types/utils/index.d.ts +2 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@joker.front/core",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.237",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "./dist/bundle.js",
|
|
6
6
|
"module": "./dist/bundle.es.js",
|
|
@@ -20,10 +20,11 @@
|
|
|
20
20
|
],
|
|
21
21
|
"scripts": {
|
|
22
22
|
"test": "jest",
|
|
23
|
-
"test:temp": "jest test/
|
|
23
|
+
"test:temp": "jest test/other/function-this.spec.ts",
|
|
24
24
|
"build": "joker_build_library --sourcemap=false",
|
|
25
|
+
"build:prod": "joker_build_library --sourcemap=false --terser",
|
|
25
26
|
"release": "npm run test && npm run build && joker_release_library",
|
|
26
|
-
"release:prod": "npm run test && npm run build && npm publish --access public --registry https://registry.npmjs.org/"
|
|
27
|
+
"release:prod": "npm run test && npm run build:prod && npm publish --access public --registry https://registry.npmjs.org/"
|
|
27
28
|
},
|
|
28
29
|
"author": "Zohar",
|
|
29
30
|
"license": "MIT",
|
|
@@ -39,9 +40,9 @@
|
|
|
39
40
|
"@joker.front/ast": "^1.3.22"
|
|
40
41
|
},
|
|
41
42
|
"devDependencies": {
|
|
42
|
-
"@joker.front/library-cli": "^1.2.
|
|
43
|
+
"@joker.front/library-cli": "^1.2.13",
|
|
43
44
|
"@joker.front/sfc": "^1.1.5",
|
|
44
|
-
"@joker.front/shared": "^1.5.
|
|
45
|
+
"@joker.front/shared": "^1.5.25",
|
|
45
46
|
"@types/jest": "^27.5.2",
|
|
46
47
|
"@types/node": "^20.5.7",
|
|
47
48
|
"@typescript-eslint/parser": "^5.58.0",
|
package/types/component.d.ts
CHANGED
|
@@ -6,10 +6,12 @@ declare const PROPS_DATA_KEY: unique symbol;
|
|
|
6
6
|
declare const PROPS_DATA_PROXY: unique symbol;
|
|
7
7
|
declare const PRIVATE_WATCHERS: unique symbol;
|
|
8
8
|
declare const EVENT_DATA_KEY: unique symbol;
|
|
9
|
-
declare const
|
|
9
|
+
declare const IS_DESTROY: unique symbol;
|
|
10
|
+
export declare const PARSER_TEMPLATE_TARGET: unique symbol;
|
|
10
11
|
export type TemplateType = Array<AST.Node> | ((h: typeof RENDER_HANDLER) => Array<AST.Node>);
|
|
11
12
|
export declare const SCOPE_ID: unique symbol;
|
|
12
13
|
export declare const JOKER_COMPONENT_TAG: unique symbol;
|
|
14
|
+
declare const TRANSFORM_FUNCTION_FLAG: unique symbol;
|
|
13
15
|
export type ComponentConstructor = typeof Component<any>;
|
|
14
16
|
export type ImportComponentConstructor = () => Promise<{
|
|
15
17
|
default: ComponentConstructor;
|
|
@@ -63,6 +65,8 @@ export declare class Component<T extends DefaultKeyVal = {}> implements ICompone
|
|
|
63
65
|
private [PROPS_DATA_PROXY]?;
|
|
64
66
|
private [PRIVATE_WATCHERS];
|
|
65
67
|
private [EVENT_DATA_KEY];
|
|
68
|
+
private [IS_DESTROY];
|
|
69
|
+
private [TRANSFORM_FUNCTION_FLAG];
|
|
66
70
|
/**
|
|
67
71
|
* @param propData prop参数
|
|
68
72
|
* @param sections 渲染部分区域
|
|
@@ -125,9 +129,9 @@ export declare class Component<T extends DefaultKeyVal = {}> implements ICompone
|
|
|
125
129
|
* @param express
|
|
126
130
|
* @param callBack
|
|
127
131
|
* @param forceCallBack 即使值相同也要强制触发callback
|
|
128
|
-
* @returns 销毁watcher
|
|
132
|
+
* @returns [wathcer值, 销毁watcher]
|
|
129
133
|
*/
|
|
130
|
-
$watch(express: () => any, callBack: (nv?: any, ov?: any) => void, forceCallBack?: boolean): () => void;
|
|
134
|
+
$watch(express: () => any, callBack: (nv?: any, ov?: any) => void, forceCallBack?: boolean): [any, () => void];
|
|
131
135
|
/**
|
|
132
136
|
* 事件注册
|
|
133
137
|
* @param eventName
|
|
@@ -205,6 +209,8 @@ export declare class ComponentContainer extends Component<{
|
|
|
205
209
|
mounted(): void;
|
|
206
210
|
private propsVaule;
|
|
207
211
|
created(): void;
|
|
212
|
+
initProps(): void;
|
|
213
|
+
filterProps(p: string): false | undefined;
|
|
208
214
|
loadComponent(componentName?: string): Promise<void>;
|
|
209
215
|
beforeDestroy(): void;
|
|
210
216
|
removeCache(componentName?: string): void;
|
package/types/event-bus.d.ts
CHANGED
|
@@ -3,13 +3,38 @@ export type EventCallBackItem<T> = {
|
|
|
3
3
|
once?: Boolean;
|
|
4
4
|
};
|
|
5
5
|
export type EventCallBackType<T> = (e: {
|
|
6
|
+
eventName: string | number | Symbol;
|
|
6
7
|
stopPropagation: Function;
|
|
7
8
|
callTimes: Number;
|
|
8
|
-
}, params: T) => boolean | void
|
|
9
|
+
}, params: T) => boolean | void | Promise<boolean | void>;
|
|
9
10
|
export declare class EventBus<T extends Record<string, any>> {
|
|
10
11
|
private eventDatas;
|
|
11
|
-
|
|
12
|
-
|
|
12
|
+
/**
|
|
13
|
+
* 注册事件
|
|
14
|
+
* @param eventName
|
|
15
|
+
* @param callBack
|
|
16
|
+
* @returns 事件销毁
|
|
17
|
+
*/
|
|
18
|
+
on<K extends keyof T>(eventName: K | "*", callBack: EventCallBackType<T[K]>): () => void;
|
|
19
|
+
/**
|
|
20
|
+
* 注册一次性事件(指触发一次)
|
|
21
|
+
* @param eventName
|
|
22
|
+
* @param callBack
|
|
23
|
+
* @returns 事件销毁
|
|
24
|
+
*/
|
|
25
|
+
once<K extends keyof T>(eventName: K, callBack: EventCallBackType<T[K]>): () => void;
|
|
26
|
+
/**
|
|
27
|
+
* 销毁事件
|
|
28
|
+
* @param eventName
|
|
29
|
+
* @param callBack
|
|
30
|
+
* @returns
|
|
31
|
+
*/
|
|
13
32
|
off<K extends keyof T>(eventName?: K, callBack?: EventCallBackType<T[K]>): void;
|
|
14
|
-
|
|
33
|
+
/**
|
|
34
|
+
* 触发事件
|
|
35
|
+
* @param eventName
|
|
36
|
+
* @param param
|
|
37
|
+
* @returns
|
|
38
|
+
*/
|
|
39
|
+
trigger<K extends keyof T>(eventName: K, param?: T[K]): Promise<false | undefined>;
|
|
15
40
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { AST, RENDER_HANDLER, EXPRESSHANDLERTAG, createCodeFunction, createCommand, createComment, createElement, createFuntionBody, createText, createComponent } from "@joker.front/ast";
|
|
2
|
+
export * from "./component";
|
|
3
|
+
export * from "./parser/vnode";
|
|
4
|
+
export { ParserTemplate, NodeChangeType } from "./parser/index";
|
|
5
|
+
export * from "./observer/watcher";
|
|
6
|
+
export { Dep } from "./observer/dep";
|
|
7
|
+
export * from "./observer/index";
|
|
8
|
+
export * from "./utils/DI";
|
|
9
|
+
export * from "./event-bus";
|
|
10
|
+
export { registerGlobalFunction } from "./global";
|
|
11
|
+
export { Render } from "./parser/render";
|
package/types/index.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
export
|
|
1
|
+
export * from "./hmr";
|
|
2
|
+
export { AST, RENDER_HANDLER, EXPRESSHANDLERTAG, createCodeFunction, createCommand, createComment, createElement, createFuntionBody, createText, createComponent } from "@joker.front/ast";
|
|
2
3
|
export * from "./component";
|
|
3
4
|
export * from "./parser/vnode";
|
|
4
5
|
export { ParserTemplate, NodeChangeType } from "./parser/index";
|
|
5
6
|
export * from "./observer/watcher";
|
|
6
|
-
export { Dep
|
|
7
|
+
export { Dep } from "./observer/dep";
|
|
7
8
|
export * from "./observer/index";
|
|
8
9
|
export * from "./utils/DI";
|
|
9
|
-
export * from "./hmr";
|
|
10
10
|
export * from "./event-bus";
|
|
11
|
-
export { registerGlobalFunction } from "./global";
|
|
11
|
+
export { registerGlobalFunction, __GLONAL_FUNTIONS__ } from "./global";
|
|
12
|
+
export { Render } from "./parser/render";
|
package/types/observer/dep.d.ts
CHANGED
|
@@ -17,6 +17,7 @@ export declare class ParserList extends IParser<AST.ForCommand, VNode.List> {
|
|
|
17
17
|
* @param index
|
|
18
18
|
*/
|
|
19
19
|
private destroyOldChildrens;
|
|
20
|
+
private checkObEqual;
|
|
20
21
|
}
|
|
21
22
|
export declare class ParserListeItem extends IParser<AST.ForCommand, VNode.ListItem> {
|
|
22
23
|
parser(): void;
|
package/types/parser/index.d.ts
CHANGED
|
@@ -67,6 +67,8 @@ export declare class ParserTemplate {
|
|
|
67
67
|
* 销毁
|
|
68
68
|
*/
|
|
69
69
|
destroy(keepalive?: boolean): void;
|
|
70
|
+
/** 清除所有监听,用于优化嵌套组件销毁时 自定义销毁事件再次触发watcher问题 */
|
|
71
|
+
destroyWathcers(): void;
|
|
70
72
|
reSetAsts(asts: AST.Node[], keepalive?: boolean): void;
|
|
71
73
|
nodeTransition(node: VNode.Node | undefined, mode: "enter" | "leave", name?: string, callBack?: Function, type?: "transition" | "animation"): boolean;
|
|
72
74
|
}
|
package/types/parser/parser.d.ts
CHANGED
package/types/parser/render.d.ts
CHANGED
package/types/parser/vnode.d.ts
CHANGED
|
@@ -43,19 +43,20 @@ export declare namespace VNode {
|
|
|
43
43
|
* @param breakWhenVRoot 是否过滤到当前视图根时中断
|
|
44
44
|
* @returns
|
|
45
45
|
*/
|
|
46
|
-
closest<T extends VNode.Node = VNode.
|
|
46
|
+
closest<T extends VNode.Node = VNode.Element & VNode.Component>(filter: (node: VNode.Node) => any | any, breakWhenVRoot?: boolean): T | undefined;
|
|
47
47
|
/**
|
|
48
48
|
* 返回所有匹配的子元素
|
|
49
49
|
* @param filter 返回true则记录,返回false则跳过该元素的子集
|
|
50
50
|
* @returns
|
|
51
51
|
*/
|
|
52
|
-
find(filter: (node: VNode.Node) =>
|
|
52
|
+
find<T extends VNode.Node = VNode.Element & VNode.Component>(filter: (node: VNode.Node) => true | any, childrens?: Array<VNode.Node>, _out?: Array<VNode.Node>): Array<T>;
|
|
53
53
|
/**
|
|
54
54
|
* 是否包含
|
|
55
55
|
* @param filter 返回true则记录,返回false则跳过该元素的子集
|
|
56
56
|
* @returns
|
|
57
57
|
*/
|
|
58
|
-
contains(filter: (node: VNode.Node) =>
|
|
58
|
+
contains(filter: (node: VNode.Node) => true | any, childrens?: Array<VNode.Node>): boolean;
|
|
59
|
+
first<T extends VNode.Node = VNode.Element & VNode.Component>(filter: (node: VNode.Node) => true | any, childrens?: Array<VNode.Node>): T | undefined;
|
|
59
60
|
}
|
|
60
61
|
/**
|
|
61
62
|
* 根节点
|
|
@@ -78,8 +79,9 @@ export declare namespace VNode {
|
|
|
78
79
|
*/
|
|
79
80
|
class Html extends Node {
|
|
80
81
|
html: string;
|
|
82
|
+
notShadow?: boolean | undefined;
|
|
81
83
|
static: boolean;
|
|
82
|
-
constructor(html: string, parent: Node);
|
|
84
|
+
constructor(html: string, parent: Node, notShadow?: boolean | undefined);
|
|
83
85
|
}
|
|
84
86
|
/**
|
|
85
87
|
* 注释节点
|
|
@@ -107,7 +109,7 @@ export declare namespace VNode {
|
|
|
107
109
|
_assistEventCache?: Array<[string, (e: any) => void]>;
|
|
108
110
|
constructor(tagName: string, parent: Node);
|
|
109
111
|
}
|
|
110
|
-
type Event<T = undefined> = {
|
|
112
|
+
type Event<T = undefined, N extends VNode.Node = VNode.Element | VNode.Component | VNode.Root> = {
|
|
111
113
|
/**
|
|
112
114
|
* 事件名称
|
|
113
115
|
*/
|
|
@@ -117,7 +119,7 @@ export declare namespace VNode {
|
|
|
117
119
|
*/
|
|
118
120
|
event?: any;
|
|
119
121
|
/** 触发事件目标元素 */
|
|
120
|
-
target?:
|
|
122
|
+
target?: N;
|
|
121
123
|
/** 阻止默认事件 */
|
|
122
124
|
preventDefault(): void;
|
|
123
125
|
/** 阻止事件传播 */
|
|
@@ -147,7 +149,8 @@ export declare namespace VNode {
|
|
|
147
149
|
* 当前组件第一个element vnode
|
|
148
150
|
*/
|
|
149
151
|
get firstElement(): Element | undefined;
|
|
150
|
-
|
|
152
|
+
/** 获取根element 节点 */
|
|
153
|
+
get rootElements(): Element[];
|
|
151
154
|
}
|
|
152
155
|
/**
|
|
153
156
|
* 条件节点
|
package/types/utils/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function
|
|
2
|
-
export declare function
|
|
1
|
+
export declare function resolveDeepPromisesInPlace(obj: any, deep?: boolean): Promise<any> | undefined;
|
|
2
|
+
export declare function isGetterProperty(obj: object, prop: string): false | (() => any) | undefined;
|