@ives_xxz/framework 1.6.2 → 1.6.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/FW.d.ts +55 -125
- package/config/FWSystemConfig.ts +4 -4
- package/controller/FWLayerController.ts +14 -25
- package/manager/FWAssetManager.ts +46 -67
- package/manager/FWPromiseManager.ts +39 -76
- package/manager/FWResManager.ts +14 -21
- package/manager/FWUiManager.ts +11 -18
- package/package.json +2 -4
- package/service/http/FWHttp.ts +37 -57
package/manager/FWUiManager.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { searchChild } from
|
|
2
|
-
import FWLog from
|
|
3
|
-
import { FWManager } from
|
|
1
|
+
import { searchChild } from '../expand/FWDecorator';
|
|
2
|
+
import FWLog from '../log/FWLog';
|
|
3
|
+
import { FWManager } from './FWManager';
|
|
4
4
|
|
|
5
5
|
export default class FWUiManager extends FWManager implements FW.UiManager {
|
|
6
6
|
private eventMap: Map<
|
|
@@ -113,7 +113,7 @@ export default class FWUiManager extends FWManager implements FW.UiManager {
|
|
|
113
113
|
|
|
114
114
|
register(args: FW.RegisterArgs) {
|
|
115
115
|
if (!args.target) {
|
|
116
|
-
FWLog.error(
|
|
116
|
+
FWLog.error('注册事件失败,目标为空!');
|
|
117
117
|
return;
|
|
118
118
|
}
|
|
119
119
|
|
|
@@ -131,11 +131,7 @@ export default class FWUiManager extends FWManager implements FW.UiManager {
|
|
|
131
131
|
|
|
132
132
|
if (!evt.enable) return;
|
|
133
133
|
|
|
134
|
-
|
|
135
|
-
if (
|
|
136
|
-
Date.now() - evt.lastResponseTimestamp <
|
|
137
|
-
evt.responseInterval
|
|
138
|
-
) {
|
|
134
|
+
if (Date.now() - evt.lastResponseTimestamp < evt.responseInterval) {
|
|
139
135
|
return;
|
|
140
136
|
}
|
|
141
137
|
|
|
@@ -143,9 +139,9 @@ export default class FWUiManager extends FWManager implements FW.UiManager {
|
|
|
143
139
|
if (button && !button.interactable) return;
|
|
144
140
|
|
|
145
141
|
evt.lastResponseTimestamp = Date.now();
|
|
146
|
-
evt.cb?.bind(args.target)?.(e, c);
|
|
142
|
+
evt.cb?.bind(args.target)?.(e, c, evt.data);
|
|
147
143
|
},
|
|
148
|
-
args.target
|
|
144
|
+
args.target,
|
|
149
145
|
);
|
|
150
146
|
this.eventMap.set(this.uniqueId, {
|
|
151
147
|
uniqueId: this.uniqueId,
|
|
@@ -168,12 +164,9 @@ export default class FWUiManager extends FWManager implements FW.UiManager {
|
|
|
168
164
|
args7?: FW.EventManagerArgs,
|
|
169
165
|
args8?: FW.EventManagerArgs,
|
|
170
166
|
args9?: FW.EventManagerArgs,
|
|
171
|
-
args10?: FW.EventManagerArgs
|
|
167
|
+
args10?: FW.EventManagerArgs,
|
|
172
168
|
) => {
|
|
173
|
-
if (
|
|
174
|
-
Date.now() - evt.lastResponseTimestamp <
|
|
175
|
-
(evt.responseInterval || 0)
|
|
176
|
-
) {
|
|
169
|
+
if (Date.now() - evt.lastResponseTimestamp < (evt.responseInterval || 0)) {
|
|
177
170
|
return;
|
|
178
171
|
}
|
|
179
172
|
evt.lastResponseTimestamp = Date.now();
|
|
@@ -187,10 +180,10 @@ export default class FWUiManager extends FWManager implements FW.UiManager {
|
|
|
187
180
|
args7,
|
|
188
181
|
args8,
|
|
189
182
|
args9,
|
|
190
|
-
args10
|
|
183
|
+
args10,
|
|
191
184
|
);
|
|
192
185
|
},
|
|
193
|
-
args.target
|
|
186
|
+
args.target,
|
|
194
187
|
);
|
|
195
188
|
|
|
196
189
|
this.eventMap.set(this.uniqueId, {
|
package/package.json
CHANGED
package/service/http/FWHttp.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { FWSystemConfig } from
|
|
2
|
-
import { FWSystemDefine } from
|
|
3
|
-
import FWLog from
|
|
4
|
-
import FWService from
|
|
1
|
+
import { FWSystemConfig } from '../../config/FWSystemConfig';
|
|
2
|
+
import { FWSystemDefine } from '../../define/FWSystemDefine';
|
|
3
|
+
import FWLog from '../../log/FWLog';
|
|
4
|
+
import FWService from '../FWService';
|
|
5
5
|
|
|
6
6
|
export default class FWHttp extends FWService {
|
|
7
7
|
public initialize() {}
|
|
@@ -12,30 +12,18 @@ export default class FWHttp extends FWService {
|
|
|
12
12
|
url: string,
|
|
13
13
|
params?: string,
|
|
14
14
|
cb?: (response: string) => void,
|
|
15
|
-
tag?: string
|
|
15
|
+
tag?: string,
|
|
16
16
|
): Promise<string> {
|
|
17
|
-
return this.process(
|
|
18
|
-
url,
|
|
19
|
-
params,
|
|
20
|
-
cb,
|
|
21
|
-
tag,
|
|
22
|
-
FWSystemDefine.FWHttpRequestType.GET
|
|
23
|
-
);
|
|
17
|
+
return this.process(url, params, cb, tag, FWSystemDefine.FWHttpRequestType.GET);
|
|
24
18
|
}
|
|
25
19
|
|
|
26
20
|
protected async postMessage(
|
|
27
21
|
url: string,
|
|
28
22
|
params?: string,
|
|
29
23
|
cb?: (response: string) => void,
|
|
30
|
-
tag?: string
|
|
24
|
+
tag?: string,
|
|
31
25
|
): Promise<string> {
|
|
32
|
-
return this.process(
|
|
33
|
-
url,
|
|
34
|
-
params,
|
|
35
|
-
cb,
|
|
36
|
-
tag,
|
|
37
|
-
FWSystemDefine.FWHttpRequestType.POST
|
|
38
|
-
);
|
|
26
|
+
return this.process(url, params, cb, tag, FWSystemDefine.FWHttpRequestType.POST);
|
|
39
27
|
}
|
|
40
28
|
|
|
41
29
|
private async process(
|
|
@@ -43,56 +31,48 @@ export default class FWHttp extends FWService {
|
|
|
43
31
|
params: string,
|
|
44
32
|
cb: (response: any) => void,
|
|
45
33
|
tag: string,
|
|
46
|
-
type: FWSystemDefine.FWHttpRequestType
|
|
34
|
+
type: FWSystemDefine.FWHttpRequestType,
|
|
47
35
|
): Promise<string> {
|
|
48
36
|
let xhr: XMLHttpRequest;
|
|
49
37
|
|
|
50
|
-
const promiseProxy: FW.PromiseProxy<string> =
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
xhr = new XMLHttpRequest();
|
|
38
|
+
const promiseProxy: FW.PromiseProxy<string> = FW.Entry.promiseMgr.execute<string>(
|
|
39
|
+
(resolve, reject, signal, reason) => {
|
|
40
|
+
xhr = new XMLHttpRequest();
|
|
54
41
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
42
|
+
xhr.onreadystatechange = () => {
|
|
43
|
+
if (xhr.readyState == 4 && xhr.status === 200) {
|
|
44
|
+
cb?.(xhr.response);
|
|
45
|
+
resolve(xhr.response);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
61
48
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
49
|
+
xhr.onerror = (err: any) => {
|
|
50
|
+
FWLog.error(err);
|
|
51
|
+
this.onError?.(err);
|
|
52
|
+
reject(`http request error:${err}`);
|
|
53
|
+
};
|
|
67
54
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
55
|
+
xhr.ontimeout = () => {
|
|
56
|
+
this.onTimeout?.();
|
|
57
|
+
reject(`http request timeout!`);
|
|
58
|
+
};
|
|
72
59
|
|
|
73
|
-
|
|
74
|
-
|
|
60
|
+
xhr.open(type, url, true);
|
|
61
|
+
xhr.send(params);
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
...FWSystemConfig.PromiseConfig.http,
|
|
65
|
+
retryCondition(error, retryCount) {
|
|
66
|
+
return error || xhr.readyState != 4 || (xhr.status !== 200 && retryCount < 3);
|
|
75
67
|
},
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
retryCondition(error, retryCount) {
|
|
79
|
-
return (
|
|
80
|
-
error ||
|
|
81
|
-
xhr.readyState != 4 ||
|
|
82
|
-
(xhr.status !== 200 && retryCount < 3)
|
|
83
|
-
);
|
|
84
|
-
},
|
|
85
|
-
}
|
|
86
|
-
);
|
|
68
|
+
},
|
|
69
|
+
);
|
|
87
70
|
|
|
88
71
|
promiseProxy.addAbortEventListener(() => {
|
|
89
72
|
xhr.abort();
|
|
90
73
|
});
|
|
91
74
|
|
|
92
|
-
return await this.invoke(
|
|
93
|
-
promiseProxy.promise,
|
|
94
|
-
tag ? `http request ->${tag}` : ""
|
|
95
|
-
);
|
|
75
|
+
return await this.invoke(promiseProxy.promise, tag ? `http request ->${tag}` : '');
|
|
96
76
|
}
|
|
97
77
|
|
|
98
78
|
onError?(err: any);
|