iobroker.javascript 9.2.3 → 9.2.4

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 (32) hide show
  1. package/README.md +6 -14
  2. package/admin/assets/{AiChatPanel-C4zUsNmN.js → AiChatPanel-B4vPXgLz.js} +1 -1
  3. package/admin/assets/{ScriptEditor-C6W68ya0.js → ScriptEditor-CmEeMfC2.js} +1 -1
  4. package/admin/assets/{ScriptEditorVanillaMonaco-DYTcDqp_.js → ScriptEditorVanillaMonaco-C22Gpet7.js} +2 -2
  5. package/admin/assets/{index-crBQrXKG.js → index-7mrTpzQy.js} +1 -1
  6. package/admin/assets/{index-CUau9-il.js → index-BTQOdA7v.js} +28 -28
  7. package/admin/assets/{index-BXfqctma.js → index-Dggem6AX.js} +1 -1
  8. package/admin/assets/{stateHoverProvider-BYBqzJuX.js → stateHoverProvider-DxTNxyYN.js} +1 -1
  9. package/admin/custom/assets/{Components-jfkoGyES.js → Components-CGiJE5Zh.js} +1 -1
  10. package/admin/custom/assets/{index-CS_GBN2m.js → index-B6NrrORQ.js} +1 -1
  11. package/admin/custom/assets/index-CT5PwRfY.js +964 -0
  12. package/admin/custom/assets/{index-ChQotUCl.js → index-DTbSiEk2.js} +1 -1
  13. package/admin/custom/assets/{localSharedImportMap-BeObsVNc.js → localSharedImportMap-ChjFDKsq.js} +1 -1
  14. package/admin/custom/assets/{virtualExposes-wYe_Np-4.js → virtualExposes-D402kVGY.js} +1 -1
  15. package/admin/custom/assets/{virtual_mf-REMOTE_ENTRY_ID_ConfigCustomJavascriptSet__customComponents_js-BcRVut8U.js → virtual_mf-REMOTE_ENTRY_ID_ConfigCustomJavascriptSet__customComponents_js-ClQrb2n1.js} +2 -2
  16. package/admin/custom/customComponents.js +1 -1
  17. package/admin/i18n/es.json +77 -77
  18. package/admin/tab.html +1 -1
  19. package/build/lib/debugger.js +1 -1
  20. package/build/lib/debugger.js.map +1 -1
  21. package/build/lib/eventObj.js +10 -2
  22. package/build/lib/eventObj.js.map +1 -1
  23. package/build/lib/inspect.js +3 -3
  24. package/build/lib/inspect.js.map +1 -1
  25. package/build/lib/sandbox.js +169 -62
  26. package/build/lib/sandbox.js.map +1 -1
  27. package/build/main.js +63 -19
  28. package/build/main.js.map +1 -1
  29. package/build/types.d.ts +4 -0
  30. package/io-package.json +14 -14
  31. package/package.json +11 -11
  32. package/admin/custom/assets/index-qs6J40Tp.js +0 -964
package/build/types.d.ts CHANGED
@@ -705,6 +705,10 @@ export interface JavascriptContext {
705
705
  error: (text: string, ...args: any[]) => void;
706
706
  };
707
707
  subscriptions: SubscriptionResult[];
708
+ /** O(1) dispatch map for state subscriptions with exact (non-wildcard) string IDs – kept in sync with subscriptions. */
709
+ subscriptionsMap: Map<string, SubscriptionResult[]>;
710
+ /** Subscriptions with RegExp, wildcard or undefined pattern.id – iterated linearly on every state change. */
711
+ subscriptionsWildcard: SubscriptionResult[];
708
712
  subscriptionsFile: FileSubscriptionResult[];
709
713
  subscriptionsObject: SubscribeObject[];
710
714
  /** O(1) dispatch map – pattern → list of subscribers (kept in sync with subscriptionsObject) */
package/io-package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "javascript",
4
- "version": "9.2.3",
4
+ "version": "9.2.4",
5
5
  "blockedVersions": [
6
6
  "8.0.0",
7
7
  "8.0.1"
@@ -40,6 +40,19 @@
40
40
  "Matthias Kleine <info@haus-automatisierung.com>"
41
41
  ],
42
42
  "news": {
43
+ "9.2.4": {
44
+ "en": "Performance optimizations part 2\nfix filter in tab scripts\nFixed a subscription leak on script stop for RegExp-notation string ids (dispatch index)\n`extendObject` no longer throws into the script when the object contains non-clonable values (e.g. functions)",
45
+ "de": "Performance Optimierungen Teil 2\nfix-filter in tab-scripts\nBehebung eines Abonnementlecks bei Skriptstopp für RegExp-Notation String-IDs (Dispatch-Index)\n`extendObject` wirft nicht mehr in das Skript, wenn das Objekt nicht-klonbare Werte (z.B. Funktionen) enthält",
46
+ "ru": "Оптимизация производительности часть 2\nисправить фильтр в скриптах вкладок\nИсправлена утечка подписки на остановке скрипта для строковых идентификаторов RegExp-notation (индекс отправки)\n«extendObject» больше не бросается в сценарий, когда объект содержит неклонируемые значения (например, функции)",
47
+ "pt": "Otimização de desempenho parte 2\ncorrigir o filtro nos scripts de páginas\nCorrigido um vazamento de assinatura na parada do script para IDs de strings de notação RegExp (índice de distribuição)\n`extendObject` já não é lançado no script quando o objeto contém valores não clonáveis (por exemplo, funções)",
48
+ "nl": "Prestatieoptimalisaties deel 2\nfilter herstellen in tabscripts\nVaste een abonnement lek op scriptstop voor RegExp-notatie string-id's (verzendindex)\nHet object wordt niet meer in het script gegooid als het object niet-kloonbare waarden bevat (bv. functies)",
49
+ "fr": "Optimisation des performances partie 2\ncorrection du filtre dans les scripts des onglets\nCorrection d'une fuite d'abonnement sur l'arrêt du script pour les ids de chaîne RegExp-notation (index de distribution)\n`extendObject` ne lance plus dans le script lorsque l'objet contient des valeurs non-clonables (par exemple des fonctions)",
50
+ "it": "Ottimizzazione delle prestazioni parte 2\ncorrezione del filtro negli script di scheda\nRisolto una perdita di abbonamento sulla fermata dello script per RegExp-notation string ids (indice dispatch)\n`extendObject` non getta più nello script quando l'oggetto contiene valori non clonabili (ad esempio funzioni)",
51
+ "es": "Optimizaciones de rendimiento parte 2\nfijar filtro en scripts de pestaña\nSe ha fijado una fuga de suscripción en la parada de script para los ids de cadena RegExp (índice de despacha)\n`extendObject` ya no se lanza al script cuando el objeto contiene valores no visibles (por ejemplo, funciones)",
52
+ "pl": "Optymalizacja wydajności część 2\nnaprawić filtr w skryptach kart\nNaprawiono przeciek subskrypcji przy zatrzymaniu skryptu dla idów łańcuchowych RegExp- notation (wskaźnik wysyłkowy)\n'extendObject' nie wrzuca się już do skryptu, gdy obiekt zawiera wartości niemodne (np. funkcje)",
53
+ "uk": "Оптимізація продуктивності частини 2\nвиправити фільтр в скриптах вкладок\nВиправлено протікання підписки на сценарій зупинки для рядкових полів RegExp-notation (диспетчерський індекс)\n`extendObject` не завантажується в скрипт, коли об’єкт містить неклоновані значення (наприклад, функції)",
54
+ "zh-cn": "业绩优化第2部分\n在标签脚本中修正过滤器\n修复 RegExp Notation 字符串 IDs( 发送索引) 的脚本站订阅漏洞\n当对象包含不可克隆值(例如函数)时,`extend Object'不再丢入脚本"
55
+ },
43
56
  "9.2.3": {
44
57
  "en": "Performance optimizations done\nAdded on mouse over the value of the state",
45
58
  "de": "Leistungsoptimierungen durchgeführt\nAuf der Maus über den Wert des Zustands hinzugefügt",
@@ -117,19 +130,6 @@
117
130
  "pl": "Poprawiony komunikat błędu z 'last Sync'\nPoprawiony filtr JavaScript",
118
131
  "uk": "Виправлено повідомлення про помилку з `last Синхронізація й\nВиправлений JavaScript-фільтр",
119
132
  "zh-cn": "更正错误消息为“ last 同步 `\n已更正的 JavaScript 过滤器"
120
- },
121
- "9.0.17": {
122
- "en": "Added possibility to encrypt scripts with password (only for vendors)",
123
- "de": "Zusätzliche Möglichkeit, Skripte mit Passwort zu verschlüsseln (nur für Hersteller)",
124
- "ru": "Добавлена возможность шифрования скриптов с помощью пароля (только для продавцов)",
125
- "pt": "Adicionada possibilidade de criptografar scripts com senha (somente para fornecedores)",
126
- "nl": "Toegevoegd mogelijkheid om scripts te versleutelen met wachtwoord (alleen voor leveranciers)",
127
- "fr": "Ajout de la possibilité de chiffrer les scripts avec le mot de passe (seulement pour les fournisseurs)",
128
- "it": "Aggiunta possibilità di crittografare gli script con password (solo per i fornitori)",
129
- "es": "Añadido posibilidad de cifrar scripts con contraseña (sólo para proveedores)",
130
- "pl": "Dodano możliwość szyfrowania skryptów hasłem (tylko dla sprzedawców)",
131
- "uk": "Додана можливість шифрування сценаріїв з паролем (тільки для постачальників)",
132
- "zh-cn": "添加使用密码加密脚本的可能性( 只针对供应商)"
133
133
  }
134
134
  },
135
135
  "platform": "Javascript/Node.js",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.javascript",
3
- "version": "9.2.3",
3
+ "version": "9.2.4",
4
4
  "description": "Rules Engine for ioBroker",
5
5
  "author": "bluefox <dogafox@gmail.com>",
6
6
  "contributors": [
@@ -42,26 +42,26 @@
42
42
  },
43
43
  "dependencies": {
44
44
  "@iobroker/adapter-core": "^3.3.2",
45
- "@iobroker/types": "^7.1.1",
46
- "@types/node": "^25.6.0",
47
- "axios": "^1.15.0",
48
- "jsonata": "^2.1.0",
45
+ "@iobroker/types": "^7.1.2",
46
+ "@types/node": "^20.19.42",
47
+ "axios": "^1.17.0",
48
+ "jsonata": "^2.2.1",
49
49
  "jszip": "^3.10.1",
50
50
  "node-inspect": "^2.0.0",
51
51
  "node-schedule": "2.1.1",
52
- "nodemailer": "^8.0.5",
53
- "prettier": "^3.8.2",
52
+ "nodemailer": "^8.0.10",
53
+ "prettier": "^3.8.3",
54
54
  "promisify-child-process": "^5.0.1",
55
- "semver": "^7.7.4",
55
+ "semver": "^7.8.2",
56
56
  "suncalc2": "^1.8.1",
57
57
  "typescript": "5.9.3",
58
58
  "virtual-tsc": "^0.6.2",
59
59
  "wake_on_lan": "^1.0.0"
60
60
  },
61
61
  "devDependencies": {
62
- "@alcalzone/release-script": "^5.1.1",
63
- "@alcalzone/release-script-plugin-iobroker": "^5.1.2",
64
- "@alcalzone/release-script-plugin-license": "^5.1.1",
62
+ "@alcalzone/release-script": "^5.2.1",
63
+ "@alcalzone/release-script-plugin-iobroker": "^5.2.0",
64
+ "@alcalzone/release-script-plugin-license": "^5.2.0",
65
65
  "@iobroker/adapter-dev": "^1.5.0",
66
66
  "@iobroker/build-tools": "^3.0.1",
67
67
  "@iobroker/eslint-config": "^2.2.0",