@iobroker/socket-classes 2.7.0 → 2.8.1

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.
@@ -50,6 +50,106 @@ function toCompactRepository(source, result = {}) {
50
50
  }
51
51
  return result;
52
52
  }
53
+ /**
54
+ * Reduces `system.repositories` to what the GUI shows of it: of the content of every repository only
55
+ * `_repoInfo`.
56
+ *
57
+ * A new object is built and `obj` is left as it is: it can be the object that admin keeps in memory.
58
+ *
59
+ * @param obj the object `system.repositories`
60
+ */
61
+ function toCompactSystemRepositories(obj) {
62
+ const repositories = {};
63
+ for (const [name, repo] of Object.entries(obj.native?.repositories || {})) {
64
+ if (repo && typeof repo === 'object' && repo.json) {
65
+ repositories[name] = { ...repo, json: { _repoInfo: repo.json._repoInfo } };
66
+ }
67
+ else {
68
+ repositories[name] = repo;
69
+ }
70
+ }
71
+ return {
72
+ ...obj,
73
+ native: { ...obj.native, repositories },
74
+ };
75
+ }
76
+ /**
77
+ * Keeps of a translated text only the given language and English. A plain string stays as it is.
78
+ *
79
+ * @param text translated text or string
80
+ * @param lang language to keep besides English
81
+ */
82
+ function reduceTranslation(text, lang) {
83
+ if (!text || typeof text !== 'object' || Array.isArray(text)) {
84
+ return text;
85
+ }
86
+ const translated = text;
87
+ const result = {};
88
+ if (translated.en !== undefined) {
89
+ result.en = translated.en;
90
+ }
91
+ if (translated[lang] !== undefined) {
92
+ result[lang] = translated[lang];
93
+ }
94
+ return result;
95
+ }
96
+ /**
97
+ * Reduces a repository to what the GUI shows.
98
+ *
99
+ * `news` holds the changes of every version in up to eleven languages and is most of a repository:
100
+ * 8.9 of 10.7 MB, measured on "Beta (latest)". The GUI shows it only for an update, so it is kept for
101
+ * the entries in `withNews` only. With `lang` the translated texts keep only that language and English.
102
+ *
103
+ * Nothing in `source` is changed: it can be the object that admin keeps in memory.
104
+ *
105
+ * @param source merged repository
106
+ * @param withNews tells whether the `news` of an entry are kept
107
+ * @param lang language of the GUI
108
+ * @param only names of the entries to deliver, all of them if not given
109
+ */
110
+ function toReducedRepository(source, withNews, lang, only) {
111
+ const result = {};
112
+ for (const name of only || Object.keys(source)) {
113
+ const entry = source[name];
114
+ if (!entry || typeof entry !== 'object') {
115
+ continue;
116
+ }
117
+ const reduced = { ...entry };
118
+ if (!withNews(name, entry)) {
119
+ delete reduced.news;
120
+ }
121
+ else if (lang && entry.news) {
122
+ reduced.news = {};
123
+ for (const [version, text] of Object.entries(entry.news)) {
124
+ reduced.news[version] = reduceTranslation(text, lang);
125
+ }
126
+ }
127
+ if (lang) {
128
+ if (entry.desc) {
129
+ reduced.desc = reduceTranslation(entry.desc, lang);
130
+ }
131
+ if (entry.titleLang) {
132
+ reduced.titleLang = reduceTranslation(entry.titleLang, lang);
133
+ }
134
+ // shown when installing and when updating, so they are kept for every entry
135
+ if (Array.isArray(entry.messages)) {
136
+ reduced.messages = entry.messages.map(message => {
137
+ const reducedMessage = {
138
+ ...message,
139
+ title: reduceTranslation(message.title, lang),
140
+ text: reduceTranslation(message.text, lang),
141
+ };
142
+ if (message.linkText) {
143
+ reducedMessage.linkText = reduceTranslation(message.linkText, lang);
144
+ }
145
+ return reducedMessage;
146
+ });
147
+ }
148
+ }
149
+ result[name] = reduced;
150
+ }
151
+ return result;
152
+ }
53
153
  class SocketCommandsAdmin extends socketCommands_1.SocketCommands {
54
154
  static ALLOW_CACHE = [
55
155
  'getRepository',
@@ -295,6 +395,92 @@ class SocketCommandsAdmin extends socketCommands_1.SocketCommands {
295
395
  }
296
396
  return result;
297
397
  }
398
+ /**
399
+ * Merges the repositories from the objects that admin keeps in memory, as the host does it: in
400
+ * the given order, a later repository replacing an entry of an earlier one.
401
+ *
402
+ * @param repo the repositories to merge, the active ones if not given
403
+ * @returns the merged repository, or null if only the host can answer - see `#compactRepositoryFromObjects`
404
+ */
405
+ #repositoryFromObjects(repo) {
406
+ if (!this.objects) {
407
+ return null;
408
+ }
409
+ const systemConfig = this.objects['system.config'];
410
+ const systemRepos = this.objects['system.repositories'];
411
+ if (!systemConfig?.common || !systemRepos?.native?.repositories) {
412
+ return null;
413
+ }
414
+ const wanted = repo || systemConfig.common.activeRepo;
415
+ const names = Array.isArray(wanted) ? wanted : wanted ? [wanted] : [];
416
+ if (!names.length) {
417
+ return null;
418
+ }
419
+ const result = {};
420
+ for (const name of names) {
421
+ const entry = systemRepos.native.repositories[name];
422
+ if (!entry || typeof entry === 'string' || !entry.json) {
423
+ return null;
424
+ }
425
+ Object.assign(result, entry.json);
426
+ }
427
+ return result;
428
+ }
429
+ /**
430
+ * Names of the adapters that are installed on any host: the GUI shows `news` only for them.
431
+ *
432
+ * An adapter is taken as installed if it has its object `system.adapter.<name>` or one of the
433
+ * objects `system.host.<host>.adapter.<name>`. Neither is complete on its own: an adapter that was
434
+ * only put into `node_modules` can lack the first, and the controller writes the second only for
435
+ * what it found when it started. Only the host knows for sure, so the GUI asks for the news of an
436
+ * installed adapter that is missing here.
437
+ */
438
+ async #installedAdapters() {
439
+ const names = new Set();
440
+ const add = (id, obj) => {
441
+ const match = id.match(/^system\.(?:host\..+\.)?adapter\.([^.]+)$/);
442
+ if (match && obj?.type === 'adapter') {
443
+ names.add(match[1]);
444
+ }
445
+ };
446
+ if (this.objects) {
447
+ for (const id of Object.keys(this.objects)) {
448
+ add(id, this.objects[id]);
449
+ }
450
+ }
451
+ else {
452
+ const doc = await this.adapter.getObjectViewAsync('system', 'adapter', {
453
+ startkey: 'system.',
454
+ endkey: 'system.\u9999',
455
+ });
456
+ doc?.rows.forEach(row => add(row.id, row.value));
457
+ }
458
+ return names;
459
+ }
460
+ /**
461
+ * The repository as the GUI needs it, see `getReducedRepository`.
462
+ *
463
+ * @param host host to ask if the objects in memory cannot answer, e.g. `system.host.raspberrypi`
464
+ * @param options what to read and how to reduce it
465
+ */
466
+ async #reducedRepository(host, options) {
467
+ let source = options.update ? null : this.#repositoryFromObjects(options.repo);
468
+ if (source) {
469
+ // the GUI has what it needs, only the side effects of asking the host are still wanted
470
+ this.#triggerRepositorySideEffects(host);
471
+ }
472
+ else {
473
+ source = await new Promise(resolve => this._sendToHost(host, 'getRepository', { repo: options.repo, update: !!options.update }, data => resolve(data && typeof data === 'object' && !data.error
474
+ ? data
475
+ : {})));
476
+ }
477
+ if (options.adapters) {
478
+ return toReducedRepository(source, () => true, options.lang, options.adapters);
479
+ }
480
+ const installed = await this.#installedAdapters();
481
+ // the controller keeps its news for the update dialog of the hosts
482
+ return toReducedRepository(source, (name, entry) => installed.has(name) || !!entry.controller, options.lang);
483
+ }
298
484
  /**
299
485
  * Asks the host for the repository without waiting for the answer, at most once an hour and only
300
486
  * after a delay, so the side effects of that command keep happening without holding up the GUI.
@@ -1450,19 +1636,22 @@ class SocketCommandsAdmin extends socketCommands_1.SocketCommands {
1450
1636
  */
1451
1637
  this.commands.getCompactSystemRepositories = (socket, callback) => {
1452
1638
  if (this._checkPermissions(socket, 'getObject', callback)) {
1453
- void this.adapter.getForeignObject('system.repositories', { user: socket._acl?.user }, (error, obj) => {
1454
- if (obj?.native?.repositories) {
1455
- Object.keys(obj.native.repositories).forEach(name => {
1456
- if (obj.native.repositories[name].json) {
1457
- // limit information to _repoInfo
1458
- obj.native.repositories[name].json = {
1459
- _repoInfo: obj.native.repositories[name].json._repoInfo,
1460
- };
1461
- }
1462
- });
1639
+ // Reading it from the database parses the whole content of every repository - 23 MB on
1640
+ // an installation with the beta repository, almost a second in which admin answers
1641
+ // nothing else - for one small attribute per repository
1642
+ const cached = this.objects?.['system.repositories'];
1643
+ if (cached) {
1644
+ if (socket._acl &&
1645
+ !_a.#isAdmin(socket) &&
1646
+ !_a.#checkObject(cached, socket._acl, ACL_READ)) {
1647
+ socketCommands_1.SocketCommands._fixCallback(callback, socketCommands_1.SocketCommands.ERROR_PERMISSION);
1463
1648
  }
1464
- socketCommands_1.SocketCommands._fixCallback(callback, error, obj);
1465
- });
1649
+ else {
1650
+ socketCommands_1.SocketCommands._fixCallback(callback, null, toCompactSystemRepositories(cached));
1651
+ }
1652
+ return;
1653
+ }
1654
+ void this.adapter.getForeignObject('system.repositories', { user: socket._acl?.user }, (error, obj) => socketCommands_1.SocketCommands._fixCallback(callback, error, obj ? toCompactSystemRepositories(obj) : obj));
1466
1655
  }
1467
1656
  };
1468
1657
  /**
@@ -1490,6 +1679,28 @@ class SocketCommandsAdmin extends socketCommands_1.SocketCommands {
1490
1679
  this.#askHostForRepository(host, callback);
1491
1680
  }
1492
1681
  };
1682
+ /**
1683
+ * #DOCUMENTATION admin
1684
+ * Get the repository with what the GUI shows of it.
1685
+ *
1686
+ * The whole repository is several megabytes, most of it the `news` of every version in every
1687
+ * language. They are delivered only for the adapters installed on any host and for the
1688
+ * controller, as only an update shows them; with `lang` all translated texts keep only that
1689
+ * language and English. Answered from the objects admin holds in memory where possible.
1690
+ * Announced as the feature `REDUCED_REPOSITORY`.
1691
+ *
1692
+ * @param socket - WebSocket client instance
1693
+ * @param host - Host to ask if the objects in memory cannot answer, e.g., `system.host.raspberrypi`
1694
+ * @param options - `{ repo?: string | string[]; update?: boolean; lang?: ioBroker.Languages; adapters?: string[] }`
1695
+ * @param callback - Callback function `(error: string | null, repository?: Record<string, RepoAdapterObject>) => void`
1696
+ */
1697
+ this.commands.getReducedRepository = (socket, host, options, callback) => {
1698
+ if (this._checkPermissions(socket, 'sendToHost', callback)) {
1699
+ this.#reducedRepository(host, options || {})
1700
+ .then(repository => socketCommands_1.SocketCommands._fixCallback(callback, null, repository))
1701
+ .catch(error => socketCommands_1.SocketCommands._fixCallback(callback, error));
1702
+ }
1703
+ };
1493
1704
  /**
1494
1705
  * #DOCUMENTATION admin
1495
1706
  * Get all hosts in a compact form to save bandwidth.
@@ -1 +1 @@
1
- {"version":3,"file":"socketCommandsAdmin.js","sourceRoot":"","sources":["../../src/lib/socketCommandsAdmin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socketCommandsAdmin.js","sourceRoot":"","sources":["../../src/lib/socketCommandsAdmin.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iobroker/socket-classes",
3
- "version": "2.7.0",
3
+ "version": "2.8.1",
4
4
  "description": "ioBroker server-side web sockets",
5
5
  "author": {
6
6
  "name": "bluefox",
@@ -30,13 +30,13 @@
30
30
  "@alcalzone/release-script": "^5.2.1",
31
31
  "@alcalzone/release-script-plugin-license": "^5.2.2",
32
32
  "@iobroker/eslint-config": "^2.3.4",
33
- "@iobroker/js-controller-common-db": "^7.2.4",
34
- "@iobroker/ws-server": "^4.5.1",
35
- "@iobroker/types": "^7.2.4",
33
+ "@iobroker/js-controller-common-db": "^7.2.5",
34
+ "@iobroker/ws-server": "^4.5.2",
35
+ "@iobroker/types": "^7.2.5",
36
36
  "@types/cookie-parser": "^1.4.10",
37
37
  "@types/node": "^22.20.5",
38
38
  "@types/passport": "^1.0.17",
39
- "iobroker.js-controller": "^7.2.4",
39
+ "iobroker.js-controller": "^7.2.5",
40
40
  "mocha": "^12.0.3",
41
41
  "typescript": "~6.0.3"
42
42
  },