@pixui-dev/pxw 0.1.16
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/pxw.js +217 -0
- package/bin/wpbuild.js +10 -0
- package/config/default.conf +21 -0
- package/config/devops.js +358 -0
- package/config/h5es.js +10 -0
- package/config/index.html +181 -0
- package/config/pfbs.js +207 -0
- package/config/testhelp.js +0 -0
- package/config/util.js +140 -0
- package/config/webpack.js +291 -0
- package/lib/assets/border.png +0 -0
- package/lib/assets/check.html +62 -0
- package/lib/assets/pixui.png +0 -0
- package/lib/assets/preact.js +4354 -0
- package/lib/assets/preact.png +0 -0
- package/lib/check/main.less +63 -0
- package/lib/check/main.tsx +41 -0
- package/lib/check/tool.js +3 -0
- package/lib/check/util.tsx +110 -0
- package/lib/grpc-web/dist/ChunkParser.js +117 -0
- package/lib/grpc-web/dist/ChunkParser.js.map +1 -0
- package/lib/grpc-web/dist/Code.js +58 -0
- package/lib/grpc-web/dist/Code.js.map +1 -0
- package/lib/grpc-web/dist/client.js +299 -0
- package/lib/grpc-web/dist/client.js.map +1 -0
- package/lib/grpc-web/dist/debug.js +16 -0
- package/lib/grpc-web/dist/debug.js.map +1 -0
- package/lib/grpc-web/dist/detach.js +7 -0
- package/lib/grpc-web/dist/detach.js.map +1 -0
- package/lib/grpc-web/dist/index.js +29 -0
- package/lib/grpc-web/dist/index.js.map +1 -0
- package/lib/grpc-web/dist/invoke.js +32 -0
- package/lib/grpc-web/dist/invoke.js.map +1 -0
- package/lib/grpc-web/dist/message.js +3 -0
- package/lib/grpc-web/dist/message.js.map +1 -0
- package/lib/grpc-web/dist/metadata.js +5 -0
- package/lib/grpc-web/dist/metadata.js.map +1 -0
- package/lib/grpc-web/dist/service.js +3 -0
- package/lib/grpc-web/dist/service.js.map +1 -0
- package/lib/grpc-web/dist/transports/Transport.js +15 -0
- package/lib/grpc-web/dist/transports/Transport.js.map +1 -0
- package/lib/grpc-web/dist/transports/http/fetch.js +117 -0
- package/lib/grpc-web/dist/transports/http/fetch.js.map +1 -0
- package/lib/grpc-web/dist/transports/http/http.js +15 -0
- package/lib/grpc-web/dist/transports/http/http.js.map +1 -0
- package/lib/grpc-web/dist/transports/http/xhr.js +136 -0
- package/lib/grpc-web/dist/transports/http/xhr.js.map +1 -0
- package/lib/grpc-web/dist/transports/http/xhrUtil.js +36 -0
- package/lib/grpc-web/dist/transports/http/xhrUtil.js.map +1 -0
- package/lib/grpc-web/dist/transports/websocket/websocket.js +95 -0
- package/lib/grpc-web/dist/transports/websocket/websocket.js.map +1 -0
- package/lib/grpc-web/dist/typings/ChunkParser.d.ts +17 -0
- package/lib/grpc-web/dist/typings/Code.d.ts +20 -0
- package/lib/grpc-web/dist/typings/client.d.ts +25 -0
- package/lib/grpc-web/dist/typings/debug.d.ts +1 -0
- package/lib/grpc-web/dist/typings/detach.d.ts +1 -0
- package/lib/grpc-web/dist/typings/index.d.ts +45 -0
- package/lib/grpc-web/dist/typings/invoke.d.ts +20 -0
- package/lib/grpc-web/dist/typings/message.d.ts +8 -0
- package/lib/grpc-web/dist/typings/metadata.d.ts +2 -0
- package/lib/grpc-web/dist/typings/service.d.ts +16 -0
- package/lib/grpc-web/dist/typings/transports/Transport.d.ts +22 -0
- package/lib/grpc-web/dist/typings/transports/http/fetch.d.ts +6 -0
- package/lib/grpc-web/dist/typings/transports/http/http.d.ts +5 -0
- package/lib/grpc-web/dist/typings/transports/http/xhr.d.ts +27 -0
- package/lib/grpc-web/dist/typings/transports/http/xhrUtil.d.ts +3 -0
- package/lib/grpc-web/dist/typings/transports/websocket/websocket.d.ts +2 -0
- package/lib/grpc-web/dist/typings/unary.d.ts +23 -0
- package/lib/grpc-web/dist/typings/util.d.ts +2 -0
- package/lib/grpc-web/dist/unary.js +44 -0
- package/lib/grpc-web/dist/unary.js.map +1 -0
- package/lib/grpc-web/dist/util.js +11 -0
- package/lib/grpc-web/dist/util.js.map +1 -0
- package/lib/grpcTransport/PixHttp2Transport.ts +107 -0
- package/lib/grpcTransport/PixLuaTransport.ts +82 -0
- package/lib/h5es-types/v1.9.2/h5es.d.ts +1698 -0
- package/lib/h5es-types/v3.5.0/h5es.d.ts +1788 -0
- package/lib/pi_component/tinyList/tinyList.js +483 -0
- package/lib/pi_component/tinyList/tinyList.tsx +517 -0
- package/lib/pika-svelte/compiler.js +29829 -0
- package/lib/pika-svelte/easing/index.js +158 -0
- package/lib/pika-svelte/index.js +72 -0
- package/lib/pika-svelte/internal/index.js +1926 -0
- package/lib/pika-svelte/motion/index.js +210 -0
- package/lib/pika-svelte/package.json +145 -0
- package/lib/pika-svelte/register.js +57 -0
- package/lib/pika-svelte/rollup.config.js +126 -0
- package/lib/pika-svelte/store/index.js +123 -0
- package/lib/pika-svelte/transition/index.js +185 -0
- package/lib/preact-router.js +395 -0
- package/lib/preact.js +4355 -0
- package/lib/preact.tq.js +4385 -0
- package/lib/react-window/src/FixedSizeGrid.js +172 -0
- package/lib/react-window/src/FixedSizeList.js +91 -0
- package/lib/react-window/src/VariableSizeGrid.js +329 -0
- package/lib/react-window/src/VariableSizeList.js +231 -0
- package/lib/react-window/src/__tests__/FixedSizeGrid.js +942 -0
- package/lib/react-window/src/__tests__/FixedSizeList.js +749 -0
- package/lib/react-window/src/__tests__/VariableSizeGrid.js +598 -0
- package/lib/react-window/src/__tests__/VariableSizeList.js +345 -0
- package/lib/react-window/src/__tests__/__snapshots__/FixedSizeGrid.js.snap +912 -0
- package/lib/react-window/src/__tests__/__snapshots__/FixedSizeList.js.snap +568 -0
- package/lib/react-window/src/__tests__/__snapshots__/VariableSizeGrid.js.snap +542 -0
- package/lib/react-window/src/__tests__/__snapshots__/VariableSizeList.js.snap +331 -0
- package/lib/react-window/src/__tests__/areEqual.js +28 -0
- package/lib/react-window/src/__tests__/shouldComponentUpdate.js +32 -0
- package/lib/react-window/src/areEqual.js +13 -0
- package/lib/react-window/src/createGridComponent.js +657 -0
- package/lib/react-window/src/createListComponent.js +574 -0
- package/lib/react-window/src/domHelpers.js +69 -0
- package/lib/react-window/src/index.js +9 -0
- package/lib/react-window/src/shallowDiffers.js +17 -0
- package/lib/react-window/src/shouldComponentUpdate.js +11 -0
- package/lib/react-window/src/test.js.flow +382 -0
- package/lib/react-window/src/timer.js +36 -0
- package/lib/svelte-tab/Tab.svelte +31 -0
- package/lib/svelte-tab/TabList.svelte +10 -0
- package/lib/svelte-tab/TabPanel.svelte +13 -0
- package/lib/svelte-tab/Tabs.svelte +68 -0
- package/lib/svelte-tab/tabs.js +4 -0
- package/lib/types/css.d.ts +7476 -0
- package/lib/types/dom.ts +17 -0
- package/lib/types/ext.d.ts +81 -0
- package/lib/types/internal.d.ts +94 -0
- package/lib/types/jsx.d.ts +309 -0
- package/lib/types/preact.d.ts +340 -0
- package/package.json +111 -0
- package/tsconfig.json +30 -0
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { grpc } from '@improbable-eng/grpc-web';
|
|
2
|
+
import { TransportOptions } from '@improbable-eng/grpc-web/dist/typings/transports/Transport';
|
|
3
|
+
import { Metadata } from '@improbable-eng/grpc-web/dist/typings/metadata';
|
|
4
|
+
import { ProtobufMessage, ProtobufMessageClass } from '@improbable-eng/grpc-web/dist/typings/message';
|
|
5
|
+
|
|
6
|
+
let debug = console.log;
|
|
7
|
+
|
|
8
|
+
const FINISH_SEND = 1;
|
|
9
|
+
|
|
10
|
+
function isEmpty(value) {
|
|
11
|
+
return value === undefined || value === '' || value === null;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
function headersToBytes(headers) {
|
|
15
|
+
let asString = [];
|
|
16
|
+
headers.forEach(function (key, values) {
|
|
17
|
+
asString[String(key)] = values;
|
|
18
|
+
});
|
|
19
|
+
return asString;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export class Http2PixTransport implements grpc.Transport {
|
|
23
|
+
constructor(public options) {
|
|
24
|
+
options.debug && debug('GrpcPixTransport', options);
|
|
25
|
+
this.initHttp2();
|
|
26
|
+
}
|
|
27
|
+
pixuiGrpcAddress = this.options.url;
|
|
28
|
+
headers = new grpc.Metadata();
|
|
29
|
+
sendQueue: Array<any> = [];
|
|
30
|
+
flag = false;
|
|
31
|
+
px: any;
|
|
32
|
+
|
|
33
|
+
initHttp2 = () => {
|
|
34
|
+
if (!window['isHttp2Started']) {
|
|
35
|
+
window.Http2Connection.init();
|
|
36
|
+
window['isHttp2Started'] = setInterval(function () {
|
|
37
|
+
window.Http2Connection.run();
|
|
38
|
+
}, 100);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
sendMsg = (toSend) => {
|
|
42
|
+
if (toSend === FINISH_SEND) {
|
|
43
|
+
this.options.debug && debug('sendMsg', toSend);
|
|
44
|
+
this.px.send(new Uint8Array([1]));
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
this.options.debug && debug('sendMsg', toSend);
|
|
48
|
+
this.px.send(toSend);
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
sendMessage = (msgBytes) => {
|
|
52
|
+
if (!this.px) {
|
|
53
|
+
this.sendQueue.push(msgBytes);
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
this.sendMsg(msgBytes);
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
finishSend = () => {
|
|
60
|
+
if (!this.px) {
|
|
61
|
+
this.sendQueue.push(FINISH_SEND);
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
this.sendMsg(FINISH_SEND);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
onHeaders = (e) => {
|
|
68
|
+
let str = String(e);
|
|
69
|
+
let splitted = str.split(':', 2);
|
|
70
|
+
if (!isEmpty(splitted[0]) && !isEmpty(splitted[1])) {
|
|
71
|
+
this.headers.set(splitted[0], splitted[1]);
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
onChunk = (e) => {
|
|
75
|
+
if (!this.flag) {
|
|
76
|
+
this.flag = true;
|
|
77
|
+
// this.headers.set('grpc-status','0');
|
|
78
|
+
// this.headers.set('grpc-message','OK');
|
|
79
|
+
this.options.debug && debug('pixuiGrpc.onHeaders', this.headers);
|
|
80
|
+
this.options.onHeaders(this.headers, 200);
|
|
81
|
+
}
|
|
82
|
+
let data = new Uint8Array(e);
|
|
83
|
+
this.options.debug && debug('onChunk', data);
|
|
84
|
+
this.options.onChunk(data);
|
|
85
|
+
};
|
|
86
|
+
onEnd = (vv) => {
|
|
87
|
+
console.log(vv['resCode'], vv['time']);
|
|
88
|
+
this.options.debug && debug('pixuiGrpc.onEnd');
|
|
89
|
+
this.options.onEnd();
|
|
90
|
+
this.px = null;
|
|
91
|
+
};
|
|
92
|
+
start = (metadata) => {
|
|
93
|
+
this.options.debug && debug('pixuiGrpc-start', JSON.stringify(metadata));
|
|
94
|
+
this.px = new Http2Connection(this.pixuiGrpcAddress, headersToBytes(metadata), this.options.debug);
|
|
95
|
+
this.px.setHeadersCallBack(this.onHeaders);
|
|
96
|
+
this.px.setDataCallBack(this.onChunk);
|
|
97
|
+
this.px.setEndCallBack(this.onEnd);
|
|
98
|
+
this.sendQueue.forEach((toSend) => {
|
|
99
|
+
this.sendMsg(toSend);
|
|
100
|
+
});
|
|
101
|
+
};
|
|
102
|
+
cancel = () => {
|
|
103
|
+
this.options.debug && debug('pixuiGrpc-cancel');
|
|
104
|
+
this.options.debug && debug('pixuiGrpc.onclose');
|
|
105
|
+
this.px.close();
|
|
106
|
+
};
|
|
107
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { grpc } from '@improbable-eng/grpc-web';
|
|
2
|
+
import { TransportOptions } from '@improbable-eng/grpc-web/dist/typings/transports/Transport';
|
|
3
|
+
import { Metadata } from '@improbable-eng/grpc-web/dist/typings/metadata';
|
|
4
|
+
|
|
5
|
+
let debug = console.log;
|
|
6
|
+
let callbackId = 0;
|
|
7
|
+
let pendingCall = {};
|
|
8
|
+
|
|
9
|
+
function getNewID() {
|
|
10
|
+
let id = callbackId;
|
|
11
|
+
callbackId += 1;
|
|
12
|
+
return id.toString();
|
|
13
|
+
}
|
|
14
|
+
//接收调用返回值
|
|
15
|
+
(window as any).onRPCMessage = function (msg) {
|
|
16
|
+
window.requestAnimationFrame(() => {
|
|
17
|
+
let res = JSON.parse(msg);
|
|
18
|
+
let func = pendingCall[res.meta.callbackId];
|
|
19
|
+
func(res);
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export class LuaPixTransport implements grpc.Transport {
|
|
24
|
+
constructor(public options: TransportOptions) {
|
|
25
|
+
window.noProto = true;
|
|
26
|
+
options.debug && debug('LuaPixTransport', options);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
headers = new grpc.Metadata();
|
|
30
|
+
sendMsg = (this.options as any).callFunc;
|
|
31
|
+
data;
|
|
32
|
+
responseType = this.options.methodDefinition.responseType.prototype.constructor;
|
|
33
|
+
meta = new Map<string, string>();
|
|
34
|
+
|
|
35
|
+
sendMessage = (msg) => {
|
|
36
|
+
this.options.debug && debug('sendMessage', msg);
|
|
37
|
+
this.data = msg.toObject();
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
finishSend = () => {
|
|
41
|
+
try {
|
|
42
|
+
let { service, methodName } = this.options.methodDefinition;
|
|
43
|
+
const funcName = 'grpc.' + service.serviceName + '.' + methodName;
|
|
44
|
+
this.options.debug && debug('finishSend, call: ', funcName);
|
|
45
|
+
let callbackId = getNewID();
|
|
46
|
+
this.meta['callbackId'] = callbackId;
|
|
47
|
+
this.meta['windowId'] = (external as any).id;
|
|
48
|
+
const req = {
|
|
49
|
+
func: funcName,
|
|
50
|
+
args: this.data,
|
|
51
|
+
meta: this.meta,
|
|
52
|
+
};
|
|
53
|
+
pendingCall[callbackId] = (res) => {
|
|
54
|
+
this.options.onChunk(new this.responseType(res.body), true);
|
|
55
|
+
if (this.options.methodDefinition.responseStream) {
|
|
56
|
+
//
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
//如果是单次调用,补上onEnd,并清空回调
|
|
60
|
+
this.options.onEnd();
|
|
61
|
+
delete pendingCall[callbackId];
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
this.sendMsg(JSON.stringify(req));
|
|
65
|
+
}
|
|
66
|
+
catch (e) {
|
|
67
|
+
console.log('rpc error', e);
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
start = (metadata) => {
|
|
72
|
+
//unary调用需要
|
|
73
|
+
this.headers.set('grpc-status', '0');
|
|
74
|
+
this.headers.set('grpc-message', 'OK');
|
|
75
|
+
this.options.onHeaders(this.headers, 200);
|
|
76
|
+
|
|
77
|
+
metadata.forEach((key, values) => {
|
|
78
|
+
this.meta[String(key)] = values;
|
|
79
|
+
});
|
|
80
|
+
};
|
|
81
|
+
cancel = () => {};
|
|
82
|
+
}
|