Skip to content

Commit 3718997

Browse files
[types]: Groups and users can have name as StringOrTranslated too (e.g. admins) (#2876)
* Groups and users can have name as StringOrTranslated too (e.g. admins) * Comments * Fixed tests * Added comments * optimize comments --------- Co-authored-by: foxriver76 <[email protected]>
1 parent 28eaffd commit 3718997

File tree

4 files changed

+31
-19
lines changed

4 files changed

+31
-19
lines changed

packages/adapter/src/lib/adapter/adapter.ts

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7296,8 +7296,8 @@ export class AdapterClass extends EventEmitter {
72967296
let { instanceName } = _options;
72977297

72987298
const obj: ioBroker.SendableMessage = {
7299-
command: command,
7300-
message: message,
7299+
command,
7300+
message,
73017301
from: `system.adapter.${this.namespace}`
73027302
};
73037303

@@ -7336,7 +7336,7 @@ export class AdapterClass extends EventEmitter {
73367336
}
73377337

73387338
try {
7339-
// Send to all instances of adapter
7339+
// Send it to all instances of adapter
73407340
const res = await this.#objects.getObjectView('system', 'instance', {
73417341
startkey: `${instanceName}.`,
73427342
endkey: `${instanceName}.\u9999`
@@ -7365,7 +7365,7 @@ export class AdapterClass extends EventEmitter {
73657365
}
73667366

73677367
obj.callback = {
7368-
message: message,
7368+
message,
73697369
id: this._callbackId++,
73707370
ack: false,
73717371
time: Date.now()
@@ -7399,8 +7399,9 @@ export class AdapterClass extends EventEmitter {
73997399
}
74007400
}
74017401
} else {
7402+
// callback is an object
74027403
obj.callback = callback;
7403-
obj.callback!.ack = true;
7404+
obj.callback.ack = true;
74047405
}
74057406
}
74067407

@@ -7540,6 +7541,7 @@ export class AdapterClass extends EventEmitter {
75407541

75417542
this.messageCallbacks.set(obj.callback.id, { cb: callback, time: Date.now() });
75427543
} else {
7544+
// callback is an object
75437545
obj.callback = callback;
75447546
obj.callback.ack = true;
75457547
}
@@ -10878,7 +10880,7 @@ export class AdapterClass extends EventEmitter {
1087810880
}
1087910881

1088010882
// If callback stored for this request
10881-
if (obj.callback && obj.callback.ack && obj.callback.id && callbackObj) {
10883+
if (obj.callback?.ack && obj.callback.id && callbackObj) {
1088210884
// Call callback function
1088310885
if (typeof callbackObj.cb === 'function') {
1088410886
callbackObj.cb(obj.message);
@@ -10910,7 +10912,7 @@ export class AdapterClass extends EventEmitter {
1091010912
}
1091110913

1091210914
if (this._options.message) {
10913-
// Else inform about new message the adapter
10915+
// Else inform about a new message the adapter
1091410916
this._options.message(obj);
1091510917
}
1091610918
this.emit('message', obj);

packages/cli/src/lib/setup/setupList.ts

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -561,7 +561,12 @@ export class List {
561561
if (
562562
!reg ||
563563
reg.test(obj.value._id) ||
564-
(obj.value.common && reg.test(obj.value.common.name))
564+
(obj.value.common &&
565+
reg.test(
566+
tools.isObject(obj.value.common.name)
567+
? obj.value.common.name[lang] || obj.value.common.name.en
568+
: obj.value.common.name
569+
))
565570
) {
566571
const id = obj.value._id;
567572
let name = obj.value.common.name;
@@ -621,7 +626,12 @@ export class List {
621626
if (
622627
!reg ||
623628
reg.test(obj.value._id) ||
624-
(obj.value.common && reg.test(obj.value.common.name))
629+
(obj.value.common &&
630+
reg.test(
631+
tools.isObject(obj.value.common.name)
632+
? obj.value.common.name[lang] || obj.value.common.name.en
633+
: obj.value.common.name
634+
))
625635
) {
626636
const id = obj.value._id.substring(13);
627637
if (id === 'administrator') {

packages/types-dev/index.d.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ declare global {
2525
BAD: 0x01;
2626
/** The instance cannot establish a connection */
2727
CONNECTION_PROBLEM: 0x02;
28-
/** Substitute value from controller, do not set this in adapters */
28+
/** Substitute value from controller. Do not set this in adapters */
2929
SUBSTITUTE_FROM_CONTROLLER: 0x10;
3030
/** Quality for default values */
3131
SUBSTITUTE_INITIAL_VALUE: 0x20;
@@ -204,15 +204,15 @@ declare global {
204204

205205
type LogLevel = 'silly' | 'debug' | 'info' | 'warn' | 'error';
206206
interface Logger {
207-
/** log message with silly level */
207+
/** log a message with silly level */
208208
silly(message: string): void;
209-
/** log message with debug level */
209+
/** log a message with debug level */
210210
debug(message: string): void;
211-
/** log message with info level (default output level for all adapters) */
211+
/** log a message with info level (default output level for all adapters) */
212212
info(message: string): void;
213-
/** log message with warning severity */
213+
/** log a message with warning severity */
214214
warn(message: string): void;
215-
/** log message with error severity */
215+
/** log a message with error severity */
216216
error(message: string): void;
217217

218218
/** Verbosity of the log output */
@@ -236,7 +236,7 @@ declare global {
236236
message: MessagePayload;
237237
/** ID of this callback */
238238
id: number;
239-
// ???
239+
/** If ack is false, it means the message is a request. If ack is true, it means the message is a response */
240240
ack: boolean;
241241
/** Timestamp of this message */
242242
time: number;
@@ -293,7 +293,7 @@ declare global {
293293
}
294294

295295
interface DelObjectOptions {
296-
/** Whether all child objects should be deleted aswell */
296+
/** Whether all child objects should be deleted as well */
297297
recursive?: boolean;
298298
// Allow non-documented properties
299299
[other: string]: unknown;

packages/types-dev/objects.d.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -430,7 +430,7 @@ declare global {
430430

431431
interface UserCommon extends ObjectCommon {
432432
/** The username */
433-
name: string;
433+
name: StringOrTranslated;
434434
/** The hashed password */
435435
password: string;
436436
/** Whether this user is enabled */
@@ -442,7 +442,7 @@ declare global {
442442

443443
interface GroupCommon extends ObjectCommon {
444444
/** The name of this group */
445-
name: string;
445+
name: StringOrTranslated;
446446
/** The users of this group */
447447
members: ObjectIDs.User[]; // system.user.name, ...
448448
/** The default permissions of this group */

0 commit comments

Comments
 (0)