@ibiz-template/core 0.6.0 → 0.6.1-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/dist/index.esm.js +27 -21
  2. package/dist/index.system.min.js +1 -1
  3. package/out/interface/i-devtool-config/i-devtool-config.d.ts +7 -0
  4. package/out/interface/i-devtool-config/i-devtool-config.d.ts.map +1 -1
  5. package/out/utils/bit-mask/bit-mask.d.ts +27 -0
  6. package/out/utils/bit-mask/bit-mask.d.ts.map +1 -1
  7. package/out/utils/bit-mask/bit-mask.js +27 -0
  8. package/out/utils/color/color.d.ts.map +1 -1
  9. package/out/utils/color/color.js +8 -4
  10. package/out/utils/download-file/download-file.js +17 -17
  11. package/out/utils/string-util/string-util.d.ts +6 -0
  12. package/out/utils/string-util/string-util.d.ts.map +1 -1
  13. package/out/utils/string-util/string-util.js +6 -0
  14. package/out/utils/sync/await-timeout.d.ts +6 -0
  15. package/out/utils/sync/await-timeout.d.ts.map +1 -1
  16. package/out/utils/sync/await-timeout.js +6 -0
  17. package/out/utils/types/types.d.ts +3 -1
  18. package/out/utils/types/types.d.ts.map +1 -1
  19. package/out/utils/util/util.d.ts +137 -0
  20. package/out/utils/util/util.d.ts.map +1 -1
  21. package/out/utils/util/util.js +137 -0
  22. package/package.json +4 -5
  23. package/src/command/command-register.ts +0 -135
  24. package/src/command/command.ts +0 -79
  25. package/src/command/index.ts +0 -11
  26. package/src/command/interface/command/command-option.ts +0 -22
  27. package/src/command/interface/command/command.ts +0 -86
  28. package/src/command/interface/disposable/disposable.ts +0 -3
  29. package/src/command/interface/index.ts +0 -9
  30. package/src/command/utils/index.ts +0 -2
  31. package/src/command/utils/linked-list.ts +0 -136
  32. package/src/command/utils/util.ts +0 -95
  33. package/src/constant/core/core.ts +0 -63
  34. package/src/constant/http-status-message/http-status-message.ts +0 -20
  35. package/src/constant/index.ts +0 -5
  36. package/src/constant/login-mode/login-mode.ts +0 -23
  37. package/src/constant/menu-permission-mode/menu-permission-mode.ts +0 -23
  38. package/src/constant/util/util.ts +0 -5
  39. package/src/context/index.ts +0 -231
  40. package/src/environment/environment.ts +0 -39
  41. package/src/error/http-error/http-error.ts +0 -45
  42. package/src/error/index.ts +0 -5
  43. package/src/error/model-error/model-error.ts +0 -26
  44. package/src/error/notice-error/notice-error.ts +0 -19
  45. package/src/error/runtime-error/runtime-error.ts +0 -16
  46. package/src/error/runtime-model-error/runtime-model-error.ts +0 -27
  47. package/src/ibizsys.ts +0 -78
  48. package/src/index.ts +0 -14
  49. package/src/install.ts +0 -15
  50. package/src/interface/click-outside/click-outside.ts +0 -71
  51. package/src/interface/i-18n/i-18n.ts +0 -68
  52. package/src/interface/i-chat-message/i-chat-message.ts +0 -83
  53. package/src/interface/i-devtool-config/i-devtool-config.ts +0 -16
  54. package/src/interface/i-environment/i-environment.ts +0 -289
  55. package/src/interface/i-internal-message/i-internal-message.ts +0 -151
  56. package/src/interface/i-mark-open-data/i-mark-open-data.ts +0 -39
  57. package/src/interface/i-portal-async-action/i-portal-async-action.ts +0 -177
  58. package/src/interface/i-portal-message/i-portal-message.ts +0 -84
  59. package/src/interface/index.ts +0 -14
  60. package/src/interface/org-data/org-data.ts +0 -42
  61. package/src/params/params.ts +0 -134
  62. package/src/types.ts +0 -110
  63. package/src/utils/bit-mask/bit-mask.ts +0 -85
  64. package/src/utils/click-outside/click-outside.ts +0 -110
  65. package/src/utils/clone/clone.ts +0 -43
  66. package/src/utils/color/color.ts +0 -84
  67. package/src/utils/data-type/data-types.ts +0 -99
  68. package/src/utils/download-file/download-file.ts +0 -109
  69. package/src/utils/event/event.ts +0 -77
  70. package/src/utils/history-list/history-item.ts +0 -45
  71. package/src/utils/history-list/history-list.ts +0 -151
  72. package/src/utils/index.ts +0 -24
  73. package/src/utils/interceptor/core-interceptor.ts +0 -40
  74. package/src/utils/interceptor/index.ts +0 -2
  75. package/src/utils/interceptor/interceptor.ts +0 -126
  76. package/src/utils/logger/logger.ts +0 -10
  77. package/src/utils/message-center/base/message-all.ts +0 -12
  78. package/src/utils/message-center/base/message-base.ts +0 -86
  79. package/src/utils/message-center/command/async-action/command-async-action.ts +0 -24
  80. package/src/utils/message-center/command/change/command-change.ts +0 -12
  81. package/src/utils/message-center/command/command-base/command-base.ts +0 -30
  82. package/src/utils/message-center/command/create/command-create.ts +0 -24
  83. package/src/utils/message-center/command/internal-message/command-internal-message.ts +0 -24
  84. package/src/utils/message-center/command/mark-open-data/command-mark-open-data.ts +0 -24
  85. package/src/utils/message-center/command/message-command.ts +0 -158
  86. package/src/utils/message-center/command/remove/command-remove.ts +0 -24
  87. package/src/utils/message-center/command/update/command-update.ts +0 -24
  88. package/src/utils/message-center/console/message-console.ts +0 -31
  89. package/src/utils/message-center/index.ts +0 -1
  90. package/src/utils/message-center/interface/i-app-data-entity.ts +0 -19
  91. package/src/utils/message-center/interface/index.ts +0 -1
  92. package/src/utils/message-center/message-center.ts +0 -82
  93. package/src/utils/namespace/namespace.ts +0 -247
  94. package/src/utils/net/http-response.ts +0 -106
  95. package/src/utils/net/net.ts +0 -469
  96. package/src/utils/recursive/find-recursive-child.ts +0 -133
  97. package/src/utils/string-util/string-util.ts +0 -60
  98. package/src/utils/style/remote-style.ts +0 -20
  99. package/src/utils/sync/await-timeout.ts +0 -27
  100. package/src/utils/sync/count-latch.ts +0 -95
  101. package/src/utils/sync/index.ts +0 -2
  102. package/src/utils/types/types.ts +0 -22
  103. package/src/utils/upload/select-file.ts +0 -86
  104. package/src/utils/upload/upload-file.ts +0 -208
  105. package/src/utils/url-helper/url-helper.ts +0 -63
  106. package/src/utils/util/util.ts +0 -376
@@ -1,151 +0,0 @@
1
- import { clone } from 'ramda';
2
- import { HistoryItem } from './history-item';
3
-
4
- /**
5
- * 数据对象历史记录,只支持纯对象形式的数据。并未支持数组
6
- *
7
- * @author chitanda
8
- * @date 2023-12-28 17:12:05
9
- * @export
10
- * @class HistoryList
11
- */
12
- export class HistoryList<E = IData> {
13
- /**
14
- * 当前步骤的历史记录
15
- *
16
- * @author chitanda
17
- * @date 2023-12-28 20:12:08
18
- * @private
19
- * @type {(HistoryItem<E>)}
20
- */
21
- private _cur: HistoryItem<E>;
22
-
23
- /**
24
- * 当前的数据
25
- *
26
- * @author chitanda
27
- * @date 2023-12-28 18:12:27
28
- * @type {E}
29
- */
30
- get data(): E {
31
- return this._cur.data;
32
- }
33
-
34
- constructor(data: E) {
35
- this._cur = new HistoryItem<E>(data);
36
- }
37
-
38
- /**
39
- * 先创建一次历史记录,再赋值
40
- *
41
- * @author chitanda
42
- * @date 2023-12-28 17:12:05
43
- * @param {IData} data
44
- */
45
- assign(data: IData): void {
46
- if (data) {
47
- this.save();
48
- Object.assign(this._cur.data!, data);
49
- }
50
- }
51
-
52
- /**
53
- * 创建一次历史记录
54
- *
55
- * @author chitanda
56
- * @date 2023-12-28 20:12:13
57
- */
58
- save(): void {
59
- const oldCur = this._cur;
60
- // 克隆当前数据对象
61
- const data = clone(oldCur.data);
62
- // 新的历史对象
63
- const history = new HistoryItem<E>(data);
64
- // 设置新历史的上一次历史为当前历史
65
- history._prev = oldCur;
66
- // 将下一步的前一步置空,断开引用
67
- oldCur._next._prev = HistoryItem.Undefined;
68
- // 清空下一步的所有引用
69
- this._clear(oldCur._next);
70
- // 设置当前历史的下一次历史为新历史,如果有旧的前进步骤就干掉了
71
- oldCur._next = history;
72
- // 设置新历史为新历史对象
73
- this._cur = history;
74
- }
75
-
76
- /**
77
- * 上一步
78
- *
79
- * @author chitanda
80
- * @date 2023-12-28 16:12:28
81
- * @return {*} {boolean}
82
- */
83
- prev(): boolean {
84
- if (this._cur._prev && this._cur._prev !== HistoryItem.Undefined) {
85
- this._cur = this._cur._prev;
86
- return true;
87
- }
88
- return false;
89
- }
90
-
91
- /**
92
- * 下一步
93
- *
94
- * @author chitanda
95
- * @date 2023-12-28 16:12:20
96
- * @return {*} {boolean}
97
- */
98
- next(): boolean {
99
- if (this._cur._next && this._cur._next !== HistoryItem.Undefined) {
100
- this._cur = this._cur._next;
101
- return true;
102
- }
103
- return false;
104
- }
105
-
106
- /**
107
- * 清空引用,避免内存泄漏
108
- *
109
- * @author chitanda
110
- * @date 2023-12-28 22:12:43
111
- * @protected
112
- * @param {HistoryItem<E>} h
113
- */
114
- protected _clear(h: HistoryItem<E>): void {
115
- if (h._prev && h._prev !== HistoryItem.Undefined) {
116
- h._prev._next = HistoryItem.Undefined;
117
- this._clear(h._prev);
118
- h._prev = HistoryItem.Undefined;
119
- }
120
- if (h._next && h._next !== HistoryItem.Undefined) {
121
- h._next._prev = HistoryItem.Undefined;
122
- this._clear(h._next);
123
- h._next = HistoryItem.Undefined;
124
- }
125
- h.data = {} as E;
126
- }
127
-
128
- /**
129
- * 禁止克隆,直接返回当前实例
130
- *
131
- * @author chitanda
132
- * @date 2023-12-28 22:12:49
133
- * @private
134
- * @return {*} {HistoryList<E>}
135
- */
136
- protected clone(): HistoryList<E> {
137
- const history = new HistoryList<E>({} as E);
138
- history._cur = clone(this._cur);
139
- return this;
140
- }
141
-
142
- /**
143
- * 销毁
144
- *
145
- * @author chitanda
146
- * @date 2023-12-28 21:12:34
147
- */
148
- destroy(): void {
149
- this._clear(this._cur);
150
- }
151
- }
@@ -1,24 +0,0 @@
1
- export * from './interceptor';
2
- export { MessageCenter } from './message-center';
3
- export { Namespace } from './namespace/namespace';
4
- export type { IHttpResponse } from './net/http-response';
5
- export { HttpResponse } from './net/http-response';
6
- export { Net } from './net/net';
7
- export { StringUtil } from './string-util/string-util';
8
- export * from './util/util';
9
- export * from './types/types';
10
- export * from './url-helper/url-helper';
11
- export * from './event/event';
12
- export { HistoryItem } from './history-list/history-item';
13
- export { HistoryList } from './history-list/history-list';
14
- export * from './click-outside/click-outside';
15
- export * from './color/color';
16
- export * from './download-file/download-file';
17
- export * from './upload/select-file';
18
- export * from './upload/upload-file';
19
- export * from './sync';
20
- export * from './style/remote-style';
21
- export * from './recursive/find-recursive-child';
22
- export { DataTypes } from './data-type/data-types';
23
- export * from './clone/clone';
24
- export { BitMask } from './bit-mask/bit-mask';
@@ -1,40 +0,0 @@
1
- import { InternalAxiosRequestConfig } from 'axios';
2
- import { getToken } from '../util/util';
3
- import { Interceptor } from './interceptor';
4
-
5
- /**
6
- * 核心包拦截器
7
- *
8
- * @author lxm
9
- * @date 2022-10-27 17:10:48
10
- * @export
11
- * @class CoreInterceptor
12
- * @extends {Interceptor}
13
- */
14
- export class CoreInterceptor extends Interceptor {
15
- protected async onBeforeRequest(
16
- config: InternalAxiosRequestConfig,
17
- ): Promise<InternalAxiosRequestConfig> {
18
- config = await super.onBeforeRequest(config);
19
-
20
- const { headers } = config;
21
-
22
- // Set the access token.
23
- headers.set('Authorization', `Bearer ${getToken()}`);
24
-
25
- // Set the system ID.
26
- let systemId = ibiz.env.dcSystem;
27
- const { orgData } = ibiz;
28
- if (orgData) {
29
- if (orgData.systemid) {
30
- systemId = orgData.systemid;
31
- }
32
- if (orgData.orgid) {
33
- headers.set('srforgid', orgData.orgid);
34
- }
35
- }
36
- headers.set('srfsystemid', systemId);
37
-
38
- return config;
39
- }
40
- }
@@ -1,2 +0,0 @@
1
- export * from './core-interceptor';
2
- export * from './interceptor';
@@ -1,126 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import {
3
- AxiosInstance,
4
- InternalAxiosRequestConfig,
5
- AxiosResponse,
6
- } from 'axios';
7
-
8
- /**
9
- * 拦截器基类
10
- *
11
- * @author chitanda
12
- * @date 2022-07-20 18:07:11
13
- * @export
14
- * @class Interceptor
15
- */
16
- export class Interceptor {
17
- /**
18
- * 请求拦截器绑定标识
19
- *
20
- * @author lxm
21
- * @date 2022-10-27 17:10:20
22
- * @private
23
- * @type {number}
24
- */
25
- private requestTag?: number;
26
-
27
- /**
28
- * 响应拦截器绑定标识
29
- *
30
- * @author lxm
31
- * @date 2022-10-27 17:10:19
32
- * @private
33
- * @type {number}
34
- */
35
- private responseTag?: number;
36
-
37
- /**
38
- * 请求之前处理
39
- *
40
- * @author lxm
41
- * @date 2022-10-27 17:10:41
42
- * @protected
43
- * @param {InternalAxiosRequestConfig} config
44
- * @returns {*} {Promise<InternalAxiosRequestConfig>}
45
- */
46
- protected async onBeforeRequest(
47
- config: InternalAxiosRequestConfig,
48
- ): Promise<InternalAxiosRequestConfig> {
49
- return config;
50
- }
51
-
52
- /**
53
- * 请求失败之后处理
54
- *
55
- * @author lxm
56
- * @date 2022-10-27 17:10:40
57
- * @protected
58
- * @param {*} error
59
- */
60
- protected onRequestError(error: Error): Promise<never> {
61
- // 处理请求错误
62
- return Promise.reject(error);
63
- }
64
-
65
- /**
66
- * 响应成功之后处理
67
- *
68
- * @author lxm
69
- * @date 2022-10-27 17:10:38
70
- * @protected
71
- * @param {AxiosResponse} config
72
- * @returns {*} {Promise<AxiosRequestConfig>}
73
- */
74
- protected async onResponseSuccess(
75
- config: AxiosResponse,
76
- ): Promise<AxiosResponse> {
77
- return config;
78
- }
79
-
80
- /**
81
- * 响应失败之后处理
82
- *
83
- * @author lxm
84
- * @date 2022-10-27 17:10:37
85
- * @protected
86
- * @param {*} _error
87
- */
88
- protected onResponseError(error: Error): Promise<never> {
89
- // 处理响应错误
90
- return Promise.reject(error);
91
- }
92
-
93
- /**
94
- * 使用拦截器
95
- *
96
- * @author lxm
97
- * @date 2022-10-27 17:10:28
98
- * @param {AxiosInstance} instance
99
- */
100
- use(instance: AxiosInstance): void {
101
- this.requestTag = instance.interceptors.request.use(
102
- this.onBeforeRequest,
103
- this.onRequestError,
104
- );
105
- this.responseTag = instance.interceptors.response.use(
106
- this.onResponseSuccess,
107
- this.onResponseError,
108
- );
109
- }
110
-
111
- /**
112
- * 移出拦截器
113
- *
114
- * @author lxm
115
- * @date 2022-10-27 17:10:27
116
- * @param {AxiosInstance} instance
117
- */
118
- eject(instance: AxiosInstance): void {
119
- if (this.requestTag) {
120
- instance.interceptors.request.eject(this.requestTag);
121
- }
122
- if (this.responseTag) {
123
- instance.interceptors.response.eject(this.responseTag);
124
- }
125
- }
126
- }
@@ -1,10 +0,0 @@
1
- import Logger from 'loglevel';
2
- import prefix from 'loglevel-plugin-prefix';
3
-
4
- const logger = Logger.noConflict();
5
-
6
- prefix.reg(logger);
7
-
8
- prefix.apply(logger);
9
-
10
- export { logger };
@@ -1,12 +0,0 @@
1
- import { MessageBase } from './message-base';
2
-
3
- /**
4
- * 所有消息
5
- *
6
- * @author chitanda
7
- * @date 2023-09-05 16:09:34
8
- * @export
9
- * @class MessageAll
10
- * @extends {MessageBase}
11
- */
12
- export class MessageAll extends MessageBase {}
@@ -1,86 +0,0 @@
1
- import { QXEvent } from 'qx-util';
2
- import { IPortalMessage } from '../../../interface';
3
-
4
- /**
5
- * 消息事件
6
- *
7
- * @author chitanda
8
- * @date 2023-09-05 16:09:17
9
- * @interface MessageCenterEvent
10
- */
11
- interface MessageCenterEvent {
12
- all: (msg: IPortalMessage) => void;
13
- }
14
-
15
- /**
16
- * 消息基类,各个类型消息继承此类
17
- *
18
- * @author chitanda
19
- * @date 2023-09-05 16:09:41
20
- * @export
21
- * @class MessageBase
22
- */
23
- export abstract class MessageBase {
24
- /**
25
- * 事件
26
- *
27
- * @author chitanda
28
- * @date 2023-09-05 16:09:58
29
- * @protected
30
- * @type {QXEvent<MessageCenterEvent>}
31
- */
32
- protected evt: QXEvent<MessageCenterEvent> = new QXEvent(1000);
33
-
34
- constructor(protected parent?: MessageBase) {}
35
-
36
- /**
37
- * 推送标准结构消息
38
- *
39
- * @author chitanda
40
- * @date 2023-09-05 16:09:40
41
- * @param {IPortalMessage} msg
42
- */
43
- next(msg: IPortalMessage): void {
44
- this.evt.emit('all', msg);
45
- if (this.parent) {
46
- this.nextParent(msg);
47
- }
48
- }
49
-
50
- /**
51
- * 私有方法,专门向父级推送消息
52
- *
53
- * @author chitanda
54
- * @date 2023-09-05 17:09:08
55
- * @protected
56
- * @param {IPortalMessage} msg
57
- */
58
- protected nextParent(msg: IPortalMessage): void {
59
- if (this.parent) {
60
- this.parent.evt.emit('all', msg);
61
- this.parent.nextParent(msg);
62
- }
63
- }
64
-
65
- /**
66
- * 订阅消息
67
- *
68
- * @author chitanda
69
- * @date 2023-09-05 15:09:21
70
- * @param {(msg: IPortalMessage) => void} evt
71
- */
72
- on(cb: (msg: IPortalMessage) => void): void {
73
- this.evt.on('all', cb);
74
- }
75
-
76
- /**
77
- * 取消订阅
78
- *
79
- * @author chitanda
80
- * @date 2023-09-05 15:09:50
81
- * @param {(msg: IPortalMessage) => void} cb
82
- */
83
- off(cb: (msg: IPortalMessage) => void): void {
84
- this.evt.off('all', cb);
85
- }
86
- }
@@ -1,24 +0,0 @@
1
- import { IPortalAsyncAction } from '../../../../interface';
2
- import { CommandBase } from '../command-base/command-base';
3
-
4
- /**
5
- * 异步作业指令消息
6
- *
7
- * @author chitanda
8
- * @date 2023-10-23 17:10:28
9
- * @export
10
- * @class CommandAsyncAction
11
- * @extends {CommandBase}
12
- */
13
- export class CommandAsyncAction extends CommandBase {
14
- /**
15
- * 发送 异步作业 指令消息
16
- *
17
- * @author chitanda
18
- * @date 2023-10-23 17:10:46
19
- * @param {IPortalAsyncAction} data
20
- */
21
- send(data: IPortalAsyncAction): void {
22
- this.sendCommand(data, 'ASYNCACTION');
23
- }
24
- }
@@ -1,12 +0,0 @@
1
- import { CommandBase } from '../command-base/command-base';
2
-
3
- /**
4
- * 数据变更指令消息
5
- *
6
- * @author chitanda
7
- * @date 2023-09-05 17:09:49
8
- * @export
9
- * @class CommandChange
10
- * @extends {CommandBase}
11
- */
12
- export class CommandChange extends CommandBase {}
@@ -1,30 +0,0 @@
1
- import { createUUID } from 'qx-util';
2
- import { IPortalMessage } from '../../../../interface';
3
- import { MessageBase } from '../../base/message-base';
4
-
5
- /**
6
- * 指令消息基类
7
- *
8
- * @author chitanda
9
- * @date 2023-09-05 16:09:11
10
- * @export
11
- * @class CommandBase
12
- * @extends {MessageBase}
13
- */
14
- export class CommandBase extends MessageBase {
15
- /**
16
- * 发送指令消息
17
- * @param data 更新的数据
18
- * @param subtype 数据更新 | 数据删除 | 数据创建
19
- */
20
- protected sendCommand(data: IData, subtype: IPortalMessage['subtype']): void {
21
- const msg: IPortalMessage = {
22
- messageid: createUUID(),
23
- messagename: 'command',
24
- type: 'COMMAND',
25
- subtype,
26
- data,
27
- };
28
- this.next(msg);
29
- }
30
- }
@@ -1,24 +0,0 @@
1
- import { IAppDataEntity } from '../../interface';
2
- import { CommandBase } from '../command-base/command-base';
3
-
4
- /**
5
- * 创建指令消息
6
- *
7
- * @author chitanda
8
- * @date 2023-09-05 17:09:57
9
- * @export
10
- * @class CommandCreate
11
- * @extends {CommandBase}
12
- */
13
- export class CommandCreate extends CommandBase {
14
- /**
15
- * 发送新建的数据
16
- *
17
- * @author chitanda
18
- * @date 2023-09-05 17:09:13
19
- * @param {IAppDataEntity} data
20
- */
21
- send(data: IAppDataEntity): void {
22
- this.sendCommand(data, 'OBJECTCREATED');
23
- }
24
- }
@@ -1,24 +0,0 @@
1
- import { IInternalMessage } from '../../../../interface';
2
- import { CommandBase } from '../command-base/command-base';
3
-
4
- /**
5
- * 站内信指令消息
6
- *
7
- * @author lxm
8
- * @date 2024-01-30 11:38:38
9
- * @export
10
- * @class CommandInternalMessage
11
- * @extends {CommandBase}
12
- */
13
- export class CommandInternalMessage extends CommandBase {
14
- /**
15
- * 发送 站内信 指令消息
16
- *
17
- * @author chitanda
18
- * @date 2023-10-23 17:10:46
19
- * @param {IPortalInternalMessage} data
20
- */
21
- send(data: IInternalMessage): void {
22
- this.sendCommand(data, 'INTERNALMESSAGE');
23
- }
24
- }
@@ -1,24 +0,0 @@
1
- import { IMarkOpenData } from '../../../../interface';
2
- import { CommandBase } from '../command-base/command-base';
3
-
4
- /**
5
- * 站内信指令消息
6
- *
7
- * @author lxm
8
- * @date 2024-01-30 11:38:38
9
- * @export
10
- * @class CommandMarkOpenData
11
- * @extends {CommandBase}
12
- */
13
- export class CommandMarkOpenData extends CommandBase {
14
- /**
15
- * 发送 站内信 指令消息
16
- *
17
- * @author lxm
18
- * @date 2024-02-01 03:42:40
19
- * @param {IMarkOpenData} data
20
- */
21
- send(data: IMarkOpenData): void {
22
- this.sendCommand(data, 'MARKOPENDATA');
23
- }
24
- }