@huawei-ide/codearts 1.0.44 → 1.0.46
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/README.md +12 -1
- package/index.js +29 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -127,5 +127,16 @@
|
|
|
127
127
|
event.dispose();
|
|
128
128
|
```
|
|
129
129
|
|
|
130
|
-
16.
|
|
130
|
+
16. 设置编辑器点击链接后进入的中转网页:
|
|
131
|
+
`ide.setLinkTransitSite(url: string);`
|
|
132
|
+
|
|
133
|
+
17. 监听当前点击以http和https开头的链接
|
|
134
|
+
|
|
135
|
+
```
|
|
136
|
+
const event = ide.onDidClickLink(listener: (content: string) => {});
|
|
137
|
+
// 销毁监听
|
|
138
|
+
event.dispose();
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
18. 销毁 IDE
|
|
131
142
|
`ide.dispose();`
|
package/index.js
CHANGED
|
@@ -8,11 +8,12 @@ if (window.location.origin.endsWith('.net')) {
|
|
|
8
8
|
}
|
|
9
9
|
const iframe = document.createElement('iframe');
|
|
10
10
|
iframe.id = 'codeartside';
|
|
11
|
-
iframe.src = hcOrigin + '/codearts-core-web-static/1.0.
|
|
11
|
+
iframe.src = hcOrigin + '/codearts-core-web-static/1.0.78/resources/server/gitcode.html';
|
|
12
12
|
|
|
13
13
|
const OS = getOS();
|
|
14
14
|
const ON_DID_CHANGE = 'onDidChange';
|
|
15
15
|
const ON_DID_SEND_CODE = 'onDidSendCode';
|
|
16
|
+
const ON_DID_CLICK_LINK = 'onDidClickLink';
|
|
16
17
|
const eventEmitter = new EventEmitter();
|
|
17
18
|
|
|
18
19
|
function ideLoading() {
|
|
@@ -57,6 +58,9 @@ function onDidRecieveMessage(event) {
|
|
|
57
58
|
if (type === 'ide-on-did-send-code') {
|
|
58
59
|
eventEmitter.emit(ON_DID_SEND_CODE, data);
|
|
59
60
|
}
|
|
61
|
+
if (type === 'ide-on-did-click-link') {
|
|
62
|
+
eventEmitter.emit(ON_DID_CLICK_LINK, data);
|
|
63
|
+
}
|
|
60
64
|
}
|
|
61
65
|
|
|
62
66
|
export function preload() {
|
|
@@ -187,6 +191,14 @@ export function registerCodeOperation(options) {
|
|
|
187
191
|
postMessage(message);
|
|
188
192
|
}
|
|
189
193
|
|
|
194
|
+
export function setLinkTransitSite(url) {
|
|
195
|
+
const message = {
|
|
196
|
+
type: 'setLinkTransitSite',
|
|
197
|
+
data: url
|
|
198
|
+
};
|
|
199
|
+
postMessage(message);
|
|
200
|
+
}
|
|
201
|
+
|
|
190
202
|
function postMessage(message) {
|
|
191
203
|
iframe.contentWindow.postMessage(message, hcOrigin);
|
|
192
204
|
}
|
|
@@ -222,3 +234,19 @@ export function onDidSendCode(listener) {
|
|
|
222
234
|
}
|
|
223
235
|
}
|
|
224
236
|
}
|
|
237
|
+
|
|
238
|
+
let isRegisteredClickLinkListener = false;
|
|
239
|
+
export function onDidClickLink(listener) {
|
|
240
|
+
if (!isRegisteredClickLinkListener) {
|
|
241
|
+
window.addEventListener('message', onDidRecieveMessage);
|
|
242
|
+
isRegisteredClickLinkListener = true;
|
|
243
|
+
}
|
|
244
|
+
eventEmitter.on(ON_DID_CLICK_LINK, listener);
|
|
245
|
+
return {
|
|
246
|
+
dispose: () => {
|
|
247
|
+
eventEmitter.off(ON_DID_CLICK_LINK, listener);
|
|
248
|
+
window.removeEventListener('message', onDidRecieveMessage);
|
|
249
|
+
isRegisteredClickLinkListener = false;
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
}
|