@etsoo/materialui 1.2.75 → 1.2.77

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.
@@ -17,7 +17,7 @@ export declare namespace MessageUtils {
17
17
  * 发出操作信息
18
18
  * @param seed Refresh seed
19
19
  */
20
- function emitOperationMessage(): void;
20
+ function emitOperationMessage(user: SignalRUser | undefined, isSelf: boolean, message: OperationMessageDto): void;
21
21
  /**
22
22
  * Emit refresh
23
23
  * 发出刷新
@@ -25,7 +25,7 @@ export declare namespace MessageUtils {
25
25
  * @param isSelf Is current user self
26
26
  * @param message Message
27
27
  */
28
- function emitRefresh(user: SignalRUser | undefined, isSelf: boolean, message: OperationMessageDto): void;
28
+ function emitRefresh(): void;
29
29
  /**
30
30
  * Add operation event listener
31
31
  * 添加操作事件监控器
@@ -16,8 +16,8 @@ export var MessageUtils;
16
16
  * 发出操作信息
17
17
  * @param seed Refresh seed
18
18
  */
19
- function emitOperationMessage() {
20
- MessageUtils.eventEmitter.emit(OperationMessageName);
19
+ function emitOperationMessage(user, isSelf, message) {
20
+ MessageUtils.eventEmitter.emit(OperationMessageName, user, isSelf, message);
21
21
  }
22
22
  MessageUtils.emitOperationMessage = emitOperationMessage;
23
23
  /**
@@ -27,8 +27,8 @@ export var MessageUtils;
27
27
  * @param isSelf Is current user self
28
28
  * @param message Message
29
29
  */
30
- function emitRefresh(user, isSelf, message) {
31
- MessageUtils.eventEmitter.emit(RefreshName, user, isSelf, message);
30
+ function emitRefresh() {
31
+ MessageUtils.eventEmitter.emit(RefreshName);
32
32
  }
33
33
  MessageUtils.emitRefresh = emitRefresh;
34
34
  /**
@@ -91,7 +91,10 @@ export interface ViewPageProps<T extends DataTypes.StringRecord> extends Omit<Co
91
91
  /**
92
92
  * Operation message handler
93
93
  */
94
- operationMessageHandler?: OperationMessageHandler | string[];
94
+ operationMessageHandler?: [
95
+ id: number | undefined,
96
+ handler: OperationMessageHandler | string[]
97
+ ];
95
98
  }
96
99
  /**
97
100
  * View page
@@ -120,15 +120,18 @@ export function ViewPage(props) {
120
120
  const handler = (user, isSelf, message) => {
121
121
  if (operationMessageHandler == null)
122
122
  return;
123
- if (Array.isArray(operationMessageHandler)) {
124
- if (!operationMessageHandler.includes(message.operationType))
125
- return;
126
- }
127
- else {
128
- if (operationMessageHandler(user, isSelf, message) === false)
129
- return;
123
+ const [id, handler] = operationMessageHandler;
124
+ if ((id == null && message.id == null) || id === message.id) {
125
+ if (Array.isArray(handler)) {
126
+ if (!handler.includes(message.operationType))
127
+ return;
128
+ }
129
+ else {
130
+ if (handler(user, isSelf, message) === false)
131
+ return;
132
+ }
133
+ refresh();
130
134
  }
131
- refresh();
132
135
  };
133
136
  MessageUtils.onOperationMessage(handler);
134
137
  const refreshHandler = async () => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etsoo/materialui",
3
- "version": "1.2.75",
3
+ "version": "1.2.77",
4
4
  "description": "TypeScript Material-UI Implementation",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -21,8 +21,12 @@ export namespace MessageUtils {
21
21
  * 发出操作信息
22
22
  * @param seed Refresh seed
23
23
  */
24
- export function emitOperationMessage() {
25
- eventEmitter.emit(OperationMessageName);
24
+ export function emitOperationMessage(
25
+ user: SignalRUser | undefined,
26
+ isSelf: boolean,
27
+ message: OperationMessageDto
28
+ ) {
29
+ eventEmitter.emit(OperationMessageName, user, isSelf, message);
26
30
  }
27
31
 
28
32
  /**
@@ -32,12 +36,8 @@ export namespace MessageUtils {
32
36
  * @param isSelf Is current user self
33
37
  * @param message Message
34
38
  */
35
- export function emitRefresh(
36
- user: SignalRUser | undefined,
37
- isSelf: boolean,
38
- message: OperationMessageDto
39
- ) {
40
- eventEmitter.emit(RefreshName, user, isSelf, message);
39
+ export function emitRefresh() {
40
+ eventEmitter.emit(RefreshName);
41
41
  }
42
42
 
43
43
  /**
@@ -165,7 +165,10 @@ export interface ViewPageProps<T extends DataTypes.StringRecord>
165
165
  /**
166
166
  * Operation message handler
167
167
  */
168
- operationMessageHandler?: OperationMessageHandler | string[];
168
+ operationMessageHandler?: [
169
+ id: number | undefined,
170
+ handler: OperationMessageHandler | string[]
171
+ ];
169
172
  }
170
173
 
171
174
  function formatItemData(fieldData: unknown): string | undefined {
@@ -288,12 +291,16 @@ export function ViewPage<T extends DataTypes.StringRecord>(
288
291
  React.useEffect(() => {
289
292
  const handler: OperationMessageHandler = (user, isSelf, message) => {
290
293
  if (operationMessageHandler == null) return;
291
- if (Array.isArray(operationMessageHandler)) {
292
- if (!operationMessageHandler.includes(message.operationType)) return;
293
- } else {
294
- if (operationMessageHandler(user, isSelf, message) === false) return;
294
+
295
+ const [id, handler] = operationMessageHandler;
296
+ if ((id == null && message.id == null) || id === message.id) {
297
+ if (Array.isArray(handler)) {
298
+ if (!handler.includes(message.operationType)) return;
299
+ } else {
300
+ if (handler(user, isSelf, message) === false) return;
301
+ }
302
+ refresh();
295
303
  }
296
- refresh();
297
304
  };
298
305
  MessageUtils.onOperationMessage(handler);
299
306