@dao42/d42paas-front 0.9.167 → 0.9.169

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 CHANGED
@@ -1,4 +1,110 @@
1
1
  # 更新日志
2
+ ## v0.9.169
3
+ ### 新增
4
+ + 新增打开文件默认聚焦`Editor`, 默认聚焦文件底部`BOTTOM`,并提供配置参数`focusEditorPosition`
5
+ ```ts
6
+ const dao = new DaoPaaS({
7
+ paasDomain:
8
+ process.env.PAAS_MANAGER_API_ORIGIN + (mockSdkInitFail ? '1' : ''),
9
+ tenantId: '3',
10
+ ticket: dataRes?.ticket,
11
+ openLspDiagnostic: true, // 默认是true,
12
+ focusEditorPosition: 'BOTTOM', // TOP | BOTTOM | number
13
+ ....
14
+ ```
15
+ + 新增文件打开完成事件`fileOpenDone`,用于处理文件打开完成后要处理的事情,如跳转到上次打开位置
16
+ ```ts
17
+ dao.onMessage((message: Message) => {
18
+ const { name, payload } = message;
19
+ let status: PlaygroundStatus;
20
+ let dockerStatus: DockerStatus;
21
+ let lspStatus: LspStatusEnum;
22
+ switch (name) {
23
+ case Messages.FileOpenDone: {
24
+ messageBox.info('FileOpenDone:' + JSON.stringify(payload));
25
+ const editorInfo = JSON.parse(
26
+ localStorage.getItem('UnFocusEditor') || '{}',
27
+ );
28
+ const prevOpenInfo = editorInfo[payload.openPath];
29
+ if (prevOpenInfo) {
30
+ // 定位光标
31
+ dao.focuseEditorByCursorPosition(
32
+ prevOpenInfo.openFile,
33
+ prevOpenInfo.cursorPosition,
34
+ );
35
+ }
36
+ break;
37
+ }
38
+ ```
39
+ + 新增`Editor`失去焦点事件,业务方可以在此事件记录对应文件上次编辑的位置
40
+ ```ts
41
+ case Messages.UnFocusEditor: {
42
+ messageBox.info('UnFocusEditor:' + JSON.stringify(payload));
43
+ const editorInfo = JSON.parse(
44
+ localStorage.getItem('UnFocusEditor') || '{}',
45
+ );
46
+ editorInfo[payload.openPath] = payload;
47
+ localStorage.setItem('UnFocusEditor', JSON.stringify(editorInfo));
48
+ break;
49
+ }
50
+ ```
51
+ + 新增跳转到指定文件的指定位置方法`focuseEditorByCursorPosition`,可以配合`FileOpenDone` 事件使用
52
+ ```ts
53
+ dao.focuseEditorByCursorPosition(
54
+ prevOpenInfo.openFile,
55
+ prevOpenInfo.cursorPosition,
56
+ );
57
+ ```
58
+ + 新增设置文件树指定路径文件样式`setFileStyle`
59
+ ```ts
60
+ daoPaasObj?.setFileStyle({
61
+ paths: ['a/b/c.js', 'a/c/c.js', 'c/index.js'],
62
+ styles: {
63
+ title: 'customizeTitle',
64
+ icon: 'customizeIcon',
65
+ arrowIcon: 'customizeArrowIcon',
66
+ background: 'customizeBackground',
67
+ },
68
+ });
69
+ ```
70
+ ### 修复
71
+ + 修复`C++`格式化代码问题
72
+ + 修复回放模式下显示跟随模式Icon问题
73
+ ## v0.9.168
74
+ ### 新增
75
+ + 添加跟随模式下,如果被跟随者打卡一个隐藏文件, 跟随着没有权限, 会广播对应的事件:
76
+ ```ts
77
+ dao.onMessage((message: Message) => {
78
+ const { name, payload } = message;
79
+ let status: PlaygroundStatus;
80
+ let dockerStatus: DockerStatus;
81
+ let lspStatus: LspStatusEnum;
82
+ switch (name) {
83
+ case 'openLimitFile': {
84
+ messageBox.success('OpenLimitFile: ' + JSON.stringify(payload));
85
+ break;
86
+ }
87
+ ...
88
+ setAgentUsers(payload.agentUsers);
89
+ if (payload.xtermKey) {
90
+ setActiveKey(payload.xtermKey);
91
+ }
92
+ break;
93
+ }
94
+ });
95
+ ```
96
+ ### 优化
97
+ + 优化`markdown`预览`postion`超出文档问题
98
+ + 优化非`ideserver`更新文件,文件被覆盖问题(vim编辑)
99
+ + 完善SDK注册事件日志上报
100
+ + 优化浏览器回放, 切换到不支持模式的时候, 浏览器组件重置默认页面效果
101
+ + 优化HTML模版不支持浏览器回放功能
102
+ + 优化链式跟随模式, 跟随名称的显示优化(A跟随B, B跟随C, 实际上是A链式跟随C,显示A看到的跟随名称是B)
103
+ + 优化跟随模式下,出题场景下, 切换角色时,面试官看不到隐藏文件问题
104
+ + 优化链式跟随模式下,不同用户来回切换文件问题
105
+ + 优化链式跟随模式下, `editor`滚动的跟随效果
106
+
107
+
2
108
  ## v0.9.167
3
109
  ### 新增
4
110
  + 新增`showRRwebController` 属性来控制RRWEB回放的播放控制器(用于业务方调试)