@pixui-dev/pxw 0.1.19 → 0.1.21

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.
Files changed (95) hide show
  1. package/bin/pxw.js +199 -199
  2. package/bin/wpbuild.js +10 -10
  3. package/config/default.conf +20 -20
  4. package/config/devops.js +372 -361
  5. package/config/h5es.js +10 -10
  6. package/config/index.html +183 -181
  7. package/config/pfbs.js +245 -245
  8. package/config/util.js +140 -140
  9. package/config/webpack.js +325 -309
  10. package/lib/assets/check.html +62 -62
  11. package/lib/assets/preact.js +4354 -4354
  12. package/lib/check/main.less +62 -62
  13. package/lib/check/main.tsx +41 -41
  14. package/lib/check/tool.js +3 -3
  15. package/lib/check/util.tsx +110 -110
  16. package/lib/grpc-web/dist/ChunkParser.js +117 -117
  17. package/lib/grpc-web/dist/Code.js +58 -58
  18. package/lib/grpc-web/dist/client.js +299 -299
  19. package/lib/grpc-web/dist/debug.js +16 -16
  20. package/lib/grpc-web/dist/detach.js +7 -7
  21. package/lib/grpc-web/dist/index.js +29 -29
  22. package/lib/grpc-web/dist/invoke.js +32 -32
  23. package/lib/grpc-web/dist/message.js +3 -3
  24. package/lib/grpc-web/dist/metadata.js +5 -5
  25. package/lib/grpc-web/dist/service.js +3 -3
  26. package/lib/grpc-web/dist/transports/Transport.js +15 -15
  27. package/lib/grpc-web/dist/transports/http/fetch.js +117 -117
  28. package/lib/grpc-web/dist/transports/http/http.js +15 -15
  29. package/lib/grpc-web/dist/transports/http/xhr.js +136 -136
  30. package/lib/grpc-web/dist/transports/http/xhrUtil.js +36 -36
  31. package/lib/grpc-web/dist/transports/websocket/websocket.js +95 -95
  32. package/lib/grpc-web/dist/typings/ChunkParser.d.ts +17 -17
  33. package/lib/grpc-web/dist/typings/Code.d.ts +20 -20
  34. package/lib/grpc-web/dist/typings/client.d.ts +25 -25
  35. package/lib/grpc-web/dist/typings/debug.d.ts +1 -1
  36. package/lib/grpc-web/dist/typings/detach.d.ts +1 -1
  37. package/lib/grpc-web/dist/typings/index.d.ts +45 -45
  38. package/lib/grpc-web/dist/typings/invoke.d.ts +20 -20
  39. package/lib/grpc-web/dist/typings/message.d.ts +8 -8
  40. package/lib/grpc-web/dist/typings/metadata.d.ts +2 -2
  41. package/lib/grpc-web/dist/typings/service.d.ts +16 -16
  42. package/lib/grpc-web/dist/typings/transports/Transport.d.ts +22 -22
  43. package/lib/grpc-web/dist/typings/transports/http/fetch.d.ts +6 -6
  44. package/lib/grpc-web/dist/typings/transports/http/http.d.ts +5 -5
  45. package/lib/grpc-web/dist/typings/transports/http/xhr.d.ts +27 -27
  46. package/lib/grpc-web/dist/typings/transports/http/xhrUtil.d.ts +3 -3
  47. package/lib/grpc-web/dist/typings/transports/websocket/websocket.d.ts +2 -2
  48. package/lib/grpc-web/dist/typings/unary.d.ts +23 -23
  49. package/lib/grpc-web/dist/typings/util.d.ts +2 -2
  50. package/lib/grpc-web/dist/unary.js +44 -44
  51. package/lib/grpc-web/dist/util.js +11 -11
  52. package/lib/grpcTransport/PixHttp2Transport.ts +107 -107
  53. package/lib/grpcTransport/PixLuaTransport.ts +82 -82
  54. package/lib/h5es-types/v1.9.2/h5es.d.ts +1698 -1698
  55. package/lib/h5es-types/v3.5.0/h5es.d.ts +1788 -1788
  56. package/lib/pi_component/tinyList/tinyList.js +483 -483
  57. package/lib/pi_component/tinyList/tinyList.tsx +517 -517
  58. package/lib/preact-router.js +395 -395
  59. package/lib/preact.js +4355 -4355
  60. package/lib/preact.tq.js +4385 -4385
  61. package/lib/react-window/src/FixedSizeGrid.js +172 -172
  62. package/lib/react-window/src/FixedSizeList.js +91 -91
  63. package/lib/react-window/src/VariableSizeGrid.js +329 -329
  64. package/lib/react-window/src/VariableSizeList.js +231 -231
  65. package/lib/react-window/src/__tests__/FixedSizeGrid.js +942 -942
  66. package/lib/react-window/src/__tests__/FixedSizeList.js +749 -749
  67. package/lib/react-window/src/__tests__/VariableSizeGrid.js +598 -598
  68. package/lib/react-window/src/__tests__/VariableSizeList.js +345 -345
  69. package/lib/react-window/src/__tests__/__snapshots__/FixedSizeGrid.js.snap +912 -912
  70. package/lib/react-window/src/__tests__/__snapshots__/FixedSizeList.js.snap +568 -568
  71. package/lib/react-window/src/__tests__/__snapshots__/VariableSizeGrid.js.snap +542 -542
  72. package/lib/react-window/src/__tests__/__snapshots__/VariableSizeList.js.snap +331 -331
  73. package/lib/react-window/src/__tests__/areEqual.js +28 -28
  74. package/lib/react-window/src/__tests__/shouldComponentUpdate.js +32 -32
  75. package/lib/react-window/src/areEqual.js +13 -13
  76. package/lib/react-window/src/createGridComponent.js +657 -657
  77. package/lib/react-window/src/createListComponent.js +574 -574
  78. package/lib/react-window/src/domHelpers.js +69 -69
  79. package/lib/react-window/src/index.js +9 -9
  80. package/lib/react-window/src/shallowDiffers.js +17 -17
  81. package/lib/react-window/src/shouldComponentUpdate.js +11 -11
  82. package/lib/react-window/src/test.js.flow +382 -382
  83. package/lib/react-window/src/timer.js +36 -36
  84. package/lib/types/dom.ts +17 -17
  85. package/lib/types/ext.d.ts +81 -81
  86. package/lib/types/{css.d.ts → preact/css.d.ts} +7476 -7476
  87. package/lib/types/{preact.d.ts → preact/index.d.ts} +340 -340
  88. package/lib/types/{internal.d.ts → preact/internal.d.ts} +94 -94
  89. package/lib/types/{jsx.d.ts → preact/jsx.d.ts} +309 -309
  90. package/lib/types/preact-router/index.d.ts +85 -0
  91. package/package.json +113 -113
  92. package/scripts/pack.js +40 -40
  93. package/scripts/postinstall.js +11 -11
  94. package/scripts/run-pxw.js +12 -12
  95. package/tsconfig.json +30 -30
package/config/h5es.js CHANGED
@@ -1,10 +1,10 @@
1
- module.exports.h5esVersions = [
2
- {
3
- name: 'v1.9.2',
4
- path: 'node_modules/@pixui-dev/pxw/lib/h5es-types/v1.9.2',
5
- },
6
- {
7
- name: 'v3.5.0',
8
- path: 'node_modules/@pixui-dev/pxw/lib/h5es-types/v3.5.0',
9
- },
10
- ];
1
+ module.exports.h5esVersions = [
2
+ {
3
+ name: 'v1.9.2',
4
+ path: 'node_modules/@pixui-dev/pxw/lib/h5es-types/v1.9.2',
5
+ },
6
+ {
7
+ name: 'v3.5.0',
8
+ path: 'node_modules/@pixui-dev/pxw/lib/h5es-types/v3.5.0',
9
+ },
10
+ ];
package/config/index.html CHANGED
@@ -1,181 +1,183 @@
1
- <html>
2
- <head>
3
- <title>pxw开发测试控制台</title>
4
- <style>
5
- div {
6
- display: flex;
7
- flex-direction: column;
8
- }
9
- .custom-dd {
10
- position: relative;
11
- margin: 40px 0;
12
- width: 280px;
13
- }
14
- .dd-header {
15
- background: #f8f9fa;
16
- border: 2px solid #dee2e6;
17
- padding: 12px 20px;
18
- cursor: pointer;
19
- border-radius: 8px;
20
- }
21
- .dd-list {
22
- display: none;
23
- position: absolute;
24
- top: 100%;
25
- left: 0;
26
- right: 0;
27
- background: #fff;
28
- border: 1px solid #ced4da;
29
- border-radius: 6px;
30
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
31
- z-index: 1000;
32
- }
33
- .dd-item {
34
- padding: 10px 20px;
35
- transition: background 0.2s;
36
- }
37
- .dd-item:hover {
38
- background: #e9ecef;
39
- }
40
- .show {
41
- display: block;
42
- }
43
- </style>
44
- <script></script>
45
- <script>
46
- let ddVisible = false;
47
- let toggleDD = () => {
48
- ddVisible = !ddVisible;
49
- document.getElementById('ddList').style.display = ddVisible ? 'block' : 'none';
50
- };
51
-
52
- function updateConfig(path) {
53
- var xhr = new XMLHttpRequest();
54
- xhr.open('POST', 'api/update-tsconfig');
55
- xhr.setRequestHeader('Content-Type', 'application/json');
56
-
57
- xhr.onload = function () {
58
- if (xhr.status === 200) {
59
- var response = JSON.parse(xhr.responseText);
60
- console.log('更新成功:', response);
61
- if(response.success){
62
- document.getElementById('ddHeader').textContent = '▼ 选择声明文件对应版本: ' + response.newConfig;
63
- }
64
- } else {
65
- console.error('请求失败:', xhr.statusText);
66
- }
67
- };
68
- var data = JSON.stringify({ typeRoots: path });
69
- xhr.send(data);
70
- toggleDD();
71
- }
72
-
73
- // const handleVersionSelect = async (path) => {
74
- // try {
75
- // const isCustom = path === 'custom';
76
- // const finalPath = isCustom
77
- // ? prompt('请输入类型声明路径(多个用逗号分隔)')
78
- // .split(',')
79
- // .map((p) => p.trim())
80
- // : path;
81
- // console.log('finalPath', finalPath);
82
- // const response = await fetch('/api/update-tsconfig', {
83
- // method: 'POST',
84
- // headers: { 'Content-Type': 'application/json' },
85
- // body: JSON.stringify({ typeRoots: path }),
86
- // });
87
- // const data = await response.json();
88
- // if(data.success){
89
- // document.getElementById('ddHeader').textContent = '▼ 选择声明文件对应版本: ' + data.newConfig;
90
- // }
91
-
92
- // } catch (error) {
93
- // console.log(`配置更新失败: \${error.message}`);
94
- // } finally {
95
- // toggleDD();
96
- // }
97
- // };
98
-
99
- document.addEventListener('click', (e) => {
100
- if (!e.target.closest('.custom-dd') && ddVisible) toggleDD();
101
- });
102
-
103
- function xhrGet(){
104
- return new Promise((resolve, reject) => {
105
- var xhr = new XMLHttpRequest();
106
- xhr.open('GET', '/api/get-project-config');
107
- xhr.onload = () => {
108
- if (xhr.status === 200) {
109
- try {
110
- resolve(JSON.parse(xhr.responseText));
111
- } catch (e) {
112
- reject(e);
113
- }
114
- } else {
115
- reject(new Error(`HTTP ${xhr.status}`));
116
- }
117
- };
118
- xhr.onerror = () => reject(new Error('Network Error'));
119
- xhr.send();
120
- });
121
- }
122
-
123
- async function init() {
124
- // fetch暂不支持
125
- // let res = await fetch('/api/get-project-config');
126
- // let data = await res.json();
127
- xhrGet().then((data=>{
128
- {
129
- console.log("data: ", data);
130
- let ediv = document.getElementById('pageEntry');
131
- let temp = ediv.children[0];
132
- ediv.removeChild(temp);
133
- data.pages.forEach((item) => {
134
- let entry = temp.cloneNode(true);
135
- entry.textContent = item.name;
136
- entry.setAttribute('href', `/${item.name}`)
137
- ediv.appendChild(entry);
138
- });
139
- }
140
- {
141
- let ddlist = document.getElementById('ddList');
142
- let temp = ddlist.children[0];
143
- ddlist.removeChild(temp);
144
- let ddHeader = document.getElementById('ddHeader');
145
- ddHeader.textContent = '▼ 选择声明文件对应版本: ' + data.defaultH5esType;
146
- data.h5esVersions.forEach((item) => {
147
- let el = temp.cloneNode(true);
148
- el.textContent = item.name;
149
- el.onclick = () => {
150
- updateConfig(item.path);
151
- };
152
- ddlist.appendChild(el);
153
- });
154
- }
155
- }))
156
- }
157
- </script>
158
- </head>
159
- <body onload="init()">
160
- <div>
161
- <div style="font-size: 36">页面入口:</div>
162
- <div id="pageEntry" style="margin-left: 20px; align-items: start">
163
- <a style="font-size: 36px">home</a>
164
- </div>
165
- </div>
166
- <div style="height: 20px"></div>
167
- <div>
168
- <div style="font-size: 36">测试:</div>
169
- <div id="entry" style="margin-left: 20px; align-items: start">
170
- <a style="font-size: 36px" href="/pxtest/auto">pxtest</a>
171
- <a style="font-size: 36px" href="/pxtest/devops.html">devops</a>
172
- </div>
173
- </div>
174
- <div class="custom-dd">
175
- <div class="dd-header" onclick="toggleDD()" id="ddHeader">▼ 选择声明文件对应版本</div>
176
- <div class="dd-list" id="ddList">
177
- <div class="dd-item">v1.9.2</div>
178
- </div>
179
- </div>
180
- </body>
181
- </html>
1
+ <html>
2
+ <head>
3
+ <title>pxw开发测试控制台</title>
4
+ <style>
5
+ div {
6
+ display: flex;
7
+ flex-direction: column;
8
+ }
9
+ .custom-dd {
10
+ position: relative;
11
+ margin: 40px 0;
12
+ width: 280px;
13
+ }
14
+ .dd-header {
15
+ background: #f8f9fa;
16
+ border: 2px solid #dee2e6;
17
+ padding: 12px 20px;
18
+ cursor: pointer;
19
+ border-radius: 8px;
20
+ }
21
+ .dd-list {
22
+ display: none;
23
+ position: absolute;
24
+ top: 100%;
25
+ left: 0;
26
+ right: 0;
27
+ background: #fff;
28
+ border: 1px solid #ced4da;
29
+ border-radius: 6px;
30
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
31
+ z-index: 1000;
32
+ }
33
+ .dd-item {
34
+ padding: 10px 20px;
35
+ transition: background 0.2s;
36
+ }
37
+ .dd-item:hover {
38
+ background: #e9ecef;
39
+ }
40
+ .show {
41
+ display: block;
42
+ }
43
+ </style>
44
+ <script></script>
45
+ <script>
46
+ let ddVisible = false;
47
+ let toggleDD = () => {
48
+ ddVisible = !ddVisible;
49
+ document.getElementById('ddList').style.display = ddVisible ? 'block' : 'none';
50
+ };
51
+
52
+ function updateConfig(path) {
53
+ var xhr = new XMLHttpRequest();
54
+ xhr.open('POST', 'api/update-tsconfig');
55
+ xhr.setRequestHeader('Content-Type', 'application/json');
56
+
57
+ xhr.onload = function () {
58
+ if (xhr.status === 200) {
59
+ var response = JSON.parse(xhr.responseText);
60
+ console.log('更新成功:', response);
61
+ if (response.success) {
62
+ document.getElementById('ddHeader').textContent = '▼ 选择声明文件对应版本: ' + response.newConfig;
63
+ }
64
+ } else {
65
+ console.error('请求失败:', xhr.statusText);
66
+ }
67
+ };
68
+ var data = JSON.stringify({ typeRoots: path });
69
+ xhr.send(data);
70
+ toggleDD();
71
+ }
72
+
73
+ // const handleVersionSelect = async (path) => {
74
+ // try {
75
+ // const isCustom = path === 'custom';
76
+ // const finalPath = isCustom
77
+ // ? prompt('请输入类型声明路径(多个用逗号分隔)')
78
+ // .split(',')
79
+ // .map((p) => p.trim())
80
+ // : path;
81
+ // console.log('finalPath', finalPath);
82
+ // const response = await fetch('/api/update-tsconfig', {
83
+ // method: 'POST',
84
+ // headers: { 'Content-Type': 'application/json' },
85
+ // body: JSON.stringify({ typeRoots: path }),
86
+ // });
87
+ // const data = await response.json();
88
+ // if(data.success){
89
+ // document.getElementById('ddHeader').textContent = '▼ 选择声明文件对应版本: ' + data.newConfig;
90
+ // }
91
+
92
+ // } catch (error) {
93
+ // console.log(`配置更新失败: \${error.message}`);
94
+ // } finally {
95
+ // toggleDD();
96
+ // }
97
+ // };
98
+
99
+ document.addEventListener('click', (e) => {
100
+ if (!e.target.closest('.custom-dd') && ddVisible) toggleDD();
101
+ });
102
+
103
+ function xhrGet() {
104
+ return new Promise((resolve, reject) => {
105
+ var xhr = new XMLHttpRequest();
106
+ xhr.open('GET', '/api/get-project-config');
107
+ xhr.onload = () => {
108
+ if (xhr.status === 200) {
109
+ try {
110
+ resolve(JSON.parse(xhr.responseText));
111
+ } catch (e) {
112
+ reject(e);
113
+ }
114
+ } else {
115
+ reject(new Error(`HTTP ${xhr.status}`));
116
+ }
117
+ };
118
+ xhr.onerror = () => reject(new Error('Network Error'));
119
+ xhr.send();
120
+ });
121
+ }
122
+
123
+ async function init() {
124
+ // fetch暂不支持
125
+ // let res = await fetch('/api/get-project-config');
126
+ // let data = await res.json();
127
+ xhrGet().then((data) => {
128
+ {
129
+ console.log('data: ', data);
130
+ let ediv = document.getElementById('pageEntry');
131
+ let temp = ediv.children[0];
132
+ ediv.removeChild(temp);
133
+ data.pages.forEach((item) => {
134
+ let entry = temp.cloneNode(true);
135
+ entry.textContent = item.name;
136
+ let href = `/${item.name}`;
137
+ if (item.name == 'preprocess') href += `preprocess.html`;
138
+ entry.setAttribute('href', href);
139
+ ediv.appendChild(entry);
140
+ });
141
+ }
142
+ {
143
+ let ddlist = document.getElementById('ddList');
144
+ let temp = ddlist.children[0];
145
+ ddlist.removeChild(temp);
146
+ let ddHeader = document.getElementById('ddHeader');
147
+ ddHeader.textContent = '▼ 选择声明文件对应版本: ' + data.defaultH5esType;
148
+ data.h5esVersions.forEach((item) => {
149
+ let el = temp.cloneNode(true);
150
+ el.textContent = item.name;
151
+ el.onclick = () => {
152
+ updateConfig(item.path);
153
+ };
154
+ ddlist.appendChild(el);
155
+ });
156
+ }
157
+ });
158
+ }
159
+ </script>
160
+ </head>
161
+ <body onload="init()">
162
+ <div>
163
+ <div style="font-size: 36">页面入口:</div>
164
+ <div id="pageEntry" style="margin-left: 20px; align-items: start">
165
+ <a style="font-size: 36px">home</a>
166
+ </div>
167
+ </div>
168
+ <div style="height: 20px"></div>
169
+ <div>
170
+ <div style="font-size: 36">测试:</div>
171
+ <div id="entry" style="margin-left: 20px; align-items: start">
172
+ <a style="font-size: 36px" href="/pxtest/auto">pxtest</a>
173
+ <a style="font-size: 36px" href="/pxtest/devops.html">devops</a>
174
+ </div>
175
+ </div>
176
+ <div class="custom-dd">
177
+ <div class="dd-header" onclick="toggleDD()" id="ddHeader">▼ 选择声明文件对应版本</div>
178
+ <div class="dd-list" id="ddList">
179
+ <div class="dd-item">v1.9.2</div>
180
+ </div>
181
+ </div>
182
+ </body>
183
+ </html>