@dao42/d42paas-front 0.9.184 → 0.9.185
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 +22 -0
- package/dist/DaoPaaS.cjs +255 -256
- package/dist/sdk/docs/assets/highlight.css +22 -22
- package/dist/sdk/docs/assets/search.js +1 -1
- package/dist/sdk/docs/enums/I18nLanguageType.html +2 -2
- package/dist/sdk/docs/enums/Messages.html +1 -1
- package/dist/sdk/docs/enums/ThemeType.html +2 -2
- package/dist/sdk/docs/index.html +320 -279
- package/dist/sdk/docs/interfaces/Component.html +2 -2
- package/dist/sdk/docs/interfaces/I18nResourcesType.html +1 -1
- package/dist/sdk/docs/interfaces/IDaoPaaS.html +33 -33
- package/dist/sdk/docs/interfaces/IExtralAction.html +1 -1
- package/dist/sdk/docs/interfaces/IXtermFontStyle.html +1 -1
- package/dist/sdk/docs/interfaces/PaaSOptions.html +28 -28
- package/dist/sdk/docs/interfaces/XtermStyleType.html +1 -1
- package/dist/sdk/docs/modules.html +6 -6
- package/package.json +1 -1
package/dist/sdk/docs/index.html
CHANGED
|
@@ -3,11 +3,52 @@
|
|
|
3
3
|
<h1>更新日志</h1>
|
|
4
4
|
</a>
|
|
5
5
|
|
|
6
|
+
<a href="#v09185" id="v09185" style="color: inherit; text-decoration: none;">
|
|
7
|
+
<h2>v0.9.185</h2>
|
|
8
|
+
</a>
|
|
9
|
+
|
|
10
|
+
<a href="#新增" id="新增" style="color: inherit; text-decoration: none;">
|
|
11
|
+
<h3>新增</h3>
|
|
12
|
+
</a>
|
|
13
|
+
<ul>
|
|
14
|
+
<li>新增消息 Messages.BehindTooMuch</li>
|
|
15
|
+
<li>新增方法 keyword_search_btn_replace_all</li>
|
|
16
|
+
</ul>
|
|
17
|
+
<pre><code class="language-ts"><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({});</span><br/><span class="hl-4">// codemirror 本地版本落后太多时可监听到此消息</span><br/><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">BehindTooMuch</span><span class="hl-1">: </span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">syncServeDocForce</span><span class="hl-1">(); </span><span class="hl-4">// 强制同步服务端的文档及版本信息</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1">});</span>
|
|
18
|
+
</code></pre>
|
|
19
|
+
|
|
20
|
+
<a href="#优化" id="优化" style="color: inherit; text-decoration: none;">
|
|
21
|
+
<h3>优化</h3>
|
|
22
|
+
</a>
|
|
23
|
+
<ul>
|
|
24
|
+
<li>优化多人编辑代码不同步的问题</li>
|
|
25
|
+
<li>优化多人编辑掉线重连后代码不同步的问题</li>
|
|
26
|
+
</ul>
|
|
27
|
+
|
|
28
|
+
<a href="#v09184" id="v09184" style="color: inherit; text-decoration: none;">
|
|
29
|
+
<h2>v0.9.184</h2>
|
|
30
|
+
</a>
|
|
31
|
+
|
|
32
|
+
<a href="#新增-1" id="新增-1" style="color: inherit; text-decoration: none;">
|
|
33
|
+
<h3>新增</h3>
|
|
34
|
+
</a>
|
|
35
|
+
<ul>
|
|
36
|
+
<li><code>replayCodeByRange</code> 支持虚拟用户输入显示光标,并跟随视角</li>
|
|
37
|
+
<li>新增对<code>.ui</code>, <code>.svelte</code>,<code>.pro</code>后缀文件语法高亮</li>
|
|
38
|
+
</ul>
|
|
39
|
+
|
|
40
|
+
<a href="#优化-1" id="优化-1" style="color: inherit; text-decoration: none;">
|
|
41
|
+
<h3>优化</h3>
|
|
42
|
+
</a>
|
|
43
|
+
<ul>
|
|
44
|
+
<li>紧急修复编辑器代码不同步问题</li>
|
|
45
|
+
</ul>
|
|
46
|
+
|
|
6
47
|
<a href="#v09182" id="v09182" style="color: inherit; text-decoration: none;">
|
|
7
48
|
<h2>v0.9.182</h2>
|
|
8
49
|
</a>
|
|
9
50
|
|
|
10
|
-
<a href="
|
|
51
|
+
<a href="#新增-2" id="新增-2" style="color: inherit; text-decoration: none;">
|
|
11
52
|
<h3>新增</h3>
|
|
12
53
|
</a>
|
|
13
54
|
<ul>
|
|
@@ -15,7 +56,7 @@
|
|
|
15
56
|
<li>新增AI虚拟用户输入光标显示效果</li>
|
|
16
57
|
</ul>
|
|
17
58
|
|
|
18
|
-
<a href="
|
|
59
|
+
<a href="#优化-2" id="优化-2" style="color: inherit; text-decoration: none;">
|
|
19
60
|
<h3>优化</h3>
|
|
20
61
|
</a>
|
|
21
62
|
<ul>
|
|
@@ -26,7 +67,7 @@
|
|
|
26
67
|
<h2>v0.9.181</h2>
|
|
27
68
|
</a>
|
|
28
69
|
|
|
29
|
-
<a href="#新增-
|
|
70
|
+
<a href="#新增-3" id="新增-3" style="color: inherit; text-decoration: none;">
|
|
30
71
|
<h3>新增</h3>
|
|
31
72
|
</a>
|
|
32
73
|
<ul>
|
|
@@ -35,15 +76,15 @@
|
|
|
35
76
|
<li>新增注册虚拟用户接口返回虚拟用户信息</li>
|
|
36
77
|
<li>新增支持注册虚拟账户自定义头像</li>
|
|
37
78
|
</ul>
|
|
38
|
-
<pre><code class="language-ts"><span class="hl-
|
|
79
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">.</span><span class="hl-3">registerVirtualUser</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">name:</span><span class="hl-1"> </span><span class="hl-8">'小AI '</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">avatar:</span><span class="hl-1"> </span><span class="hl-4">// 头像地址</span><br/><span class="hl-1"> </span><span class="hl-8">'https://img1.baidu.com/it/u=4264793750,8370810&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500'</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span>
|
|
39
80
|
</code></pre>
|
|
40
81
|
<ul>
|
|
41
82
|
<li>新增清空<code>Markdown</code> 预览组件内容方法<code>resetMarkdownPreview</code>(业务方可以根据时机清除内容)</li>
|
|
42
83
|
</ul>
|
|
43
|
-
<pre><code class="language-ts"><span class="hl-
|
|
84
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-5">daoEditor</span><span class="hl-1">.</span><span class="hl-3">resetMarkdownPreview</span><span class="hl-1">();</span>
|
|
44
85
|
</code></pre>
|
|
45
86
|
|
|
46
|
-
<a href="#优化-
|
|
87
|
+
<a href="#优化-3" id="优化-3" style="color: inherit; text-decoration: none;">
|
|
47
88
|
<h3>优化</h3>
|
|
48
89
|
</a>
|
|
49
90
|
<ul>
|
|
@@ -55,37 +96,37 @@
|
|
|
55
96
|
<h2>v0.9.180</h2>
|
|
56
97
|
</a>
|
|
57
98
|
|
|
58
|
-
<a href="#新增-
|
|
99
|
+
<a href="#新增-4" id="新增-4" style="color: inherit; text-decoration: none;">
|
|
59
100
|
<h3>新增</h3>
|
|
60
101
|
</a>
|
|
61
102
|
<ul>
|
|
62
103
|
<li>新增当前用户添加虚拟用户接口<code>registerVirtualUser</code></li>
|
|
63
104
|
</ul>
|
|
64
|
-
<pre><code class="language-ts"><span class="hl-
|
|
105
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">.</span><span class="hl-3">registerVirtualUser</span><span class="hl-1">(</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">name:</span><span class="hl-1"> </span><span class="hl-8">'小AI '</span><span class="hl-1">, </span><span class="hl-4">// 定义虚拟用户名称</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> );</span>
|
|
65
106
|
</code></pre>
|
|
66
107
|
<ul>
|
|
67
108
|
<li>新增当前用户和虚拟用户切换接口<code>switchVirtualUser</code></li>
|
|
68
109
|
</ul>
|
|
69
|
-
<pre><code class="language-ts"><span class="hl-
|
|
110
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">switchVirtualUser</span><span class="hl-1">(</span><span class="hl-0">true</span><span class="hl-1">/</span><span class="hl-0">false</span><span class="hl-1">);</span>
|
|
70
111
|
</code></pre>
|
|
71
112
|
<ul>
|
|
72
113
|
<li>新增打开关键词全局搜索控件的方法<code>openKeywordSearch</code></li>
|
|
73
114
|
</ul>
|
|
74
|
-
<pre><code class="language-ts"><span class="hl-
|
|
115
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">.</span><span class="hl-3">openKeywordSearch</span><span class="hl-1">(</span><span class="hl-0">true</span><span class="hl-1">); </span><span class="hl-4">// 打开控件</span><br/>
|
|
75
116
|
</code></pre>
|
|
76
117
|
<ul>
|
|
77
118
|
<li>新增获取关键词全局搜索控件数据的方法<code>fetchKeywordSearchInfo</code></li>
|
|
78
119
|
</ul>
|
|
79
|
-
<pre><code class="language-ts"><span class="hl-
|
|
120
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">data</span><span class="hl-1"> = </span><span class="hl-5">daoPaasObj</span><span class="hl-1">.</span><span class="hl-3">fetchKeywordSearchInfo</span><span class="hl-1">(); </span><span class="hl-4">// 获取数据</span>
|
|
80
121
|
</code></pre>
|
|
81
122
|
|
|
82
|
-
<a href="#优化-
|
|
123
|
+
<a href="#优化-4" id="优化-4" style="color: inherit; text-decoration: none;">
|
|
83
124
|
<h3>优化</h3>
|
|
84
125
|
</a>
|
|
85
126
|
<ul>
|
|
86
127
|
<li>优化<code>RunStatusChanged</code> 事件,返回更多运行结果信息</li>
|
|
87
128
|
</ul>
|
|
88
|
-
<pre><code class="language-ts"><span class="hl-
|
|
129
|
+
<pre><code class="language-ts"><span class="hl-9">internalRunInfo</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-8">"autoImport"</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-8">"output"</span><span class="hl-5">:</span><span class="hl-1"> </span><span class="hl-8">""</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-8">"err"</span><span class="hl-5">:</span><span class="hl-1"> </span><span class="hl-0">null</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-8">"duration"</span><span class="hl-5">:</span><span class="hl-1"> </span><span class="hl-10">0</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-8">"compile"</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-8">"output"</span><span class="hl-5">:</span><span class="hl-1"> </span><span class="hl-8">""</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-8">"err"</span><span class="hl-5">:</span><span class="hl-1"> </span><span class="hl-0">null</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-8">"duration"</span><span class="hl-5">:</span><span class="hl-1"> </span><span class="hl-10">6126</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-8">"run"</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-8">"output"</span><span class="hl-5">:</span><span class="hl-1"> </span><span class="hl-8">"Hello World"</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-8">"err"</span><span class="hl-5">:</span><span class="hl-1"> </span><span class="hl-0">null</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-8">"duration"</span><span class="hl-5">:</span><span class="hl-1"> </span><span class="hl-10">2209</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">}</span>
|
|
89
130
|
</code></pre>
|
|
90
131
|
<ul>
|
|
91
132
|
<li>回滚文件系统到<code>Btrf</code></li>
|
|
@@ -95,36 +136,36 @@
|
|
|
95
136
|
<h2>v0.9.179</h2>
|
|
96
137
|
</a>
|
|
97
138
|
|
|
98
|
-
<a href="#新增-
|
|
139
|
+
<a href="#新增-5" id="新增-5" style="color: inherit; text-decoration: none;">
|
|
99
140
|
<h3>新增</h3>
|
|
100
141
|
</a>
|
|
101
142
|
<ul>
|
|
102
143
|
<li>新增添加文件或者文件夹方法<code>createFile</code></li>
|
|
103
144
|
</ul>
|
|
104
|
-
<pre><code class="language-ts"><span class="hl-
|
|
145
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">isDir</span><span class="hl-1"> = </span><span class="hl-0">true</span><br/><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">.</span><span class="hl-3">createFile</span><span class="hl-1">(</span><span class="hl-5">filePath</span><span class="hl-1">, </span><span class="hl-5">isDir</span><span class="hl-1">).</span><span class="hl-3">then</span><span class="hl-1">(</span><br/><span class="hl-1"> (</span><span class="hl-5">v</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-8">'创建成功.'</span><span class="hl-1">);</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> (</span><span class="hl-5">err</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-8">'创建失败.'</span><span class="hl-1"> + </span><span class="hl-5">err</span><span class="hl-1">);</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> );</span>
|
|
105
146
|
</code></pre>
|
|
106
147
|
<ul>
|
|
107
148
|
<li>新增展开指定路径文件夹方法<code>expandByPath</code></li>
|
|
108
149
|
</ul>
|
|
109
|
-
<pre><code class="language-ts"><span class="hl-
|
|
150
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">.</span><span class="hl-3">expandByPath</span><span class="hl-1">(</span><span class="hl-5">expendFilePath</span><span class="hl-1">).</span><span class="hl-3">then</span><span class="hl-1">(</span><br/><span class="hl-1"> (</span><span class="hl-5">v</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-8">'展开成功.'</span><span class="hl-1">);</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> (</span><span class="hl-5">err</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-8">'展开失败.'</span><span class="hl-1"> + </span><span class="hl-5">err</span><span class="hl-1">);</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> );</span>
|
|
110
151
|
</code></pre>
|
|
111
152
|
<ul>
|
|
112
153
|
<li>新增获取编辑器实例方法,业务方可以根据Editor 实例开展灵活业务操作</li>
|
|
113
154
|
</ul>
|
|
114
|
-
<pre><code class="language-ts"><span class="hl-
|
|
155
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">editorIns</span><span class="hl-1"> = </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-5">daoEditor</span><span class="hl-1">.</span><span class="hl-3">getEditorInstance</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (!</span><span class="hl-5">editorIns</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-8">'No Editor Instance!'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-8">`Length: </span><span class="hl-0">${</span><span class="hl-5">editorIns</span><span class="hl-11">.</span><span class="hl-5">state</span><span class="hl-11">.</span><span class="hl-5">doc</span><span class="hl-11">.</span><span class="hl-5">length</span><span class="hl-0">}</span><span class="hl-8">`</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-8">`Doc: </span><span class="hl-0">${</span><span class="hl-5">editorIns</span><span class="hl-11">.</span><span class="hl-5">state</span><span class="hl-11">.</span><span class="hl-5">doc</span><span class="hl-11">.</span><span class="hl-3">toJSON</span><span class="hl-11">()</span><span class="hl-0">}</span><span class="hl-8">`</span><span class="hl-1">);</span>
|
|
115
156
|
</code></pre>
|
|
116
157
|
<ul>
|
|
117
158
|
<li>新增<code>replayCodeByRange</code> 方法,进行指定位置代码替换, 或者全文档清空内容,或者全文档内容替换</li>
|
|
118
159
|
</ul>
|
|
119
|
-
<pre><code class="language-ts"><span class="hl-
|
|
160
|
+
<pre><code class="language-ts"><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-5">daoEditor</span><span class="hl-1">.</span><span class="hl-3">replayCodeByRange</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">path:</span><span class="hl-1"> </span><span class="hl-5">replacePath</span><span class="hl-1">, </span><span class="hl-4">// 文件路径</span><br/><span class="hl-1"> </span><span class="hl-5">content:</span><span class="hl-1"> </span><span class="hl-3">encodeURI</span><span class="hl-1">(</span><span class="hl-5">replaceContent</span><span class="hl-1">),</span><span class="hl-4">// 替换的内容, 如果要清空文件内容, content 为空字符串,下面的selection 为空</span><br/><span class="hl-1"> </span><span class="hl-5">selection:</span><span class="hl-1"> { </span><span class="hl-5">start:</span><span class="hl-1"> </span><span class="hl-10">102</span><span class="hl-1">, </span><span class="hl-5">end:</span><span class="hl-1"> </span><span class="hl-10">158</span><span class="hl-1"> } ,</span><span class="hl-4">// 要替换的光标的位置,或者为空字符串, 则整个文档内容替换</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">));</span>
|
|
120
161
|
</code></pre>
|
|
121
162
|
<ul>
|
|
122
163
|
<li>新增全项目文件搜索功能, 需要业务方配置对应的参数进行接入,默认不开启</li>
|
|
123
164
|
</ul>
|
|
124
|
-
<pre><code class="language-ts"><span class="hl-
|
|
165
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">paasDomain:</span><br/><span class="hl-1"> </span><span class="hl-5">process</span><span class="hl-1">.</span><span class="hl-5">env</span><span class="hl-1">.</span><span class="hl-2">PAAS_MANAGER_API_ORIGIN</span><span class="hl-1"> + (</span><span class="hl-5">mockSdkInitFail</span><span class="hl-1"> ? </span><span class="hl-8">'1'</span><span class="hl-1"> : </span><span class="hl-8">''</span><span class="hl-1">),</span><br/><span class="hl-1"> </span><span class="hl-5">tenantId:</span><span class="hl-1"> </span><span class="hl-8">'3'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">// 全局配置</span><br/><span class="hl-1"> </span><span class="hl-5">globalConfig:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">// 全局配置-关键词搜索</span><br/><span class="hl-1"> </span><span class="hl-5">searchKeywordConfig:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">useSearch:</span><span class="hl-1"> </span><span class="hl-0">true</span><span class="hl-1">, </span><span class="hl-4">// 是否开启搜索</span><br/><span class="hl-1"> </span><span class="hl-5">isShowHiddenFile:</span><span class="hl-1"> </span><span class="hl-0">false</span><span class="hl-1">, </span><span class="hl-4">//搜索内容是否能包含隐藏内容</span><br/><span class="hl-1"> }, </span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> });</span>
|
|
125
166
|
</code></pre>
|
|
126
167
|
|
|
127
|
-
<a href="#优化-
|
|
168
|
+
<a href="#优化-5" id="优化-5" style="color: inherit; text-decoration: none;">
|
|
128
169
|
<h3>优化</h3>
|
|
129
170
|
</a>
|
|
130
171
|
<ul>
|
|
@@ -135,19 +176,19 @@
|
|
|
135
176
|
<h2>v0.9.178</h2>
|
|
136
177
|
</a>
|
|
137
178
|
|
|
138
|
-
<a href="#新增-
|
|
179
|
+
<a href="#新增-6" id="新增-6" style="color: inherit; text-decoration: none;">
|
|
139
180
|
<h3>新增</h3>
|
|
140
181
|
</a>
|
|
141
182
|
<ul>
|
|
142
183
|
<li>新增<code>Markdown</code> 预览对<code>a</code>标签的打开模式, 支持新的Tab页打开,也支持组件内部打开</li>
|
|
143
184
|
</ul>
|
|
144
|
-
<pre><code class="language-tsx"><span class="hl-
|
|
185
|
+
<pre><code class="language-tsx"><span class="hl-9">globalConfig</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-9">markdownPreview</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-9">iframeWidth</span><span class="hl-1">: </span><span class="hl-8">'100%'</span><span class="hl-1">, </span><span class="hl-4">// 默认100%</span><br/><span class="hl-1"> </span><span class="hl-9">iframeHeight</span><span class="hl-1">: </span><span class="hl-8">'400'</span><span class="hl-1">, </span><span class="hl-4">// 默认400</span><br/><span class="hl-1"> </span><span class="hl-9">isBlank</span><span class="hl-1">: </span><span class="hl-0">false</span><span class="hl-1">, </span><span class="hl-4">// 默认false</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">}</span>
|
|
145
186
|
</code></pre>
|
|
146
187
|
<ul>
|
|
147
188
|
<li><code>IDEServer</code> 文件系统的重构</li>
|
|
148
189
|
</ul>
|
|
149
190
|
|
|
150
|
-
<a href="#优化-
|
|
191
|
+
<a href="#优化-6" id="优化-6" style="color: inherit; text-decoration: none;">
|
|
151
192
|
<h3>优化</h3>
|
|
152
193
|
</a>
|
|
153
194
|
<ul>
|
|
@@ -159,7 +200,7 @@
|
|
|
159
200
|
<h2>v0.9.177</h2>
|
|
160
201
|
</a>
|
|
161
202
|
|
|
162
|
-
<a href="#优化-
|
|
203
|
+
<a href="#优化-7" id="优化-7" style="color: inherit; text-decoration: none;">
|
|
163
204
|
<h3>优化</h3>
|
|
164
205
|
</a>
|
|
165
206
|
<ul>
|
|
@@ -172,7 +213,7 @@
|
|
|
172
213
|
<h2>v0.9.176</h2>
|
|
173
214
|
</a>
|
|
174
215
|
|
|
175
|
-
<a href="#新增-
|
|
216
|
+
<a href="#新增-7" id="新增-7" style="color: inherit; text-decoration: none;">
|
|
176
217
|
<h3>新增</h3>
|
|
177
218
|
</a>
|
|
178
219
|
<ul>
|
|
@@ -184,10 +225,10 @@
|
|
|
184
225
|
</blockquote>
|
|
185
226
|
</li>
|
|
186
227
|
</ul>
|
|
187
|
-
<pre><code class="language-ts"><span class="hl-
|
|
228
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">paasDomain:</span><br/><span class="hl-1"> </span><span class="hl-5">process</span><span class="hl-1">.</span><span class="hl-5">env</span><span class="hl-1">.</span><span class="hl-2">PAAS_MANAGER_API_ORIGIN</span><span class="hl-1"> + (</span><span class="hl-5">mockSdkInitFail</span><span class="hl-1"> ? </span><span class="hl-8">'1'</span><span class="hl-1"> : </span><span class="hl-8">''</span><span class="hl-1">),</span><br/><span class="hl-1"> </span><span class="hl-5">tenantId:</span><span class="hl-1"> </span><span class="hl-8">'3'</span><span class="hl-1">,</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-5">editorPlugins</span><span class="hl-1">: [ </span><span class="hl-4">// 自定义插件,数组形式</span><br/><span class="hl-1"> </span><span class="hl-3">hilightKeyWord</span><span class="hl-1">(</span><span class="hl-12">/</span><span class="hl-13">\[\[</span><span class="hl-14">(</span><span class="hl-12">\w</span><span class="hl-15">+</span><span class="hl-14">)</span><span class="hl-13">\]\]</span><span class="hl-12">/</span><span class="hl-0">g</span><span class="hl-1">), </span><span class="hl-4">// 具体插件</span><br/><span class="hl-1"> </span><span class="hl-3">hilightKeyWord</span><span class="hl-1">(</span><span class="hl-12">/</span><span class="hl-14">(</span><span class="hl-12">Dear</span><span class="hl-14">)</span><span class="hl-12">/</span><span class="hl-0">g</span><span class="hl-1">),</span><br/><span class="hl-1"> </span><span class="hl-3">hilightKeyWord</span><span class="hl-1">(</span><span class="hl-12">/</span><span class="hl-14">(</span><span class="hl-12">\d</span><span class="hl-15">{2,}</span><span class="hl-14">)</span><span class="hl-12">/</span><span class="hl-0">g</span><span class="hl-1">),</span><br/><span class="hl-1"> </span><span class="hl-5">underlineKeymap</span><span class="hl-1">,</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> });</span>
|
|
188
229
|
</code></pre>
|
|
189
230
|
|
|
190
|
-
<a href="#优化-
|
|
231
|
+
<a href="#优化-8" id="优化-8" style="color: inherit; text-decoration: none;">
|
|
191
232
|
<h3>优化</h3>
|
|
192
233
|
</a>
|
|
193
234
|
<ul>
|
|
@@ -216,7 +257,7 @@
|
|
|
216
257
|
<h2>v0.9.173</h2>
|
|
217
258
|
</a>
|
|
218
259
|
|
|
219
|
-
<a href="#新增-
|
|
260
|
+
<a href="#新增-8" id="新增-8" style="color: inherit; text-decoration: none;">
|
|
220
261
|
<h3>新增</h3>
|
|
221
262
|
</a>
|
|
222
263
|
<ul>
|
|
@@ -231,19 +272,19 @@
|
|
|
231
272
|
</blockquote>
|
|
232
273
|
</li>
|
|
233
274
|
</ul>
|
|
234
|
-
<pre><code class="language-ts"><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> </span><span class="hl-2">dao</span><span class="hl-0"> = </span><span class="hl-1">new</span><span class="hl-0"> </span><span class="hl-5">DaoPaaS</span><span class="hl-0">({</span><br/><span class="hl-0"> </span><span class="hl-4">paasDomain:</span><br/><span class="hl-0"> </span><span class="hl-4">process</span><span class="hl-0">.</span><span class="hl-4">env</span><span class="hl-0">.</span><span class="hl-2">PAAS_MANAGER_API_ORIGIN</span><span class="hl-0"> + (</span><span class="hl-4">mockSdkInitFail</span><span class="hl-0"> ? </span><span class="hl-6">'1'</span><span class="hl-0"> : </span><span class="hl-6">''</span><span class="hl-0">),</span><br/><span class="hl-0"> ...,</span><br/><span class="hl-0"> </span><span class="hl-4">contextMenu:</span><span class="hl-0"> [</span><br/><span class="hl-0"> [</span><br/><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">text:</span><span class="hl-0"> { </span><span class="hl-7">// 显示的文案</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'剪切'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'Cut'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> </span><span class="hl-4">shortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Ctrl/Cmd+X'</span><span class="hl-0">, </span><span class="hl-7">// 快捷键的描叙</span><br/><span class="hl-0"> </span><span class="hl-4">actionName:</span><span class="hl-0"> </span><span class="hl-6">'cut'</span><span class="hl-0">, </span><span class="hl-7">// 内置的菜单行为:cut, copy,paste</span><br/><span class="hl-0"> </span><span class="hl-4">className:</span><span class="hl-0"> </span><span class="hl-6">'contextmenu-cut'</span><span class="hl-0">, </span><span class="hl-7">// 自定义菜单样式</span><br/><span class="hl-0"> </span><span class="hl-4">textClassName:</span><span class="hl-0"> </span><span class="hl-6">'d42 dao42__icon--create'</span><span class="hl-0">, </span><span class="hl-7">//自定义文案样式</span><br/><span class="hl-0"> </span><span class="hl-4">shortcutClassName:</span><span class="hl-0"> </span><span class="hl-6">''</span><span class="hl-0">, </span><span class="hl-7">// 自定义快捷键样式</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">text:</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'剪切(自定义)'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'Cut(Custom)'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> </span><span class="hl-4">shortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Ctrl/Cmd+X'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-5">actionFun</span><span class="hl-4">:</span><span class="hl-0"> (</span><span class="hl-4">view</span><span class="hl-0">, </span><span class="hl-4">commands</span><span class="hl-0">) </span><span class="hl-1">=></span><span class="hl-0"> { </span><span class="hl-7">// 自定义菜单行为</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> </span><span class="hl-2">tr</span><span class="hl-0"> = </span><span class="hl-4">view</span><span class="hl-0">.</span><span class="hl-4">state</span><span class="hl-0">.</span><span class="hl-5">replaceSelection</span><span class="hl-0">(</span><span class="hl-6">''</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-4">view</span><span class="hl-0">?.</span><span class="hl-5">dispatch</span><span class="hl-0">({</span><br/><span class="hl-0"> ...</span><span class="hl-4">tr</span><span class="hl-0">,</span><br/><span class="hl-0"> });</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">text:</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'复制'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'Copy'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> </span><span class="hl-4">shortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Ctrl/Cmd+C'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">actionName:</span><span class="hl-0"> </span><span class="hl-6">'copy'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">text:</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'粘贴'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'Paste'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> </span><span class="hl-4">shortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Ctrl/Cmd+V'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">actionName:</span><span class="hl-0"> </span><span class="hl-6">'paste'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> ],</span><br/><span class="hl-0"> [</span><br/><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">text:</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'撤销'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'Undo'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> </span><span class="hl-4">shortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Ctrl/Cmd+Z'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">actionName:</span><span class="hl-0"> </span><span class="hl-6">'undo'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">text:</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'取消注释'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'UnComment Block'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> </span><span class="hl-4">shortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Mod-/'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-7">// actionName: 'toggleBlockComment',</span><br/><span class="hl-0"> </span><span class="hl-4">actionShortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Mod-/'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">text:</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'注释代码'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'Comment Block'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> </span><span class="hl-4">shortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Mod-/'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-7">// actionName: 'blockComment',</span><br/><span class="hl-0"> </span><span class="hl-4">actionShortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Mod-/'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">text:</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'全选'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'Select All'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> </span><span class="hl-4">shortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Ctrl/Cmd+A'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">actionName:</span><span class="hl-0"> </span><span class="hl-6">'selectAll'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">text:</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'选中整行'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'Select Line'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> </span><span class="hl-4">shortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Ctrl/Cmd+R'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">actionName:</span><span class="hl-0"> </span><span class="hl-6">'selectLine'</span><span class="hl-0">, </span><span class="hl-7">//codemirror 内置行为: https://codemirror.net/docs/ref/#commands</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">text:</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'格式化代码'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'Format Document'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> </span><span class="hl-4">shortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Mod-Alt-f'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">actionShortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Mod-Alt-f'</span><span class="hl-0">,, </span><span class="hl-7">// 运行指定快捷键行为: // 优先级: 业务方配置 > SDK 定制 > CM 内置的默认的 (内置的快捷键: https://codemirror.net/docs/ref/#commands)</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">text:</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'插入代码(自定义快捷键)'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'Insert Code'</span><span class="hl-0">,</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> </span><span class="hl-4">shortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Mod-j'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">actionShortcutKey:</span><span class="hl-0"> </span><span class="hl-6">'Mod-j'</span><span class="hl-0">, </span><span class="hl-7">// 运行指定快捷键行为: // 优先级: 业务方配置 > SDK 定制 > CM 内置的默认的 (内置的快捷键: https://codemirror.net/docs/ref/#commands)</span><br/><span class="hl-0"> },</span><br/><span class="hl-0"> ],</span><br/><span class="hl-0"> ],</span><br/><span class="hl-0"> });</span>
|
|
275
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">paasDomain:</span><br/><span class="hl-1"> </span><span class="hl-5">process</span><span class="hl-1">.</span><span class="hl-5">env</span><span class="hl-1">.</span><span class="hl-2">PAAS_MANAGER_API_ORIGIN</span><span class="hl-1"> + (</span><span class="hl-5">mockSdkInitFail</span><span class="hl-1"> ? </span><span class="hl-8">'1'</span><span class="hl-1"> : </span><span class="hl-8">''</span><span class="hl-1">),</span><br/><span class="hl-1"> ...,</span><br/><span class="hl-1"> </span><span class="hl-5">contextMenu:</span><span class="hl-1"> [</span><br/><span class="hl-1"> [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> { </span><span class="hl-4">// 显示的文案</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'剪切'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'Cut'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">shortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Ctrl/Cmd+X'</span><span class="hl-1">, </span><span class="hl-4">// 快捷键的描叙</span><br/><span class="hl-1"> </span><span class="hl-5">actionName:</span><span class="hl-1"> </span><span class="hl-8">'cut'</span><span class="hl-1">, </span><span class="hl-4">// 内置的菜单行为:cut, copy,paste</span><br/><span class="hl-1"> </span><span class="hl-5">className:</span><span class="hl-1"> </span><span class="hl-8">'contextmenu-cut'</span><span class="hl-1">, </span><span class="hl-4">// 自定义菜单样式</span><br/><span class="hl-1"> </span><span class="hl-5">textClassName:</span><span class="hl-1"> </span><span class="hl-8">'d42 dao42__icon--create'</span><span class="hl-1">, </span><span class="hl-4">//自定义文案样式</span><br/><span class="hl-1"> </span><span class="hl-5">shortcutClassName:</span><span class="hl-1"> </span><span class="hl-8">''</span><span class="hl-1">, </span><span class="hl-4">// 自定义快捷键样式</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'剪切(自定义)'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'Cut(Custom)'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">shortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Ctrl/Cmd+X'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-3">actionFun</span><span class="hl-5">:</span><span class="hl-1"> (</span><span class="hl-5">view</span><span class="hl-1">, </span><span class="hl-5">commands</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> { </span><span class="hl-4">// 自定义菜单行为</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">tr</span><span class="hl-1"> = </span><span class="hl-5">view</span><span class="hl-1">.</span><span class="hl-5">state</span><span class="hl-1">.</span><span class="hl-3">replaceSelection</span><span class="hl-1">(</span><span class="hl-8">''</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-5">view</span><span class="hl-1">?.</span><span class="hl-3">dispatch</span><span class="hl-1">({</span><br/><span class="hl-1"> ...</span><span class="hl-5">tr</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'复制'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'Copy'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">shortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Ctrl/Cmd+C'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">actionName:</span><span class="hl-1"> </span><span class="hl-8">'copy'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'粘贴'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'Paste'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">shortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Ctrl/Cmd+V'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">actionName:</span><span class="hl-1"> </span><span class="hl-8">'paste'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'撤销'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'Undo'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">shortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Ctrl/Cmd+Z'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">actionName:</span><span class="hl-1"> </span><span class="hl-8">'undo'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'取消注释'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'UnComment Block'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">shortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Mod-/'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">// actionName: 'toggleBlockComment',</span><br/><span class="hl-1"> </span><span class="hl-5">actionShortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Mod-/'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'注释代码'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'Comment Block'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">shortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Mod-/'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">// actionName: 'blockComment',</span><br/><span class="hl-1"> </span><span class="hl-5">actionShortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Mod-/'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'全选'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'Select All'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">shortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Ctrl/Cmd+A'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">actionName:</span><span class="hl-1"> </span><span class="hl-8">'selectAll'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'选中整行'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'Select Line'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">shortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Ctrl/Cmd+R'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">actionName:</span><span class="hl-1"> </span><span class="hl-8">'selectLine'</span><span class="hl-1">, </span><span class="hl-4">//codemirror 内置行为: https://codemirror.net/docs/ref/#commands</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'格式化代码'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'Format Document'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">shortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Mod-Alt-f'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">actionShortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Mod-Alt-f'</span><span class="hl-1">,, </span><span class="hl-4">// 运行指定快捷键行为: // 优先级: 业务方配置 > SDK 定制 > CM 内置的默认的 (内置的快捷键: https://codemirror.net/docs/ref/#commands)</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'插入代码(自定义快捷键)'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'Insert Code'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">shortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Mod-j'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">actionShortcutKey:</span><span class="hl-1"> </span><span class="hl-8">'Mod-j'</span><span class="hl-1">, </span><span class="hl-4">// 运行指定快捷键行为: // 优先级: 业务方配置 > SDK 定制 > CM 内置的默认的 (内置的快捷键: https://codemirror.net/docs/ref/#commands)</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> });</span>
|
|
235
276
|
</code></pre>
|
|
236
277
|
<ul>
|
|
237
278
|
<li>新增<code>fileTree</code>文件树配置<code>fileRootActions</code> 支持自定义样式名称<code>className</code></li>
|
|
238
279
|
</ul>
|
|
239
|
-
<pre><code class="language-tsx"><span class="hl-
|
|
280
|
+
<pre><code class="language-tsx"><span class="hl-1">{</span><br/><span class="hl-1"> </span><span class="hl-9">container</span><span class="hl-1">: </span><span class="hl-8">'.tree-section'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">item</span><span class="hl-1">: </span><span class="hl-8">'Tree'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">props</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-9">hideFeature</span><span class="hl-1">: </span><span class="hl-5">defaultValue</span><span class="hl-1">,</span><br/><span class="hl-1"> ...,</span><br/><span class="hl-1"> </span><span class="hl-9">disableFileAction</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-9">filesPath</span><span class="hl-1">: [],</span><br/><span class="hl-1"> </span><span class="hl-9">isDisable</span><span class="hl-1">: </span><span class="hl-0">true</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-9">fileRootActions</span><span class="hl-1">: [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">label:</span><span class="hl-1"> </span><span class="hl-8">'下载项目'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">className:</span><span class="hl-1"> </span><span class="hl-8">'download-project'</span><span class="hl-1">, </span><span class="hl-4">// 自定义ITEM样式</span><br/><span class="hl-1"> </span><span class="hl-3">onClick</span><span class="hl-5">:</span><span class="hl-1"> () </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> })</span>
|
|
240
281
|
</code></pre>
|
|
241
282
|
<ul>
|
|
242
283
|
<li><code>fileTree</code> 上传文件/文件夹等行为,添加自定义样式,以便业务方进行针对性业务能力扩展</li>
|
|
243
284
|
<li></li>
|
|
244
285
|
</ul>
|
|
245
286
|
|
|
246
|
-
<a href="#优化-
|
|
287
|
+
<a href="#优化-9" id="优化-9" style="color: inherit; text-decoration: none;">
|
|
247
288
|
<h3>优化</h3>
|
|
248
289
|
</a>
|
|
249
290
|
<ul>
|
|
@@ -266,7 +307,7 @@
|
|
|
266
307
|
<h2>v0.9.172</h2>
|
|
267
308
|
</a>
|
|
268
309
|
|
|
269
|
-
<a href="#优化-
|
|
310
|
+
<a href="#优化-10" id="优化-10" style="color: inherit; text-decoration: none;">
|
|
270
311
|
<h3>优化</h3>
|
|
271
312
|
</a>
|
|
272
313
|
<ul>
|
|
@@ -278,7 +319,7 @@
|
|
|
278
319
|
<h2>v0.9.171</h2>
|
|
279
320
|
</a>
|
|
280
321
|
|
|
281
|
-
<a href="#优化-
|
|
322
|
+
<a href="#优化-11" id="优化-11" style="color: inherit; text-decoration: none;">
|
|
282
323
|
<h3>优化</h3>
|
|
283
324
|
</a>
|
|
284
325
|
<ul>
|
|
@@ -291,24 +332,24 @@
|
|
|
291
332
|
<h2>v0.9.170</h2>
|
|
292
333
|
</a>
|
|
293
334
|
|
|
294
|
-
<a href="#新增-
|
|
335
|
+
<a href="#新增-9" id="新增-9" style="color: inherit; text-decoration: none;">
|
|
295
336
|
<h3>新增</h3>
|
|
296
337
|
</a>
|
|
297
338
|
<ul>
|
|
298
339
|
<li>新增支持修改过的文件显示<code>M</code>标记,</li>
|
|
299
340
|
</ul>
|
|
300
|
-
<pre><code class="language-ts"><span class="hl-
|
|
341
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-5">showModifyIcon</span><span class="hl-1">: </span><span class="hl-0">true</span><span class="hl-1">, </span><span class="hl-4">// 默认false, 是否展示文件修改的Icon</span><br/><span class="hl-1"> ...</span>
|
|
301
342
|
</code></pre>
|
|
302
343
|
<ul>
|
|
303
344
|
<li>新增<code>M</code>标记的文件树<code>Item</code> 样式名称<code>is-modified-file-item</code>,业务方可以参考如下覆盖自定义样式</li>
|
|
304
345
|
</ul>
|
|
305
|
-
<pre><code class="language-css"><span class="hl-16">.is-modified-file-item</span><span class="hl-
|
|
346
|
+
<pre><code class="language-css"><span class="hl-16">.is-modified-file-item</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-17">background-color</span><span class="hl-1">: </span><span class="hl-18">#a4a2a2</span><span class="hl-1">;</span><br/><span class="hl-1">}</span><br/><br/><span class="hl-16">.is-modified-file-item</span><span class="hl-1"> </span><span class="hl-16">.d42-item-title</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-17">color</span><span class="hl-1">: </span><span class="hl-18">#fff</span><span class="hl-1">;</span><br/><span class="hl-1">}</span><br/><br/><span class="hl-16">.is-modified-file-item</span><span class="hl-1"> </span><span class="hl-16">.rct-tree-item-arrow-path</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-17">fill</span><span class="hl-1">: </span><span class="hl-18">#fff</span><span class="hl-1">;</span><br/><span class="hl-1">}</span><br/><br/><span class="hl-16">.is-modified-file-item</span><span class="hl-1"> </span><span class="hl-16">.d42-action-item</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-17">color</span><span class="hl-1">: </span><span class="hl-18">#fff</span><span class="hl-1">;</span><br/><span class="hl-1">}</span><br/><br/><span class="hl-16">.is-modified-file-item</span><span class="hl-1"> </span><span class="hl-16">.d42-action-item</span><span class="hl-1"> </span><span class="hl-16">path</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-17">fill</span><span class="hl-1">: </span><span class="hl-18">#fff</span><span class="hl-1">;</span><br/><span class="hl-1">}</span>
|
|
306
347
|
</code></pre>
|
|
307
348
|
<ul>
|
|
308
349
|
<li>新增支持<code>LSP</code>如果选择的是<code>Method</code>,自动补全括号</li>
|
|
309
350
|
</ul>
|
|
310
351
|
|
|
311
|
-
<a href="#优化-
|
|
352
|
+
<a href="#优化-12" id="优化-12" style="color: inherit; text-decoration: none;">
|
|
312
353
|
<h3>优化</h3>
|
|
313
354
|
</a>
|
|
314
355
|
<ul>
|
|
@@ -321,33 +362,33 @@
|
|
|
321
362
|
<h2>v0.9.169</h2>
|
|
322
363
|
</a>
|
|
323
364
|
|
|
324
|
-
<a href="#新增-
|
|
365
|
+
<a href="#新增-10" id="新增-10" style="color: inherit; text-decoration: none;">
|
|
325
366
|
<h3>新增</h3>
|
|
326
367
|
</a>
|
|
327
368
|
<ul>
|
|
328
369
|
<li>新增打开文件默认聚焦<code>Editor</code>, 默认聚焦文件底部<code>BOTTOM</code>,并提供配置参数<code>focusEditorPosition</code></li>
|
|
329
370
|
</ul>
|
|
330
|
-
<pre><code class="language-ts"><span class="hl-
|
|
371
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">paasDomain:</span><br/><span class="hl-1"> </span><span class="hl-5">process</span><span class="hl-1">.</span><span class="hl-5">env</span><span class="hl-1">.</span><span class="hl-2">PAAS_MANAGER_API_ORIGIN</span><span class="hl-1"> + (</span><span class="hl-5">mockSdkInitFail</span><span class="hl-1"> ? </span><span class="hl-8">'1'</span><span class="hl-1"> : </span><span class="hl-8">''</span><span class="hl-1">),</span><br/><span class="hl-1"> </span><span class="hl-5">tenantId:</span><span class="hl-1"> </span><span class="hl-8">'3'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">ticket:</span><span class="hl-1"> </span><span class="hl-5">dataRes</span><span class="hl-1">?.</span><span class="hl-5">ticket</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">openLspDiagnostic:</span><span class="hl-1"> </span><span class="hl-0">true</span><span class="hl-1">, </span><span class="hl-4">// 默认是true,</span><br/><span class="hl-1"> </span><span class="hl-5">focusEditorPosition:</span><span class="hl-1"> </span><span class="hl-8">'BOTTOM'</span><span class="hl-1">, </span><span class="hl-4">// TOP | BOTTOM | number</span><br/><span class="hl-1"> ....</span>
|
|
331
372
|
</code></pre>
|
|
332
373
|
<ul>
|
|
333
374
|
<li>新增文件打开完成事件<code>fileOpenDone</code>,用于处理文件打开完成后要处理的事情,如跳转到上次打开位置</li>
|
|
334
375
|
</ul>
|
|
335
|
-
<pre><code class="language-ts"><span class="hl-
|
|
376
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">status</span><span class="hl-1">: </span><span class="hl-6">PlaygroundStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">dockerStatus</span><span class="hl-1">: </span><span class="hl-6">DockerStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">lspStatus</span><span class="hl-1">: </span><span class="hl-6">LspStatusEnum</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">FileOpenDone</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">info</span><span class="hl-1">(</span><span class="hl-8">'FileOpenDone:'</span><span class="hl-1"> + </span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">editorInfo</span><span class="hl-1"> = </span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">parse</span><span class="hl-1">(</span><br/><span class="hl-1"> </span><span class="hl-5">localStorage</span><span class="hl-1">.</span><span class="hl-3">getItem</span><span class="hl-1">(</span><span class="hl-8">'UnFocusEditor'</span><span class="hl-1">) || </span><span class="hl-8">'{}'</span><span class="hl-1">,</span><br/><span class="hl-1"> );</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">prevOpenInfo</span><span class="hl-1"> = </span><span class="hl-5">editorInfo</span><span class="hl-1">[</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">openPath</span><span class="hl-1">];</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">prevOpenInfo</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-4">// 定位光标</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">focuseEditorByCursorPosition</span><span class="hl-1">(</span><br/><span class="hl-1"> </span><span class="hl-5">prevOpenInfo</span><span class="hl-1">.</span><span class="hl-5">openFile</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">prevOpenInfo</span><span class="hl-1">.</span><span class="hl-5">cursorPosition</span><span class="hl-1">,</span><br/><span class="hl-1"> );</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span>
|
|
336
377
|
</code></pre>
|
|
337
378
|
<ul>
|
|
338
379
|
<li>新增<code>Editor</code>失去焦点事件,业务方可以在此事件记录对应文件上次编辑的位置</li>
|
|
339
380
|
</ul>
|
|
340
|
-
<pre><code class="language-ts"><span class="hl-
|
|
381
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">UnFocusEditor</span><span class="hl-1">: {</span><br/><span class="hl-1"> messageBox.info(</span><span class="hl-8">'UnFocusEditor:'</span><span class="hl-5"> + JSON.stringify(payload));</span><br/><span class="hl-5"> const editorInfo = JSON.parse(</span><br/><span class="hl-5"> localStorage.getItem(</span><span class="hl-8">'UnFocusEditor'</span><span class="hl-5">) || </span><span class="hl-8">'{}'</span><span class="hl-1">,</span><br/><span class="hl-1"> );</span><br/><span class="hl-1"> editorInfo</span><span class="hl-5">[payload.openPath] = payload;</span><br/><span class="hl-5"> localStorage.setItem('UnFocusEditor', JSON.stringify(editorInfo));</span><br/><span class="hl-5"> break;</span><br/><span class="hl-5"> }</span>
|
|
341
382
|
</code></pre>
|
|
342
383
|
<ul>
|
|
343
384
|
<li>新增跳转到指定文件的指定位置方法<code>focuseEditorByCursorPosition</code>,可以配合<code>FileOpenDone</code> 事件使用</li>
|
|
344
385
|
</ul>
|
|
345
|
-
<pre><code class="language-ts"><span class="hl-
|
|
386
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">focuseEditorByCursorPosition</span><span class="hl-1">(</span><br/><span class="hl-1"> </span><span class="hl-5">prevOpenInfo</span><span class="hl-1">.</span><span class="hl-5">openFile</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">prevOpenInfo</span><span class="hl-1">.</span><span class="hl-5">cursorPosition</span><span class="hl-1">,</span><br/><span class="hl-1"> );</span>
|
|
346
387
|
</code></pre>
|
|
347
388
|
<ul>
|
|
348
389
|
<li>新增设置文件树指定路径文件样式<code>setFileStyle</code></li>
|
|
349
390
|
</ul>
|
|
350
|
-
<pre><code class="language-ts"><span class="hl-
|
|
391
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">setFileStyle</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">paths:</span><span class="hl-1"> [</span><span class="hl-8">'a/b/c.js'</span><span class="hl-1">, </span><span class="hl-8">'a/c/c.js'</span><span class="hl-1">, </span><span class="hl-8">'c/index.js'</span><span class="hl-1">],</span><br/><span class="hl-1"> </span><span class="hl-5">styles:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">title:</span><span class="hl-1"> </span><span class="hl-8">'customizeTitle'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">icon:</span><span class="hl-1"> </span><span class="hl-8">'customizeIcon'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">arrowIcon:</span><span class="hl-1"> </span><span class="hl-8">'customizeArrowIcon'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">background:</span><span class="hl-1"> </span><span class="hl-8">'customizeBackground'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1">});</span>
|
|
351
392
|
</code></pre>
|
|
352
393
|
|
|
353
394
|
<a href="#修复-3" id="修复-3" style="color: inherit; text-decoration: none;">
|
|
@@ -362,16 +403,16 @@
|
|
|
362
403
|
<h2>v0.9.168</h2>
|
|
363
404
|
</a>
|
|
364
405
|
|
|
365
|
-
<a href="#新增-
|
|
406
|
+
<a href="#新增-11" id="新增-11" style="color: inherit; text-decoration: none;">
|
|
366
407
|
<h3>新增</h3>
|
|
367
408
|
</a>
|
|
368
409
|
<ul>
|
|
369
410
|
<li>添加跟随模式下,如果被跟随者打卡一个隐藏文件, 跟随着没有权限, 会广播对应的事件:</li>
|
|
370
411
|
</ul>
|
|
371
|
-
<pre><code class="language-ts"><span class="hl-
|
|
412
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">status</span><span class="hl-1">: </span><span class="hl-6">PlaygroundStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">dockerStatus</span><span class="hl-1">: </span><span class="hl-6">DockerStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">lspStatus</span><span class="hl-1">: </span><span class="hl-6">LspStatusEnum</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-8">'openLimitFile'</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-8">'OpenLimitFile: '</span><span class="hl-1"> + </span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-3">setAgentUsers</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">agentUsers</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">xtermKey</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-3">setActiveKey</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">xtermKey</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> });</span>
|
|
372
413
|
</code></pre>
|
|
373
414
|
|
|
374
|
-
<a href="#优化-
|
|
415
|
+
<a href="#优化-13" id="优化-13" style="color: inherit; text-decoration: none;">
|
|
375
416
|
<h3>优化</h3>
|
|
376
417
|
</a>
|
|
377
418
|
<ul>
|
|
@@ -390,17 +431,17 @@
|
|
|
390
431
|
<h2>v0.9.167</h2>
|
|
391
432
|
</a>
|
|
392
433
|
|
|
393
|
-
<a href="#新增-
|
|
434
|
+
<a href="#新增-12" id="新增-12" style="color: inherit; text-decoration: none;">
|
|
394
435
|
<h3>新增</h3>
|
|
395
436
|
</a>
|
|
396
437
|
<ul>
|
|
397
438
|
<li>新增<code>showRRwebController</code> 属性来控制RRWEB回放的播放控制器(用于业务方调试)</li>
|
|
398
439
|
<li>新增聚焦行是空行显示<code>placeholder</code></li>
|
|
399
440
|
</ul>
|
|
400
|
-
<pre><code class="language-ts"><span class="hl-
|
|
441
|
+
<pre><code class="language-ts"><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">defaultPlaceholder:</span><span class="hl-1"> { </span><span class="hl-4">// 默认设置</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-5">showOnEmptyLine</span><span class="hl-1">: </span><span class="hl-0">true</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">placeholders:</span><span class="hl-1"> { </span><span class="hl-4">// 指定文件设置</span><br/><span class="hl-1"> </span><span class="hl-8">'README.md'</span><span class="hl-5">:</span><span class="hl-1"> { </span><br/><span class="hl-1"> ... </span><br/><span class="hl-1"> </span><span class="hl-5">showOnEmptyLine</span><span class="hl-1">: </span><span class="hl-0">false</span><span class="hl-1">,</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">})</span>
|
|
401
442
|
</code></pre>
|
|
402
443
|
|
|
403
|
-
<a href="#优化-
|
|
444
|
+
<a href="#优化-14" id="优化-14" style="color: inherit; text-decoration: none;">
|
|
404
445
|
<h3>优化</h3>
|
|
405
446
|
</a>
|
|
406
447
|
<ul>
|
|
@@ -411,20 +452,20 @@
|
|
|
411
452
|
<h2>v0.9.166</h2>
|
|
412
453
|
</a>
|
|
413
454
|
|
|
414
|
-
<a href="#新增-
|
|
455
|
+
<a href="#新增-13" id="新增-13" style="color: inherit; text-decoration: none;">
|
|
415
456
|
<h3>新增</h3>
|
|
416
457
|
</a>
|
|
417
458
|
<ul>
|
|
418
459
|
<li>新增支持链式跟随模式</li>
|
|
419
460
|
</ul>
|
|
420
461
|
|
|
421
|
-
<a href="#优化-
|
|
462
|
+
<a href="#优化-15" id="优化-15" style="color: inherit; text-decoration: none;">
|
|
422
463
|
<h3>优化</h3>
|
|
423
464
|
</a>
|
|
424
465
|
<ul>
|
|
425
466
|
<li>测试用例接口<code>runUnitTestByFilePath</code> 多文件运行,并且单文件配置独立参数</li>
|
|
426
467
|
</ul>
|
|
427
|
-
<pre><code class="language-ts"><span class="hl-
|
|
468
|
+
<pre><code class="language-ts"><span class="hl-1">[</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">fileKey:</span><span class="hl-1"> </span><span class="hl-8">'sum.test.js'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">outputConsole:</span><span class="hl-1"> </span><span class="hl-0">false</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">consoleText:</span><span class="hl-1"> </span><span class="hl-8">'123'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">runMode:</span><span class="hl-1"> </span><span class="hl-0">false</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">// runId: uuidv4(),</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">fileKey:</span><span class="hl-1"> </span><span class="hl-8">'sum2.test.js'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">outputConsole:</span><span class="hl-1"> </span><span class="hl-0">false</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">consoleText:</span><span class="hl-1"> </span><span class="hl-8">'123'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">runMode:</span><span class="hl-1"> </span><span class="hl-0">false</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">// runId: uuidv4(),</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">fileKey:</span><span class="hl-1"> </span><span class="hl-8">'sum3.test.js'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">outputConsole:</span><span class="hl-1"> </span><span class="hl-0">false</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">consoleText:</span><span class="hl-1"> </span><span class="hl-8">'123'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">runMode:</span><span class="hl-1"> </span><span class="hl-0">false</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">// runId: uuidv4(),</span><br/><span class="hl-1"> },</span><br/><span class="hl-1">]</span>
|
|
428
469
|
</code></pre>
|
|
429
470
|
<ul>
|
|
430
471
|
<li>优化跟随模式, 对隐藏且没有权限文件的进行不可见,并给予相关提示处理</li>
|
|
@@ -441,21 +482,21 @@
|
|
|
441
482
|
<h2>v0.9.165</h2>
|
|
442
483
|
</a>
|
|
443
484
|
|
|
444
|
-
<a href="#新增-
|
|
485
|
+
<a href="#新增-14" id="新增-14" style="color: inherit; text-decoration: none;">
|
|
445
486
|
<h3>新增</h3>
|
|
446
487
|
</a>
|
|
447
488
|
<ul>
|
|
448
489
|
<li>新增自定义<code>xterm</code>字体样式</li>
|
|
449
490
|
</ul>
|
|
450
|
-
<pre><code class="language-ts"><span class="hl-
|
|
491
|
+
<pre><code class="language-ts"><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-5">xtermStyle</span><span class="hl-1">:{</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-5">consoleStyle</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-5">fontSize:</span><span class="hl-1"> </span><span class="hl-10">12</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">lineHeight:</span><span class="hl-1"> </span><span class="hl-10">1</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">fontFamily:</span><span class="hl-1"> </span><span class="hl-8">'Monaco, Menlo, monospace'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">})</span>
|
|
451
492
|
</code></pre>
|
|
452
493
|
<ul>
|
|
453
494
|
<li>新增支持指定文件名后缀进行语法高亮(完全匹配优先级高于后缀名匹配)</li>
|
|
454
495
|
</ul>
|
|
455
|
-
<pre><code class="language-ts"><span class="hl-
|
|
496
|
+
<pre><code class="language-ts"><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> ...</span><br/><span class="hl-5">specialFileHighlight</span><span class="hl-1">: [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">fileName:</span><span class="hl-1"> </span><span class="hl-8">'.java.answer'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">languageType:</span><span class="hl-1"> </span><span class="hl-8">'java'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">fileName:</span><span class="hl-1"> </span><span class="hl-8">'paas_test.java.answer'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">languageType:</span><span class="hl-1"> </span><span class="hl-8">'yaml'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1">]</span><br/><span class="hl-1">})</span>
|
|
456
497
|
</code></pre>
|
|
457
498
|
|
|
458
|
-
<a href="#优化-
|
|
499
|
+
<a href="#优化-16" id="优化-16" style="color: inherit; text-decoration: none;">
|
|
459
500
|
<h3>优化</h3>
|
|
460
501
|
</a>
|
|
461
502
|
<ul>
|
|
@@ -468,29 +509,29 @@
|
|
|
468
509
|
<h2>v0.9.164</h2>
|
|
469
510
|
</a>
|
|
470
511
|
|
|
471
|
-
<a href="#新增-
|
|
512
|
+
<a href="#新增-15" id="新增-15" style="color: inherit; text-decoration: none;">
|
|
472
513
|
<h3>新增</h3>
|
|
473
514
|
</a>
|
|
474
515
|
<ul>
|
|
475
516
|
<li>新增实例化<code>DaoPaaS</code> 参数<code>customFileTreeAction</code>,控制文件树操作行为是否业务方控制</li>
|
|
476
517
|
</ul>
|
|
477
|
-
<pre><code class="language-ts"><span class="hl-
|
|
518
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">paasDomain:</span><br/><span class="hl-1"> </span><span class="hl-5">process</span><span class="hl-1">.</span><span class="hl-5">env</span><span class="hl-1">.</span><span class="hl-2">PAAS_MANAGER_API_ORIGIN</span><span class="hl-1"> + (</span><span class="hl-5">mockSdkInitFail</span><span class="hl-1"> ? </span><span class="hl-8">'1'</span><span class="hl-1"> : </span><span class="hl-8">''</span><span class="hl-1">),</span><br/><span class="hl-1"> </span><span class="hl-5">tenantId:</span><span class="hl-1"> </span><span class="hl-8">'3'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">ticket:</span><span class="hl-1"> </span><span class="hl-5">dataRes</span><span class="hl-1">?.</span><span class="hl-5">ticket</span><span class="hl-1">,</span><br/><span class="hl-1"> ....</span><br/><span class="hl-1"> </span><span class="hl-5">customFileTreeAction</span><span class="hl-1">: </span><span class="hl-5">customFileTreeAction</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span>
|
|
478
519
|
</code></pre>
|
|
479
520
|
<ul>
|
|
480
521
|
<li>新增文件树相关事件点击的订阅事件</li>
|
|
481
522
|
</ul>
|
|
482
|
-
<pre><code class="language-ts"><span class="hl-
|
|
523
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">status</span><span class="hl-1">: </span><span class="hl-6">PlaygroundStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">dockerStatus</span><span class="hl-1">: </span><span class="hl-6">DockerStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">lspStatus</span><span class="hl-1">: </span><span class="hl-6">LspStatusEnum</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-8">'fileTreeAction'</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">type</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-8">'unittest'</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-3">setTimeout</span><span class="hl-1">(() </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">?.</span><span class="hl-3">setFileToUnitTest</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">path:</span><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">path</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">unitTest:</span><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">targetValue</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> }, </span><span class="hl-10">1000</span><span class="hl-1"> * </span><span class="hl-10">2</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-8">'hide'</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-3">setTimeout</span><span class="hl-1">(() </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">?.</span><span class="hl-3">setFileVisible</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">path:</span><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">path</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">hide:</span><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">targetValue</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> }, </span><span class="hl-10">1000</span><span class="hl-1"> * </span><span class="hl-10">2</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-8">'lock'</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-3">setTimeout</span><span class="hl-1">(() </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">?.</span><span class="hl-3">setFileLockStatus</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">path:</span><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">path</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">lock:</span><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">targetValue</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> }, </span><span class="hl-10">1000</span><span class="hl-1"> * </span><span class="hl-10">2</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">default</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span>
|
|
483
524
|
</code></pre>
|
|
484
525
|
<ul>
|
|
485
526
|
<li>新增文件添加/删除<code>unittest</code>, <code>hide</code>, <code>lock</code> 行为接口</li>
|
|
486
527
|
</ul>
|
|
487
|
-
<pre><code class="language-ts"><span class="hl-
|
|
528
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">?.</span><span class="hl-3">setFileToUnitTest</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">path:</span><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">path</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">unitTest:</span><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">targetValue</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">?.</span><span class="hl-3">setFileVisible</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">path:</span><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">path</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">hide:</span><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">targetValue</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">?.</span><span class="hl-3">setFileLockStatus</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">path:</span><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">path</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">lock:</span><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">targetValue</span><span class="hl-1">,</span><br/><span class="hl-1">});</span>
|
|
488
529
|
</code></pre>
|
|
489
530
|
<ul>
|
|
490
531
|
<li>新增跟随模式下, 对应跟随组件高亮区域显示跟随用户名称</li>
|
|
491
532
|
</ul>
|
|
492
533
|
|
|
493
|
-
<a href="#优化-
|
|
534
|
+
<a href="#优化-17" id="优化-17" style="color: inherit; text-decoration: none;">
|
|
494
535
|
<h3>优化</h3>
|
|
495
536
|
</a>
|
|
496
537
|
<ul>
|
|
@@ -501,37 +542,37 @@
|
|
|
501
542
|
<h2>v0.9.162</h2>
|
|
502
543
|
</a>
|
|
503
544
|
|
|
504
|
-
<a href="#新增-
|
|
545
|
+
<a href="#新增-16" id="新增-16" style="color: inherit; text-decoration: none;">
|
|
505
546
|
<h3>新增</h3>
|
|
506
547
|
</a>
|
|
507
548
|
<ul>
|
|
508
549
|
<li>测试用例接口移除<code>runId</code>参数</li>
|
|
509
550
|
<li><code>runUnitTestByFilePath</code> 接口支持多文件运行,对应的<code>fileKey</code>参数可以为:<code>string | string[]</code></li>
|
|
510
551
|
</ul>
|
|
511
|
-
<pre><code class="language-ts"><span class="hl-
|
|
552
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">runUnitTestByFilePath</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">fileKey:</span><span class="hl-1"> [</span><span class="hl-8">'sum.test.js'</span><span class="hl-1">],</span><br/><span class="hl-1"> </span><span class="hl-5">outputConsole:</span><span class="hl-1"> </span><span class="hl-0">false</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">consoleText:</span><span class="hl-1"> </span><span class="hl-8">'123'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">runMode:</span><span class="hl-1"> </span><span class="hl-0">true</span><span class="hl-1">,</span><br/><span class="hl-1">});</span>
|
|
512
553
|
</code></pre>
|
|
513
554
|
<ul>
|
|
514
555
|
<li><code>stopUnitTest</code> 传递 <code>fileKey: string | string[]</code> 进行停止指定文件或者文件数组 测试用例</li>
|
|
515
556
|
</ul>
|
|
516
|
-
<pre><code class="language-ts"><span class="hl-
|
|
557
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">stopUnitTest</span><span class="hl-1">(</span><span class="hl-5">fileKey</span><span class="hl-1">: </span><span class="hl-5">string</span><span class="hl-1"> | </span><span class="hl-5">string</span><span class="hl-1">[])</span>
|
|
517
558
|
</code></pre>
|
|
518
559
|
<ul>
|
|
519
560
|
<li><code>runCmd</code> 接口调用方式:</li>
|
|
520
561
|
</ul>
|
|
521
|
-
<pre><code class="language-ts"><span class="hl-
|
|
562
|
+
<pre><code class="language-ts"><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1">: </span><span class="hl-6">any</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">runCmd</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">cmd:</span><span class="hl-1"> </span><span class="hl-8">'test'</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span>
|
|
522
563
|
</code></pre>
|
|
523
564
|
<ul>
|
|
524
565
|
<li><code>stopRunCmd</code> 接口调用方式:</li>
|
|
525
566
|
</ul>
|
|
526
|
-
<pre><code class="language-ts"><span class="hl-
|
|
567
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">stopRunCmd</span><span class="hl-1">(</span><span class="hl-5">cmd</span><span class="hl-1">: </span><span class="hl-5">string</span><span class="hl-1">)</span>
|
|
527
568
|
</code></pre>
|
|
528
569
|
<ul>
|
|
529
570
|
<li>新增测试用例执行相关订阅事件</li>
|
|
530
571
|
</ul>
|
|
531
|
-
<pre><code class="language-ts"><span class="hl-
|
|
572
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">status</span><span class="hl-1">: </span><span class="hl-6">PlaygroundStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">dockerStatus</span><span class="hl-1">: </span><span class="hl-6">DockerStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">lspStatus</span><span class="hl-1">: </span><span class="hl-6">LspStatusEnum</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-4">// 执行测试用例状态</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">RunUnitTestStatus</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-4">// 执行用例结果</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">RunUnitTestResult</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-4">// 停止执行用例结果</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">StopUnitTestResult</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-4">// 执行CMD结果</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">RumCmdResult</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-4">// 停止执行CMD结果</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">StopRunCmdResult</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> ...</span>
|
|
532
573
|
</code></pre>
|
|
533
574
|
|
|
534
|
-
<a href="#优化-
|
|
575
|
+
<a href="#优化-18" id="优化-18" style="color: inherit; text-decoration: none;">
|
|
535
576
|
<h3>优化</h3>
|
|
536
577
|
</a>
|
|
537
578
|
<ul>
|
|
@@ -564,26 +605,26 @@
|
|
|
564
605
|
<h2>v0.9.159</h2>
|
|
565
606
|
</a>
|
|
566
607
|
|
|
567
|
-
<a href="#新增-
|
|
608
|
+
<a href="#新增-17" id="新增-17" style="color: inherit; text-decoration: none;">
|
|
568
609
|
<h2>新增</h2>
|
|
569
610
|
</a>
|
|
570
611
|
<ul>
|
|
571
612
|
<li>新增获取当前的光标选中区域信息 [getSelection]</li>
|
|
572
613
|
</ul>
|
|
573
|
-
<pre><code class="language-ts"><span class="hl-
|
|
614
|
+
<pre><code class="language-ts"><span class="hl-3">getSelection</span><span class="hl-1">(): </span><span class="hl-5">IDaoEditorSpace</span><span class="hl-1">.</span><span class="hl-5">ISelection</span><span class="hl-1"> | </span><span class="hl-0">undefined</span><span class="hl-1">;</span>
|
|
574
615
|
</code></pre>
|
|
575
616
|
<ul>
|
|
576
617
|
<li>新增浏览器协同和回放功能</li>
|
|
577
618
|
</ul>
|
|
578
|
-
<pre><code class="language-ts"><span class="hl-
|
|
619
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">paasDomain:</span><br/><span class="hl-1"> </span><span class="hl-5">process</span><span class="hl-1">.</span><span class="hl-5">env</span><span class="hl-1">.</span><span class="hl-2">PAAS_MANAGER_API_ORIGIN</span><span class="hl-1"> + (</span><span class="hl-5">mockSdkInitFail</span><span class="hl-1"> ? </span><span class="hl-8">'1'</span><span class="hl-1"> : </span><span class="hl-8">''</span><span class="hl-1">),</span><br/><span class="hl-1"> ....</span><br/><span class="hl-1"> </span><span class="hl-5">recordBrowser</span><span class="hl-1">: </span><span class="hl-5">recordBrowser</span><span class="hl-1">, </span><span class="hl-4">//是否录制数据: 候选人: true, 面试官false</span><br/><span class="hl-1"> </span><span class="hl-5">persistenceWebData:</span><span class="hl-1"> </span><span class="hl-5">persistenceWebData</span><span class="hl-1">, </span><span class="hl-4">// 浏览器数据是否持久化(保存到DB), SMB: true, 1024: false</span><br/><span class="hl-1"> });</span>
|
|
579
620
|
</code></pre>
|
|
580
621
|
<ul>
|
|
581
622
|
<li>新增浏览器业务方控制是否录制数据的接口</li>
|
|
582
623
|
</ul>
|
|
583
|
-
<pre><code class="language-ts"><span class="hl-
|
|
624
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">startRecordBrowser</span><span class="hl-1">(</span><span class="hl-0">true</span><span class="hl-1">/</span><span class="hl-0">false</span><span class="hl-1">);</span>
|
|
584
625
|
</code></pre>
|
|
585
626
|
|
|
586
|
-
<a href="#优化-
|
|
627
|
+
<a href="#优化-19" id="优化-19" style="color: inherit; text-decoration: none;">
|
|
587
628
|
<h2>优化</h2>
|
|
588
629
|
</a>
|
|
589
630
|
<ul>
|
|
@@ -595,31 +636,31 @@
|
|
|
595
636
|
<h2>v0.9.157</h2>
|
|
596
637
|
</a>
|
|
597
638
|
|
|
598
|
-
<a href="#新增-
|
|
639
|
+
<a href="#新增-18" id="新增-18" style="color: inherit; text-decoration: none;">
|
|
599
640
|
<h3>新增</h3>
|
|
600
641
|
</a>
|
|
601
642
|
<ul>
|
|
602
643
|
<li>新增添加自定义快捷键方法[addHotKeys]</li>
|
|
603
644
|
</ul>
|
|
604
|
-
<pre><code class="language-ts"><span class="hl-
|
|
645
|
+
<pre><code class="language-ts"><span class="hl-1">[{ </span><span class="hl-4">// hotKeys</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-5">key</span><span class="hl-1">: </span><span class="hl-8">'Mod-j'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-3">run</span><span class="hl-5">:</span><span class="hl-1"> (</span><span class="hl-5">params</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-5">daoEditor</span><span class="hl-1">.</span><span class="hl-3">insertCodeByCursorPosition</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">path:</span><span class="hl-1"> </span><span class="hl-5">params</span><span class="hl-1">.</span><span class="hl-5">path</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">content:</span><span class="hl-1"> </span><span class="hl-3">encodeURI</span><span class="hl-1">(</span><span class="hl-3">decodeURI</span><span class="hl-1">(</span><span class="hl-5">params</span><span class="hl-1">.</span><span class="hl-5">content</span><span class="hl-1">) + </span><span class="hl-8">'INSERT TEST CODE'</span><span class="hl-1">),</span><br/><span class="hl-1"> </span><span class="hl-5">cursor:</span><span class="hl-1"> </span><span class="hl-5">params</span><span class="hl-1">.</span><span class="hl-5">cursor</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">offsetActions:</span><span class="hl-1"> </span><span class="hl-10">4</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> },</span><br/><span class="hl-1">}]</span><br/><br/><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-5">daoEditor</span><br/><span class="hl-1"> .</span><span class="hl-3">addHotKeys</span><span class="hl-1">(</span><span class="hl-5">hotKeys</span><span class="hl-1">)</span><br/><span class="hl-1"> .</span><span class="hl-3">catch</span><span class="hl-1">((</span><span class="hl-5">error</span><span class="hl-1">: </span><span class="hl-6">Error</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">// error: 快捷键不合法</span><br/><span class="hl-1"> });</span>
|
|
605
646
|
</code></pre>
|
|
606
647
|
<ul>
|
|
607
648
|
<li>新增根据光标位置插入代码[insertCodeByCursorPosition]</li>
|
|
608
649
|
</ul>
|
|
609
|
-
<pre><code><span class="hl-
|
|
650
|
+
<pre><code><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-5">daoEditor</span><span class="hl-1">.</span><span class="hl-3">insertCodeByCursorPosition</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">path:</span><span class="hl-1"> </span><span class="hl-8">'main.go'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">content:</span><span class="hl-1"> </span><span class="hl-3">encodeURI</span><span class="hl-1">(</span><span class="hl-8">'TEST INSERT CODE'</span><span class="hl-1">),</span><br/><span class="hl-1"> </span><span class="hl-5">cursor:</span><span class="hl-1"> </span><span class="hl-10">102</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">offsetActions:</span><span class="hl-1"> </span><span class="hl-10">4</span><span class="hl-1">,</span><br/><span class="hl-1">});</span>
|
|
610
651
|
</code></pre>
|
|
611
652
|
<ul>
|
|
612
653
|
<li>新增根据range替换代码[replayCodeByRange]</li>
|
|
613
654
|
</ul>
|
|
614
|
-
<pre><code class="language-ts"><span class="hl-
|
|
655
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-5">daoEditor</span><span class="hl-1">.</span><span class="hl-3">replayCodeByRange</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">path:</span><span class="hl-1"> </span><span class="hl-8">'main.go'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">content:</span><span class="hl-1"> </span><span class="hl-3">encodeURI</span><span class="hl-1">(</span><span class="hl-8">'TEST INSERT CODE'</span><span class="hl-1">),</span><br/><span class="hl-1"> </span><span class="hl-5">selection:</span><span class="hl-1"> { </span><span class="hl-5">start:</span><span class="hl-1"> </span><span class="hl-10">102</span><span class="hl-1">, </span><span class="hl-5">end:</span><span class="hl-1"> </span><span class="hl-10">158</span><span class="hl-1"> },</span><br/><span class="hl-1">});</span>
|
|
615
656
|
</code></pre>
|
|
616
657
|
<ul>
|
|
617
658
|
<li>新增获取光标位置[getCursor]</li>
|
|
618
659
|
</ul>
|
|
619
|
-
<pre><code class="language-ts"><span class="hl-
|
|
660
|
+
<pre><code class="language-ts"><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">cursor</span><span class="hl-1"> = </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-5">daoEditor</span><span class="hl-1">.</span><span class="hl-3">getCursor</span><span class="hl-1">();</span>
|
|
620
661
|
</code></pre>
|
|
621
662
|
|
|
622
|
-
<a href="#优化-
|
|
663
|
+
<a href="#优化-20" id="优化-20" style="color: inherit; text-decoration: none;">
|
|
623
664
|
<h3>优化</h3>
|
|
624
665
|
</a>
|
|
625
666
|
<ul>
|
|
@@ -631,14 +672,14 @@
|
|
|
631
672
|
<h2>v0.9.156</h2>
|
|
632
673
|
</a>
|
|
633
674
|
|
|
634
|
-
<a href="#新增-
|
|
675
|
+
<a href="#新增-19" id="新增-19" style="color: inherit; text-decoration: none;">
|
|
635
676
|
<h3>新增</h3>
|
|
636
677
|
</a>
|
|
637
678
|
<ul>
|
|
638
679
|
<li>暴露removeMessage和removeError移除事件监听</li>
|
|
639
680
|
</ul>
|
|
640
681
|
|
|
641
|
-
<a href="#优化-
|
|
682
|
+
<a href="#优化-21" id="优化-21" style="color: inherit; text-decoration: none;">
|
|
642
683
|
<h3>优化</h3>
|
|
643
684
|
</a>
|
|
644
685
|
<ul>
|
|
@@ -662,13 +703,13 @@
|
|
|
662
703
|
<h2>v0.9.154</h2>
|
|
663
704
|
</a>
|
|
664
705
|
|
|
665
|
-
<a href="#新增-
|
|
706
|
+
<a href="#新增-20" id="新增-20" style="color: inherit; text-decoration: none;">
|
|
666
707
|
<h3>新增</h3>
|
|
667
708
|
</a>
|
|
668
709
|
<ul>
|
|
669
710
|
<li>新增支持初始化<code>SDK</code> <code>globalConfig</code> 全局配置</li>
|
|
670
711
|
</ul>
|
|
671
|
-
<pre><code class="language-ts"><span class="hl-
|
|
712
|
+
<pre><code class="language-ts"><span class="hl-0">type</span><span class="hl-1"> </span><span class="hl-6">GlobalConfig</span><span class="hl-1"> = {</span><br/><span class="hl-1"> </span><span class="hl-5">editorMode</span><span class="hl-1">?: </span><span class="hl-6">EditorMode</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-5">editorTabSize</span><span class="hl-1">?: </span><span class="hl-6">number</span><span class="hl-1"> | </span><span class="hl-8">'auto'</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-5">editorWordWrap</span><span class="hl-1">?: </span><span class="hl-6">boolean</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-5">fontSize</span><span class="hl-1">?: </span><span class="hl-6">string</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-5">editorIndentMode</span><span class="hl-1">?: </span><span class="hl-6">EditorIndentMode</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-5">openDiagnostic</span><span class="hl-1">?: </span><span class="hl-6">boolean</span><span class="hl-1">;</span><br/><span class="hl-1">};</span>
|
|
672
713
|
</code></pre>
|
|
673
714
|
<ul>
|
|
674
715
|
<li>新增回放模式下, LSP状态都为<code>notSupport</code> 值</li>
|
|
@@ -685,13 +726,13 @@
|
|
|
685
726
|
<h2>v0.9.152</h2>
|
|
686
727
|
</a>
|
|
687
728
|
|
|
688
|
-
<a href="#新增-
|
|
729
|
+
<a href="#新增-21" id="新增-21" style="color: inherit; text-decoration: none;">
|
|
689
730
|
<h3>新增</h3>
|
|
690
731
|
</a>
|
|
691
732
|
<ul>
|
|
692
733
|
<li>新增<code>promisify</code> 接口<code>activePlaygroundSync</code></li>
|
|
693
734
|
</ul>
|
|
694
|
-
<pre><code class="language-ts"><span class="hl-
|
|
735
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-7">try</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">activePlaygroundSync</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">));</span><br/><span class="hl-1"> } </span><span class="hl-7">catch</span><span class="hl-1"> (</span><span class="hl-5">e</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">e</span><span class="hl-1">));</span><br/><span class="hl-1"> }</span>
|
|
695
736
|
</code></pre>
|
|
696
737
|
|
|
697
738
|
<a href="#修复-9" id="修复-9" style="color: inherit; text-decoration: none;">
|
|
@@ -705,37 +746,37 @@
|
|
|
705
746
|
<h2>v0.9.151</h2>
|
|
706
747
|
</a>
|
|
707
748
|
|
|
708
|
-
<a href="#新增-
|
|
749
|
+
<a href="#新增-22" id="新增-22" style="color: inherit; text-decoration: none;">
|
|
709
750
|
<h3>新增</h3>
|
|
710
751
|
</a>
|
|
711
752
|
<ul>
|
|
712
753
|
<li>新增支持打开<code>csv</code>类型文件</li>
|
|
713
754
|
<li>获取测试用例接口<code>getUnitTestFun</code>(必须是ACTIVE状态,不然接口直接抛错误)</li>
|
|
714
755
|
</ul>
|
|
715
|
-
<pre><code class="language-ts"><span class="hl-
|
|
756
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-7">try</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1">: </span><span class="hl-6">any</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">getUnitTestFun</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">);</span><br/><span class="hl-1"> } </span><span class="hl-7">catch</span><span class="hl-1"> (</span><span class="hl-5">e</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">e</span><span class="hl-1">));</span><br/><span class="hl-1"> }</span>
|
|
716
757
|
</code></pre>
|
|
717
758
|
<ul>
|
|
718
759
|
<li>新增获取运行测试用例接口<code>runUnitTestByFilePath</code>(必须是ACTIVE状态,不然接口直接抛错误)</li>
|
|
719
760
|
</ul>
|
|
720
|
-
<pre><code class="language-ts"><span class="hl-
|
|
761
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-7">try</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1">: </span><span class="hl-6">any</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">runUnitTestByFilePath</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">fileKey:</span><span class="hl-1"> </span><span class="hl-8">'sum.test.js'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">outputConsole:</span><span class="hl-1"> </span><span class="hl-0">false</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">consoleText:</span><span class="hl-1"> </span><span class="hl-8">'123'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">runMode:</span><span class="hl-1"> </span><span class="hl-0">true</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">runId:</span><span class="hl-1"> </span><span class="hl-3">uuidv4</span><span class="hl-1">(),</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">);</span><br/><span class="hl-1"> } </span><span class="hl-7">catch</span><span class="hl-1"> (</span><span class="hl-5">e</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">e</span><span class="hl-1">));</span><br/><span class="hl-1"> }</span>
|
|
721
762
|
</code></pre>
|
|
722
763
|
<ul>
|
|
723
764
|
<li>新增停止运行测试用例接口<code>stopUnitTest</code>(必须是ACTIVE状态,不然接口直接抛错误)</li>
|
|
724
765
|
</ul>
|
|
725
|
-
<pre><code class="language-ts"><span class="hl-
|
|
766
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-7">try</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1">: </span><span class="hl-6">any</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">stopUnitTest</span><span class="hl-1">(</span><span class="hl-5">runId</span><span class="hl-1">); </span><span class="hl-4">// runId是上面接口runUnitTestByFilePath 传递的runId</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">);</span><br/><span class="hl-1"> } </span><span class="hl-7">catch</span><span class="hl-1"> (</span><span class="hl-5">e</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">e</span><span class="hl-1">));</span><br/><span class="hl-1"> }</span>
|
|
726
767
|
</code></pre>
|
|
727
768
|
<ul>
|
|
728
769
|
<li>新增运行<code>CMD</code>接口<code>runCmd</code>(必须是ACTIVE状态,不然接口直接抛错误)</li>
|
|
729
770
|
</ul>
|
|
730
|
-
<pre><code class="language-ts"><span class="hl-
|
|
771
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-7">try</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1">: </span><span class="hl-6">any</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">runCmd</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">runId:</span><span class="hl-1"> </span><span class="hl-3">uuidv4</span><span class="hl-1">(),</span><br/><span class="hl-1"> </span><span class="hl-5">cmd:</span><span class="hl-1"> </span><span class="hl-8">'test'</span><span class="hl-1">,</span><br/><span class="hl-1"> }); </span><span class="hl-4">// runId是上面接口runUnitTestByFilePath 传递的runId</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">);</span><br/><span class="hl-1"> } </span><span class="hl-7">catch</span><span class="hl-1"> (</span><span class="hl-5">e</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">e</span><span class="hl-1">));</span><br/><span class="hl-1"> }</span>
|
|
731
772
|
</code></pre>
|
|
732
773
|
<ul>
|
|
733
774
|
<li>新增停止运行<code>CMD</code>接口<code>stopRunCmd</code>(必须是ACTIVE状态,不然接口直接抛错误)</li>
|
|
734
775
|
</ul>
|
|
735
|
-
<pre><code class="language-ts"><span class="hl-
|
|
776
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-7">try</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1">: </span><span class="hl-6">any</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">stopUnitTest</span><span class="hl-1">(</span><span class="hl-5">runId</span><span class="hl-1">); </span><span class="hl-4">// runCmd 传递的runId</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">);</span><br/><span class="hl-1"> } </span><span class="hl-7">catch</span><span class="hl-1"> (</span><span class="hl-5">e</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">e</span><span class="hl-1">));</span><br/><span class="hl-1"> }</span>
|
|
736
777
|
</code></pre>
|
|
737
778
|
|
|
738
|
-
<a href="#优化-
|
|
779
|
+
<a href="#优化-22" id="优化-22" style="color: inherit; text-decoration: none;">
|
|
739
780
|
<h3>优化</h3>
|
|
740
781
|
</a>
|
|
741
782
|
<ul>
|
|
@@ -765,26 +806,26 @@
|
|
|
765
806
|
<h2>v0.9.149</h2>
|
|
766
807
|
</a>
|
|
767
808
|
|
|
768
|
-
<a href="#新增-
|
|
809
|
+
<a href="#新增-23" id="新增-23" style="color: inherit; text-decoration: none;">
|
|
769
810
|
<h3>新增</h3>
|
|
770
811
|
</a>
|
|
771
812
|
<ul>
|
|
772
813
|
<li>新增业务方注入日志上报方法<code>customLog</code></li>
|
|
773
814
|
</ul>
|
|
774
|
-
<pre><code class="language-ts"><span class="hl-
|
|
815
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> ....</span><br/><span class="hl-1"> </span><span class="hl-5">customLog</span><span class="hl-1">: (</span><span class="hl-5">level</span><span class="hl-1">: </span><span class="hl-6">string</span><span class="hl-1">, </span><span class="hl-5">args</span><span class="hl-1">: </span><span class="hl-6">any</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">log</span><span class="hl-1"> = </span><span class="hl-5">console</span><span class="hl-1">[</span><span class="hl-5">level</span><span class="hl-1">];</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">log</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">`[customLog][</span><span class="hl-0">${</span><span class="hl-5">level</span><span class="hl-0">}</span><span class="hl-8">]`</span><span class="hl-1">, ...</span><span class="hl-5">args</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> });</span>
|
|
775
816
|
</code></pre>
|
|
776
817
|
<ul>
|
|
777
818
|
<li>新增<code>promisify</code> 接口<code>appendCustomizeFrameDataSync</code></li>
|
|
778
819
|
</ul>
|
|
779
|
-
<pre><code class="language-ts"><span class="hl-
|
|
820
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1">: </span><span class="hl-6">any</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">?.</span><span class="hl-3">appendCustomizeFrameDataSync</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">action:</span><span class="hl-1"> </span><span class="hl-8">'startQuestion'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">value:</span><span class="hl-1"> </span><span class="hl-5">activeId</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">uuid</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span>
|
|
780
821
|
</code></pre>
|
|
781
822
|
<ul>
|
|
782
823
|
<li>新增<code>promisify</code> 接口<code>preparePlaybackSync</code></li>
|
|
783
824
|
</ul>
|
|
784
|
-
<pre><code class="language-ts"><span class="hl-
|
|
825
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">.</span><span class="hl-3">preparePlaybackSync</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">info</span><span class="hl-1">(</span><span class="hl-8">'通过同步事件收到回放数据'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">setQuestionsData</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">.</span><span class="hl-5">questionsData</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">res</span><span class="hl-1">.</span><span class="hl-5">total</span><span class="hl-1"> > </span><span class="hl-10">0</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-3">setPlayable</span><span class="hl-1">(</span><span class="hl-0">true</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">setPlaybackDuration</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">.</span><span class="hl-5">end</span><span class="hl-1"> - </span><span class="hl-5">res</span><span class="hl-1">.</span><span class="hl-5">start</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span>
|
|
785
826
|
</code></pre>
|
|
786
827
|
|
|
787
|
-
<a href="#优化-
|
|
828
|
+
<a href="#优化-23" id="优化-23" style="color: inherit; text-decoration: none;">
|
|
788
829
|
<h3>优化</h3>
|
|
789
830
|
</a>
|
|
790
831
|
<ul>
|
|
@@ -803,19 +844,19 @@
|
|
|
803
844
|
<h2>v0.9.148</h2>
|
|
804
845
|
</a>
|
|
805
846
|
|
|
806
|
-
<a href="#新增-
|
|
847
|
+
<a href="#新增-24" id="新增-24" style="color: inherit; text-decoration: none;">
|
|
807
848
|
<h3>新增</h3>
|
|
808
849
|
</a>
|
|
809
850
|
<ul>
|
|
810
851
|
<li>新增<code>SDK</code>初始化失败事件<code>initError</code></li>
|
|
811
852
|
</ul>
|
|
812
|
-
<pre><code class="language-ts"><span class="hl-
|
|
853
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">status</span><span class="hl-1">: </span><span class="hl-6">PlaygroundStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">dockerStatus</span><span class="hl-1">: </span><span class="hl-6">DockerStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">lspStatus</span><span class="hl-1">: </span><span class="hl-6">LspStatusEnum</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">InitError</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-8">'初始化SDK失败,请刷新页面重试:'</span><span class="hl-1"> + </span><span class="hl-5">payload</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> ...</span>
|
|
813
854
|
</code></pre>
|
|
814
855
|
<ul>
|
|
815
856
|
<li>新增针对切题场景<code>IDEServer</code>底层架构优化</li>
|
|
816
857
|
</ul>
|
|
817
858
|
|
|
818
|
-
<a href="#优化-
|
|
859
|
+
<a href="#优化-24" id="优化-24" style="color: inherit; text-decoration: none;">
|
|
819
860
|
<h3>优化</h3>
|
|
820
861
|
</a>
|
|
821
862
|
<ul>
|
|
@@ -829,19 +870,19 @@
|
|
|
829
870
|
<h2>v0.9.146</h2>
|
|
830
871
|
</a>
|
|
831
872
|
|
|
832
|
-
<a href="#新增-
|
|
873
|
+
<a href="#新增-25" id="新增-25" style="color: inherit; text-decoration: none;">
|
|
833
874
|
<h3>新增</h3>
|
|
834
875
|
</a>
|
|
835
876
|
<ul>
|
|
836
877
|
<li>新增支持<code>Editor</code> <code>placeholder</code>功能,支持配置多语言,配置全局默认的, 配置指定文件路径的, 支持配置<code>Dom</code>元素</li>
|
|
837
878
|
</ul>
|
|
838
|
-
<pre><code class="language-ts"><span class="hl-
|
|
879
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-3">getDom</span><span class="hl-1"> = (</span><span class="hl-5">lan</span><span class="hl-1">: </span><span class="hl-6">I18nLanguageType</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dom</span><span class="hl-1"> = </span><span class="hl-5">document</span><span class="hl-1">.</span><span class="hl-3">createElement</span><span class="hl-1">(</span><span class="hl-8">'div'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">text</span><span class="hl-1"> =</span><br/><span class="hl-1"> </span><span class="hl-5">lan</span><span class="hl-1"> === </span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">ZH</span><br/><span class="hl-1"> ? </span><span class="hl-8">'请在此输入你的代码'</span><br/><span class="hl-1"> : </span><span class="hl-8">'Please input your answer at here'</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-5">dom</span><span class="hl-1">.</span><span class="hl-5">textContent</span><span class="hl-1"> = </span><span class="hl-5">text</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-5">dom</span><span class="hl-1">.</span><span class="hl-3">setAttribute</span><span class="hl-1">(</span><span class="hl-8">'style'</span><span class="hl-1">, </span><span class="hl-8">'color:red;font-size:24px'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-5">dom</span><span class="hl-1">;</span><br/><span class="hl-1"> };</span><br/><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-9">container</span><span class="hl-1">: </span><span class="hl-8">'.editor-section'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">item</span><span class="hl-1">: </span><span class="hl-8">'Editor'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">props</span><span class="hl-1">: {</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-9">defaultPlaceholder</span><span class="hl-1">: {</span><br/><span class="hl-1"> [</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">ZH</span><span class="hl-1">]: </span><span class="hl-8">'默认的Placeholder 内容'</span><span class="hl-1">,</span><br/><span class="hl-1"> [</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">EN</span><span class="hl-1">]: </span><span class="hl-8">'Default placeholder text'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-9">placeholders</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-8">'README.md'</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-3">getDom</span><span class="hl-1">(</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">ZH</span><span class="hl-1">),</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-3">getDom</span><span class="hl-1">(</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">EN</span><span class="hl-1">),</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-8">'1.c'</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'请在这里输入你的代码-1.c'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'Please input your code at here for 1.c'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-8">'root/2.c'</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'请在这里输入你的代码-root/2.c'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><br/><span class="hl-1"> </span><span class="hl-8">'Please input your code at here for roo/2.c'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ....</span>
|
|
839
880
|
</code></pre>
|
|
840
881
|
<ul>
|
|
841
882
|
<li>新增文件树支持<code>F2</code>快捷键重命名</li>
|
|
842
883
|
</ul>
|
|
843
884
|
|
|
844
|
-
<a href="#优化-
|
|
885
|
+
<a href="#优化-25" id="优化-25" style="color: inherit; text-decoration: none;">
|
|
845
886
|
<h3>优化</h3>
|
|
846
887
|
</a>
|
|
847
888
|
<ul>
|
|
@@ -852,16 +893,16 @@
|
|
|
852
893
|
<h2>v0.9.145</h2>
|
|
853
894
|
</a>
|
|
854
895
|
|
|
855
|
-
<a href="#新增-
|
|
896
|
+
<a href="#新增-26" id="新增-26" style="color: inherit; text-decoration: none;">
|
|
856
897
|
<h3>新增</h3>
|
|
857
898
|
</a>
|
|
858
899
|
<ul>
|
|
859
900
|
<li>新增选择代码右击菜单功能(目前只支持:【implement,update】两种菜单Action):</li>
|
|
860
901
|
</ul>
|
|
861
|
-
<pre><code class="language-ts"><span class="hl-
|
|
902
|
+
<pre><code class="language-ts"><span class="hl-1">{</span><br/><span class="hl-1"> </span><span class="hl-9">container</span><span class="hl-1">: </span><span class="hl-8">'.editor-section'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">item</span><span class="hl-1">: </span><span class="hl-8">'Editor'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">props</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-5">showHiddenCode</span><span class="hl-1">, </span><span class="hl-4">// 是否显示隐藏代码:面试官视角,应该是true, 候选人视角:false</span><br/><span class="hl-1"> </span><span class="hl-5">freezeCode</span><span class="hl-1">, </span><span class="hl-4">// 是否让设置的代码区域不能编辑, 面试官视角,应该是false,候选人视角:true</span><br/><span class="hl-1"> </span><span class="hl-9">contextMenu</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-9">title</span><span class="hl-1">: </span><span class="hl-8">'ChatGPT'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">handleSelect</span><span class="hl-1">: (</span><span class="hl-5">e</span><span class="hl-1">, </span><span class="hl-5">callback</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">info</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">e</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">id</span><span class="hl-1"> = </span><span class="hl-6">Math</span><span class="hl-1">.</span><span class="hl-3">floor</span><span class="hl-1">(</span><span class="hl-6">Math</span><span class="hl-1">.</span><span class="hl-3">random</span><span class="hl-1">() * </span><span class="hl-10">1000</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">callback</span><span class="hl-1">?.({</span><br/><span class="hl-1"> </span><span class="hl-5">extralAction:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">replaceSelection:</span><span class="hl-1"> [</span><span class="hl-8">'业务方需要替换或者追加的代码'</span><span class="hl-1">]</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-9">items</span><span class="hl-1">: [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">action:</span><span class="hl-1"> </span><span class="hl-8">'implement'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> </span><span class="hl-8">'生成代码'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">noActionCheck:</span><span class="hl-1"> </span><span class="hl-0">true</span><span class="hl-1">, </span><span class="hl-4">// 答题区需要坚持隐藏,只读,答题区域内等情况不能设置</span><br/><span class="hl-1"> </span><span class="hl-5">codeAction:</span><span class="hl-1"> </span><span class="hl-8">'append'</span><span class="hl-1">, </span><span class="hl-4">// 代码追加的方式: append, replace,</span><br/><span class="hl-1"> </span><span class="hl-5">icon:</span><span class="hl-1"> </span><span class="hl-8">'dao42__icon--create'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">action:</span><span class="hl-1"> </span><span class="hl-8">'update'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> </span><span class="hl-8">'解析执行'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">noActionCheck:</span><span class="hl-1"> </span><span class="hl-0">true</span><span class="hl-1">, </span><span class="hl-4">// 答题区需要坚持隐藏,只读,答题区域内等情况不能设置</span><br/><span class="hl-1"> </span><span class="hl-5">codeAction:</span><span class="hl-1"> </span><span class="hl-8">'replace'</span><span class="hl-1">, </span><span class="hl-4">// 代码追加的方式: append, replace,</span><br/><span class="hl-1"> </span><span class="hl-5">icon:</span><span class="hl-1"> </span><span class="hl-8">'dao42__icon--fix'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> }</span><br/><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span>
|
|
862
903
|
</code></pre>
|
|
863
904
|
|
|
864
|
-
<a href="#优化-
|
|
905
|
+
<a href="#优化-26" id="优化-26" style="color: inherit; text-decoration: none;">
|
|
865
906
|
<h3>优化</h3>
|
|
866
907
|
</a>
|
|
867
908
|
<ul>
|
|
@@ -883,19 +924,19 @@
|
|
|
883
924
|
<h2>v0.9.143</h2>
|
|
884
925
|
</a>
|
|
885
926
|
|
|
886
|
-
<a href="#新增-
|
|
927
|
+
<a href="#新增-27" id="新增-27" style="color: inherit; text-decoration: none;">
|
|
887
928
|
<h3>新增</h3>
|
|
888
929
|
</a>
|
|
889
930
|
<ul>
|
|
890
931
|
<li>新增批量修改答题区Flag属性接口(并支持修改历史数据)</li>
|
|
891
932
|
</ul>
|
|
892
|
-
<pre><code class="language-ts"><span class="hl-
|
|
933
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">updateAreaFlags</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">path:</span><span class="hl-1"> </span><span class="hl-8">'README.md'</span><span class="hl-1">, </span><span class="hl-4">// 指定文件ID</span><br/><span class="hl-1"> </span><span class="hl-5">ids:</span><span class="hl-1"> [ </span><span class="hl-4">// 要修改的ID的集合</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">id:</span><span class="hl-1"> </span><span class="hl-8">'1'</span><span class="hl-1">, </span><span class="hl-4">// 答题区域的ID</span><br/><span class="hl-1"> </span><span class="hl-5">flag:</span><span class="hl-1"> </span><span class="hl-8">'1'</span><span class="hl-1">, </span><span class="hl-4">// 新的Flag值</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">id:</span><span class="hl-1"> </span><span class="hl-8">'2'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">flag:</span><span class="hl-1"> </span><span class="hl-8">'3'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1">});</span>
|
|
893
934
|
</code></pre>
|
|
894
935
|
<ul>
|
|
895
936
|
<li>新增<code>IDEServer</code>配置日志输出级别</li>
|
|
896
937
|
</ul>
|
|
897
938
|
|
|
898
|
-
<a href="#优化-
|
|
939
|
+
<a href="#优化-27" id="优化-27" style="color: inherit; text-decoration: none;">
|
|
899
940
|
<h3>优化</h3>
|
|
900
941
|
</a>
|
|
901
942
|
<ul>
|
|
@@ -908,7 +949,7 @@
|
|
|
908
949
|
<h2>v0.9.142</h2>
|
|
909
950
|
</a>
|
|
910
951
|
|
|
911
|
-
<a href="#优化-
|
|
952
|
+
<a href="#优化-28" id="优化-28" style="color: inherit; text-decoration: none;">
|
|
912
953
|
<h3>优化</h3>
|
|
913
954
|
</a>
|
|
914
955
|
<ul>
|
|
@@ -921,7 +962,7 @@
|
|
|
921
962
|
<h2>v0.9.141</h2>
|
|
922
963
|
</a>
|
|
923
964
|
|
|
924
|
-
<a href="#新增-
|
|
965
|
+
<a href="#新增-28" id="新增-28" style="color: inherit; text-decoration: none;">
|
|
925
966
|
<h3>新增</h3>
|
|
926
967
|
</a>
|
|
927
968
|
<ul>
|
|
@@ -929,10 +970,10 @@
|
|
|
929
970
|
<li>新增记录哪些文件进行了修改, 对应的文件名称<code>.1024file</code></li>
|
|
930
971
|
<li>新增回放数据,标记对应的时间范围为空白时</li>
|
|
931
972
|
</ul>
|
|
932
|
-
<pre><code class="language-ts"><span class="hl-
|
|
973
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-4">//</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-5">noFrameSpan</span><span class="hl-1">: </span><span class="hl-10">2</span><span class="hl-1">, </span><span class="hl-4">// >=2S 则标记出来,单位为s</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> </span><span class="hl-4">// PlaybackInfo 事件,会返回一个 whiteFrames数组</span>
|
|
933
974
|
</code></pre>
|
|
934
975
|
|
|
935
|
-
<a href="#优化-
|
|
976
|
+
<a href="#优化-29" id="优化-29" style="color: inherit; text-decoration: none;">
|
|
936
977
|
<h3>优化</h3>
|
|
937
978
|
</a>
|
|
938
979
|
<ul>
|
|
@@ -948,7 +989,7 @@
|
|
|
948
989
|
<h2>v0.9.140</h2>
|
|
949
990
|
</a>
|
|
950
991
|
|
|
951
|
-
<a href="#优化-
|
|
992
|
+
<a href="#优化-30" id="优化-30" style="color: inherit; text-decoration: none;">
|
|
952
993
|
<h3>优化</h3>
|
|
953
994
|
</a>
|
|
954
995
|
<ul>
|
|
@@ -959,7 +1000,7 @@
|
|
|
959
1000
|
<h2>v0.9.139</h2>
|
|
960
1001
|
</a>
|
|
961
1002
|
|
|
962
|
-
<a href="#优化-
|
|
1003
|
+
<a href="#优化-31" id="优化-31" style="color: inherit; text-decoration: none;">
|
|
963
1004
|
<h3>优化</h3>
|
|
964
1005
|
</a>
|
|
965
1006
|
<ul>
|
|
@@ -993,7 +1034,7 @@
|
|
|
993
1034
|
<h2>v0.9.136</h2>
|
|
994
1035
|
</a>
|
|
995
1036
|
|
|
996
|
-
<a href="#优化-
|
|
1037
|
+
<a href="#优化-32" id="优化-32" style="color: inherit; text-decoration: none;">
|
|
997
1038
|
<h3>优化</h3>
|
|
998
1039
|
</a>
|
|
999
1040
|
<ul>
|
|
@@ -1020,13 +1061,13 @@
|
|
|
1020
1061
|
<h2>v0.9.134</h2>
|
|
1021
1062
|
</a>
|
|
1022
1063
|
|
|
1023
|
-
<a href="#新增-
|
|
1064
|
+
<a href="#新增-29" id="新增-29" style="color: inherit; text-decoration: none;">
|
|
1024
1065
|
<h3>新增</h3>
|
|
1025
1066
|
</a>
|
|
1026
1067
|
<ul>
|
|
1027
1068
|
<li>暴露debug状态信息</li>
|
|
1028
1069
|
</ul>
|
|
1029
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1070
|
+
<pre><code class="language-ts"><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">Debug</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-4">// payload.debugStatus状态信息</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">}</span>
|
|
1030
1071
|
</code></pre>
|
|
1031
1072
|
<ul>
|
|
1032
1073
|
<li>debug面板添加启动中dot</li>
|
|
@@ -1039,7 +1080,7 @@
|
|
|
1039
1080
|
<li>debug运行中离线重连后重置debug相关数据</li>
|
|
1040
1081
|
</ul>
|
|
1041
1082
|
|
|
1042
|
-
<a href="#优化-
|
|
1083
|
+
<a href="#优化-33" id="优化-33" style="color: inherit; text-decoration: none;">
|
|
1043
1084
|
<h3>优化</h3>
|
|
1044
1085
|
</a>
|
|
1045
1086
|
<ul>
|
|
@@ -1050,7 +1091,7 @@
|
|
|
1050
1091
|
<h2>v0.9.133</h2>
|
|
1051
1092
|
</a>
|
|
1052
1093
|
|
|
1053
|
-
<a href="#新增-
|
|
1094
|
+
<a href="#新增-30" id="新增-30" style="color: inherit; text-decoration: none;">
|
|
1054
1095
|
<h3>新增</h3>
|
|
1055
1096
|
</a>
|
|
1056
1097
|
<ul>
|
|
@@ -1066,7 +1107,7 @@
|
|
|
1066
1107
|
<li>修复编辑器选中内容的首行高亮问题</li>
|
|
1067
1108
|
</ul>
|
|
1068
1109
|
|
|
1069
|
-
<a href="#优化-
|
|
1110
|
+
<a href="#优化-34" id="优化-34" style="color: inherit; text-decoration: none;">
|
|
1070
1111
|
<h3>优化</h3>
|
|
1071
1112
|
</a>
|
|
1072
1113
|
<ul>
|
|
@@ -1085,7 +1126,7 @@
|
|
|
1085
1126
|
<h2>v0.9.132</h2>
|
|
1086
1127
|
</a>
|
|
1087
1128
|
|
|
1088
|
-
<a href="#优化-
|
|
1129
|
+
<a href="#优化-35" id="优化-35" style="color: inherit; text-decoration: none;">
|
|
1089
1130
|
<h3>优化</h3>
|
|
1090
1131
|
</a>
|
|
1091
1132
|
<ul>
|
|
@@ -1097,21 +1138,21 @@
|
|
|
1097
1138
|
<h2>v0.9.131</h2>
|
|
1098
1139
|
</a>
|
|
1099
1140
|
|
|
1100
|
-
<a href="#优化-
|
|
1141
|
+
<a href="#优化-36" id="优化-36" style="color: inherit; text-decoration: none;">
|
|
1101
1142
|
<h3>优化</h3>
|
|
1102
1143
|
</a>
|
|
1103
1144
|
<ul>
|
|
1104
1145
|
<li>优化debug(开始/停止icon颜色、点击堆栈项进行跳转、toolTip文案/背景修改、修复断点状态、优化获取当前文件断点数据方法)</li>
|
|
1105
1146
|
</ul>
|
|
1106
1147
|
|
|
1107
|
-
<a href="#新增-
|
|
1148
|
+
<a href="#新增-31" id="新增-31" style="color: inherit; text-decoration: none;">
|
|
1108
1149
|
<h3>新增</h3>
|
|
1109
1150
|
</a>
|
|
1110
1151
|
<ul>
|
|
1111
1152
|
<li>新增realTimeRefresh参数文件有更新是否通知MQ(非运行状态时)</li>
|
|
1112
1153
|
<li>新增insertCodeByCursor方法,根据光标位置插入数据</li>
|
|
1113
1154
|
</ul>
|
|
1114
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1155
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">insertCodeByCursor</span><span class="hl-1">(</span><span class="hl-5">insertCode</span><span class="hl-1">);</span><br/><br/><span class="hl-1"> </span><span class="hl-4">// 插入代码</span><br/><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-3">insertCode</span><span class="hl-1"> = (</span><br/><span class="hl-1"> </span><span class="hl-5">line</span><span class="hl-1">: </span><span class="hl-6">number</span><span class="hl-1">, </span><span class="hl-4">// line为当前光标聚焦行</span><br/><span class="hl-1"> </span><span class="hl-5">insercodeCallback</span><span class="hl-1">: </span><span class="hl-6">IInsertCodeInternalFn</span><span class="hl-1">,</span><br/><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">// 计算pos</span><br/><span class="hl-1"> </span><span class="hl-3">insercodeCallback</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">line:</span><span class="hl-1"> </span><span class="hl-5">line</span><span class="hl-1"> + </span><span class="hl-5">offsetLine</span><span class="hl-1">, </span><span class="hl-4">// offsetLine为光标偏移量</span><br/><span class="hl-1"> </span><span class="hl-5">actions:</span><span class="hl-1"> </span><span class="hl-8">'current'</span><span class="hl-1">, </span><span class="hl-4">// 代码插入的位置,当前行首(start) | 当前位置(current) | 当前行尾(end)</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> </span><span class="hl-3">encodeURI</span><span class="hl-1">(</span><span class="hl-5">insertCodeText</span><span class="hl-1">),</span><br/><span class="hl-1"> });</span><br/><span class="hl-1">};</span>
|
|
1115
1156
|
</code></pre>
|
|
1116
1157
|
|
|
1117
1158
|
<a href="#修复-19" id="修复-19" style="color: inherit; text-decoration: none;">
|
|
@@ -1130,7 +1171,7 @@
|
|
|
1130
1171
|
<h2>v0.9.130</h2>
|
|
1131
1172
|
</a>
|
|
1132
1173
|
|
|
1133
|
-
<a href="#优化-
|
|
1174
|
+
<a href="#优化-37" id="优化-37" style="color: inherit; text-decoration: none;">
|
|
1134
1175
|
<h3>优化</h3>
|
|
1135
1176
|
</a>
|
|
1136
1177
|
<ul>
|
|
@@ -1143,13 +1184,13 @@
|
|
|
1143
1184
|
<h2>v0.9.129</h2>
|
|
1144
1185
|
</a>
|
|
1145
1186
|
|
|
1146
|
-
<a href="#新增-
|
|
1187
|
+
<a href="#新增-32" id="新增-32" style="color: inherit; text-decoration: none;">
|
|
1147
1188
|
<h2>新增</h2>
|
|
1148
1189
|
</a>
|
|
1149
1190
|
<ul>
|
|
1150
1191
|
<li>新增<code>XtermInfo</code>事件,<code>terminal</code>或者<code>console</code>有更新进行派发</li>
|
|
1151
1192
|
</ul>
|
|
1152
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1193
|
+
<pre><code class="language-ts"><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">XtermInfo</span><span class="hl-1">: {</span><br/><span class="hl-1"> console.log(payload); </span><span class="hl-4">// 数据为IXtermInfo</span><br/><span class="hl-1"> break;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">}</span>
|
|
1153
1194
|
</code></pre>
|
|
1154
1195
|
|
|
1155
1196
|
<a href="#修复-20" id="修复-20" style="color: inherit; text-decoration: none;">
|
|
@@ -1164,7 +1205,7 @@
|
|
|
1164
1205
|
<h2>v0.9.128</h2>
|
|
1165
1206
|
</a>
|
|
1166
1207
|
|
|
1167
|
-
<a href="#优化-
|
|
1208
|
+
<a href="#优化-38" id="优化-38" style="color: inherit; text-decoration: none;">
|
|
1168
1209
|
<h2>优化</h2>
|
|
1169
1210
|
</a>
|
|
1170
1211
|
<ul>
|
|
@@ -1177,23 +1218,23 @@
|
|
|
1177
1218
|
<h2>v0.9.127</h2>
|
|
1178
1219
|
</a>
|
|
1179
1220
|
|
|
1180
|
-
<a href="#新增-
|
|
1221
|
+
<a href="#新增-33" id="新增-33" style="color: inherit; text-decoration: none;">
|
|
1181
1222
|
<h2>新增</h2>
|
|
1182
1223
|
</a>
|
|
1183
1224
|
<ul>
|
|
1184
1225
|
<li>新增强制刷新文件缓存的接口</li>
|
|
1185
1226
|
</ul>
|
|
1186
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1227
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaas</span><span class="hl-1">.</span><span class="hl-3">forceRefreshFile</span><span class="hl-1">(</span><span class="hl-5">path</span><span class="hl-1">?: </span><span class="hl-5">string</span><span class="hl-1">) </span><span class="hl-4">// path 默认是当前Editor打开的文件</span>
|
|
1187
1228
|
</code></pre>
|
|
1188
1229
|
<ul>
|
|
1189
1230
|
<li>新增触发聚焦答题区事件</li>
|
|
1190
1231
|
</ul>
|
|
1191
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1232
|
+
<pre><code class="language-ts"><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1">...</span><br/><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">AnswerAreaInfo</span><span class="hl-1">: {</span><br/><span class="hl-1"> console.log(payload.foucusId); </span><span class="hl-4">// 当焦点在答题区内foucusId为答题区id、不在则为空字符</span><br/><span class="hl-1"> break;</span><br/><span class="hl-1">}</span><br/><span class="hl-1">})</span>
|
|
1192
1233
|
</code></pre>
|
|
1193
1234
|
<ul>
|
|
1194
1235
|
<li>新增答题区新增<code>overrideItems</code>和<code>handleOverride</code>参数,光标选择区域包含答题区或在答题区内触发操作。如没有设置<code>overrideItems</code>右击菜单默认为items</li>
|
|
1195
1236
|
</ul>
|
|
1196
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1237
|
+
<pre><code class="language-ts"><span class="hl-9">contextMenu</span><span class="hl-1">:{</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-9">overrideItems</span><span class="hl-1">: [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">action:</span><span class="hl-1"> </span><span class="hl-8">'delete'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> </span><span class="hl-8">'删除答题区'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> </span><span class="hl-9">handleOverride</span><span class="hl-1">: (</span><span class="hl-5">params</span><span class="hl-1">: </span><span class="hl-6">IOverrideParams</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'params: '</span><span class="hl-1">, </span><span class="hl-5">params</span><span class="hl-1">); </span><span class="hl-4">//执行对应删除操作</span><br/><span class="hl-1"> },</span><br/><span class="hl-1">}</span>
|
|
1197
1238
|
</code></pre>
|
|
1198
1239
|
|
|
1199
1240
|
<a href="#修复-21" id="修复-21" style="color: inherit; text-decoration: none;">
|
|
@@ -1210,7 +1251,7 @@
|
|
|
1210
1251
|
<h2>v0.9.126</h2>
|
|
1211
1252
|
</a>
|
|
1212
1253
|
|
|
1213
|
-
<a href="#新增-
|
|
1254
|
+
<a href="#新增-34" id="新增-34" style="color: inherit; text-decoration: none;">
|
|
1214
1255
|
<h2>新增</h2>
|
|
1215
1256
|
</a>
|
|
1216
1257
|
<ul>
|
|
@@ -1218,7 +1259,7 @@
|
|
|
1218
1259
|
<li>新增IDEServer 单元测试</li>
|
|
1219
1260
|
</ul>
|
|
1220
1261
|
|
|
1221
|
-
<a href="#优化-
|
|
1262
|
+
<a href="#优化-39" id="优化-39" style="color: inherit; text-decoration: none;">
|
|
1222
1263
|
<h2>优化</h2>
|
|
1223
1264
|
</a>
|
|
1224
1265
|
<ul>
|
|
@@ -1245,14 +1286,14 @@
|
|
|
1245
1286
|
<h2>v0.9.125</h2>
|
|
1246
1287
|
</a>
|
|
1247
1288
|
|
|
1248
|
-
<a href="#新增-
|
|
1289
|
+
<a href="#新增-35" id="新增-35" style="color: inherit; text-decoration: none;">
|
|
1249
1290
|
<h3>新增</h3>
|
|
1250
1291
|
</a>
|
|
1251
1292
|
<ul>
|
|
1252
1293
|
<li>新增答题区选中Tooltip操作按钮</li>
|
|
1253
1294
|
</ul>
|
|
1254
1295
|
|
|
1255
|
-
<a href="#优化-
|
|
1296
|
+
<a href="#优化-40" id="优化-40" style="color: inherit; text-decoration: none;">
|
|
1256
1297
|
<h3>优化</h3>
|
|
1257
1298
|
</a>
|
|
1258
1299
|
<ul>
|
|
@@ -1272,32 +1313,32 @@
|
|
|
1272
1313
|
<h2>v0.9.124</h2>
|
|
1273
1314
|
</a>
|
|
1274
1315
|
|
|
1275
|
-
<a href="#新增-
|
|
1316
|
+
<a href="#新增-36" id="新增-36" style="color: inherit; text-decoration: none;">
|
|
1276
1317
|
<h3>新增</h3>
|
|
1277
1318
|
</a>
|
|
1278
1319
|
<ul>
|
|
1279
1320
|
<li>新增<code>Markdown</code>文件支持插入项目内图片路径</li>
|
|
1280
1321
|
<li>新增<code>Editor</code> 头部支持注入插件功能</li>
|
|
1281
1322
|
</ul>
|
|
1282
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1323
|
+
<pre><code class="language-ts"><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-9">container</span><span class="hl-1">: </span><span class="hl-8">'.editor-section'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">item</span><span class="hl-1">: </span><span class="hl-8">'Editor'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">props</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-9">fileHeader</span><span class="hl-1">: [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">className:</span><span class="hl-1"> </span><span class="hl-8">'custom-className'</span><span class="hl-1">, </span><span class="hl-4">// 非必需</span><br/><span class="hl-1"> </span><span class="hl-5">icon:</span><span class="hl-1"> { </span><span class="hl-4">// 非必需</span><br/><span class="hl-1"> </span><span class="hl-5">className:</span><span class="hl-1"> </span><span class="hl-8">'dao42__icon--warning-circle'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">tips:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'代码智能检测和补全(LSP):连接中'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'代码智能检测和补全(LSP):连接中'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-3">action</span><span class="hl-5">:</span><span class="hl-1"> () </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-8">' IconAction'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-4">// 业务方自定义的业务行为,可以调用SDK提供的API</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">labelAction:</span><span class="hl-1"> </span><span class="hl-0">null</span><span class="hl-1"> </span><span class="hl-7">as</span><span class="hl-1"> </span><span class="hl-6">any</span><span class="hl-1">, </span><span class="hl-4">// 非必需</span><br/><span class="hl-1"> </span><span class="hl-5">label:</span><span class="hl-1"> {</span><span class="hl-4">// 非必需</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">ZH</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'LSP 连接中'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[I18nLanguageType.</span><span class="hl-2">EN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'LSP Connecting'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> ],</span><br/><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span>
|
|
1283
1324
|
</code></pre>
|
|
1284
1325
|
<ul>
|
|
1285
1326
|
<li>新增动态修改<code>Editor</code>头部插件接口</li>
|
|
1286
1327
|
</ul>
|
|
1287
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1328
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">updateFileHeader</span><span class="hl-1">([...</span><span class="hl-5">fileHeader</span><span class="hl-1">]);</span>
|
|
1288
1329
|
</code></pre>
|
|
1289
1330
|
<ul>
|
|
1290
1331
|
<li>新增答题区域业务方配置答题区Flag属性</li>
|
|
1291
1332
|
</ul>
|
|
1292
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1333
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-3">callback</span><span class="hl-1">?.(</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">id</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">flag</span><span class="hl-1">, </span><span class="hl-4">// 业务方在返回ID的时候,同时返回flag 值</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">extralAction</span><span class="hl-1">,</span><br/><span class="hl-1">);</span>
|
|
1293
1334
|
</code></pre>
|
|
1294
1335
|
<ul>
|
|
1295
1336
|
<li>新增批量修改答题区Flag属性接口</li>
|
|
1296
1337
|
</ul>
|
|
1297
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1338
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">updateAreaFlags</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">path:</span><span class="hl-1"> </span><span class="hl-8">'README.md'</span><span class="hl-1">, </span><span class="hl-4">// 指定文件ID</span><br/><span class="hl-1"> </span><span class="hl-5">ids:</span><span class="hl-1"> [ </span><span class="hl-4">// 要修改的ID的集合</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">id:</span><span class="hl-1"> </span><span class="hl-8">'1'</span><span class="hl-1">, </span><span class="hl-4">// 答题区域的ID</span><br/><span class="hl-1"> </span><span class="hl-5">flag:</span><span class="hl-1"> </span><span class="hl-8">'1'</span><span class="hl-1">, </span><span class="hl-4">// 新的Flag值</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">id:</span><span class="hl-1"> </span><span class="hl-8">'2'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">flag:</span><span class="hl-1"> </span><span class="hl-8">'3'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1">});</span>
|
|
1298
1339
|
</code></pre>
|
|
1299
1340
|
|
|
1300
|
-
<a href="#优化-
|
|
1341
|
+
<a href="#优化-41" id="优化-41" style="color: inherit; text-decoration: none;">
|
|
1301
1342
|
<h3>优化</h3>
|
|
1302
1343
|
</a>
|
|
1303
1344
|
<ul>
|
|
@@ -1325,7 +1366,7 @@
|
|
|
1325
1366
|
<li>修复<code>tooltip</code>快速切换子<code>icon</code>元素迅速将鼠标移出元素<code>onMouseLeave</code>不触发问题</li>
|
|
1326
1367
|
</ul>
|
|
1327
1368
|
|
|
1328
|
-
<a href="#优化-
|
|
1369
|
+
<a href="#优化-42" id="优化-42" style="color: inherit; text-decoration: none;">
|
|
1329
1370
|
<h3>优化</h3>
|
|
1330
1371
|
</a>
|
|
1331
1372
|
<ul>
|
|
@@ -1338,7 +1379,7 @@
|
|
|
1338
1379
|
<h2>v0.9.122</h2>
|
|
1339
1380
|
</a>
|
|
1340
1381
|
|
|
1341
|
-
<a href="#新增-
|
|
1382
|
+
<a href="#新增-37" id="新增-37" style="color: inherit; text-decoration: none;">
|
|
1342
1383
|
<h3>新增</h3>
|
|
1343
1384
|
</a>
|
|
1344
1385
|
<ul>
|
|
@@ -1347,7 +1388,7 @@
|
|
|
1347
1388
|
<li>新增支持业务方配置多个打开默认文件名称</li>
|
|
1348
1389
|
<li>新增自定义执行方法,由业务方携带的配置信息来启动运行</li>
|
|
1349
1390
|
</ul>
|
|
1350
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1391
|
+
<pre><code class="language-ts"><span class="hl-4">// 自定义执行,通过业务方携带的配置信息来启动运行</span><br/><span class="hl-4">// tips:而不是通过后端读取.1024配置文件信息</span><br/><span class="hl-1"> </span><span class="hl-3">customExecute</span><span class="hl-1">(</span><span class="hl-5">config</span><span class="hl-1">: </span><span class="hl-5">ICustomExcuteConfig</span><span class="hl-1">): </span><span class="hl-0">void</span><span class="hl-1">;</span>
|
|
1351
1392
|
</code></pre>
|
|
1352
1393
|
|
|
1353
1394
|
<a href="#修复-26" id="修复-26" style="color: inherit; text-decoration: none;">
|
|
@@ -1361,14 +1402,14 @@
|
|
|
1361
1402
|
<h2>v0.9.120</h2>
|
|
1362
1403
|
</a>
|
|
1363
1404
|
|
|
1364
|
-
<a href="#新增-
|
|
1405
|
+
<a href="#新增-38" id="新增-38" style="color: inherit; text-decoration: none;">
|
|
1365
1406
|
<h3>新增</h3>
|
|
1366
1407
|
</a>
|
|
1367
1408
|
<ul>
|
|
1368
1409
|
<li>新增支持下载单文件</li>
|
|
1369
1410
|
<li><code>editorTabSize</code>属性新增一个值为<code>auto</code>,自动识别文件缩进并且应用于编辑器</li>
|
|
1370
1411
|
</ul>
|
|
1371
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1412
|
+
<pre><code class="language-ts"><span class="hl-5">GlobalConfig</span><span class="hl-1"> {</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-9">editorTabSize</span><span class="hl-1">: </span><span class="hl-8">'auto'</span><span class="hl-1">|</span><span class="hl-5">number</span><span class="hl-1"> </span><span class="hl-4">// 新增auto,自动识别文件缩进</span><br/><span class="hl-1">}</span>
|
|
1372
1413
|
</code></pre>
|
|
1373
1414
|
<ul>
|
|
1374
1415
|
<li>新增限制打开<code>db,db3,sqlite</code>相关文件,并给予提示</li>
|
|
@@ -1382,7 +1423,7 @@
|
|
|
1382
1423
|
<li>修复添加CDN资源后, Editor内容不刷新显示CDN资源内容</li>
|
|
1383
1424
|
</ul>
|
|
1384
1425
|
|
|
1385
|
-
<a href="#优化-
|
|
1426
|
+
<a href="#优化-43" id="优化-43" style="color: inherit; text-decoration: none;">
|
|
1386
1427
|
<h3>优化</h3>
|
|
1387
1428
|
</a>
|
|
1388
1429
|
<ul>
|
|
@@ -1393,7 +1434,7 @@
|
|
|
1393
1434
|
<h2>v0.9.119</h2>
|
|
1394
1435
|
</a>
|
|
1395
1436
|
|
|
1396
|
-
<a href="#优化-
|
|
1437
|
+
<a href="#优化-44" id="优化-44" style="color: inherit; text-decoration: none;">
|
|
1397
1438
|
<h3>优化</h3>
|
|
1398
1439
|
</a>
|
|
1399
1440
|
<ul>
|
|
@@ -1416,16 +1457,16 @@
|
|
|
1416
1457
|
<h2>v0.9.117</h2>
|
|
1417
1458
|
</a>
|
|
1418
1459
|
|
|
1419
|
-
<a href="#新增-
|
|
1460
|
+
<a href="#新增-39" id="新增-39" style="color: inherit; text-decoration: none;">
|
|
1420
1461
|
<h3>新增</h3>
|
|
1421
1462
|
</a>
|
|
1422
1463
|
<ul>
|
|
1423
1464
|
<li>新增特定语言特定模版文件进行语法高亮,SDK内置了如下部分文件,同步支持业务方配置指定文件名称进行对应语言高亮</li>
|
|
1424
1465
|
</ul>
|
|
1425
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1466
|
+
<pre><code class="language-ts"><span class="hl-4">// SDK 默认已经支持的内置文件配置</span><br/><span class="hl-1"> </span><span class="hl-5">ConfigExtension</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">Gemfile</span><span class="hl-1"> = </span><span class="hl-8">'ruby'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">Rakefile</span><span class="hl-1"> = </span><span class="hl-8">'ruby'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">artisan</span><span class="hl-1"> = </span><span class="hl-8">'php'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-8">'Gemfile.lock'</span><span class="hl-1"> = </span><span class="hl-8">'ruby'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-8">'.npmrc'</span><span class="hl-1"> = </span><span class="hl-8">'javascript'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-8">'.eslintrc'</span><span class="hl-1"> = </span><span class="hl-8">'javascript'</span><span class="hl-1">,</span><br/><span class="hl-1">}</span><br/><span class="hl-4">// 业务方可以配置对应文件名称进行指定语法高亮</span><br/><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1">...</span><br/><span class="hl-5">specialFileHighlight</span><span class="hl-1">:[</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">fileName:</span><span class="hl-1"> </span><span class="hl-8">'Gemfile'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">languageType:</span><span class="hl-1"> </span><span class="hl-8">'ruby'</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">] </span><span class="hl-4">// 指定文件名称,使用特定的语法高亮</span><br/><span class="hl-1">})</span>
|
|
1426
1467
|
</code></pre>
|
|
1427
1468
|
|
|
1428
|
-
<a href="#优化-
|
|
1469
|
+
<a href="#优化-45" id="优化-45" style="color: inherit; text-decoration: none;">
|
|
1429
1470
|
<h3>优化</h3>
|
|
1430
1471
|
</a>
|
|
1431
1472
|
<ul>
|
|
@@ -1445,7 +1486,7 @@
|
|
|
1445
1486
|
<h2>v0.9.116</h2>
|
|
1446
1487
|
</a>
|
|
1447
1488
|
|
|
1448
|
-
<a href="#新增-
|
|
1489
|
+
<a href="#新增-40" id="新增-40" style="color: inherit; text-decoration: none;">
|
|
1449
1490
|
<h3>新增</h3>
|
|
1450
1491
|
</a>
|
|
1451
1492
|
<ul>
|
|
@@ -1463,7 +1504,7 @@
|
|
|
1463
1504
|
<li>修复答题区域的右侧边界样式问题</li>
|
|
1464
1505
|
</ul>
|
|
1465
1506
|
|
|
1466
|
-
<a href="#优化-
|
|
1507
|
+
<a href="#优化-46" id="优化-46" style="color: inherit; text-decoration: none;">
|
|
1467
1508
|
<h3>优化</h3>
|
|
1468
1509
|
</a>
|
|
1469
1510
|
<ul>
|
|
@@ -1476,7 +1517,7 @@
|
|
|
1476
1517
|
<h2>v0.9.115</h2>
|
|
1477
1518
|
</a>
|
|
1478
1519
|
|
|
1479
|
-
<a href="#优化-
|
|
1520
|
+
<a href="#优化-47" id="优化-47" style="color: inherit; text-decoration: none;">
|
|
1480
1521
|
<h3>优化</h3>
|
|
1481
1522
|
</a>
|
|
1482
1523
|
<ul>
|
|
@@ -1501,13 +1542,13 @@
|
|
|
1501
1542
|
<h2>v0.9.114</h2>
|
|
1502
1543
|
</a>
|
|
1503
1544
|
|
|
1504
|
-
<a href="#新增-
|
|
1545
|
+
<a href="#新增-41" id="新增-41" style="color: inherit; text-decoration: none;">
|
|
1505
1546
|
<h3>新增</h3>
|
|
1506
1547
|
</a>
|
|
1507
1548
|
<ul>
|
|
1508
1549
|
<li>新增回放过程中打开其他问题,派发暂停事件给业务方</li>
|
|
1509
1550
|
</ul>
|
|
1510
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1551
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">PausePlayback</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-8">'PausePlayback'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> ...</span>
|
|
1511
1552
|
</code></pre>
|
|
1512
1553
|
|
|
1513
1554
|
<a href="#修复-32" id="修复-32" style="color: inherit; text-decoration: none;">
|
|
@@ -1521,7 +1562,7 @@
|
|
|
1521
1562
|
<h2>v0.9.113</h2>
|
|
1522
1563
|
</a>
|
|
1523
1564
|
|
|
1524
|
-
<a href="#新增-
|
|
1565
|
+
<a href="#新增-42" id="新增-42" style="color: inherit; text-decoration: none;">
|
|
1525
1566
|
<h3>新增</h3>
|
|
1526
1567
|
</a>
|
|
1527
1568
|
<ul>
|
|
@@ -1540,14 +1581,14 @@
|
|
|
1540
1581
|
<h2>v0.9.111</h2>
|
|
1541
1582
|
</a>
|
|
1542
1583
|
|
|
1543
|
-
<a href="#新增-
|
|
1584
|
+
<a href="#新增-43" id="新增-43" style="color: inherit; text-decoration: none;">
|
|
1544
1585
|
<h3>新增</h3>
|
|
1545
1586
|
</a>
|
|
1546
1587
|
<ul>
|
|
1547
1588
|
<li>关闭实时刷新功能</li>
|
|
1548
1589
|
<li>新增是否开启LSP诊断接口</li>
|
|
1549
1590
|
</ul>
|
|
1550
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1591
|
+
<pre><code class="language-ts"><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-5">openLspDiagnostic</span><span class="hl-1">: </span><span class="hl-0">true</span><span class="hl-1">, </span><span class="hl-4">// 默认是true,</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1">});</span><br/><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">switchLspDiagnostic</span><span class="hl-1">(</span><span class="hl-0">true</span><span class="hl-1">/</span><span class="hl-0">false</span><span class="hl-1">);</span>
|
|
1551
1592
|
</code></pre>
|
|
1552
1593
|
|
|
1553
1594
|
<a href="#修复-34" id="修复-34" style="color: inherit; text-decoration: none;">
|
|
@@ -1565,7 +1606,7 @@
|
|
|
1565
1606
|
<h2>v0.9.110</h2>
|
|
1566
1607
|
</a>
|
|
1567
1608
|
|
|
1568
|
-
<a href="#新增-
|
|
1609
|
+
<a href="#新增-44" id="新增-44" style="color: inherit; text-decoration: none;">
|
|
1569
1610
|
<h3>新增</h3>
|
|
1570
1611
|
</a>
|
|
1571
1612
|
<ul>
|
|
@@ -1573,7 +1614,7 @@
|
|
|
1573
1614
|
<li>新增关闭实时预览Web项目开关</li>
|
|
1574
1615
|
<li>新增监听Docker资源使用情况(5S 更新一次资源使用情况)</li>
|
|
1575
1616
|
</ul>
|
|
1576
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1617
|
+
<pre><code class="language-ts"><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">ResourceMonitoring</span><span class="hl-1">: {</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">cpuPercent:</span><span class="hl-1"> </span><span class="hl-10">0.33</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">memoryCurrent:</span><span class="hl-10">144</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">memoryMax:</span><span class="hl-10">1024</span><span class="hl-1">,</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> }</span>
|
|
1577
1618
|
</code></pre>
|
|
1578
1619
|
|
|
1579
1620
|
<a href="#v09106" id="v09106" style="color: inherit; text-decoration: none;">
|
|
@@ -1591,7 +1632,7 @@
|
|
|
1591
1632
|
<li>修复回放模式,Shell 会出现重复内容</li>
|
|
1592
1633
|
</ul>
|
|
1593
1634
|
|
|
1594
|
-
<a href="#优化-
|
|
1635
|
+
<a href="#优化-48" id="优化-48" style="color: inherit; text-decoration: none;">
|
|
1595
1636
|
<h2>优化</h2>
|
|
1596
1637
|
</a>
|
|
1597
1638
|
<ul>
|
|
@@ -1606,7 +1647,7 @@
|
|
|
1606
1647
|
<h2>v0.9.102</h2>
|
|
1607
1648
|
</a>
|
|
1608
1649
|
|
|
1609
|
-
<a href="#新增-
|
|
1650
|
+
<a href="#新增-45" id="新增-45" style="color: inherit; text-decoration: none;">
|
|
1610
1651
|
<h3>新增</h3>
|
|
1611
1652
|
</a>
|
|
1612
1653
|
<ul>
|
|
@@ -1621,7 +1662,7 @@
|
|
|
1621
1662
|
<li>修复删除文件,Editor会自动关闭有相同前缀开头的文件</li>
|
|
1622
1663
|
</ul>
|
|
1623
1664
|
|
|
1624
|
-
<a href="#优化-
|
|
1665
|
+
<a href="#优化-49" id="优化-49" style="color: inherit; text-decoration: none;">
|
|
1625
1666
|
<h3>优化</h3>
|
|
1626
1667
|
</a>
|
|
1627
1668
|
<ul>
|
|
@@ -1653,7 +1694,7 @@
|
|
|
1653
1694
|
<li>修复回放功能JS报错</li>
|
|
1654
1695
|
</ul>
|
|
1655
1696
|
|
|
1656
|
-
<a href="#优化-
|
|
1697
|
+
<a href="#优化-50" id="优化-50" style="color: inherit; text-decoration: none;">
|
|
1657
1698
|
<h3>优化</h3>
|
|
1658
1699
|
</a>
|
|
1659
1700
|
<ul>
|
|
@@ -1674,7 +1715,7 @@
|
|
|
1674
1715
|
<li>修复回放功能<code>shell</code>内容重复显示问题</li>
|
|
1675
1716
|
</ul>
|
|
1676
1717
|
|
|
1677
|
-
<a href="#优化-
|
|
1718
|
+
<a href="#优化-51" id="优化-51" style="color: inherit; text-decoration: none;">
|
|
1678
1719
|
<h3>优化</h3>
|
|
1679
1720
|
</a>
|
|
1680
1721
|
<ul>
|
|
@@ -1686,14 +1727,14 @@
|
|
|
1686
1727
|
<h2>v0.9.95</h2>
|
|
1687
1728
|
</a>
|
|
1688
1729
|
|
|
1689
|
-
<a href="#新增-
|
|
1730
|
+
<a href="#新增-46" id="新增-46" style="color: inherit; text-decoration: none;">
|
|
1690
1731
|
<h3>新增</h3>
|
|
1691
1732
|
</a>
|
|
1692
1733
|
<ul>
|
|
1693
1734
|
<li>新增Debug支持变量Hover 显示变量值功能</li>
|
|
1694
1735
|
<li>新增SDK配置支持打开默认文件功能</li>
|
|
1695
1736
|
</ul>
|
|
1696
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1737
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> ....</span><br/><span class="hl-1"> </span><span class="hl-5">defaultOpenFiles</span><span class="hl-1">: [</span><span class="hl-8">'README.md'</span><span class="hl-1">, </span><span class="hl-8">'CHANGELOG.md'</span><span class="hl-1">], </span><span class="hl-4">// 默认打开文件列表(PaaS 默认只有README.md),优先级'README.md' > 'CHANGELOG.md'</span><br/><span class="hl-1"> </span><span class="hl-5">specialOpenFile:</span><span class="hl-1"> </span><span class="hl-5">openpath</span><span class="hl-1">, </span><span class="hl-4">// specialOpenFiles 优先级 高于defaultOpenFiles</span><br/><span class="hl-1"> });</span>
|
|
1697
1738
|
</code></pre>
|
|
1698
1739
|
|
|
1699
1740
|
<a href="#修复-40" id="修复-40" style="color: inherit; text-decoration: none;">
|
|
@@ -1706,7 +1747,7 @@
|
|
|
1706
1747
|
<li>修复React JSX语法设置答题区域,显示对应标识内容问题</li>
|
|
1707
1748
|
</ul>
|
|
1708
1749
|
|
|
1709
|
-
<a href="#优化-
|
|
1750
|
+
<a href="#优化-52" id="优化-52" style="color: inherit; text-decoration: none;">
|
|
1710
1751
|
<h3>优化</h3>
|
|
1711
1752
|
</a>
|
|
1712
1753
|
<ul>
|
|
@@ -1721,7 +1762,7 @@
|
|
|
1721
1762
|
<h2>v0.9.94</h2>
|
|
1722
1763
|
</a>
|
|
1723
1764
|
|
|
1724
|
-
<a href="#新增-
|
|
1765
|
+
<a href="#新增-47" id="新增-47" style="color: inherit; text-decoration: none;">
|
|
1725
1766
|
<h3>新增</h3>
|
|
1726
1767
|
</a>
|
|
1727
1768
|
<ul>
|
|
@@ -1736,7 +1777,7 @@
|
|
|
1736
1777
|
<li>修复文件树收起,展开头像消失问题</li>
|
|
1737
1778
|
</ul>
|
|
1738
1779
|
|
|
1739
|
-
<a href="#优化-
|
|
1780
|
+
<a href="#优化-53" id="优化-53" style="color: inherit; text-decoration: none;">
|
|
1740
1781
|
<h3>优化</h3>
|
|
1741
1782
|
</a>
|
|
1742
1783
|
<ul>
|
|
@@ -1747,7 +1788,7 @@
|
|
|
1747
1788
|
<h2>v0.9.93</h2>
|
|
1748
1789
|
</a>
|
|
1749
1790
|
|
|
1750
|
-
<a href="#优化-
|
|
1791
|
+
<a href="#优化-54" id="优化-54" style="color: inherit; text-decoration: none;">
|
|
1751
1792
|
<h2>优化</h2>
|
|
1752
1793
|
</a>
|
|
1753
1794
|
<ul>
|
|
@@ -1758,20 +1799,20 @@
|
|
|
1758
1799
|
<h2>v0.9.92</h2>
|
|
1759
1800
|
</a>
|
|
1760
1801
|
|
|
1761
|
-
<a href="#新增-
|
|
1802
|
+
<a href="#新增-48" id="新增-48" style="color: inherit; text-decoration: none;">
|
|
1762
1803
|
<h2>新增</h2>
|
|
1763
1804
|
</a>
|
|
1764
1805
|
<ul>
|
|
1765
1806
|
<li>新增paas平台接入sentry监控 (需要接入方再打包自己项目时,自定义命名打包后的@dao42/d42paas-front文件,名称需要包含daopaas字符)</li>
|
|
1766
1807
|
</ul>
|
|
1767
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1808
|
+
<pre><code class="language-ts"><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-5">enableSentry</span><span class="hl-1"> </span><span class="hl-4">// 是否开启sentry监控</span><br/><span class="hl-1">})</span>
|
|
1768
1809
|
</code></pre>
|
|
1769
1810
|
<ul>
|
|
1770
1811
|
<li>新增测试用例展示demo</li>
|
|
1771
1812
|
<li>新增支持Debug功能回放</li>
|
|
1772
1813
|
<li>新增支持新题型多文件</li>
|
|
1773
1814
|
</ul>
|
|
1774
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1815
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">switchLanguage</span><span class="hl-1">(</span><br/><span class="hl-1"> </span><span class="hl-5">languageType</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">languageValue</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">languageFileName</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">createNewFile</span><span class="hl-1"> === </span><span class="hl-8">'1'</span><span class="hl-1">, </span><span class="hl-4">// 添加第四个参数,默认为false, 如果传递为true,则会创建新的文件</span><br/><span class="hl-1"> );</span>
|
|
1775
1816
|
</code></pre>
|
|
1776
1817
|
|
|
1777
1818
|
<a href="#修复-42" id="修复-42" style="color: inherit; text-decoration: none;">
|
|
@@ -1781,7 +1822,7 @@
|
|
|
1781
1822
|
<li>修复浏览器输入框无效</li>
|
|
1782
1823
|
</ul>
|
|
1783
1824
|
|
|
1784
|
-
<a href="#优化-
|
|
1825
|
+
<a href="#优化-55" id="优化-55" style="color: inherit; text-decoration: none;">
|
|
1785
1826
|
<h2>优化</h2>
|
|
1786
1827
|
</a>
|
|
1787
1828
|
<ul>
|
|
@@ -1842,7 +1883,7 @@
|
|
|
1842
1883
|
<h2>v0.9.85</h2>
|
|
1843
1884
|
</a>
|
|
1844
1885
|
|
|
1845
|
-
<a href="#新增-
|
|
1886
|
+
<a href="#新增-49" id="新增-49" style="color: inherit; text-decoration: none;">
|
|
1846
1887
|
<h2>新增</h2>
|
|
1847
1888
|
</a>
|
|
1848
1889
|
<ul>
|
|
@@ -1850,19 +1891,19 @@
|
|
|
1850
1891
|
<li>新增<code>Shift+Mod+z``redo</code>快捷键</li>
|
|
1851
1892
|
</ul>
|
|
1852
1893
|
|
|
1853
|
-
<a href="#优化-
|
|
1894
|
+
<a href="#优化-56" id="优化-56" style="color: inherit; text-decoration: none;">
|
|
1854
1895
|
<h2>优化</h2>
|
|
1855
1896
|
</a>
|
|
1856
1897
|
<ul>
|
|
1857
1898
|
<li>控制答题区域范围内不能新增新的答题区</li>
|
|
1858
1899
|
<li>优化在未打开指定文件的情况下,可以直接删除答题区域,并且同步打开文件(新增<code>filePath</code>参数)</li>
|
|
1859
1900
|
</ul>
|
|
1860
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1901
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">removeAreaTextById</span><span class="hl-1">(</span><span class="hl-5">id</span><span class="hl-1">, </span><span class="hl-5">text</span><span class="hl-1">, </span><span class="hl-5">filePath</span><span class="hl-1">);</span>
|
|
1861
1902
|
</code></pre>
|
|
1862
1903
|
<ul>
|
|
1863
1904
|
<li>优化在未打开指定文件的情况下,可以直接跳转到指定答题区域,并且同步打开文件(新增<code>filePath</code>参数)</li>
|
|
1864
1905
|
</ul>
|
|
1865
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1906
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">jumpToAreaById</span><span class="hl-1">(</span><span class="hl-5">id</span><span class="hl-1">, </span><span class="hl-5">path</span><span class="hl-1">);</span>
|
|
1866
1907
|
</code></pre>
|
|
1867
1908
|
|
|
1868
1909
|
<a href="#修复-47" id="修复-47" style="color: inherit; text-decoration: none;">
|
|
@@ -1877,36 +1918,36 @@
|
|
|
1877
1918
|
<h2>v0.9.84</h2>
|
|
1878
1919
|
</a>
|
|
1879
1920
|
|
|
1880
|
-
<a href="#新增-
|
|
1921
|
+
<a href="#新增-50" id="新增-50" style="color: inherit; text-decoration: none;">
|
|
1881
1922
|
<h3>新增</h3>
|
|
1882
1923
|
</a>
|
|
1883
1924
|
<ul>
|
|
1884
1925
|
<li>新增支持答题区域根据指定ID跳转到指定的答题区域接口</li>
|
|
1885
1926
|
</ul>
|
|
1886
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1927
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">jumpToAreaById</span><span class="hl-1">(</span><span class="hl-5">id</span><span class="hl-1">);</span>
|
|
1887
1928
|
</code></pre>
|
|
1888
1929
|
<ul>
|
|
1889
1930
|
<li>新增支持Editor进行<code>redo</code> ,<code>undo</code> 如有答题区域信息变更,通知业务方接口</li>
|
|
1890
1931
|
</ul>
|
|
1891
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1932
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Events</span><span class="hl-1">.</span><span class="hl-5">UpdateArea</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">info</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> });</span>
|
|
1892
1933
|
</code></pre>
|
|
1893
1934
|
<ul>
|
|
1894
1935
|
<li>新增回放模式,派发 Editor 人为滚动事件</li>
|
|
1895
1936
|
</ul>
|
|
1896
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1937
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">EditorScroll</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">playing</span><span class="hl-1"> === </span><span class="hl-2">PLAY_STATUS</span><span class="hl-1">.</span><span class="hl-2">INITIAL</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">pausePlayback</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-3">setPlaying</span><span class="hl-1">(</span><span class="hl-2">PLAY_STATUS</span><span class="hl-1">.</span><span class="hl-2">PAUSE</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> });</span>
|
|
1897
1938
|
</code></pre>
|
|
1898
1939
|
<ul>
|
|
1899
1940
|
<li>新增提供禁止编辑<code>fileTree</code> 和 <code>editor</code> 配置属性</li>
|
|
1900
1941
|
</ul>
|
|
1901
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1942
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">updateConfig</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">disableEditable:</span><span class="hl-1"> </span><span class="hl-0">true</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">disableFileTreeAction:</span><span class="hl-1"> </span><span class="hl-0">true</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span>
|
|
1902
1943
|
</code></pre>
|
|
1903
1944
|
<ul>
|
|
1904
1945
|
<li>新增<code>console</code> 数据清除同步,并提供在跟随模式下 <code>console</code>, <code>shell</code> 切换事件派发进行跟随同步</li>
|
|
1905
1946
|
</ul>
|
|
1906
|
-
<pre><code class="language-ts"><span class="hl-
|
|
1947
|
+
<pre><code class="language-ts"><span class="hl-4">// 上报当前terminal聚焦点,console | shell.(跟随模式)</span><br/><span class="hl-3">syncXtermKey</span><span class="hl-1">(</span><span class="hl-5">xtermKey</span><span class="hl-1">: </span><span class="hl-5">IXtermKey</span><span class="hl-1">)</span><br/><span class="hl-4">// 接受其他人切换控制台tab栏(跟随模式)</span><br/><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">UsersUpdated</span><span class="hl-1">:</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">xtermKey</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-3">setActiveKey</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">xtermKey</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1">}</span>
|
|
1907
1948
|
</code></pre>
|
|
1908
1949
|
|
|
1909
|
-
<a href="#优化-
|
|
1950
|
+
<a href="#优化-57" id="优化-57" style="color: inherit; text-decoration: none;">
|
|
1910
1951
|
<h3>优化</h3>
|
|
1911
1952
|
</a>
|
|
1912
1953
|
<ul>
|
|
@@ -1932,7 +1973,7 @@
|
|
|
1932
1973
|
<h2>v0.9.83</h2>
|
|
1933
1974
|
</a>
|
|
1934
1975
|
|
|
1935
|
-
<a href="#新增-
|
|
1976
|
+
<a href="#新增-51" id="新增-51" style="color: inherit; text-decoration: none;">
|
|
1936
1977
|
<h3>新增</h3>
|
|
1937
1978
|
</a>
|
|
1938
1979
|
<ul>
|
|
@@ -1952,13 +1993,13 @@
|
|
|
1952
1993
|
<h2>v0.9.82</h2>
|
|
1953
1994
|
</a>
|
|
1954
1995
|
|
|
1955
|
-
<a href="#新增-
|
|
1996
|
+
<a href="#新增-52" id="新增-52" style="color: inherit; text-decoration: none;">
|
|
1956
1997
|
<h3>新增</h3>
|
|
1957
1998
|
</a>
|
|
1958
1999
|
<ul>
|
|
1959
2000
|
<li>新增删除指定答题区域接口</li>
|
|
1960
2001
|
</ul>
|
|
1961
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2002
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">removeAreaTextById</span><span class="hl-1">(</span><span class="hl-5">areaId</span><span class="hl-1">, </span><span class="hl-5">areaText</span><span class="hl-1">);</span>
|
|
1962
2003
|
</code></pre>
|
|
1963
2004
|
<ul>
|
|
1964
2005
|
<li>新增只读、隐藏文件不能设置答题区限制</li>
|
|
@@ -1979,7 +2020,7 @@
|
|
|
1979
2020
|
<h2>v0.9.81</h2>
|
|
1980
2021
|
</a>
|
|
1981
2022
|
|
|
1982
|
-
<a href="#新增-
|
|
2023
|
+
<a href="#新增-53" id="新增-53" style="color: inherit; text-decoration: none;">
|
|
1983
2024
|
<h3>新增</h3>
|
|
1984
2025
|
</a>
|
|
1985
2026
|
<ul>
|
|
@@ -1995,7 +2036,7 @@
|
|
|
1995
2036
|
<li>修复答题区域样式和LSP样式冲突问题</li>
|
|
1996
2037
|
</ul>
|
|
1997
2038
|
|
|
1998
|
-
<a href="#优化-
|
|
2039
|
+
<a href="#优化-58" id="优化-58" style="color: inherit; text-decoration: none;">
|
|
1999
2040
|
<h3>优化</h3>
|
|
2000
2041
|
</a>
|
|
2001
2042
|
<ul>
|
|
@@ -2007,20 +2048,20 @@
|
|
|
2007
2048
|
<h2>v0.9.80</h2>
|
|
2008
2049
|
</a>
|
|
2009
2050
|
|
|
2010
|
-
<a href="#新增-
|
|
2051
|
+
<a href="#新增-54" id="新增-54" style="color: inherit; text-decoration: none;">
|
|
2011
2052
|
<h3>新增</h3>
|
|
2012
2053
|
</a>
|
|
2013
2054
|
<ul>
|
|
2014
2055
|
<li>支持less、scss、sass 语法高亮</li>
|
|
2015
2056
|
<li>新增重启LSP服务接口</li>
|
|
2016
2057
|
</ul>
|
|
2017
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2058
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">restartLSPServer</span><span class="hl-1">();</span>
|
|
2018
2059
|
</code></pre>
|
|
2019
2060
|
<ul>
|
|
2020
2061
|
<li>新增1024code官网底部添加<code>copyright</code>信息</li>
|
|
2021
2062
|
<li>新增Editor 内置文案多语言配置</li>
|
|
2022
2063
|
</ul>
|
|
2023
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2064
|
+
<pre><code class="language-ts"><span class="hl-1">{</span><br/><span class="hl-1"> </span><span class="hl-9">container</span><span class="hl-1">: </span><span class="hl-8">'.editor-section'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">item</span><span class="hl-1">: </span><span class="hl-8">'Editor'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">props</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-9">translate</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-9">next</span><span class="hl-1">: { </span><span class="hl-4">// next 为Editor显示的文案, 如果没有配置对应的语言, 就用对应的Key作为文案</span><br/><span class="hl-1"> [</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">ZH</span><span class="hl-1">]: </span><span class="hl-8">'下一个'</span><span class="hl-1">,</span><br/><span class="hl-1"> [</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">EN</span><span class="hl-1">]: </span><span class="hl-8">'next'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-9">previous</span><span class="hl-1">: {</span><br/><span class="hl-1"> [</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">ZH</span><span class="hl-1">]: </span><span class="hl-8">'上一个'</span><span class="hl-1">,</span><br/><span class="hl-1"> [</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">EN</span><span class="hl-1">]: </span><span class="hl-8">'previous'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-9">all</span><span class="hl-1">: {</span><br/><span class="hl-1"> [</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">ZH</span><span class="hl-1">]: </span><span class="hl-8">'全部'</span><span class="hl-1">,</span><br/><span class="hl-1"> [</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">EN</span><span class="hl-1">]: </span><span class="hl-8">'all'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span>
|
|
2024
2065
|
</code></pre>
|
|
2025
2066
|
<ul>
|
|
2026
2067
|
<li>新增Focus文件树,回车键触发重命名功能</li>
|
|
@@ -2036,7 +2077,7 @@
|
|
|
2036
2077
|
<li>修复<code>replaceAll</code>语法兼容问题</li>
|
|
2037
2078
|
</ul>
|
|
2038
2079
|
|
|
2039
|
-
<a href="#优化-
|
|
2080
|
+
<a href="#优化-59" id="优化-59" style="color: inherit; text-decoration: none;">
|
|
2040
2081
|
<h3>优化</h3>
|
|
2041
2082
|
</a>
|
|
2042
2083
|
<ul>
|
|
@@ -2068,28 +2109,28 @@
|
|
|
2068
2109
|
<h2>v0.9.78</h2>
|
|
2069
2110
|
</a>
|
|
2070
2111
|
|
|
2071
|
-
<a href="#新增-
|
|
2112
|
+
<a href="#新增-55" id="新增-55" style="color: inherit; text-decoration: none;">
|
|
2072
2113
|
<h3>新增</h3>
|
|
2073
2114
|
</a>
|
|
2074
2115
|
<ul>
|
|
2075
2116
|
<li>新增Debug组件</li>
|
|
2076
2117
|
</ul>
|
|
2077
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2118
|
+
<pre><code class="language-ts"><span class="hl-5">components</span><span class="hl-1">.</span><span class="hl-3">push</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.browser-section'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Debug'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">props:</span><span class="hl-1"> {},</span><br/><span class="hl-1">});</span>
|
|
2078
2119
|
</code></pre>
|
|
2079
2120
|
<ul>
|
|
2080
2121
|
<li>新增初始化参数,是否开启debug模式isOpenDebugMode</li>
|
|
2081
2122
|
</ul>
|
|
2082
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2123
|
+
<pre><code class="language-ts"><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({ </span><span class="hl-5">isOpenDebugMode:</span><span class="hl-0">true</span><span class="hl-1"> })</span>
|
|
2083
2124
|
</code></pre>
|
|
2084
2125
|
<ul>
|
|
2085
2126
|
<li>新增debug启动事件</li>
|
|
2086
2127
|
</ul>
|
|
2087
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2128
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">debugRun</span><span class="hl-1">() </span><span class="hl-4">// 启动事件</span><br/><span class="hl-4">// debug结束事件与之前的结束事件相同</span><br/><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">stopPlayground</span><span class="hl-1">()</span>
|
|
2088
2129
|
</code></pre>
|
|
2089
2130
|
<ul>
|
|
2090
2131
|
<li>暴露<code>Debug</code>信息(目前只支持是否支持debug模式)</li>
|
|
2091
2132
|
</ul>
|
|
2092
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2133
|
+
<pre><code class="language-ts"><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">Debug</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">debugSupport</span><span class="hl-1"> </span><span class="hl-4">// 是否支持debug模式</span><br/><span class="hl-1">})</span>
|
|
2093
2134
|
</code></pre>
|
|
2094
2135
|
|
|
2095
2136
|
<a href="#修复-54" id="修复-54" style="color: inherit; text-decoration: none;">
|
|
@@ -2149,7 +2190,7 @@
|
|
|
2149
2190
|
<h2>v0.9.73</h2>
|
|
2150
2191
|
</a>
|
|
2151
2192
|
|
|
2152
|
-
<a href="#优化-
|
|
2193
|
+
<a href="#优化-60" id="优化-60" style="color: inherit; text-decoration: none;">
|
|
2153
2194
|
<h3>优化</h3>
|
|
2154
2195
|
</a>
|
|
2155
2196
|
<ul>
|
|
@@ -2170,13 +2211,13 @@
|
|
|
2170
2211
|
<h2>v0.9.72</h2>
|
|
2171
2212
|
</a>
|
|
2172
2213
|
|
|
2173
|
-
<a href="#新增-
|
|
2214
|
+
<a href="#新增-56" id="新增-56" style="color: inherit; text-decoration: none;">
|
|
2174
2215
|
<h3>新增</h3>
|
|
2175
2216
|
</a>
|
|
2176
2217
|
<ul>
|
|
2177
2218
|
<li>新增插入指定代码块到指定区域功能</li>
|
|
2178
2219
|
</ul>
|
|
2179
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2220
|
+
<pre><code class="language-ts"><span class="hl-4">// 如果给指定问题区域插入代码:id则是指定问题ID,如果给指定区域插入代码, 则ID传入‘’空字符串, lineNum 支持:TOP,BOTTOM,和数字(数字为指定的行号)</span><br/><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">insertTextById</span><span class="hl-1">(</span><span class="hl-5">id</span><span class="hl-1">, </span><span class="hl-5">lineText</span><span class="hl-1">, </span><span class="hl-5">lineNum</span><span class="hl-1">);</span>
|
|
2180
2221
|
</code></pre>
|
|
2181
2222
|
<ul>
|
|
2182
2223
|
<li>新增针对跟随模式对文件夹展开和关闭功能</li>
|
|
@@ -2194,13 +2235,13 @@
|
|
|
2194
2235
|
<h2>v0.9.71</h2>
|
|
2195
2236
|
</a>
|
|
2196
2237
|
|
|
2197
|
-
<a href="#新增-
|
|
2238
|
+
<a href="#新增-57" id="新增-57" style="color: inherit; text-decoration: none;">
|
|
2198
2239
|
<h3>新增</h3>
|
|
2199
2240
|
</a>
|
|
2200
2241
|
<ul>
|
|
2201
2242
|
<li>新增重启服务接口</li>
|
|
2202
2243
|
</ul>
|
|
2203
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2244
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-3">restartServer</span><span class="hl-1"> = </span><span class="hl-0">async</span><span class="hl-1"> () </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">restartServer</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">res</span><span class="hl-1">?.</span><span class="hl-5">status</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">.</span><span class="hl-5">message</span><span class="hl-1">);</span><br/><span class="hl-1"> } </span><span class="hl-7">else</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">?.</span><span class="hl-5">message</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> };</span>
|
|
2204
2245
|
</code></pre>
|
|
2205
2246
|
<ul>
|
|
2206
2247
|
<li>新增文档上下文单词智能提示(解决LSP服务启动慢,智能提示问题)</li>
|
|
@@ -2218,13 +2259,13 @@
|
|
|
2218
2259
|
<h2>v0.9.70</h2>
|
|
2219
2260
|
</a>
|
|
2220
2261
|
|
|
2221
|
-
<a href="#新增-
|
|
2262
|
+
<a href="#新增-58" id="新增-58" style="color: inherit; text-decoration: none;">
|
|
2222
2263
|
<h3>新增</h3>
|
|
2223
2264
|
</a>
|
|
2224
2265
|
<ul>
|
|
2225
2266
|
<li>支持对文件树指定文件调整文字颜色的功能。(文件路径支持模糊匹配)</li>
|
|
2226
2267
|
</ul>
|
|
2227
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2268
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">setFileStyle</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">paths:</span><span class="hl-1"> [</span><span class="hl-8">'a'</span><span class="hl-1">, </span><span class="hl-8">'*.md'</span><span class="hl-1">, </span><span class="hl-8">'**/index.css'</span><span class="hl-1">, </span><span class="hl-8">'a/b/c.js'</span><span class="hl-1">, </span><span class="hl-8">'*/c'</span><span class="hl-1">],</span><br/><span class="hl-1"> </span><span class="hl-5">styles:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">title:</span><span class="hl-1"> </span><span class="hl-8">'customizeTitle'</span><span class="hl-1">, </span><span class="hl-4">// 对应文案的样式名称(业务方可以自定义名称)</span><br/><span class="hl-1"> </span><span class="hl-5">icon:</span><span class="hl-1"> </span><span class="hl-8">'customizeIcon'</span><span class="hl-1">, </span><span class="hl-4">// 对应ICON的样式名称(业务方可以自定义名称)</span><br/><span class="hl-1"> </span><span class="hl-5">arrowIcon:</span><span class="hl-1"> </span><span class="hl-8">'customizeArrowIcon'</span><span class="hl-1">, </span><span class="hl-4">// 对应Arrow ICON的样式名称(业务方可以自定义名称)</span><br/><span class="hl-1"> },</span><br/><span class="hl-1">});</span>
|
|
2228
2269
|
</code></pre>
|
|
2229
2270
|
|
|
2230
2271
|
<a href="#修复-62" id="修复-62" style="color: inherit; text-decoration: none;">
|
|
@@ -2237,13 +2278,13 @@
|
|
|
2237
2278
|
<li>修复回放功能相关问题(系列新功能影响到回放)</li>
|
|
2238
2279
|
</ul>
|
|
2239
2280
|
|
|
2240
|
-
<a href="#优化-
|
|
2281
|
+
<a href="#优化-61" id="优化-61" style="color: inherit; text-decoration: none;">
|
|
2241
2282
|
<h3>优化</h3>
|
|
2242
2283
|
</a>
|
|
2243
2284
|
<ul>
|
|
2244
2285
|
<li>优化<code>reloadI18nResources</code>方法,支持一次性设置多个语言内容</li>
|
|
2245
2286
|
</ul>
|
|
2246
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2287
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-4">// https://snyk.io/advisor/npm-package/i18next/functions/i18next.addResources 用法</span><br/><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">reloadI18nResources</span><span class="hl-1">(</span><span class="hl-5">lngOrSource</span><span class="hl-1">: </span><span class="hl-6">Array</span><span class="hl-1"><</span><span class="hl-5">I18nResourcesType</span><span class="hl-1">> | </span><span class="hl-5">I18nLanguageType</span><span class="hl-1">,</span><span class="hl-5">resource</span><span class="hl-1">?: </span><span class="hl-5">any</span><span class="hl-1">)</span>
|
|
2247
2288
|
</code></pre>
|
|
2248
2289
|
<ul>
|
|
2249
2290
|
<li>优化高亮主题样式</li>
|
|
@@ -2253,14 +2294,14 @@
|
|
|
2253
2294
|
<h2>v0.9.69</h2>
|
|
2254
2295
|
</a>
|
|
2255
2296
|
|
|
2256
|
-
<a href="#新增-
|
|
2297
|
+
<a href="#新增-59" id="新增-59" style="color: inherit; text-decoration: none;">
|
|
2257
2298
|
<h3>新增</h3>
|
|
2258
2299
|
</a>
|
|
2259
2300
|
<ul>
|
|
2260
2301
|
<li>答题区支持“修改代码”模式</li>
|
|
2261
2302
|
<li>新增<code>PaaS</code>平台,文案可以自定义功能接口,接口使用如下:</li>
|
|
2262
2303
|
</ul>
|
|
2263
|
-
<pre><code class="language-js"><span class="hl-
|
|
2304
|
+
<pre><code class="language-js"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">reloadI18nResources</span><span class="hl-1">(</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">ZH</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-5">file_tree_create_new_file:</span><span class="hl-1"> </span><span class="hl-8">'哈哈哈'</span><span class="hl-1">, </span><span class="hl-4">// file_tree_create_new_file:要重命名的Key</span><br/><span class="hl-1">});</span>
|
|
2264
2305
|
</code></pre>
|
|
2265
2306
|
|
|
2266
2307
|
<a href="#修复-63" id="修复-63" style="color: inherit; text-decoration: none;">
|
|
@@ -2277,7 +2318,7 @@
|
|
|
2277
2318
|
<h2>v0.9.68</h2>
|
|
2278
2319
|
</a>
|
|
2279
2320
|
|
|
2280
|
-
<a href="#新增-
|
|
2321
|
+
<a href="#新增-60" id="新增-60" style="color: inherit; text-decoration: none;">
|
|
2281
2322
|
<h3>新增</h3>
|
|
2282
2323
|
</a>
|
|
2283
2324
|
<ul>
|
|
@@ -2286,7 +2327,7 @@
|
|
|
2286
2327
|
<li>文件树头像位置优化</li>
|
|
2287
2328
|
<li>新增修改xterm样式方式配置</li>
|
|
2288
2329
|
</ul>
|
|
2289
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2330
|
+
<pre><code class="language-ts"><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">xtermStyle:</span><span class="hl-1"> </span><span class="hl-5">XtermStyleType</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1">})</span>
|
|
2290
2331
|
</code></pre>
|
|
2291
2332
|
<ul>
|
|
2292
2333
|
<li>新增编辑器快捷键操作</li>
|
|
@@ -2300,7 +2341,7 @@
|
|
|
2300
2341
|
<li>优化支持markdown表格解析以及图片不换行</li>
|
|
2301
2342
|
<li>兼容smb旧版本的markdown数学公式语法解析</li>
|
|
2302
2343
|
</ul>
|
|
2303
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2344
|
+
<pre><code class="language-ts"><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-4">// true表示支持旧的`$ $`语法,默认false</span><br/><span class="hl-1"> </span><span class="hl-5">isLegacyMarkdownMath:</span><span class="hl-0">true</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1">})</span>
|
|
2304
2345
|
</code></pre>
|
|
2305
2346
|
<ul>
|
|
2306
2347
|
<li>优化LSP服务在离开IDE Page 还在尝试重连问题</li>
|
|
@@ -2323,7 +2364,7 @@
|
|
|
2323
2364
|
<h2>v0.9.65</h2>
|
|
2324
2365
|
</a>
|
|
2325
2366
|
|
|
2326
|
-
<a href="#优化-
|
|
2367
|
+
<a href="#优化-62" id="优化-62" style="color: inherit; text-decoration: none;">
|
|
2327
2368
|
<h3>优化</h3>
|
|
2328
2369
|
</a>
|
|
2329
2370
|
<ul>
|
|
@@ -2334,7 +2375,7 @@
|
|
|
2334
2375
|
<h2>v0.9.64</h2>
|
|
2335
2376
|
</a>
|
|
2336
2377
|
|
|
2337
|
-
<a href="#优化-
|
|
2378
|
+
<a href="#优化-63" id="优化-63" style="color: inherit; text-decoration: none;">
|
|
2338
2379
|
<h3>优化</h3>
|
|
2339
2380
|
</a>
|
|
2340
2381
|
<ul>
|
|
@@ -2368,7 +2409,7 @@
|
|
|
2368
2409
|
<h2>v0.9.60</h2>
|
|
2369
2410
|
</a>
|
|
2370
2411
|
|
|
2371
|
-
<a href="#优化-
|
|
2412
|
+
<a href="#优化-64" id="优化-64" style="color: inherit; text-decoration: none;">
|
|
2372
2413
|
<h3>优化</h3>
|
|
2373
2414
|
</a>
|
|
2374
2415
|
<ul>
|
|
@@ -2379,7 +2420,7 @@
|
|
|
2379
2420
|
<h2>v0.9.59</h2>
|
|
2380
2421
|
</a>
|
|
2381
2422
|
|
|
2382
|
-
<a href="#优化-
|
|
2423
|
+
<a href="#优化-65" id="优化-65" style="color: inherit; text-decoration: none;">
|
|
2383
2424
|
<h3>优化</h3>
|
|
2384
2425
|
</a>
|
|
2385
2426
|
<ul>
|
|
@@ -2391,39 +2432,39 @@
|
|
|
2391
2432
|
<h2>v0.9.58</h2>
|
|
2392
2433
|
</a>
|
|
2393
2434
|
|
|
2394
|
-
<a href="#新增-
|
|
2435
|
+
<a href="#新增-61" id="新增-61" style="color: inherit; text-decoration: none;">
|
|
2395
2436
|
<h3>新增</h3>
|
|
2396
2437
|
</a>
|
|
2397
2438
|
<ul>
|
|
2398
2439
|
<li>新增答题区域功能,右键菜单配置方式(目前只支持:【implement,update】两种菜单Action):</li>
|
|
2399
2440
|
</ul>
|
|
2400
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2441
|
+
<pre><code class="language-ts"><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-9">container</span><span class="hl-1">: </span><span class="hl-8">'.editor-section'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">item</span><span class="hl-1">: </span><span class="hl-8">'Editor'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">props</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-5">showHiddenCode</span><span class="hl-1">, </span><span class="hl-4">// 是否显示隐藏代码:面试官视角,应该是true, 候选人视角:false</span><br/><span class="hl-1"> </span><span class="hl-5">freezeCode</span><span class="hl-1">, </span><span class="hl-4">// 是否让设置的代码区域不能编辑, 面试官视角,应该是false,候选人视角:true</span><br/><span class="hl-1"> </span><span class="hl-9">contextMenu</span><span class="hl-1">: </span><span class="hl-5">contextMenu</span><br/><span class="hl-1"> ? {</span><br/><span class="hl-1"> </span><span class="hl-3">handleSelect</span><span class="hl-5">:</span><span class="hl-1"> (</span><span class="hl-5">e</span><span class="hl-1">, </span><span class="hl-5">callback</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">info</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">e</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">id</span><span class="hl-1"> = </span><span class="hl-6">Math</span><span class="hl-1">.</span><span class="hl-3">floor</span><span class="hl-1">(</span><span class="hl-6">Math</span><span class="hl-1">.</span><span class="hl-3">random</span><span class="hl-1">() * </span><span class="hl-10">1000</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">callback</span><span class="hl-1">?.({</span><br/><span class="hl-1"> </span><span class="hl-5">id</span><span class="hl-1">,</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-5">items:</span><span class="hl-1"> [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">action:</span><span class="hl-1"> </span><span class="hl-8">'implement'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> </span><span class="hl-8">'实现功能'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">icon:</span><span class="hl-1"> </span><span class="hl-8">'add-question'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">iconLabel:</span><span class="hl-1"> </span><span class="hl-8">'答题区'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">commentStartLabel:</span><span class="hl-1"> </span><span class="hl-8">'请在此实现代码功能'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">// commentTips: '请在此实现代码功能',</span><br/><span class="hl-1"> </span><span class="hl-5">hideCodeBlock:</span><span class="hl-1"> </span><span class="hl-0">true</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">action:</span><span class="hl-1"> </span><span class="hl-8">'update'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">text:</span><span class="hl-1"> </span><span class="hl-8">'修改代码'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">icon:</span><span class="hl-1"> </span><span class="hl-8">'list-mode'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">iconLabel:</span><span class="hl-1"> </span><span class="hl-8">'编辑区'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">commentStartLabel:</span><span class="hl-1"> </span><span class="hl-8">'请在此修复代码'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">// commentTips: '请在此修复代码',</span><br/><span class="hl-1"> </span><span class="hl-5">hideCodeBlock:</span><span class="hl-1"> </span><span class="hl-0">false</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> : </span><span class="hl-0">null</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span>
|
|
2401
2442
|
</code></pre>
|
|
2402
2443
|
<ul>
|
|
2403
2444
|
<li>新增代码块ICON点击事件:</li>
|
|
2404
2445
|
</ul>
|
|
2405
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2446
|
+
<pre><code class="language-ts"><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">status</span><span class="hl-1">: </span><span class="hl-6">PlaygroundStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">dockerStatus</span><span class="hl-1">: </span><span class="hl-6">DockerStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">lspStatus</span><span class="hl-1">: </span><span class="hl-6">LspStatusEnum</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">LineAction</span><span class="hl-1">: {</span><br/><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">info</span><span class="hl-1">(</span><span class="hl-6">JSON</span><span class="hl-1">.</span><span class="hl-3">stringify</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">));</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> }</span>
|
|
2406
2447
|
</code></pre>
|
|
2407
2448
|
<ul>
|
|
2408
2449
|
<li>新增插入代码块功能(根据业务ID插入)</li>
|
|
2409
2450
|
</ul>
|
|
2410
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2451
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-4">//lineId:业务ID,lineText:要插入的字符</span><br/><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">insertTextById</span><span class="hl-1">(</span><span class="hl-5">lineId</span><span class="hl-1">, </span><span class="hl-5">lineText</span><span class="hl-1">);</span>
|
|
2411
2452
|
</code></pre>
|
|
2412
2453
|
<ul>
|
|
2413
2454
|
<li>新增冻结非设置区域代码功能接口:</li>
|
|
2414
2455
|
</ul>
|
|
2415
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2456
|
+
<pre><code class="language-ts"><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">switchFreezeCode</span><span class="hl-1">();</span>
|
|
2416
2457
|
</code></pre>
|
|
2417
2458
|
<ul>
|
|
2418
2459
|
<li>新增由业务方控制是否将操作数据写入CRDT,配置参数如下:</li>
|
|
2419
2460
|
</ul>
|
|
2420
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2461
|
+
<pre><code class="language-ts"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-5">isInsertCrdt</span><span class="hl-1">: </span><span class="hl-0">false</span><span class="hl-1">, </span><span class="hl-4">//默认值为:true</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> });</span>
|
|
2421
2462
|
</code></pre>
|
|
2422
2463
|
<ul>
|
|
2423
2464
|
<li><code>onMessage</code>事件新增<code>ApplicationAvailable</code>事件类型,用于监听项目运行成功的事件</li>
|
|
2424
2465
|
</ul>
|
|
2425
2466
|
|
|
2426
|
-
<a href="#优化-
|
|
2467
|
+
<a href="#优化-66" id="优化-66" style="color: inherit; text-decoration: none;">
|
|
2427
2468
|
<h3>优化</h3>
|
|
2428
2469
|
</a>
|
|
2429
2470
|
<ul>
|
|
@@ -2452,13 +2493,13 @@
|
|
|
2452
2493
|
<h2>v0.9.56</h2>
|
|
2453
2494
|
</a>
|
|
2454
2495
|
|
|
2455
|
-
<a href="#新增-
|
|
2496
|
+
<a href="#新增-62" id="新增-62" style="color: inherit; text-decoration: none;">
|
|
2456
2497
|
<h3>新增</h3>
|
|
2457
2498
|
</a>
|
|
2458
2499
|
<ul>
|
|
2459
2500
|
<li>新增<code>markdown</code>预览模式功能,提供<code>MarkdownPreview</code>类型组件</li>
|
|
2460
2501
|
</ul>
|
|
2461
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2502
|
+
<pre><code class="language-ts"><span class="hl-4">// 组件schema配置</span><br/><span class="hl-1">{</span><br/><span class="hl-1"> </span><span class="hl-9">container</span><span class="hl-1">: </span><span class="hl-8">'.browser-section'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">item</span><span class="hl-1">: </span><span class="hl-8">'MarkdownPreview'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">props</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-9">isRender</span><span class="hl-1">: </span><span class="hl-0">true</span><span class="hl-1">, </span><span class="hl-4">// 初次是否挂载(true标识为初次挂载|false为不挂载)</span><br/><span class="hl-1"> },</span><br/><span class="hl-1">},</span><br/><br/><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1">{</span><br/><span class="hl-4">//获取到选中的文件路径</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">FileInfo</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-4">// payload.openedPath 文件路径(可用来获取文件后缀)</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">...</span><br/><span class="hl-1">})</span><br/><span class="hl-4">// 控制预览组件的 挂载|销毁 - flag为true表示挂载</span><br/><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">toggleMarkDownPreview</span><span class="hl-1">(</span><span class="hl-5">flag</span><span class="hl-1">);</span>
|
|
2462
2503
|
</code></pre>
|
|
2463
2504
|
<ul>
|
|
2464
2505
|
<li>新增是否显示隐藏文件的功能</li>
|
|
@@ -2480,7 +2521,7 @@
|
|
|
2480
2521
|
<h2>v0.9.55</h2>
|
|
2481
2522
|
</a>
|
|
2482
2523
|
|
|
2483
|
-
<a href="#优化-
|
|
2524
|
+
<a href="#优化-67" id="优化-67" style="color: inherit; text-decoration: none;">
|
|
2484
2525
|
<h2>优化</h2>
|
|
2485
2526
|
</a>
|
|
2486
2527
|
<ul>
|
|
@@ -2498,7 +2539,7 @@
|
|
|
2498
2539
|
<h2>v0.9.54</h2>
|
|
2499
2540
|
</a>
|
|
2500
2541
|
|
|
2501
|
-
<a href="#新增-
|
|
2542
|
+
<a href="#新增-63" id="新增-63" style="color: inherit; text-decoration: none;">
|
|
2502
2543
|
<h3>新增</h3>
|
|
2503
2544
|
</a>
|
|
2504
2545
|
<ul>
|
|
@@ -2508,7 +2549,7 @@
|
|
|
2508
2549
|
<li>lsp新增断线重连机制,断线后的状态会从运行中变为连接中</li>
|
|
2509
2550
|
<li>编辑器新增自动换行配置,默认会自动化换行,新增缩进方式的配置,默认以空格作为缩进,调用方式如下</li>
|
|
2510
2551
|
</ul>
|
|
2511
|
-
<pre><code class="language-js"><span class="hl-
|
|
2552
|
+
<pre><code class="language-js"><span class="hl-1"> </span><span class="hl-5">daoPaas</span><span class="hl-1">.</span><span class="hl-3">updateGlobalConfig</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-4">//...</span><br/><span class="hl-1"> </span><span class="hl-5">editorWordWrap:</span><span class="hl-1"> </span><span class="hl-0">true</span><span class="hl-1">, </span><span class="hl-4">// or false</span><br/><span class="hl-1"> </span><span class="hl-5">editorIndentMode:</span><span class="hl-1"> </span><span class="hl-8">'space'</span><span class="hl-1"> </span><span class="hl-4">// or tab</span><br/><span class="hl-1"> </span><span class="hl-4">//...</span><br/><span class="hl-1"> })</span>
|
|
2512
2553
|
</code></pre>
|
|
2513
2554
|
<ul>
|
|
2514
2555
|
<li>新增<code>terminal</code>加载进度条UI效果</li>
|
|
@@ -2517,7 +2558,7 @@
|
|
|
2517
2558
|
<li>支持<code>Elixir</code> 代码高亮</li>
|
|
2518
2559
|
<li>语言国际化功能,目前仅支持<code>ZH(中文)|EN(英文)</code>(默认中文)</li>
|
|
2519
2560
|
</ul>
|
|
2520
|
-
<pre><code class="language-ts"><span class="hl-
|
|
2561
|
+
<pre><code class="language-ts"><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1"> ({</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-5">i18nLanguage</span><span class="hl-1">:</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">.</span><span class="hl-2">ZH</span><span class="hl-1"> </span><span class="hl-4">// i18nLanguage 如果不传递,则默认为: ZH</span><br/><span class="hl-1"> })</span><br/><span class="hl-4">// 手动调用接口进行语言切换</span><br/><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">switchI18nLanguage</span><span class="hl-1">(</span><span class="hl-5">lang</span><span class="hl-1">:</span><span class="hl-5">I18nLanguageType</span><span class="hl-1">);</span><br/><span class="hl-4">// 国际化支持语言类型</span><br/><span class="hl-7">export</span><span class="hl-1"> </span><span class="hl-0">enum</span><span class="hl-1"> </span><span class="hl-6">I18nLanguageType</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">/** 中文 */</span><br/><span class="hl-1"> </span><span class="hl-2">ZH</span><span class="hl-1"> = </span><span class="hl-8">'ZH'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">/** 英文 */</span><br/><span class="hl-1"> </span><span class="hl-2">EN</span><span class="hl-1"> = </span><span class="hl-8">'EN'</span><span class="hl-1">,</span><br/><span class="hl-1">}</span>
|
|
2521
2562
|
</code></pre>
|
|
2522
2563
|
|
|
2523
2564
|
<a href="#修复-72" id="修复-72" style="color: inherit; text-decoration: none;">
|
|
@@ -2545,13 +2586,13 @@
|
|
|
2545
2586
|
<h2>v0.9.51</h2>
|
|
2546
2587
|
</a>
|
|
2547
2588
|
|
|
2548
|
-
<a href="#新增-
|
|
2589
|
+
<a href="#新增-64" id="新增-64" style="color: inherit; text-decoration: none;">
|
|
2549
2590
|
<h3>新增</h3>
|
|
2550
2591
|
</a>
|
|
2551
2592
|
<ul>
|
|
2552
2593
|
<li>新增统计数据获取接口<code>statisticsPlaybackData</code>,使用方式如下:</li>
|
|
2553
2594
|
</ul>
|
|
2554
|
-
<pre><code class="language-js"><span class="hl-
|
|
2595
|
+
<pre><code class="language-js"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">statisticsPlaybackData</span><span class="hl-1">(</span><br/><span class="hl-1"> </span><span class="hl-5">eventName</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">questionIds</span><span class="hl-1">.</span><span class="hl-3">split</span><span class="hl-1">(</span><span class="hl-8">','</span><span class="hl-1">).</span><span class="hl-3">map</span><span class="hl-1">((</span><span class="hl-5">item</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> +</span><span class="hl-5">item</span><span class="hl-1">),</span><br/><span class="hl-1"> );</span>
|
|
2555
2596
|
</code></pre>
|
|
2556
2597
|
<blockquote>
|
|
2557
2598
|
<ol>
|
|
@@ -2560,7 +2601,7 @@
|
|
|
2560
2601
|
<li>返回的数据<code>data</code>是一个问题和统计结果的对象,问题ID作为对象ID,如:</li>
|
|
2561
2602
|
</ol>
|
|
2562
2603
|
</blockquote>
|
|
2563
|
-
<pre><code class="language-js"><span class="hl-
|
|
2604
|
+
<pre><code class="language-js"><span class="hl-5">res</span><span class="hl-1"> = {</span><br/><span class="hl-1"> </span><span class="hl-5">status:</span><span class="hl-1"> </span><span class="hl-8">'success'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">data:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-8">'1'</span><span class="hl-5">:</span><span class="hl-1"> </span><span class="hl-10">120</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-8">'2'</span><span class="hl-5">:</span><span class="hl-1"> </span><span class="hl-10">211</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-8">'3'</span><span class="hl-5">:</span><span class="hl-1"> </span><span class="hl-10">999</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">}</span>
|
|
2564
2605
|
</code></pre>
|
|
2565
2606
|
|
|
2566
2607
|
<a href="#修复-74" id="修复-74" style="color: inherit; text-decoration: none;">
|
|
@@ -2574,13 +2615,13 @@
|
|
|
2574
2615
|
<h2>v0.9.50</h2>
|
|
2575
2616
|
</a>
|
|
2576
2617
|
|
|
2577
|
-
<a href="#新增-
|
|
2618
|
+
<a href="#新增-65" id="新增-65" style="color: inherit; text-decoration: none;">
|
|
2578
2619
|
<h3>新增</h3>
|
|
2579
2620
|
</a>
|
|
2580
2621
|
<ul>
|
|
2581
2622
|
<li>新增切换编程语言接口<code>daoPaasObj?.switchLanguage</code>,返回<code>Promise</code>,ß使用方式如下:</li>
|
|
2582
2623
|
</ul>
|
|
2583
|
-
<pre><code class="language-js"><span class="hl-
|
|
2624
|
+
<pre><code class="language-js"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">switchLanguage</span><span class="hl-1">(</span><br/><span class="hl-1"> </span><span class="hl-5">languageType</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">languageValue</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">languageFileName</span><span class="hl-1">,</span><br/><span class="hl-1"> );</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">[</span><span class="hl-5">res</span><span class="hl-1">?.</span><span class="hl-5">status</span><span class="hl-1"> ? </span><span class="hl-8">'info'</span><span class="hl-1"> : </span><span class="hl-8">'error'</span><span class="hl-1">](</span><span class="hl-5">res</span><span class="hl-1">?.</span><span class="hl-5">message</span><span class="hl-1">);</span>
|
|
2584
2625
|
</code></pre>
|
|
2585
2626
|
<blockquote>
|
|
2586
2627
|
<ol>
|
|
@@ -2588,7 +2629,7 @@
|
|
|
2588
2629
|
<li>languageValue: 要切换的目标语言,每种文件类型支持的目标语言映射表:</li>
|
|
2589
2630
|
</ol>
|
|
2590
2631
|
</blockquote>
|
|
2591
|
-
<pre><code class="language-js"><span class="hl-
|
|
2632
|
+
<pre><code class="language-js"><span class="hl-1">{</span><br/><span class="hl-1"> </span><span class="hl-9">HTML</span><span class="hl-1">: [</span><span class="hl-8">'html'</span><span class="hl-1">, </span><span class="hl-8">'pug'</span><span class="hl-1">, </span><span class="hl-8">'hbs'</span><span class="hl-1">, </span><span class="hl-8">'md'</span><span class="hl-1">],</span><br/><span class="hl-1"> </span><span class="hl-9">CSS</span><span class="hl-1">: [</span><span class="hl-8">'css'</span><span class="hl-1">, </span><span class="hl-8">'less'</span><span class="hl-1">, </span><span class="hl-8">'scss'</span><span class="hl-1">, </span><span class="hl-8">'sass'</span><span class="hl-1">, </span><span class="hl-8">'styl'</span><span class="hl-1">],</span><br/><span class="hl-1"> </span><span class="hl-9">JS</span><span class="hl-1">: [</span><span class="hl-8">'js'</span><span class="hl-1">, </span><span class="hl-8">'ts'</span><span class="hl-1">, </span><span class="hl-8">'coffee'</span><span class="hl-1">],</span><br/><span class="hl-1">}</span>
|
|
2592
2633
|
</code></pre>
|
|
2593
2634
|
<blockquote>
|
|
2594
2635
|
<ol start="3">
|
|
@@ -2598,7 +2639,7 @@
|
|
|
2598
2639
|
<ul>
|
|
2599
2640
|
<li>新增向<code>index.html</code>文件中注入CDN资源,返回<code>Promsie</code>,使用方式如下:</li>
|
|
2600
2641
|
</ul>
|
|
2601
|
-
<pre><code class="language-js"><span class="hl-
|
|
2642
|
+
<pre><code class="language-js"><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">addCDNSource</span><span class="hl-1">(</span><br/><span class="hl-1"> </span><span class="hl-5">cdnUrlType</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">cdnUrlPath</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">cdnUrlFileName</span><span class="hl-1">,</span><br/><span class="hl-1"> );</span><br/><span class="hl-5">messageBox</span><span class="hl-1">[</span><span class="hl-5">res</span><span class="hl-1">?.</span><span class="hl-5">status</span><span class="hl-1"> ? </span><span class="hl-8">'info'</span><span class="hl-1"> : </span><span class="hl-8">'error'</span><span class="hl-1">](</span><span class="hl-5">res</span><span class="hl-1">?.</span><span class="hl-5">message</span><span class="hl-1">);</span>
|
|
2602
2643
|
</code></pre>
|
|
2603
2644
|
<blockquote>
|
|
2604
2645
|
<ol>
|
|
@@ -2610,13 +2651,13 @@
|
|
|
2610
2651
|
<ul>
|
|
2611
2652
|
<li>支持全局配置,目前可设置默认缩进的大小和编辑器的模式,调用方式如下</li>
|
|
2612
2653
|
</ul>
|
|
2613
|
-
<pre><code class="language-javascript"><span class="hl-
|
|
2654
|
+
<pre><code class="language-javascript"><span class="hl-4">// ...</span><br/><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">updateGlobalConfig</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">editorMode:</span><span class="hl-1"> </span><span class="hl-8">'default'</span><span class="hl-1">, </span><span class="hl-4">// 支持的参数为 default | vim | emacs</span><br/><span class="hl-1"> </span><span class="hl-5">editorTabSize:</span><span class="hl-1"> </span><span class="hl-10">2</span><span class="hl-1">,</span><br/><span class="hl-1">})</span><br/><span class="hl-4">// ...</span>
|
|
2614
2655
|
</code></pre>
|
|
2615
2656
|
<p><strong>注意</strong>: 以上配置的属性都是可选项,若不设置会采用默认的设置,默认编辑模式就是文本编辑模式,缩进默认是2,若之前设置过,则会使用之前的设置</p>
|
|
2616
2657
|
<ul>
|
|
2617
2658
|
<li>优化提示交互体验,在切题时,需要调用<code>reload</code>方法,该方法可以重置一些loading状态和初始数据,方法接收一个数组为参数,不传默认为<code>['Editor', 'Tree']</code>, 该方法一经调用,便会清空当前的文件树和编辑器,进入组件的loading状态,避免出现已经切题,上层已经loading,SDK依然显示旧数据的情况</li>
|
|
2618
2659
|
</ul>
|
|
2619
|
-
<pre><code class="language-javascript"><span class="hl-
|
|
2660
|
+
<pre><code class="language-javascript"><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">reload</span><span class="hl-1">()</span>
|
|
2620
2661
|
</code></pre>
|
|
2621
2662
|
<ul>
|
|
2622
2663
|
<li>优化IDE server新增fileRootId,编辑器的OT相关操作和文件树操作的相关操作,会携带fileRootId参数到IDE Server,IDE Server会判断传进来的fileRootId是否和服务器匹配,不匹配就会放弃后面的操作</li>
|
|
@@ -2628,7 +2669,7 @@
|
|
|
2628
2669
|
<h2>v0.9.49</h2>
|
|
2629
2670
|
</a>
|
|
2630
2671
|
|
|
2631
|
-
<a href="#新增-
|
|
2672
|
+
<a href="#新增-66" id="新增-66" style="color: inherit; text-decoration: none;">
|
|
2632
2673
|
<h3>新增</h3>
|
|
2633
2674
|
</a>
|
|
2634
2675
|
<ul>
|
|
@@ -2647,18 +2688,18 @@
|
|
|
2647
2688
|
<h2>v0.9.48</h2>
|
|
2648
2689
|
</a>
|
|
2649
2690
|
|
|
2650
|
-
<a href="#新增-
|
|
2691
|
+
<a href="#新增-67" id="新增-67" style="color: inherit; text-decoration: none;">
|
|
2651
2692
|
<h3>新增</h3>
|
|
2652
2693
|
</a>
|
|
2653
2694
|
<ul>
|
|
2654
2695
|
<li>回放功能,新增停止回放接口</li>
|
|
2655
2696
|
</ul>
|
|
2656
|
-
<pre><code class="language-js"><span class="hl-
|
|
2697
|
+
<pre><code class="language-js"><span class="hl-5">daoPaasObj</span><span class="hl-1">.</span><span class="hl-3">stopPlayback</span><span class="hl-1">();</span>
|
|
2657
2698
|
</code></pre>
|
|
2658
2699
|
<ul>
|
|
2659
2700
|
<li>回放功能,在回放过程中,新增广播自定义数据帧事件</li>
|
|
2660
2701
|
</ul>
|
|
2661
|
-
<pre><code class="language-js"><span class="hl-
|
|
2702
|
+
<pre><code class="language-js"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-3">setSpinLoading</span><span class="hl-1">(</span><span class="hl-0">false</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> ....</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-8">'customize'</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-4">// 可以根据:payload.data.action 来判断具体是哪种自定义数据帧</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-8">'Customize Event:'</span><span class="hl-1">, </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">data</span><span class="hl-1">.</span><span class="hl-5">action</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> });</span>
|
|
2662
2703
|
</code></pre>
|
|
2663
2704
|
<ul>
|
|
2664
2705
|
<li><p>新增数据帧前后两帧数据间隔时长超过指定的阈值,广播事件,自定义事件名称跟上面一样:<code>customize</code>,其<code>action</code> 为: <code>timespanEvent</code></p>
|
|
@@ -2666,19 +2707,19 @@
|
|
|
2666
2707
|
<li><p>将上述具体时间间隔的数值通过初始化<code>DaoPassS</code>对象进行配置:</p>
|
|
2667
2708
|
</li>
|
|
2668
2709
|
</ul>
|
|
2669
|
-
<pre><code class="language-js"><span class="hl-
|
|
2710
|
+
<pre><code class="language-js"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">paasDomain:</span><span class="hl-1"> </span><span class="hl-5">process</span><span class="hl-1">.</span><span class="hl-5">env</span><span class="hl-1">.</span><span class="hl-2">PAAS_MANAGER_API_ORIGIN</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">tenantId:</span><span class="hl-1"> </span><span class="hl-8">'3'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">ticket:</span><span class="hl-1"> </span><span class="hl-5">dataRes</span><span class="hl-1">?.</span><span class="hl-5">ticket</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">triggerEventForMaxTimespan:</span><span class="hl-1"> </span><span class="hl-10">1000</span><span class="hl-1"> * </span><span class="hl-10">2</span><span class="hl-1">, </span><span class="hl-4">// 配置该属性,如果不配置该属性值,则不会广播事件</span><br/><span class="hl-1"> </span><span class="hl-5">userInfo:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">username:</span><span class="hl-1"> </span><span class="hl-5">DemoUserInfo</span><span class="hl-1">.</span><span class="hl-5">name</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> });</span>
|
|
2670
2711
|
</code></pre>
|
|
2671
2712
|
<ul>
|
|
2672
2713
|
<li>将<code>websocket</code>断开重连的尝试次数,控制交由业务方进行控制,如果业务方不配置, 则默认为重连<strong>5次</strong>,则广播对应的事件</li>
|
|
2673
2714
|
</ul>
|
|
2674
|
-
<pre><code class="language-js"><span class="hl-
|
|
2715
|
+
<pre><code class="language-js"><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">paasDomain:</span><span class="hl-1"> </span><span class="hl-5">process</span><span class="hl-1">.</span><span class="hl-5">env</span><span class="hl-1">.</span><span class="hl-2">PAAS_MANAGER_API_ORIGIN</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">tenantId:</span><span class="hl-1"> </span><span class="hl-8">'3'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">ticket:</span><span class="hl-1"> </span><span class="hl-5">dataRes</span><span class="hl-1">?.</span><span class="hl-5">ticket</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">reconnectMaxTimes:</span><span class="hl-1"> </span><span class="hl-10">6</span><span class="hl-1">, </span><span class="hl-4">// 配置改属性,如果不配置,则默认为最大重试5次</span><br/><span class="hl-1"> </span><span class="hl-5">userInfo:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">username:</span><span class="hl-1"> </span><span class="hl-5">DemoUserInfo</span><span class="hl-1">.</span><span class="hl-5">name</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> });</span>
|
|
2675
2716
|
</code></pre>
|
|
2676
2717
|
<ul>
|
|
2677
2718
|
<li>新增拖拽文件或文件夹到指定目录</li>
|
|
2678
2719
|
<li>新增拖拽文件或文件夹并上传到指定目录</li>
|
|
2679
2720
|
<li>新增下载项目文件</li>
|
|
2680
2721
|
</ul>
|
|
2681
|
-
<pre><code class="language-js"><span class="hl-
|
|
2722
|
+
<pre><code class="language-js"><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">mapRender</span><span class="hl-1">([</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.tree-section'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Tree'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">props:</span><span class="hl-1"> {</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-5">fileRootActions</span><span class="hl-1">: [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">label:</span><span class="hl-1"> </span><span class="hl-8">'下载项目'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-3">onClick</span><span class="hl-5">:</span><span class="hl-1"> () </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-3">getProjectCode</span><span class="hl-1">(</span><span class="hl-5">playgroundId</span><span class="hl-1">).</span><span class="hl-3">then</span><span class="hl-1">((</span><span class="hl-5">res</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">blob</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">Blob</span><span class="hl-1">([</span><span class="hl-5">res</span><span class="hl-1">.</span><span class="hl-5">data</span><span class="hl-1">]);</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">url</span><span class="hl-1"> = </span><span class="hl-5">window</span><span class="hl-1">.</span><span class="hl-2">URL</span><span class="hl-1">.</span><span class="hl-3">createObjectURL</span><span class="hl-1">(</span><span class="hl-5">blob</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">ele</span><span class="hl-1"> = </span><span class="hl-5">document</span><span class="hl-1">.</span><span class="hl-3">createElement</span><span class="hl-1">(</span><span class="hl-8">'a'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-5">ele</span><span class="hl-1">.</span><span class="hl-5">style</span><span class="hl-1">.</span><span class="hl-5">display</span><span class="hl-1"> = </span><span class="hl-8">'none'</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-5">ele</span><span class="hl-1">.</span><span class="hl-5">href</span><span class="hl-1"> = </span><span class="hl-5">url</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-5">ele</span><span class="hl-1">.</span><span class="hl-5">download</span><span class="hl-1"> = </span><span class="hl-8">'download.zip'</span><span class="hl-1">; </span><span class="hl-4">// 下载文件夹的名称业务方进行自定义, 后缀可以从res header 获取</span><br/><span class="hl-1"> </span><span class="hl-5">document</span><span class="hl-1">.</span><span class="hl-5">body</span><span class="hl-1">.</span><span class="hl-3">appendChild</span><span class="hl-1">(</span><span class="hl-5">ele</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-5">ele</span><span class="hl-1">.</span><span class="hl-3">click</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-5">ele</span><span class="hl-1">.</span><span class="hl-3">remove</span><span class="hl-1">();</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span><br/><span class="hl-1">]);</span>
|
|
2682
2723
|
</code></pre>
|
|
2683
2724
|
|
|
2684
2725
|
<a href="#修复-76" id="修复-76" style="color: inherit; text-decoration: none;">
|
|
@@ -2692,7 +2733,7 @@
|
|
|
2692
2733
|
<h2>v0.9.47</h2>
|
|
2693
2734
|
</a>
|
|
2694
2735
|
|
|
2695
|
-
<a href="#新增-
|
|
2736
|
+
<a href="#新增-68" id="新增-68" style="color: inherit; text-decoration: none;">
|
|
2696
2737
|
<h3>新增</h3>
|
|
2697
2738
|
</a>
|
|
2698
2739
|
<ul>
|
|
@@ -2712,14 +2753,14 @@
|
|
|
2712
2753
|
<h2>v0.9.46</h2>
|
|
2713
2754
|
</a>
|
|
2714
2755
|
|
|
2715
|
-
<a href="#新增-
|
|
2756
|
+
<a href="#新增-69" id="新增-69" style="color: inherit; text-decoration: none;">
|
|
2716
2757
|
<h3>新增</h3>
|
|
2717
2758
|
</a>
|
|
2718
2759
|
<ul>
|
|
2719
2760
|
<li>支持图形化界面展示功能</li>
|
|
2720
2761
|
<li>支持Websocket 连接失败,重连指定次数(5次)后,仍连接失败, 广播<code>connectionBroken</code>事件给客户端进行处理</li>
|
|
2721
2762
|
</ul>
|
|
2722
|
-
<pre><code class="language-js"><span class="hl-
|
|
2763
|
+
<pre><code class="language-js"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onError</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">error</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">ConnectionBroken</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-5">error</span><span class="hl-1">, </span><span class="hl-10">0</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">}</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> }</span>
|
|
2723
2764
|
</code></pre>
|
|
2724
2765
|
<ul>
|
|
2725
2766
|
<li>新增回放功能,拖动播放滚动条后,再点击播放,在之前指定位置进行播放</li>
|
|
@@ -2750,7 +2791,7 @@
|
|
|
2750
2791
|
<h2>v0.9.44</h2>
|
|
2751
2792
|
</a>
|
|
2752
2793
|
|
|
2753
|
-
<a href="#新增-
|
|
2794
|
+
<a href="#新增-70" id="新增-70" style="color: inherit; text-decoration: none;">
|
|
2754
2795
|
<h3>新增</h3>
|
|
2755
2796
|
</a>
|
|
2756
2797
|
<ul>
|
|
@@ -2781,21 +2822,21 @@
|
|
|
2781
2822
|
<h2>v0.9.42</h2>
|
|
2782
2823
|
</a>
|
|
2783
2824
|
|
|
2784
|
-
<a href="#新增-
|
|
2825
|
+
<a href="#新增-71" id="新增-71" style="color: inherit; text-decoration: none;">
|
|
2785
2826
|
<h3>新增</h3>
|
|
2786
2827
|
</a>
|
|
2787
2828
|
<ul>
|
|
2788
2829
|
<li>回放功能支持多题目切题回放</li>
|
|
2789
2830
|
<li>回放接口添加支持自定义数据帧插入:</li>
|
|
2790
2831
|
</ul>
|
|
2791
|
-
<pre><code class="language-js"><span class="hl-
|
|
2832
|
+
<pre><code class="language-js"><span class="hl-1"> </span><span class="hl-4">// 插入自定义数据帧</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">?.</span><span class="hl-3">appendCustomizeFrameData</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">action:</span><span class="hl-1"> </span><span class="hl-8">'startQuestion'</span><span class="hl-1">, </span><span class="hl-4">// startQuestion | endQuestion</span><br/><span class="hl-1"> </span><span class="hl-5">value:</span><span class="hl-1"> </span><span class="hl-10">1</span><span class="hl-1">, </span><span class="hl-4">// 题目ID</span><br/><span class="hl-1"> });</span>
|
|
2792
2833
|
</code></pre>
|
|
2793
|
-
<pre><code class="language-js"><span class="hl-
|
|
2834
|
+
<pre><code class="language-js"><span class="hl-4">// 监听自定义数据帧插入是否成功事件</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">status</span><span class="hl-1">: </span><span class="hl-6">PlaygroundStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">dockerStatus</span><span class="hl-1">: </span><span class="hl-6">DockerStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">lspStatus</span><span class="hl-1">: </span><span class="hl-6">LspStatusEnum</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-8">'appendCustomizeFrameData'</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">status</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-8">'插入数据帧成功'</span><span class="hl-1">);</span><br/><span class="hl-1"> } </span><span class="hl-7">else</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">warn</span><span class="hl-1">(</span><span class="hl-8">`插入数据帧失败`</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> });</span>
|
|
2794
2835
|
</code></pre>
|
|
2795
2836
|
<ul>
|
|
2796
2837
|
<li>回放接口支持获取每个题目的数据帧情况(解析:questionsData内容 )</li>
|
|
2797
2838
|
</ul>
|
|
2798
|
-
<pre><code class="language-js"><span class="hl-
|
|
2839
|
+
<pre><code class="language-js"><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-3">setSpinLoading</span><span class="hl-1">(</span><span class="hl-0">false</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">PlaybackInfo</span><span class="hl-1">: {</span><br/><span class="hl-1"> </span><span class="hl-4">// 解析: questionsData 数据内容</span><br/><span class="hl-1"> </span><span class="hl-3">setQuestionsData</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">questionsData</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">total</span><span class="hl-1"> > </span><span class="hl-10">0</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-3">setPlayable</span><span class="hl-1">(</span><span class="hl-0">true</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">setPlaybackDuration</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">end</span><span class="hl-1"> - </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">start</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> });</span>
|
|
2799
2840
|
</code></pre>
|
|
2800
2841
|
|
|
2801
2842
|
<a href="#修复-82" id="修复-82" style="color: inherit; text-decoration: none;">
|
|
@@ -2820,7 +2861,7 @@
|
|
|
2820
2861
|
<h2>v0.9.40</h2>
|
|
2821
2862
|
</a>
|
|
2822
2863
|
|
|
2823
|
-
<a href="#新增-
|
|
2864
|
+
<a href="#新增-72" id="新增-72" style="color: inherit; text-decoration: none;">
|
|
2824
2865
|
<h3>新增</h3>
|
|
2825
2866
|
</a>
|
|
2826
2867
|
<ul>
|
|
@@ -2841,15 +2882,15 @@
|
|
|
2841
2882
|
<h2>v0.9.38</h2>
|
|
2842
2883
|
</a>
|
|
2843
2884
|
|
|
2844
|
-
<a href="#新增-
|
|
2885
|
+
<a href="#新增-73" id="新增-73" style="color: inherit; text-decoration: none;">
|
|
2845
2886
|
<h3>新增</h3>
|
|
2846
2887
|
</a>
|
|
2847
2888
|
<ul>
|
|
2848
2889
|
<li>添加保留文件不能删除的功能,使用方式:</li>
|
|
2849
2890
|
</ul>
|
|
2850
|
-
<pre><code class="language-js"><span class="hl-
|
|
2891
|
+
<pre><code class="language-js"><span class="hl-1"> </span><span class="hl-4">// 1. 设置保留文件属性的接口</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1">?.</span><span class="hl-3">retainingAllFiles</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">res</span><span class="hl-1">?.</span><span class="hl-5">status</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">success</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">.</span><span class="hl-5">message</span><span class="hl-1">);</span><br/><span class="hl-1"> } </span><span class="hl-7">else</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">messageBox</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-5">res</span><span class="hl-1">?.</span><span class="hl-5">message</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span><br/>
|
|
2851
2892
|
</code></pre>
|
|
2852
|
-
<pre><code class="language-js"><span class="hl-
|
|
2893
|
+
<pre><code class="language-js"><span class="hl-1"> </span><span class="hl-4">// 设置是否对保留文件进行处理</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">mapRender</span><span class="hl-1">([</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.tree-section'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Tree'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">props:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">disableFileAction:</span><span class="hl-1"> { </span><span class="hl-4">// 不是必填属性</span><br/><span class="hl-1"> </span><span class="hl-5">filesPath:</span><span class="hl-1"> [],</span><br/><span class="hl-1"> </span><span class="hl-5">isDisable:</span><span class="hl-1"> </span><span class="hl-0">true</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ]);</span>
|
|
2853
2894
|
</code></pre>
|
|
2854
2895
|
<ul>
|
|
2855
2896
|
<li>增加LSP真实可用的状态,真实运行中的状态由之前的running改为了lspReady</li>
|
|
@@ -2875,7 +2916,7 @@
|
|
|
2875
2916
|
<li>重构打开指定文件接口,支持Promise形式调用,需要调用方自行捕获错误信息(reject错误)</li>
|
|
2876
2917
|
</ul>
|
|
2877
2918
|
|
|
2878
|
-
<a href="#新增-
|
|
2919
|
+
<a href="#新增-74" id="新增-74" style="color: inherit; text-decoration: none;">
|
|
2879
2920
|
<h3>新增</h3>
|
|
2880
2921
|
</a>
|
|
2881
2922
|
<ul>
|
|
@@ -2913,13 +2954,13 @@
|
|
|
2913
2954
|
<li>重构文件树更新逻辑,数据由全量更新修改为增量更新</li>
|
|
2914
2955
|
</ul>
|
|
2915
2956
|
|
|
2916
|
-
<a href="#新增-
|
|
2957
|
+
<a href="#新增-75" id="新增-75" style="color: inherit; text-decoration: none;">
|
|
2917
2958
|
<h3>新增</h3>
|
|
2918
2959
|
</a>
|
|
2919
2960
|
<ul>
|
|
2920
2961
|
<li>新增打开指定文件的接口,<code>openFile(filePath:string) => void</code>,<font color=red>注意:该路径是相对路径</font>,调用示例方式如下:</li>
|
|
2921
2962
|
</ul>
|
|
2922
|
-
<pre><code class="language-js"><span class="hl-
|
|
2963
|
+
<pre><code class="language-js"><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">daoPass</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPass</span><span class="hl-1">()</span><br/><span class="hl-1">...</span><br/><span class="hl-5">daoPass</span><span class="hl-1">.</span><span class="hl-3">openFile</span><span class="hl-1">(</span><span class="hl-8">'path'</span><span class="hl-1">)</span><br/><span class="hl-1">...</span>
|
|
2923
2964
|
</code></pre>
|
|
2924
2965
|
<ul>
|
|
2925
2966
|
<li>切换文件再切回时,支持了<code>undo</code>,<code>redo</code>等操作</li>
|
|
@@ -2939,7 +2980,7 @@
|
|
|
2939
2980
|
</a>
|
|
2940
2981
|
<p>当前版本变更引用地址 (<a href="https://github.com/dao42/d42paas_frontend/commit/294ae84289180e2c94d2589d0e435a9f54e530a2">294ae84289180e2c94d2589d0e435a9f54e530a2</a>)</p>
|
|
2941
2982
|
|
|
2942
|
-
<a href="#新增-
|
|
2983
|
+
<a href="#新增-76" id="新增-76" style="color: inherit; text-decoration: none;">
|
|
2943
2984
|
<h3>新增</h3>
|
|
2944
2985
|
</a>
|
|
2945
2986
|
<ul>
|
|
@@ -2968,7 +3009,7 @@
|
|
|
2968
3009
|
<li><strong>0.9.29:</strong> 当前版本变更引用地址 (<a href="https://github.com/dao42/d42paas_frontend/commit/8935c97f9c6c36cfa74a58f3eda12bf562184ebc">8935c97f9c6c36cfa74a58f3eda12bf562184ebc</a>)</li>
|
|
2969
3010
|
</ul>
|
|
2970
3011
|
|
|
2971
|
-
<a href="#优化-
|
|
3012
|
+
<a href="#优化-68" id="优化-68" style="color: inherit; text-decoration: none;">
|
|
2972
3013
|
<h3>优化</h3>
|
|
2973
3014
|
</a>
|
|
2974
3015
|
<ul>
|
|
@@ -2984,7 +3025,7 @@
|
|
|
2984
3025
|
<li><strong>0.9.28:</strong> 当前版本变更引用地址 (<a href="https://github.com/dao42/d42paas_frontend/commit/308f32e15f00c076b94dd679c2a22a09cb487215">308f32e15f00c076b94dd679c2a22a09cb487215</a>)</li>
|
|
2985
3026
|
</ul>
|
|
2986
3027
|
|
|
2987
|
-
<a href="#优化-
|
|
3028
|
+
<a href="#优化-69" id="优化-69" style="color: inherit; text-decoration: none;">
|
|
2988
3029
|
<h3>优化</h3>
|
|
2989
3030
|
</a>
|
|
2990
3031
|
<ul>
|
|
@@ -3028,13 +3069,13 @@
|
|
|
3028
3069
|
<a href="#第一步:定义接口" id="第一步:定义接口" style="color: inherit; text-decoration: none;">
|
|
3029
3070
|
<h3>第一步:定义接口</h3>
|
|
3030
3071
|
</a>
|
|
3031
|
-
<pre><code class="language-ts"><span class="hl-
|
|
3072
|
+
<pre><code class="language-ts"><span class="hl-4">/* </span><br/><span class="hl-4"> * 获取codeZone环境列表 </span><br/><span class="hl-4"> * @returns { {id: int, versionList: {id: string, name: string}[]}[] }</span><br/><span class="hl-4">*/</span><br/><span class="hl-7">export</span><span class="hl-1"> </span><span class="hl-0">async</span><span class="hl-1"> </span><span class="hl-0">function</span><span class="hl-1"> </span><span class="hl-3">getEnvironmentsApi</span><span class="hl-1">() {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">axios</span><span class="hl-1">.</span><span class="hl-3">get</span><span class="hl-1">(</span><span class="hl-8">'/api/v1/sdk/environments'</span><span class="hl-1">)</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-5">res</span><span class="hl-1">.</span><span class="hl-5">data</span><span class="hl-1"> </span><span class="hl-4">// 环境列表(数组)</span><br/><span class="hl-1">}</span><br/><span class="hl-4">/* </span><br/><span class="hl-4"> * 创建codeZone, 获取codeZoneId</span><br/><span class="hl-4"> * @param { string } environmentVerId 环境id</span><br/><span class="hl-4"> * @returns { string }</span><br/><span class="hl-4">*/</span><br/><span class="hl-0">async</span><span class="hl-1"> </span><span class="hl-0">function</span><span class="hl-1"> </span><span class="hl-3">getCodeZoneIdApi</span><span class="hl-1">(</span><span class="hl-5">environmentVerId</span><span class="hl-1">: </span><span class="hl-6">string</span><span class="hl-1">): </span><span class="hl-6">string</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">axios</span><span class="hl-1">.</span><span class="hl-3">post</span><span class="hl-1">(</span><span class="hl-8">'/api/v1/sdk/codeZones'</span><span class="hl-1">,{</span><span class="hl-5">environmentVerId</span><span class="hl-1">})</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-5">res</span><span class="hl-1">.</span><span class="hl-5">data</span><span class="hl-1">.</span><span class="hl-5">id</span><br/><span class="hl-1">}</span><br/><span class="hl-4">/* </span><br/><span class="hl-4"> * 通过 codeZoneId 获取 playgroundId</span><br/><span class="hl-4"> * @param { string } codeZoneId </span><br/><span class="hl-4"> * @returns { string }</span><br/><span class="hl-4">*/</span><br/><span class="hl-0">async</span><span class="hl-1"> </span><span class="hl-0">function</span><span class="hl-1"> </span><span class="hl-3">getPlaygroundIdApi</span><span class="hl-1">(</span><span class="hl-5">codeZoneId</span><span class="hl-1">: </span><span class="hl-6">string</span><span class="hl-1">): </span><span class="hl-6">string</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">axios</span><span class="hl-1">.</span><span class="hl-3">get</span><span class="hl-1">(</span><span class="hl-8">'/api/v1/sdk/codeZones/'</span><span class="hl-1">+</span><span class="hl-5">codeZoneId</span><span class="hl-1">+</span><span class="hl-8">'/playground'</span><span class="hl-1">)</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-5">res</span><span class="hl-1">.</span><span class="hl-5">data</span><span class="hl-1">.</span><span class="hl-5">id</span><br/><span class="hl-1">}</span><br/><span class="hl-4">/* </span><br/><span class="hl-4"> * 通过 playgroundId 获取 ticket</span><br/><span class="hl-4"> * @param { string } playgroundId </span><br/><span class="hl-4"> * @returns { string }</span><br/><span class="hl-4">*/</span><br/><span class="hl-0">async</span><span class="hl-1"> </span><span class="hl-0">function</span><span class="hl-1"> </span><span class="hl-3">getTicketApi</span><span class="hl-1">(</span><span class="hl-5">playgroundId</span><span class="hl-1">: </span><span class="hl-6">string</span><span class="hl-1">): </span><span class="hl-6">string</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">res</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-5">axios</span><span class="hl-1">.</span><span class="hl-3">post</span><span class="hl-1">(</span><span class="hl-8">'/api/v1/sdk/ticket'</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-5">playgroundId</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">tillTime:</span><span class="hl-1"> </span><span class="hl-6">Date</span><span class="hl-1">.</span><span class="hl-3">now</span><span class="hl-1">() + </span><span class="hl-10">12</span><span class="hl-1">*</span><span class="hl-10">60</span><span class="hl-1">*</span><span class="hl-10">60</span><span class="hl-1">*</span><span class="hl-10">1000</span><span class="hl-1">, </span><span class="hl-4">// 截止时间(时间戳)</span><br/><span class="hl-1"> </span><span class="hl-5">userInfo:</span><span class="hl-1"> {}, </span><span class="hl-4">// 数据格式请参考接口文档</span><br/><span class="hl-1"> })</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-5">res</span><span class="hl-1">.</span><span class="hl-5">data</span><span class="hl-1">.</span><span class="hl-5">ticket</span><br/><span class="hl-1">}</span>
|
|
3032
3073
|
</code></pre>
|
|
3033
3074
|
|
|
3034
3075
|
<a href="#第二步:封装逻辑" id="第二步:封装逻辑" style="color: inherit; text-decoration: none;">
|
|
3035
3076
|
<h3>第二步:封装逻辑</h3>
|
|
3036
3077
|
</a>
|
|
3037
|
-
<pre><code class="language-ts"><span class="hl-
|
|
3078
|
+
<pre><code class="language-ts"><span class="hl-4">// 通过调用 getEnvironmentsApi() 我们获取到了codeZone环境列表, 并渲染到页面上</span><br/><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">environments</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-3">getEnvironmentsApi</span><span class="hl-1">()</span><br/><span class="hl-4">// 假设用户点击了某一个环境,我们得到了一个具体的 environmentVerId</span><br/><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">environmentVerId</span><span class="hl-1"> = </span><span class="hl-5">environments</span><span class="hl-1">[</span><span class="hl-10">0</span><span class="hl-1">].</span><span class="hl-5">versionList</span><span class="hl-1">[</span><span class="hl-10">0</span><span class="hl-1">].</span><span class="hl-5">id</span><br/><span class="hl-4">// 封装获取ticket(票)逻辑</span><br/><span class="hl-7">export</span><span class="hl-1"> </span><span class="hl-0">async</span><span class="hl-1"> </span><span class="hl-0">function</span><span class="hl-1"> </span><span class="hl-3">handleGetTicket</span><span class="hl-1">(</span><span class="hl-5">environmentVerId</span><span class="hl-1">: </span><span class="hl-6">string</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">codeZoneId</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-3">getCodeZoneIdApi</span><span class="hl-1">(</span><span class="hl-5">environmentVerId</span><span class="hl-1">)</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">playgroundId</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-3">getPlaygroundIdApi</span><span class="hl-1">(</span><span class="hl-5">codeZoneId</span><span class="hl-1">)</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">ticket</span><span class="hl-1"> = </span><span class="hl-7">await</span><span class="hl-1"> </span><span class="hl-3">getTicketApi</span><span class="hl-1">(</span><span class="hl-5">playgroundId</span><span class="hl-1">)</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> </span><span class="hl-5">ticket</span><br/><span class="hl-1">}</span>
|
|
3038
3079
|
</code></pre>
|
|
3039
3080
|
|
|
3040
3081
|
<a href="#part-two-在组件中使用" id="part-two-在组件中使用" style="color: inherit; text-decoration: none;">
|
|
@@ -3044,7 +3085,7 @@
|
|
|
3044
3085
|
<a href="#第一步:引入sdk和样式" id="第一步:引入sdk和样式" style="color: inherit; text-decoration: none;">
|
|
3045
3086
|
<h3>第一步:引入SDK和样式</h3>
|
|
3046
3087
|
</a>
|
|
3047
|
-
<pre><code class="language-ts"><span class="hl-
|
|
3088
|
+
<pre><code class="language-ts"><span class="hl-7">import</span><span class="hl-1"> { </span><span class="hl-5">DaoPaaS</span><span class="hl-1">, </span><span class="hl-5">Messages</span><span class="hl-1"> } </span><span class="hl-7">from</span><span class="hl-1"> </span><span class="hl-8">'DaoPaaS.cjs'</span><span class="hl-1">;</span><br/><span class="hl-7">import</span><span class="hl-1"> </span><span class="hl-8">'style.css'</span><span class="hl-1"> </span>
|
|
3048
3089
|
</code></pre>
|
|
3049
3090
|
|
|
3050
3091
|
<a href="#第二步:初始化实例" id="第二步:初始化实例" style="color: inherit; text-decoration: none;">
|
|
@@ -3053,46 +3094,46 @@
|
|
|
3053
3094
|
<ol>
|
|
3054
3095
|
<li>创建实例</li>
|
|
3055
3096
|
</ol>
|
|
3056
|
-
<pre><code class="language-ts"><span class="hl-
|
|
3097
|
+
<pre><code class="language-ts"><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">tenantId:</span><span class="hl-1"> </span><span class="hl-8">'租户id'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">ticket:</span><span class="hl-1"> </span><span class="hl-8">'动态获取的ticket'</span><span class="hl-1">, </span><span class="hl-4">// ticket(票)</span><br/><span class="hl-1"> </span><span class="hl-5">userInfo:</span><span class="hl-1"> { </span><span class="hl-5">username:</span><span class="hl-1"> </span><span class="hl-8">'用户名'</span><span class="hl-1">}, </span><span class="hl-4">// 用户信息</span><br/><span class="hl-1">});</span>
|
|
3057
3098
|
</code></pre>
|
|
3058
3099
|
<ol start="2">
|
|
3059
3100
|
<li>监听消息</li>
|
|
3060
3101
|
</ol>
|
|
3061
|
-
<pre><code class="language-ts"><span class="hl-
|
|
3102
|
+
<pre><code class="language-ts"><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">status</span><span class="hl-1">: </span><span class="hl-6">PlaygroundStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">dockerStatus</span><span class="hl-1">: </span><span class="hl-6">DockerStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">lspStatus</span><span class="hl-1">: </span><span class="hl-6">LspStatusEnum</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">Ready</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'appStatus readyBasic'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'playgroundInfo状态'</span><span class="hl-1">, </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-5">playgroundInfo</span><span class="hl-1">.</span><span class="hl-5">status</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'语法补全状态'</span><span class="hl-1">, </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-5">playgroundInfo</span><span class="hl-1">.</span><span class="hl-5">lspStatus</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'docker运行状态'</span><span class="hl-1">, </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-5">playgroundInfo</span><span class="hl-1">.</span><span class="hl-5">runStatus</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">Online</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'网络已恢复'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">setSpinLoading</span><span class="hl-1">(</span><span class="hl-0">false</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">Offline</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'网络掉线'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">StatusChanged</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'playground状态发生变化'</span><span class="hl-1">, </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">status</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">PlaygroundChanged</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'playground环境变了,比如换题'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">LspStatusChanged</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'Lsp状态发生变化'</span><span class="hl-1">, </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">status</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">RunStatusChanged</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'docker运行状态变化'</span><span class="hl-1">, </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">status</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">dockerStatus</span><span class="hl-1"> != </span><span class="hl-8">'STOP'</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1">;</span><br/><span class="hl-1"> } </span><span class="hl-7">else</span><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">runResult</span><span class="hl-1"> === </span><span class="hl-10">0</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">`运行结果成功`</span><span class="hl-1">);</span><br/><span class="hl-1"> } </span><span class="hl-7">else</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">`运行结果失败: </span><span class="hl-0">${</span><span class="hl-5">payload</span><span class="hl-11">.</span><span class="hl-5">runResult</span><span class="hl-0">}</span><span class="hl-8">`</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">});</span>
|
|
3062
3103
|
</code></pre>
|
|
3063
3104
|
<ol start="3">
|
|
3064
3105
|
<li>监听错误消息</li>
|
|
3065
3106
|
</ol>
|
|
3066
|
-
<pre><code class="language-ts"><span class="hl-
|
|
3107
|
+
<pre><code class="language-ts"><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onError</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">error</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">ConnectionBroken</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'与服务器的连接中断,可以尝试连接到另一个服务器'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">AuthorizationFailed</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'授权失败,所以您需要再次登录或获得一个新的ticket'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-8">'errorFromServer'</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'与服务器的连接中断'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">});</span>
|
|
3067
3108
|
</code></pre>
|
|
3068
3109
|
<ol start="4">
|
|
3069
3110
|
<li>把实例的组件挂载到dom节点</li>
|
|
3070
3111
|
</ol>
|
|
3071
|
-
<pre><code class="language-ts"><span class="hl-
|
|
3112
|
+
<pre><code class="language-ts"><span class="hl-4">// container: 项目中真实节点的选择器, item: 要挂载的dao内部组件的名称</span><br/><span class="hl-4">// 这个方法运行后,会把item对应名称的dao内部组件挂载到container配置类名的dom节点上</span><br/><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">mapRender</span><span class="hl-1">([</span><br/><span class="hl-1"> { </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.tree-section'</span><span class="hl-1">, </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Tree'</span><span class="hl-1"> },</span><br/><span class="hl-1"> { </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.editor-section'</span><span class="hl-1">, </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Editor'</span><span class="hl-1"> },</span><br/><span class="hl-1"> { </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.browser-section'</span><span class="hl-1">, </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Browser'</span><span class="hl-1">},</span><br/><span class="hl-1"> { </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.terminal-section'</span><span class="hl-1">, </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Shell'</span><span class="hl-1"> },</span><br/><span class="hl-1"> { </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.console-section'</span><span class="hl-1">, </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Console'</span><span class="hl-1"> },</span><br/><span class="hl-1">]);</span>
|
|
3072
3113
|
</code></pre>
|
|
3073
3114
|
<ol start="5">
|
|
3074
3115
|
<li>创建HTML标签</li>
|
|
3075
3116
|
</ol>
|
|
3076
3117
|
<p>运行<code>dao.mapRender([...])</code>方法后,会把dao内部组件渲染到对应的dom节点</p>
|
|
3077
|
-
<pre><code class="language-html"><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-
|
|
3118
|
+
<pre><code class="language-html"><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-1"> </span><span class="hl-17">className</span><span class="hl-1">=</span><span class="hl-21">"tree-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-1"> </span><span class="hl-17">className</span><span class="hl-1">=</span><span class="hl-21">"editor-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-1"> </span><span class="hl-17">className</span><span class="hl-1">=</span><span class="hl-21">"browser-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-1"> </span><span class="hl-17">className</span><span class="hl-1">=</span><span class="hl-21">"console-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-1"> </span><span class="hl-17">className</span><span class="hl-1">=</span><span class="hl-21">"terminal-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-19"></</span><span class="hl-20">div</span><span class="hl-19">></span>
|
|
3078
3119
|
</code></pre>
|
|
3079
3120
|
|
|
3080
3121
|
<a href="#第三步:销毁实例" id="第三步:销毁实例" style="color: inherit; text-decoration: none;">
|
|
3081
3122
|
<h3>第三步:销毁实例</h3>
|
|
3082
3123
|
</a>
|
|
3083
3124
|
<p>在页面卸载的时候需要销毁dao实例和相关的缓存数据</p>
|
|
3084
|
-
<pre><code class="language-ts"><span class="hl-
|
|
3125
|
+
<pre><code class="language-ts"><span class="hl-3">useEffect</span><span class="hl-1">(() </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">// ...</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> () </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">dispose</span><span class="hl-1">()</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">}, [])</span>
|
|
3085
3126
|
</code></pre>
|
|
3086
3127
|
|
|
3087
3128
|
<a href="#part-three-sdk部分其他方法" id="part-three-sdk部分其他方法" style="color: inherit; text-decoration: none;">
|
|
3088
3129
|
<h2>PART-THREE SDK部分其他方法</h2>
|
|
3089
3130
|
</a>
|
|
3090
|
-
<pre><code class="language-ts"><span class="hl-
|
|
3131
|
+
<pre><code class="language-ts"><span class="hl-4">// 配置是否在控制台开启DaoPaaS内部打印</span><br/><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">loggerEnable</span><span class="hl-1">(</span><span class="hl-0">true</span><span class="hl-1">);</span><br/><span class="hl-4">// 修改主题</span><br/><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">loadTheme</span><span class="hl-1">(</span><span class="hl-8">'dark'</span><span class="hl-1">)</span><br/><span class="hl-4">// 激活容器</span><br/><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">activePlayground</span><span class="hl-1">()</span><br/><span class="hl-4">// 运行容器</span><br/><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">runPlayground</span><span class="hl-1">()</span><br/><span class="hl-4">// 停止容器运行</span><br/><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">stopPlayground</span><span class="hl-1">()</span><br/><span class="hl-4">// ...</span>
|
|
3091
3132
|
</code></pre>
|
|
3092
3133
|
|
|
3093
3134
|
<a href="#part-four-基础案例" id="part-four-基础案例" style="color: inherit; text-decoration: none;">
|
|
3094
3135
|
<h2>PART-FOUR 基础案例</h2>
|
|
3095
3136
|
</a>
|
|
3096
|
-
<pre><code class="language-tsx"><span class="hl-3">import</span><span class="hl-0"> </span><span class="hl-4">React</span><span class="hl-0">, { </span><span class="hl-4">useEffect</span><span class="hl-0">, </span><span class="hl-4">useState</span><span class="hl-0"> } </span><span class="hl-3">from</span><span class="hl-0"> </span><span class="hl-6">'react'</span><span class="hl-0">;</span><br/><span class="hl-3">import</span><span class="hl-0"> { </span><span class="hl-4">DaoPaaS</span><span class="hl-0">, </span><span class="hl-4">Messages</span><span class="hl-0"> } </span><span class="hl-3">from</span><span class="hl-0"> </span><span class="hl-6">'~/DaoPaaS'</span><span class="hl-0">;</span><br/><br/><span class="hl-1">enum</span><span class="hl-0"> </span><span class="hl-11">LspStatusEnum</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-2">NOT_SUPPORT</span><span class="hl-0"> = </span><span class="hl-6">'notSupport'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-2">LOADING</span><span class="hl-0"> = </span><span class="hl-6">'loading'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-2">RUNNING</span><span class="hl-0"> = </span><span class="hl-6">'running'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-2">SHUTDOWN</span><span class="hl-0"> = </span><span class="hl-6">'shutdown'</span><span class="hl-0">,</span><br/><span class="hl-0">}</span><br/><br/><span class="hl-3">export</span><span class="hl-0"> </span><span class="hl-3">default</span><span class="hl-0"> </span><span class="hl-1">function</span><span class="hl-0"> </span><span class="hl-5">SimpleExample</span><span class="hl-0">({</span><span class="hl-4">environmentVerId</span><span class="hl-0">}) {</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> [</span><span class="hl-2">daoPaasObj</span><span class="hl-0">, </span><span class="hl-2">setDaoPaasObj</span><span class="hl-0">] = </span><span class="hl-5">useState</span><span class="hl-0"><</span><span class="hl-11">DaoPaaS</span><span class="hl-0"> | </span><span class="hl-11">null</span><span class="hl-0">>(</span><span class="hl-1">null</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> [</span><span class="hl-2">playgroundStatus</span><span class="hl-0">, </span><span class="hl-2">setPlaygroundStatus</span><span class="hl-0">] =</span><br/><span class="hl-0"> </span><span class="hl-5">useState</span><span class="hl-0"><</span><span class="hl-11">PlaygroundStatus</span><span class="hl-0">>(</span><span class="hl-6">'EMPTY'</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> [</span><span class="hl-2">dockerStatus</span><span class="hl-0">, </span><span class="hl-2">setDockerStatus</span><span class="hl-0">] = </span><span class="hl-5">useState</span><span class="hl-0"><</span><span class="hl-11">DockerStatus</span><span class="hl-0">>(</span><span class="hl-6">'STOP'</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> {</span><span class="hl-2">setLspStatus</span><span class="hl-0">, </span><span class="hl-2">LspStatusFC</span><span class="hl-0">} = </span><span class="hl-5">useLspStatus</span><span class="hl-0">();</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> [</span><span class="hl-2">remindVisible</span><span class="hl-0">, </span><span class="hl-2">setRemindVisible</span><span class="hl-0">] = </span><span class="hl-5">useState</span><span class="hl-0">(</span><span class="hl-1">false</span><span class="hl-0">);</span><br/><br/><span class="hl-0"> </span><span class="hl-7">// SDK初始化</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> </span><span class="hl-5">initSDK</span><span class="hl-0"> = </span><span class="hl-1">async</span><span class="hl-0"> () </span><span class="hl-1">=></span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">console</span><span class="hl-0">.</span><span class="hl-5">log</span><span class="hl-0">(</span><span class="hl-6">'开始连接运行环境...'</span><span class="hl-0">)</span><br/><span class="hl-0"> </span><span class="hl-7">// 获取ticket(票)</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> </span><span class="hl-2">ticket</span><span class="hl-0"> = </span><span class="hl-5">handleGetTicket</span><span class="hl-0">(</span><span class="hl-4">environmentVerId</span><span class="hl-0">)</span><br/><span class="hl-0"> </span><span class="hl-7">// 生成实例</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> </span><span class="hl-2">dao</span><span class="hl-0"> = </span><span class="hl-1">new</span><span class="hl-0"> </span><span class="hl-5">DaoPaaS</span><span class="hl-0">({</span><br/><span class="hl-0"> </span><span class="hl-4">paasDomain:</span><span class="hl-0"> </span><span class="hl-6">'www.1024paas.com'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">tenantId:</span><span class="hl-0"> </span><span class="hl-6">'请输入租户id'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">ticket:</span><span class="hl-0"> </span><span class="hl-4">ticket</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">userInfo:</span><span class="hl-0"> { </span><span class="hl-4">username:</span><span class="hl-0"> </span><span class="hl-6">"***"</span><span class="hl-0"> },</span><br/><span class="hl-0"> });</span><br/><span class="hl-0"> </span><span class="hl-7">// 保存实例</span><br/><span class="hl-0"> </span><span class="hl-5">setDaoPaasObj</span><span class="hl-0">(</span><span class="hl-4">dao</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-7">// 监听消息</span><br/><span class="hl-0"> </span><span class="hl-4">dao</span><span class="hl-0">.</span><span class="hl-5">onMessage</span><span class="hl-0">((</span><span class="hl-4">message</span><span class="hl-0">: </span><span class="hl-11">Message</span><span class="hl-0">) </span><span class="hl-1">=></span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> { </span><span class="hl-2">name</span><span class="hl-0">, </span><span class="hl-2">payload</span><span class="hl-0"> } = </span><span class="hl-4">message</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-1">let</span><span class="hl-0"> </span><span class="hl-4">status</span><span class="hl-0">: </span><span class="hl-11">PlaygroundStatus</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-1">let</span><span class="hl-0"> </span><span class="hl-4">dockerStatus</span><span class="hl-0">: </span><span class="hl-11">DockerStatus</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-1">let</span><span class="hl-0"> </span><span class="hl-4">lspStatus</span><span class="hl-0">: </span><span class="hl-11">LspStatusEnum</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-3">switch</span><span class="hl-0"> (</span><span class="hl-4">name</span><span class="hl-0">) {</span><br/><span class="hl-0"> </span><span class="hl-3">case</span><span class="hl-0"> </span><span class="hl-4">Messages</span><span class="hl-0">.</span><span class="hl-4">Ready</span><span class="hl-0">:</span><br/><span class="hl-0"> </span><span class="hl-4">console</span><span class="hl-0">.</span><span class="hl-5">log</span><span class="hl-0">(</span><span class="hl-6">'连接运行环境已经停止'</span><span class="hl-0">)</span><br/><span class="hl-0"> </span><span class="hl-5">setRemindVisible</span><span class="hl-0">(</span><span class="hl-4">dao</span><span class="hl-0">.</span><span class="hl-4">playgroundInfo</span><span class="hl-0">.</span><span class="hl-4">status</span><span class="hl-0"> === </span><span class="hl-6">'INACTIVE'</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-5">setPlaygroundStatus</span><span class="hl-0">(</span><span class="hl-4">dao</span><span class="hl-0">.</span><span class="hl-4">playgroundInfo</span><span class="hl-0">.</span><span class="hl-4">status</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-5">setLspStatus</span><span class="hl-0">(</span><br/><span class="hl-0"> </span><span class="hl-4">dao</span><span class="hl-0">.</span><span class="hl-4">playgroundInfo</span><span class="hl-0">.</span><span class="hl-4">lspStatus</span><span class="hl-0"> </span><span class="hl-3">as</span><span class="hl-0"> </span><span class="hl-11">LspStatusEnum</span><span class="hl-0">,</span><br/><span class="hl-0"> );</span><br/><span class="hl-0"> </span><span class="hl-5">setDockerStatus</span><span class="hl-0">(</span><br/><span class="hl-0"> </span><span class="hl-4">dao</span><span class="hl-0">.</span><span class="hl-4">playgroundInfo</span><span class="hl-0">.</span><span class="hl-4">runStatus</span><span class="hl-0"> </span><span class="hl-3">as</span><span class="hl-0"> </span><span class="hl-11">DockerStatus</span><span class="hl-0">,</span><br/><span class="hl-0"> );</span><br/><span class="hl-0"> </span><span class="hl-3">break</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-3">case</span><span class="hl-0"> </span><span class="hl-4">Messages</span><span class="hl-0">.</span><span class="hl-4">Online</span><span class="hl-0">:</span><br/><span class="hl-0"> </span><span class="hl-4">console</span><span class="hl-0">.</span><span class="hl-5">log</span><span class="hl-0">(</span><span class="hl-6">'网络已恢复'</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-4">console</span><span class="hl-0">.</span><span class="hl-5">log</span><span class="hl-0">(</span><span class="hl-6">'连接运行环境已经停止'</span><span class="hl-0">)</span><br/><span class="hl-0"> </span><span class="hl-3">break</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-3">case</span><span class="hl-0"> </span><span class="hl-4">Messages</span><span class="hl-0">.</span><span class="hl-4">Offline</span><span class="hl-0">:</span><br/><span class="hl-0"> </span><span class="hl-4">console</span><span class="hl-0">.</span><span class="hl-5">log</span><span class="hl-0">(</span><span class="hl-6">'网络掉线'</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">break</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-3">case</span><span class="hl-0"> </span><span class="hl-4">Messages</span><span class="hl-0">.</span><span class="hl-4">StatusChanged</span><span class="hl-0">:</span><br/><span class="hl-0"> </span><span class="hl-4">status</span><span class="hl-0"> = </span><span class="hl-4">payload</span><span class="hl-0">.</span><span class="hl-4">status</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-5">setRemindVisible</span><span class="hl-0">(</span><span class="hl-4">status</span><span class="hl-0"> === </span><span class="hl-6">'INACTIVE'</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-5">setPlaygroundStatus</span><span class="hl-0">(</span><span class="hl-4">payload</span><span class="hl-0">.</span><span class="hl-4">status</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">break</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-3">case</span><span class="hl-0"> </span><span class="hl-4">Messages</span><span class="hl-0">.</span><span class="hl-4">PlaygroundChanged</span><span class="hl-0">:</span><br/><span class="hl-0"> </span><span class="hl-5">setRemindVisible</span><span class="hl-0">(</span><span class="hl-1">false</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">break</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-3">case</span><span class="hl-0"> </span><span class="hl-4">Messages</span><span class="hl-0">.</span><span class="hl-4">LspStatusChanged</span><span class="hl-0">:</span><br/><span class="hl-0"> </span><span class="hl-4">lspStatus</span><span class="hl-0"> = </span><span class="hl-4">payload</span><span class="hl-0">.</span><span class="hl-4">status</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-5">setLspStatus</span><span class="hl-0">(</span><span class="hl-4">lspStatus</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">break</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-3">case</span><span class="hl-0"> </span><span class="hl-4">Messages</span><span class="hl-0">.</span><span class="hl-4">RunStatusChanged</span><span class="hl-0">:</span><br/><span class="hl-0"> </span><span class="hl-4">dockerStatus</span><span class="hl-0"> = </span><span class="hl-4">payload</span><span class="hl-0">.</span><span class="hl-4">status</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-5">setDockerStatus</span><span class="hl-0">(</span><span class="hl-4">dockerStatus</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">if</span><span class="hl-0"> (</span><span class="hl-4">dockerStatus</span><span class="hl-0"> != </span><span class="hl-6">'STOP'</span><span class="hl-0">) {</span><br/><span class="hl-0"> </span><span class="hl-3">return</span><span class="hl-0">;</span><br/><span class="hl-0"> }</span><br/><span class="hl-0"> </span><span class="hl-3">if</span><span class="hl-0"> (</span><span class="hl-4">payload</span><span class="hl-0">.</span><span class="hl-4">runResult</span><span class="hl-0"> === </span><span class="hl-9">0</span><span class="hl-0">) {</span><br/><span class="hl-0"> </span><span class="hl-4">console</span><span class="hl-0">.</span><span class="hl-5">log</span><span class="hl-0">(</span><span class="hl-6">`运行结果成功`</span><span class="hl-0">);</span><br/><span class="hl-0"> } </span><span class="hl-3">else</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">console</span><span class="hl-0">.</span><span class="hl-5">warn</span><span class="hl-0">(</span><span class="hl-6">`运行结果失败: </span><span class="hl-1">${</span><span class="hl-4">payload</span><span class="hl-10">.</span><span class="hl-4">runResult</span><span class="hl-1">}</span><span class="hl-6">`</span><span class="hl-0">);</span><br/><span class="hl-0"> }</span><br/><span class="hl-0"> </span><span class="hl-3">break</span><span class="hl-0">;</span><br/><span class="hl-0"> }</span><br/><span class="hl-0"> });</span><br/><span class="hl-0"> </span><span class="hl-7">// 监听报错消息</span><br/><span class="hl-0"> </span><span class="hl-4">dao</span><span class="hl-0">.</span><span class="hl-5">onError</span><span class="hl-0">((</span><span class="hl-4">message</span><span class="hl-0">: </span><span class="hl-11">Message</span><span class="hl-0">) </span><span class="hl-1">=></span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> { </span><span class="hl-2">name</span><span class="hl-0">, </span><span class="hl-2">error</span><span class="hl-0"> } = </span><span class="hl-4">message</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-3">switch</span><span class="hl-0"> (</span><span class="hl-4">name</span><span class="hl-0">) {</span><br/><span class="hl-0"> </span><span class="hl-3">case</span><span class="hl-0"> </span><span class="hl-4">Messages</span><span class="hl-0">.</span><span class="hl-4">ConnectionBroken</span><span class="hl-0">:</span><br/><span class="hl-0"> </span><span class="hl-4">console</span><span class="hl-0">.</span><span class="hl-5">error</span><span class="hl-0">(</span><span class="hl-4">error</span><span class="hl-0">, </span><span class="hl-9">0</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">break</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-3">case</span><span class="hl-0"> </span><span class="hl-4">Messages</span><span class="hl-0">.</span><span class="hl-4">AuthorizationFailed</span><span class="hl-0">:</span><br/><span class="hl-0"> </span><span class="hl-4">console</span><span class="hl-0">.</span><span class="hl-5">error</span><span class="hl-0">(</span><span class="hl-4">error</span><span class="hl-0">, </span><span class="hl-9">0</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">break</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-3">case</span><span class="hl-0"> </span><span class="hl-6">'errorFromServer'</span><span class="hl-0">:</span><br/><span class="hl-0"> </span><span class="hl-4">console</span><span class="hl-0">.</span><span class="hl-5">log</span><span class="hl-0">(</span><span class="hl-6">'连接运行环境已经停止'</span><span class="hl-0">)</span><br/><span class="hl-0"> </span><span class="hl-4">console</span><span class="hl-0">.</span><span class="hl-5">error</span><span class="hl-0">(</span><span class="hl-4">error</span><span class="hl-0">, </span><span class="hl-9">0</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">break</span><span class="hl-0">;</span><br/><span class="hl-0"> }</span><br/><span class="hl-0"> });</span><br/><span class="hl-0"> </span><span class="hl-7">// 挂载实例组件</span><br/><span class="hl-0"> </span><span class="hl-4">dao</span><span class="hl-0">.</span><span class="hl-5">mapRender</span><span class="hl-0">([</span><br/><span class="hl-0"> { </span><span class="hl-4">container:</span><span class="hl-0"> </span><span class="hl-6">'.tree-section'</span><span class="hl-0">, </span><span class="hl-4">item:</span><span class="hl-0"> </span><span class="hl-6">'Tree'</span><span class="hl-0">},</span><br/><span class="hl-0"> { </span><span class="hl-4">container:</span><span class="hl-0"> </span><span class="hl-6">'.editor-section'</span><span class="hl-0">, </span><span class="hl-4">item:</span><span class="hl-0"> </span><span class="hl-6">'Editor'</span><span class="hl-0">},</span><br/><span class="hl-0"> { </span><span class="hl-4">container:</span><span class="hl-0"> </span><span class="hl-6">'.browser-section'</span><span class="hl-0">, </span><span class="hl-4">item:</span><span class="hl-0"> </span><span class="hl-6">'Browser'</span><span class="hl-0">},</span><br/><span class="hl-0"> { </span><span class="hl-4">container:</span><span class="hl-0"> </span><span class="hl-6">'.terminal-section'</span><span class="hl-0">, </span><span class="hl-4">item:</span><span class="hl-0"> </span><span class="hl-6">'Shell'</span><span class="hl-0">},</span><br/><span class="hl-0"> { </span><span class="hl-4">container:</span><span class="hl-0"> </span><span class="hl-6">'.console-section'</span><span class="hl-0">, </span><span class="hl-4">item:</span><span class="hl-0"> </span><span class="hl-6">'Console'</span><span class="hl-0">},</span><br/><span class="hl-0"> ]);</span><br/><span class="hl-0"> };</span><br/><span class="hl-0"> </span><span class="hl-7">// 语法补全连接状态</span><br/><span class="hl-0"> </span><span class="hl-1">function</span><span class="hl-0"> </span><span class="hl-5">useLspStatus</span><span class="hl-0">() {</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> [</span><span class="hl-2">lspStatus</span><span class="hl-0">, </span><span class="hl-2">setLspStatus</span><span class="hl-0">] = </span><span class="hl-5">useState</span><span class="hl-0"><</span><span class="hl-11">LspStatusEnum</span><span class="hl-0">>(</span><br/><span class="hl-0"> </span><span class="hl-4">LspStatusEnum</span><span class="hl-0">.</span><span class="hl-2">LOADING</span><span class="hl-0">,</span><br/><span class="hl-0"> );</span><br/><span class="hl-0"> </span><span class="hl-1">function</span><span class="hl-0"> </span><span class="hl-5">LspStatusFC</span><span class="hl-0">() {</span><br/><span class="hl-0"> </span><span class="hl-1">const</span><span class="hl-0"> </span><span class="hl-2">textMap</span><span class="hl-0"> = {</span><br/><span class="hl-0"> </span><span class="hl-4">[LspStatusEnum.</span><span class="hl-2">NOT_SUPPORT</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'不支持'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[LspStatusEnum.</span><span class="hl-2">LOADING</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'连接中'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[LspStatusEnum.</span><span class="hl-2">RUNNING</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'运行中'</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">[LspStatusEnum.</span><span class="hl-2">SHUTDOWN</span><span class="hl-4">]:</span><span class="hl-0"> </span><span class="hl-6">'已关闭'</span><span class="hl-0">,</span><br/><span class="hl-0"> };</span><br/><span class="hl-0"> </span><span class="hl-3">return</span><span class="hl-0"> (</span><br/><span class="hl-0"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-19">></span><span class="hl-0"> 代码补全·(</span><span class="hl-1">{</span><span class="hl-4">textMap</span><span class="hl-10">[</span><span class="hl-4">lspStatus</span><span class="hl-10">]</span><span class="hl-1">}</span><span class="hl-0">)</span><span class="hl-19"></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-0"> );</span><br/><span class="hl-0"> }</span><br/><span class="hl-0"> </span><span class="hl-3">return</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">setLspStatus</span><span class="hl-0">,</span><br/><span class="hl-0"> </span><span class="hl-4">LspStatusFC</span><span class="hl-0">,</span><br/><span class="hl-0"> };</span><br/><span class="hl-0"> }</span><br/><span class="hl-0"> </span><span class="hl-5">useEffect</span><span class="hl-0">(() </span><span class="hl-1">=></span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-5">initSDK</span><span class="hl-0">();</span><br/><span class="hl-0"> </span><span class="hl-3">return</span><span class="hl-0"> () </span><span class="hl-1">=></span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-7">// 在页面卸载的时候需要销毁实例和相关的缓存数据</span><br/><span class="hl-0"> </span><span class="hl-4">daoPaasObj</span><span class="hl-0"> && </span><span class="hl-4">daoPaasObj</span><span class="hl-0">.</span><span class="hl-5">dispose</span><span class="hl-0">();</span><br/><span class="hl-0"> </span><span class="hl-5">setDaoPaasObj</span><span class="hl-0">(</span><span class="hl-1">null</span><span class="hl-0">);</span><br/><span class="hl-0"> };</span><br/><span class="hl-0"> }, []);</span><br/><span class="hl-0"> </span><span class="hl-3">return</span><span class="hl-0"> (</span><br/><span class="hl-0"> </span><span class="hl-19"><></span><br/><span class="hl-0"> </span><span class="hl-1">{</span><span class="hl-4">remindVisible</span><span class="hl-10"> </span><span class="hl-0">&&</span><span class="hl-10"> </span><span class="hl-19"><</span><span class="hl-20">button</span><br/><span class="hl-10"> </span><span class="hl-17">onClick</span><span class="hl-0">=</span><span class="hl-1">{</span><span class="hl-10">() </span><span class="hl-1">=></span><span class="hl-10"> {</span><br/><span class="hl-10"> </span><span class="hl-4">daoPaasObj</span><span class="hl-10">?.</span><span class="hl-5">activePlayground</span><span class="hl-10">();</span><br/><span class="hl-10"> </span><span class="hl-5">setRemindVisible</span><span class="hl-10">(</span><span class="hl-1">false</span><span class="hl-10">);</span><br/><span class="hl-10"> }</span><span class="hl-1">}</span><br/><span class="hl-10"> </span><span class="hl-19">></span><br/><span class="hl-10"> 容器状态为失活,点击确认激活容器</span><br/><span class="hl-10"> </span><span class="hl-19"></</span><span class="hl-20">button</span><span class="hl-19">></span><span class="hl-1">}</span><br/><span class="hl-0"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-0"> </span><span class="hl-19"><</span><span class="hl-11">LspStatusFC</span><span class="hl-0"> </span><span class="hl-19">/></span><br/><span class="hl-0"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-0"> </span><span class="hl-1">{</span><span class="hl-4">playgroundStatus</span><span class="hl-10"> </span><span class="hl-0">!==</span><span class="hl-10"> </span><span class="hl-6">'ACTIVE'</span><span class="hl-10"> </span><span class="hl-0">?</span><span class="hl-10"> (</span><br/><span class="hl-10"> </span><span class="hl-19"><</span><span class="hl-20">button</span><span class="hl-10"> </span><span class="hl-17">onClick</span><span class="hl-0">=</span><span class="hl-1">{</span><span class="hl-10">() </span><span class="hl-1">=></span><span class="hl-10"> </span><span class="hl-4">daoPaasObj</span><span class="hl-10">?.</span><span class="hl-5">activePlayground</span><span class="hl-10">() </span><span class="hl-1">}</span><span class="hl-19">></span><span class="hl-10">激活</span><span class="hl-19"></</span><span class="hl-20">button</span><span class="hl-19">></span><br/><span class="hl-10"> ) </span><span class="hl-0">:</span><span class="hl-10"> (</span><br/><span class="hl-10"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-19">></span><span class="hl-10">已激活</span><span class="hl-19"></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-10"> )</span><span class="hl-1">}</span><br/><span class="hl-0"> </span><span class="hl-1">{</span><span class="hl-4">dockerStatus</span><span class="hl-10"> </span><span class="hl-0">!==</span><span class="hl-10"> </span><span class="hl-6">'RUNNING'</span><span class="hl-10"> </span><span class="hl-0">?</span><span class="hl-10"> (</span><br/><span class="hl-10"> </span><span class="hl-19"><</span><span class="hl-20">button</span><br/><span class="hl-10"> </span><span class="hl-17">disabled</span><span class="hl-0">=</span><span class="hl-1">{</span><span class="hl-4">playgroundStatus</span><span class="hl-10"> </span><span class="hl-0">!==</span><span class="hl-10"> </span><span class="hl-6">'ACTIVE'</span><span class="hl-1">}</span><br/><span class="hl-10"> </span><span class="hl-17">onClick</span><span class="hl-0">=</span><span class="hl-1">{</span><span class="hl-10">() </span><span class="hl-1">=></span><span class="hl-10"> {</span><br/><span class="hl-10"> </span><span class="hl-4">daoPaasObj</span><span class="hl-10">?.</span><span class="hl-5">runPlayground</span><span class="hl-10">();</span><br/><span class="hl-10"> }</span><span class="hl-1">}</span><br/><span class="hl-10"> </span><span class="hl-19">></span><br/><span class="hl-10"> 运行</span><br/><span class="hl-10"> </span><span class="hl-19"></</span><span class="hl-20">button</span><span class="hl-19">></span><br/><span class="hl-10"> ) </span><span class="hl-0">:</span><span class="hl-10"> (</span><br/><span class="hl-10"> </span><span class="hl-19"><</span><span class="hl-20">button</span><br/><span class="hl-10"> </span><span class="hl-17">disabled</span><span class="hl-0">=</span><span class="hl-1">{</span><span class="hl-4">playgroundStatus</span><span class="hl-10"> </span><span class="hl-0">!==</span><span class="hl-10"> </span><span class="hl-6">'ACTIVE'</span><span class="hl-1">}</span><br/><span class="hl-10"> </span><span class="hl-17">onClick</span><span class="hl-0">=</span><span class="hl-1">{</span><span class="hl-10">() </span><span class="hl-1">=></span><span class="hl-10"> </span><span class="hl-4">daoPaasObj</span><span class="hl-10">?.</span><span class="hl-5">stopPlayground</span><span class="hl-10">()</span><span class="hl-1">}</span><br/><span class="hl-10"> </span><span class="hl-19">></span><br/><span class="hl-10"> 停止</span><br/><span class="hl-10"> </span><span class="hl-19"></</span><span class="hl-20">button</span><span class="hl-19">></span><br/><span class="hl-10"> )</span><span class="hl-1">}</span><br/><span class="hl-0"> </span><span class="hl-19"></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-0"> </span><span class="hl-19"></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-0"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-0"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-0"> </span><span class="hl-17">className</span><span class="hl-0">=</span><span class="hl-6">"tree-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-0"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-0"> </span><span class="hl-17">className</span><span class="hl-0">=</span><span class="hl-6">"editor-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-0"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-0"> </span><span class="hl-17">className</span><span class="hl-0">=</span><span class="hl-6">"browser-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-0"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-0"> </span><span class="hl-17">className</span><span class="hl-0">=</span><span class="hl-6">"console-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-0"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-0"> </span><span class="hl-17">className</span><span class="hl-0">=</span><span class="hl-6">"terminal-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-0"> </span><span class="hl-19"></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-0"> </span><span class="hl-19"></></span><br/><span class="hl-0"> );</span><br/><span class="hl-0">}</span>
|
|
3137
|
+
<pre><code class="language-tsx"><span class="hl-7">import</span><span class="hl-1"> </span><span class="hl-5">React</span><span class="hl-1">, { </span><span class="hl-5">useEffect</span><span class="hl-1">, </span><span class="hl-5">useState</span><span class="hl-1"> } </span><span class="hl-7">from</span><span class="hl-1"> </span><span class="hl-8">'react'</span><span class="hl-1">;</span><br/><span class="hl-7">import</span><span class="hl-1"> { </span><span class="hl-5">DaoPaaS</span><span class="hl-1">, </span><span class="hl-5">Messages</span><span class="hl-1"> } </span><span class="hl-7">from</span><span class="hl-1"> </span><span class="hl-8">'~/DaoPaaS'</span><span class="hl-1">;</span><br/><br/><span class="hl-0">enum</span><span class="hl-1"> </span><span class="hl-6">LspStatusEnum</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-2">NOT_SUPPORT</span><span class="hl-1"> = </span><span class="hl-8">'notSupport'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">LOADING</span><span class="hl-1"> = </span><span class="hl-8">'loading'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">RUNNING</span><span class="hl-1"> = </span><span class="hl-8">'running'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">SHUTDOWN</span><span class="hl-1"> = </span><span class="hl-8">'shutdown'</span><span class="hl-1">,</span><br/><span class="hl-1">}</span><br/><br/><span class="hl-7">export</span><span class="hl-1"> </span><span class="hl-7">default</span><span class="hl-1"> </span><span class="hl-0">function</span><span class="hl-1"> </span><span class="hl-3">SimpleExample</span><span class="hl-1">({</span><span class="hl-5">environmentVerId</span><span class="hl-1">}) {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> [</span><span class="hl-2">daoPaasObj</span><span class="hl-1">, </span><span class="hl-2">setDaoPaasObj</span><span class="hl-1">] = </span><span class="hl-3">useState</span><span class="hl-1"><</span><span class="hl-6">DaoPaaS</span><span class="hl-1"> | </span><span class="hl-6">null</span><span class="hl-1">>(</span><span class="hl-0">null</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> [</span><span class="hl-2">playgroundStatus</span><span class="hl-1">, </span><span class="hl-2">setPlaygroundStatus</span><span class="hl-1">] =</span><br/><span class="hl-1"> </span><span class="hl-3">useState</span><span class="hl-1"><</span><span class="hl-6">PlaygroundStatus</span><span class="hl-1">>(</span><span class="hl-8">'EMPTY'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> [</span><span class="hl-2">dockerStatus</span><span class="hl-1">, </span><span class="hl-2">setDockerStatus</span><span class="hl-1">] = </span><span class="hl-3">useState</span><span class="hl-1"><</span><span class="hl-6">DockerStatus</span><span class="hl-1">>(</span><span class="hl-8">'STOP'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> {</span><span class="hl-2">setLspStatus</span><span class="hl-1">, </span><span class="hl-2">LspStatusFC</span><span class="hl-1">} = </span><span class="hl-3">useLspStatus</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> [</span><span class="hl-2">remindVisible</span><span class="hl-1">, </span><span class="hl-2">setRemindVisible</span><span class="hl-1">] = </span><span class="hl-3">useState</span><span class="hl-1">(</span><span class="hl-0">false</span><span class="hl-1">);</span><br/><br/><span class="hl-1"> </span><span class="hl-4">// SDK初始化</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-3">initSDK</span><span class="hl-1"> = </span><span class="hl-0">async</span><span class="hl-1"> () </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'开始连接运行环境...'</span><span class="hl-1">)</span><br/><span class="hl-1"> </span><span class="hl-4">// 获取ticket(票)</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">ticket</span><span class="hl-1"> = </span><span class="hl-3">handleGetTicket</span><span class="hl-1">(</span><span class="hl-5">environmentVerId</span><span class="hl-1">)</span><br/><span class="hl-1"> </span><span class="hl-4">// 生成实例</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">dao</span><span class="hl-1"> = </span><span class="hl-0">new</span><span class="hl-1"> </span><span class="hl-3">DaoPaaS</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-5">paasDomain:</span><span class="hl-1"> </span><span class="hl-8">'www.1024paas.com'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">tenantId:</span><span class="hl-1"> </span><span class="hl-8">'请输入租户id'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">ticket:</span><span class="hl-1"> </span><span class="hl-5">ticket</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">userInfo:</span><span class="hl-1"> { </span><span class="hl-5">username:</span><span class="hl-1"> </span><span class="hl-8">"***"</span><span class="hl-1"> },</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> </span><span class="hl-4">// 保存实例</span><br/><span class="hl-1"> </span><span class="hl-3">setDaoPaasObj</span><span class="hl-1">(</span><span class="hl-5">dao</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-4">// 监听消息</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onMessage</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">payload</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">status</span><span class="hl-1">: </span><span class="hl-6">PlaygroundStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">dockerStatus</span><span class="hl-1">: </span><span class="hl-6">DockerStatus</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-0">let</span><span class="hl-1"> </span><span class="hl-5">lspStatus</span><span class="hl-1">: </span><span class="hl-6">LspStatusEnum</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">Ready</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'连接运行环境已经停止'</span><span class="hl-1">)</span><br/><span class="hl-1"> </span><span class="hl-3">setRemindVisible</span><span class="hl-1">(</span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-5">playgroundInfo</span><span class="hl-1">.</span><span class="hl-5">status</span><span class="hl-1"> === </span><span class="hl-8">'INACTIVE'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">setPlaygroundStatus</span><span class="hl-1">(</span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-5">playgroundInfo</span><span class="hl-1">.</span><span class="hl-5">status</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">setLspStatus</span><span class="hl-1">(</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-5">playgroundInfo</span><span class="hl-1">.</span><span class="hl-5">lspStatus</span><span class="hl-1"> </span><span class="hl-7">as</span><span class="hl-1"> </span><span class="hl-6">LspStatusEnum</span><span class="hl-1">,</span><br/><span class="hl-1"> );</span><br/><span class="hl-1"> </span><span class="hl-3">setDockerStatus</span><span class="hl-1">(</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-5">playgroundInfo</span><span class="hl-1">.</span><span class="hl-5">runStatus</span><span class="hl-1"> </span><span class="hl-7">as</span><span class="hl-1"> </span><span class="hl-6">DockerStatus</span><span class="hl-1">,</span><br/><span class="hl-1"> );</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">Online</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'网络已恢复'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'连接运行环境已经停止'</span><span class="hl-1">)</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">Offline</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'网络掉线'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">StatusChanged</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">status</span><span class="hl-1"> = </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">status</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-3">setRemindVisible</span><span class="hl-1">(</span><span class="hl-5">status</span><span class="hl-1"> === </span><span class="hl-8">'INACTIVE'</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-3">setPlaygroundStatus</span><span class="hl-1">(</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">status</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">PlaygroundChanged</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-3">setRemindVisible</span><span class="hl-1">(</span><span class="hl-0">false</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">LspStatusChanged</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">lspStatus</span><span class="hl-1"> = </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">status</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-3">setLspStatus</span><span class="hl-1">(</span><span class="hl-5">lspStatus</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">RunStatusChanged</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">dockerStatus</span><span class="hl-1"> = </span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">status</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-3">setDockerStatus</span><span class="hl-1">(</span><span class="hl-5">dockerStatus</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">dockerStatus</span><span class="hl-1"> != </span><span class="hl-8">'STOP'</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">if</span><span class="hl-1"> (</span><span class="hl-5">payload</span><span class="hl-1">.</span><span class="hl-5">runResult</span><span class="hl-1"> === </span><span class="hl-10">0</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">`运行结果成功`</span><span class="hl-1">);</span><br/><span class="hl-1"> } </span><span class="hl-7">else</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">warn</span><span class="hl-1">(</span><span class="hl-8">`运行结果失败: </span><span class="hl-0">${</span><span class="hl-5">payload</span><span class="hl-11">.</span><span class="hl-5">runResult</span><span class="hl-0">}</span><span class="hl-8">`</span><span class="hl-1">);</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> </span><span class="hl-4">// 监听报错消息</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">onError</span><span class="hl-1">((</span><span class="hl-5">message</span><span class="hl-1">: </span><span class="hl-6">Message</span><span class="hl-1">) </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> { </span><span class="hl-2">name</span><span class="hl-1">, </span><span class="hl-2">error</span><span class="hl-1"> } = </span><span class="hl-5">message</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">switch</span><span class="hl-1"> (</span><span class="hl-5">name</span><span class="hl-1">) {</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">ConnectionBroken</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-5">error</span><span class="hl-1">, </span><span class="hl-10">0</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-5">Messages</span><span class="hl-1">.</span><span class="hl-5">AuthorizationFailed</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-5">error</span><span class="hl-1">, </span><span class="hl-10">0</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> </span><span class="hl-7">case</span><span class="hl-1"> </span><span class="hl-8">'errorFromServer'</span><span class="hl-1">:</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">log</span><span class="hl-1">(</span><span class="hl-8">'连接运行环境已经停止'</span><span class="hl-1">)</span><br/><span class="hl-1"> </span><span class="hl-5">console</span><span class="hl-1">.</span><span class="hl-3">error</span><span class="hl-1">(</span><span class="hl-5">error</span><span class="hl-1">, </span><span class="hl-10">0</span><span class="hl-1">);</span><br/><span class="hl-1"> </span><span class="hl-7">break</span><span class="hl-1">;</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> });</span><br/><span class="hl-1"> </span><span class="hl-4">// 挂载实例组件</span><br/><span class="hl-1"> </span><span class="hl-5">dao</span><span class="hl-1">.</span><span class="hl-3">mapRender</span><span class="hl-1">([</span><br/><span class="hl-1"> { </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.tree-section'</span><span class="hl-1">, </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Tree'</span><span class="hl-1">},</span><br/><span class="hl-1"> { </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.editor-section'</span><span class="hl-1">, </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Editor'</span><span class="hl-1">},</span><br/><span class="hl-1"> { </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.browser-section'</span><span class="hl-1">, </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Browser'</span><span class="hl-1">},</span><br/><span class="hl-1"> { </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.terminal-section'</span><span class="hl-1">, </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Shell'</span><span class="hl-1">},</span><br/><span class="hl-1"> { </span><span class="hl-5">container:</span><span class="hl-1"> </span><span class="hl-8">'.console-section'</span><span class="hl-1">, </span><span class="hl-5">item:</span><span class="hl-1"> </span><span class="hl-8">'Console'</span><span class="hl-1">},</span><br/><span class="hl-1"> ]);</span><br/><span class="hl-1"> };</span><br/><span class="hl-1"> </span><span class="hl-4">// 语法补全连接状态</span><br/><span class="hl-1"> </span><span class="hl-0">function</span><span class="hl-1"> </span><span class="hl-3">useLspStatus</span><span class="hl-1">() {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> [</span><span class="hl-2">lspStatus</span><span class="hl-1">, </span><span class="hl-2">setLspStatus</span><span class="hl-1">] = </span><span class="hl-3">useState</span><span class="hl-1"><</span><span class="hl-6">LspStatusEnum</span><span class="hl-1">>(</span><br/><span class="hl-1"> </span><span class="hl-5">LspStatusEnum</span><span class="hl-1">.</span><span class="hl-2">LOADING</span><span class="hl-1">,</span><br/><span class="hl-1"> );</span><br/><span class="hl-1"> </span><span class="hl-0">function</span><span class="hl-1"> </span><span class="hl-3">LspStatusFC</span><span class="hl-1">() {</span><br/><span class="hl-1"> </span><span class="hl-0">const</span><span class="hl-1"> </span><span class="hl-2">textMap</span><span class="hl-1"> = {</span><br/><span class="hl-1"> </span><span class="hl-5">[LspStatusEnum.</span><span class="hl-2">NOT_SUPPORT</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'不支持'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[LspStatusEnum.</span><span class="hl-2">LOADING</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'连接中'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[LspStatusEnum.</span><span class="hl-2">RUNNING</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'运行中'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">[LspStatusEnum.</span><span class="hl-2">SHUTDOWN</span><span class="hl-5">]:</span><span class="hl-1"> </span><span class="hl-8">'已关闭'</span><span class="hl-1">,</span><br/><span class="hl-1"> };</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> (</span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-19">></span><span class="hl-1"> 代码补全·(</span><span class="hl-0">{</span><span class="hl-5">textMap</span><span class="hl-11">[</span><span class="hl-5">lspStatus</span><span class="hl-11">]</span><span class="hl-0">}</span><span class="hl-1">)</span><span class="hl-19"></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> );</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-5">setLspStatus</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">LspStatusFC</span><span class="hl-1">,</span><br/><span class="hl-1"> };</span><br/><span class="hl-1"> }</span><br/><span class="hl-1"> </span><span class="hl-3">useEffect</span><span class="hl-1">(() </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-3">initSDK</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> () </span><span class="hl-0">=></span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">// 在页面卸载的时候需要销毁实例和相关的缓存数据</span><br/><span class="hl-1"> </span><span class="hl-5">daoPaasObj</span><span class="hl-1"> && </span><span class="hl-5">daoPaasObj</span><span class="hl-1">.</span><span class="hl-3">dispose</span><span class="hl-1">();</span><br/><span class="hl-1"> </span><span class="hl-3">setDaoPaasObj</span><span class="hl-1">(</span><span class="hl-0">null</span><span class="hl-1">);</span><br/><span class="hl-1"> };</span><br/><span class="hl-1"> }, []);</span><br/><span class="hl-1"> </span><span class="hl-7">return</span><span class="hl-1"> (</span><br/><span class="hl-1"> </span><span class="hl-19"><></span><br/><span class="hl-1"> </span><span class="hl-0">{</span><span class="hl-5">remindVisible</span><span class="hl-11"> </span><span class="hl-1">&&</span><span class="hl-11"> </span><span class="hl-19"><</span><span class="hl-20">button</span><br/><span class="hl-11"> </span><span class="hl-17">onClick</span><span class="hl-1">=</span><span class="hl-0">{</span><span class="hl-11">() </span><span class="hl-0">=></span><span class="hl-11"> {</span><br/><span class="hl-11"> </span><span class="hl-5">daoPaasObj</span><span class="hl-11">?.</span><span class="hl-3">activePlayground</span><span class="hl-11">();</span><br/><span class="hl-11"> </span><span class="hl-3">setRemindVisible</span><span class="hl-11">(</span><span class="hl-0">false</span><span class="hl-11">);</span><br/><span class="hl-11"> }</span><span class="hl-0">}</span><br/><span class="hl-11"> </span><span class="hl-19">></span><br/><span class="hl-11"> 容器状态为失活,点击确认激活容器</span><br/><span class="hl-11"> </span><span class="hl-19"></</span><span class="hl-20">button</span><span class="hl-19">></span><span class="hl-0">}</span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-6">LspStatusFC</span><span class="hl-1"> </span><span class="hl-19">/></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-0">{</span><span class="hl-5">playgroundStatus</span><span class="hl-11"> </span><span class="hl-1">!==</span><span class="hl-11"> </span><span class="hl-8">'ACTIVE'</span><span class="hl-11"> </span><span class="hl-1">?</span><span class="hl-11"> (</span><br/><span class="hl-11"> </span><span class="hl-19"><</span><span class="hl-20">button</span><span class="hl-11"> </span><span class="hl-17">onClick</span><span class="hl-1">=</span><span class="hl-0">{</span><span class="hl-11">() </span><span class="hl-0">=></span><span class="hl-11"> </span><span class="hl-5">daoPaasObj</span><span class="hl-11">?.</span><span class="hl-3">activePlayground</span><span class="hl-11">() </span><span class="hl-0">}</span><span class="hl-19">></span><span class="hl-11">激活</span><span class="hl-19"></</span><span class="hl-20">button</span><span class="hl-19">></span><br/><span class="hl-11"> ) </span><span class="hl-1">:</span><span class="hl-11"> (</span><br/><span class="hl-11"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-19">></span><span class="hl-11">已激活</span><span class="hl-19"></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-11"> )</span><span class="hl-0">}</span><br/><span class="hl-1"> </span><span class="hl-0">{</span><span class="hl-5">dockerStatus</span><span class="hl-11"> </span><span class="hl-1">!==</span><span class="hl-11"> </span><span class="hl-8">'RUNNING'</span><span class="hl-11"> </span><span class="hl-1">?</span><span class="hl-11"> (</span><br/><span class="hl-11"> </span><span class="hl-19"><</span><span class="hl-20">button</span><br/><span class="hl-11"> </span><span class="hl-17">disabled</span><span class="hl-1">=</span><span class="hl-0">{</span><span class="hl-5">playgroundStatus</span><span class="hl-11"> </span><span class="hl-1">!==</span><span class="hl-11"> </span><span class="hl-8">'ACTIVE'</span><span class="hl-0">}</span><br/><span class="hl-11"> </span><span class="hl-17">onClick</span><span class="hl-1">=</span><span class="hl-0">{</span><span class="hl-11">() </span><span class="hl-0">=></span><span class="hl-11"> {</span><br/><span class="hl-11"> </span><span class="hl-5">daoPaasObj</span><span class="hl-11">?.</span><span class="hl-3">runPlayground</span><span class="hl-11">();</span><br/><span class="hl-11"> }</span><span class="hl-0">}</span><br/><span class="hl-11"> </span><span class="hl-19">></span><br/><span class="hl-11"> 运行</span><br/><span class="hl-11"> </span><span class="hl-19"></</span><span class="hl-20">button</span><span class="hl-19">></span><br/><span class="hl-11"> ) </span><span class="hl-1">:</span><span class="hl-11"> (</span><br/><span class="hl-11"> </span><span class="hl-19"><</span><span class="hl-20">button</span><br/><span class="hl-11"> </span><span class="hl-17">disabled</span><span class="hl-1">=</span><span class="hl-0">{</span><span class="hl-5">playgroundStatus</span><span class="hl-11"> </span><span class="hl-1">!==</span><span class="hl-11"> </span><span class="hl-8">'ACTIVE'</span><span class="hl-0">}</span><br/><span class="hl-11"> </span><span class="hl-17">onClick</span><span class="hl-1">=</span><span class="hl-0">{</span><span class="hl-11">() </span><span class="hl-0">=></span><span class="hl-11"> </span><span class="hl-5">daoPaasObj</span><span class="hl-11">?.</span><span class="hl-3">stopPlayground</span><span class="hl-11">()</span><span class="hl-0">}</span><br/><span class="hl-11"> </span><span class="hl-19">></span><br/><span class="hl-11"> 停止</span><br/><span class="hl-11"> </span><span class="hl-19"></</span><span class="hl-20">button</span><span class="hl-19">></span><br/><span class="hl-11"> )</span><span class="hl-0">}</span><br/><span class="hl-1"> </span><span class="hl-19"></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-1"> </span><span class="hl-17">className</span><span class="hl-1">=</span><span class="hl-8">"tree-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-1"> </span><span class="hl-17">className</span><span class="hl-1">=</span><span class="hl-8">"editor-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-1"> </span><span class="hl-17">className</span><span class="hl-1">=</span><span class="hl-8">"browser-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-1"> </span><span class="hl-17">className</span><span class="hl-1">=</span><span class="hl-8">"console-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"><</span><span class="hl-20">div</span><span class="hl-1"> </span><span class="hl-17">className</span><span class="hl-1">=</span><span class="hl-8">"terminal-section"</span><span class="hl-19">></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"></</span><span class="hl-20">div</span><span class="hl-19">></span><br/><span class="hl-1"> </span><span class="hl-19"></></span><br/><span class="hl-1"> );</span><br/><span class="hl-1">}</span>
|
|
3097
3138
|
</code></pre>
|
|
3098
3139
|
</div></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class="current"><a href="modules.html">Exports</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="tsd-kind-enum"><a href="enums/I18nLanguageType.html" class="tsd-kind-icon">I18n<wbr/>Language<wbr/>Type</a></li><li class="tsd-kind-enum"><a href="enums/Messages.html" class="tsd-kind-icon">Messages</a></li><li class="tsd-kind-enum"><a href="enums/ThemeType.html" class="tsd-kind-icon">Theme<wbr/>Type</a></li><li class="tsd-kind-interface"><a href="interfaces/Component.html" class="tsd-kind-icon">Component</a></li><li class="tsd-kind-interface"><a href="interfaces/I18nResourcesType.html" class="tsd-kind-icon">I18n<wbr/>Resources<wbr/>Type</a></li><li class="tsd-kind-interface"><a href="interfaces/IDaoPaaS.html" class="tsd-kind-icon">IDao<wbr/>PaaS</a></li><li class="tsd-kind-interface"><a href="interfaces/IExtralAction.html" class="tsd-kind-icon">IExtral<wbr/>Action</a></li><li class="tsd-kind-interface"><a href="interfaces/IXtermFontStyle.html" class="tsd-kind-icon">IXterm<wbr/>Font<wbr/>Style</a></li><li class="tsd-kind-interface"><a href="interfaces/PaaSOptions.html" class="tsd-kind-icon">PaaSOptions</a></li><li class="tsd-kind-interface"><a href="interfaces/XtermStyleType.html" class="tsd-kind-icon">Xterm<wbr/>Style<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#CodeSnippetOption" class="tsd-kind-icon">Code<wbr/>Snippet<wbr/>Option</a></li><li class="tsd-kind-type-alias"><a href="modules.html#CodeSnippetType" class="tsd-kind-icon">Code<wbr/>Snippet<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#ComponentType" class="tsd-kind-icon">Component<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#Config" class="tsd-kind-icon">Config</a></li><li class="tsd-kind-type-alias"><a href="modules.html#ContextMenu" class="tsd-kind-icon">Context<wbr/>Menu</a></li><li class="tsd-kind-type-alias"><a href="modules.html#ContextMenuItem" class="tsd-kind-icon">Context<wbr/>Menu<wbr/>Item</a></li><li class="tsd-kind-type-alias"><a href="modules.html#ContextMenuType" class="tsd-kind-icon">Context<wbr/>Menu<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#ContextMenuTypeItem" class="tsd-kind-icon">Context<wbr/>Menu<wbr/>Type<wbr/>Item</a></li><li class="tsd-kind-type-alias"><a href="modules.html#DockerStatus" class="tsd-kind-icon">Docker<wbr/>Status</a></li><li class="tsd-kind-type-alias"><a href="modules.html#EditorIndentMode" class="tsd-kind-icon">Editor<wbr/>Indent<wbr/>Mode</a></li><li class="tsd-kind-type-alias"><a href="modules.html#EditorMode" class="tsd-kind-icon">Editor<wbr/>Mode</a></li><li class="tsd-kind-type-alias"><a href="modules.html#FileHeaderType" class="tsd-kind-icon">File<wbr/>Header<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#GlobalConfig" class="tsd-kind-icon">Global<wbr/>Config</a></li><li class="tsd-kind-type-alias"><a href="modules.html#ICodeLanguage" class="tsd-kind-icon">ICode<wbr/>Language</a></li><li class="tsd-kind-type-alias"><a href="modules.html#IDebugStatus" class="tsd-kind-icon">IDebug<wbr/>Status</a></li><li class="tsd-kind-type-alias"><a href="modules.html#IOverrideParams" class="tsd-kind-icon">IOverride<wbr/>Params</a></li><li class="tsd-kind-type-alias"><a href="modules.html#ISpecialFileHighlight" class="tsd-kind-icon">ISpecial<wbr/>File<wbr/>Highlight</a></li><li class="tsd-kind-type-alias"><a href="modules.html#InsertCodeLineCode" class="tsd-kind-icon">Insert<wbr/>Code<wbr/>Line<wbr/>Code</a></li><li class="tsd-kind-type-alias"><a href="modules.html#Message" class="tsd-kind-icon">Message</a></li><li class="tsd-kind-type-alias"><a href="modules.html#PlaygroundStatus" class="tsd-kind-icon">Playground<wbr/>Status</a></li><li class="tsd-kind-type-alias"><a href="modules.html#ResultType" class="tsd-kind-icon">Result<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#TranslateType" class="tsd-kind-icon">Translate<wbr/>Type</a></li><li class="tsd-kind-type-alias"><a href="modules.html#TranslateTypeOption" class="tsd-kind-icon">Translate<wbr/>Type<wbr/>Option</a></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="assets/main.js"></script></body></html>
|