vite-plugin-opencode-assistant 1.1.11 → 1.1.13
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/es/core/proxy-server.mjs +27 -19
- package/lib/core/proxy-server.cjs +27 -19
- package/package.json +5 -5
package/es/core/proxy-server.mjs
CHANGED
|
@@ -51,6 +51,25 @@ function generateBridgeScript(options) {
|
|
|
51
51
|
const mergedSettings = mergeSettings(DEFAULT_OPENCODE_SETTINGS, settings);
|
|
52
52
|
return `
|
|
53
53
|
(function() {
|
|
54
|
+
// \u7ACB\u5373\u6E05\u7406\u6B8B\u7559\u7684 session tabs \u5B58\u50A8\uFF0C\u5FC5\u987B\u5728 DOMContentLoaded \u4E4B\u524D\u6267\u884C
|
|
55
|
+
// \u5426\u5219 OpenCode \u6A21\u5757\u811A\u672C\u4F1A\u5148\u8BFB\u53D6 localStorage \u5E76\u53D1\u51FA 404 \u8BF7\u6C42
|
|
56
|
+
(function cleanupTabsStorage() {
|
|
57
|
+
try {
|
|
58
|
+
var keysToRemove = [];
|
|
59
|
+
for (var i = 0; i < localStorage.length; i++) {
|
|
60
|
+
var key = localStorage.key(i);
|
|
61
|
+
if (key && (key.indexOf('opencode.window') === 0 || key.indexOf('opencode.workspace') === 0)) {
|
|
62
|
+
keysToRemove.push(key);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
for (var j = 0; j < keysToRemove.length; j++) {
|
|
66
|
+
localStorage.removeItem(keysToRemove[j]);
|
|
67
|
+
}
|
|
68
|
+
} catch (e) {
|
|
69
|
+
// localStorage \u4E0D\u53EF\u7528\u65F6\u5FFD\u7565
|
|
70
|
+
}
|
|
71
|
+
})();
|
|
72
|
+
|
|
54
73
|
// === \u52AB\u6301 matchMedia\uFF0C\u5F3A\u5236\u684C\u9762\u7AEF\u5E03\u5C40\u4EE5\u6E32\u67D3\u5BA1\u67E5\u9762\u677F ===
|
|
55
74
|
// \u53EA\u52AB\u6301 opencode \u5224\u65AD\u684C\u9762\u7AEF\u7684\u5A92\u4F53\u67E5\u8BE2 (min-width: 768px)\uFF0C\u4E0D\u5F71\u54CD\u5176\u4ED6\u67E5\u8BE2
|
|
56
75
|
(function() {
|
|
@@ -641,25 +660,6 @@ function generateBridgeScript(options) {
|
|
|
641
660
|
|
|
642
661
|
// === \u5C31\u7EEA\u901A\u77E5 ===
|
|
643
662
|
function init() {
|
|
644
|
-
// \u6E05\u7406\u6B8B\u7559\u7684 session tabs \u5B58\u50A8\uFF0C\u907F\u514D\u52A0\u8F7D\u5DF2\u8FC7\u671F\u7684 session \u4EA7\u751F 404
|
|
645
|
-
// localStorage \u6309 origin \u9694\u79BB\uFF0C\u6BCF\u6B21 iframe \u91CD\u65B0\u52A0\u8F7D\u65F6\u6E05\u6389\u65E7\u7684 tab \u8BB0\u5F55
|
|
646
|
-
(function cleanupTabsStorage() {
|
|
647
|
-
try {
|
|
648
|
-
var keysToRemove = [];
|
|
649
|
-
for (var i = 0; i < localStorage.length; i++) {
|
|
650
|
-
var key = localStorage.key(i);
|
|
651
|
-
if (key && (key.indexOf('opencode.window') === 0 || key.indexOf('opencode.workspace') === 0)) {
|
|
652
|
-
keysToRemove.push(key);
|
|
653
|
-
}
|
|
654
|
-
}
|
|
655
|
-
for (var j = 0; j < keysToRemove.length; j++) {
|
|
656
|
-
localStorage.removeItem(keysToRemove[j]);
|
|
657
|
-
}
|
|
658
|
-
} catch (e) {
|
|
659
|
-
// localStorage \u4E0D\u53EF\u7528\u65F6\u5FFD\u7565
|
|
660
|
-
}
|
|
661
|
-
})();
|
|
662
|
-
|
|
663
663
|
injectMinimizeStyles();
|
|
664
664
|
injectReviewPanelStyles();
|
|
665
665
|
injectGeneralStyles();
|
|
@@ -698,6 +698,13 @@ function startProxyServer(targetUrl, port, options = {}) {
|
|
|
698
698
|
return new Promise((resolve, reject) => {
|
|
699
699
|
const target = new URL(targetUrl);
|
|
700
700
|
const bridgeScript = generateBridgeScript(options);
|
|
701
|
+
const agent = new http.Agent({
|
|
702
|
+
keepAlive: true,
|
|
703
|
+
keepAliveMsecs: 3e4,
|
|
704
|
+
maxSockets: 50,
|
|
705
|
+
maxFreeSockets: 10,
|
|
706
|
+
timeout: 0
|
|
707
|
+
});
|
|
701
708
|
const server = http.createServer((req, res) => {
|
|
702
709
|
if (req.url === BRIDGE_SCRIPT_PATH) {
|
|
703
710
|
const body = bridgeScript;
|
|
@@ -710,6 +717,7 @@ function startProxyServer(targetUrl, port, options = {}) {
|
|
|
710
717
|
return;
|
|
711
718
|
}
|
|
712
719
|
const requestOptions = {
|
|
720
|
+
agent,
|
|
713
721
|
hostname: target.hostname,
|
|
714
722
|
port: target.port,
|
|
715
723
|
path: req.url,
|
|
@@ -75,6 +75,25 @@ function generateBridgeScript(options) {
|
|
|
75
75
|
const mergedSettings = mergeSettings(import_shared.DEFAULT_OPENCODE_SETTINGS, settings);
|
|
76
76
|
return `
|
|
77
77
|
(function() {
|
|
78
|
+
// \u7ACB\u5373\u6E05\u7406\u6B8B\u7559\u7684 session tabs \u5B58\u50A8\uFF0C\u5FC5\u987B\u5728 DOMContentLoaded \u4E4B\u524D\u6267\u884C
|
|
79
|
+
// \u5426\u5219 OpenCode \u6A21\u5757\u811A\u672C\u4F1A\u5148\u8BFB\u53D6 localStorage \u5E76\u53D1\u51FA 404 \u8BF7\u6C42
|
|
80
|
+
(function cleanupTabsStorage() {
|
|
81
|
+
try {
|
|
82
|
+
var keysToRemove = [];
|
|
83
|
+
for (var i = 0; i < localStorage.length; i++) {
|
|
84
|
+
var key = localStorage.key(i);
|
|
85
|
+
if (key && (key.indexOf('opencode.window') === 0 || key.indexOf('opencode.workspace') === 0)) {
|
|
86
|
+
keysToRemove.push(key);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
for (var j = 0; j < keysToRemove.length; j++) {
|
|
90
|
+
localStorage.removeItem(keysToRemove[j]);
|
|
91
|
+
}
|
|
92
|
+
} catch (e) {
|
|
93
|
+
// localStorage \u4E0D\u53EF\u7528\u65F6\u5FFD\u7565
|
|
94
|
+
}
|
|
95
|
+
})();
|
|
96
|
+
|
|
78
97
|
// === \u52AB\u6301 matchMedia\uFF0C\u5F3A\u5236\u684C\u9762\u7AEF\u5E03\u5C40\u4EE5\u6E32\u67D3\u5BA1\u67E5\u9762\u677F ===
|
|
79
98
|
// \u53EA\u52AB\u6301 opencode \u5224\u65AD\u684C\u9762\u7AEF\u7684\u5A92\u4F53\u67E5\u8BE2 (min-width: 768px)\uFF0C\u4E0D\u5F71\u54CD\u5176\u4ED6\u67E5\u8BE2
|
|
80
99
|
(function() {
|
|
@@ -665,25 +684,6 @@ function generateBridgeScript(options) {
|
|
|
665
684
|
|
|
666
685
|
// === \u5C31\u7EEA\u901A\u77E5 ===
|
|
667
686
|
function init() {
|
|
668
|
-
// \u6E05\u7406\u6B8B\u7559\u7684 session tabs \u5B58\u50A8\uFF0C\u907F\u514D\u52A0\u8F7D\u5DF2\u8FC7\u671F\u7684 session \u4EA7\u751F 404
|
|
669
|
-
// localStorage \u6309 origin \u9694\u79BB\uFF0C\u6BCF\u6B21 iframe \u91CD\u65B0\u52A0\u8F7D\u65F6\u6E05\u6389\u65E7\u7684 tab \u8BB0\u5F55
|
|
670
|
-
(function cleanupTabsStorage() {
|
|
671
|
-
try {
|
|
672
|
-
var keysToRemove = [];
|
|
673
|
-
for (var i = 0; i < localStorage.length; i++) {
|
|
674
|
-
var key = localStorage.key(i);
|
|
675
|
-
if (key && (key.indexOf('opencode.window') === 0 || key.indexOf('opencode.workspace') === 0)) {
|
|
676
|
-
keysToRemove.push(key);
|
|
677
|
-
}
|
|
678
|
-
}
|
|
679
|
-
for (var j = 0; j < keysToRemove.length; j++) {
|
|
680
|
-
localStorage.removeItem(keysToRemove[j]);
|
|
681
|
-
}
|
|
682
|
-
} catch (e) {
|
|
683
|
-
// localStorage \u4E0D\u53EF\u7528\u65F6\u5FFD\u7565
|
|
684
|
-
}
|
|
685
|
-
})();
|
|
686
|
-
|
|
687
687
|
injectMinimizeStyles();
|
|
688
688
|
injectReviewPanelStyles();
|
|
689
689
|
injectGeneralStyles();
|
|
@@ -722,6 +722,13 @@ function startProxyServer(targetUrl, port, options = {}) {
|
|
|
722
722
|
return new Promise((resolve, reject) => {
|
|
723
723
|
const target = new URL(targetUrl);
|
|
724
724
|
const bridgeScript = generateBridgeScript(options);
|
|
725
|
+
const agent = new import_http.default.Agent({
|
|
726
|
+
keepAlive: true,
|
|
727
|
+
keepAliveMsecs: 3e4,
|
|
728
|
+
maxSockets: 50,
|
|
729
|
+
maxFreeSockets: 10,
|
|
730
|
+
timeout: 0
|
|
731
|
+
});
|
|
725
732
|
const server = import_http.default.createServer((req, res) => {
|
|
726
733
|
if (req.url === import_shared.BRIDGE_SCRIPT_PATH) {
|
|
727
734
|
const body = bridgeScript;
|
|
@@ -734,6 +741,7 @@ function startProxyServer(targetUrl, port, options = {}) {
|
|
|
734
741
|
return;
|
|
735
742
|
}
|
|
736
743
|
const requestOptions = {
|
|
744
|
+
agent,
|
|
737
745
|
hostname: target.hostname,
|
|
738
746
|
port: target.port,
|
|
739
747
|
path: req.url,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vite-plugin-opencode-assistant",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.13",
|
|
4
4
|
"description": "Embed OpenCode Web UI in your Vite dev server for real-time code modification and preview",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "lib/index.cjs",
|
|
@@ -37,15 +37,15 @@
|
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"unplugin-vue-inspector": "^3.0.0",
|
|
39
39
|
"execa": "^9.6.1",
|
|
40
|
-
"@vite-plugin-opencode-assistant/
|
|
41
|
-
"@vite-plugin-opencode-assistant/
|
|
42
|
-
"@vite-plugin-opencode-assistant/shared": "1.1.
|
|
40
|
+
"@vite-plugin-opencode-assistant/components": "1.1.13",
|
|
41
|
+
"@vite-plugin-opencode-assistant/opencode": "1.1.13",
|
|
42
|
+
"@vite-plugin-opencode-assistant/shared": "1.1.13"
|
|
43
43
|
},
|
|
44
44
|
"peerDependencies": {
|
|
45
45
|
"vite": ">=5.0.0"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"@vite-plugin-opencode-assistant/client": "1.1.
|
|
48
|
+
"@vite-plugin-opencode-assistant/client": "1.1.13"
|
|
49
49
|
},
|
|
50
50
|
"scripts": {
|
|
51
51
|
"build": "pagoda-cli build && vite build -c vite.client.config.ts",
|