iobroker.webui 1.24.2 → 1.24.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.
package/README.md CHANGED
@@ -133,6 +133,14 @@ runtime.html?screenName=screen2
133
133
  Placeholder for next versions:
134
134
  ### __WORK IN PROGRESS__
135
135
  -->
136
+ ### 1.24.4 (2025-01-20)
137
+ - switch again to old module shims (error in new one)
138
+
139
+ ### 1.24.3 (2025-01-20)
140
+ - first load of css bindings
141
+ - fix get box quads with slots
142
+ - fix es module shims
143
+
136
144
  ### 1.24.2 (2025-01-19)
137
145
  - revert back es module shims, leads to errors
138
146
 
package/io-package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "webui",
4
- "version": "1.24.2",
4
+ "version": "1.24.4",
5
5
  "titleLang": {
6
6
  "en": "webui",
7
7
  "de": "webui",
@@ -29,6 +29,32 @@
29
29
  "zh-cn": "使用万维网传送器的高锰用户接口"
30
30
  },
31
31
  "news": {
32
+ "1.24.4": {
33
+ "en": "switch again to old module shims (error in new one)",
34
+ "de": "wieder auf alte modul-shimmel wechseln (error in new one)",
35
+ "ru": "переключение снова на старых модуле shims (ошибка в новом)",
36
+ "pt": "mudar novamente para os antigos xeques do módulo (erro em novo)",
37
+ "nl": "weer overschakelen naar oude module shims (fout in nieuwe)",
38
+ "fr": "passer à nouveau à l'ancien module shims (erreur dans le nouveau)",
39
+ "it": "passare di nuovo a shims vecchio modulo (error in uno nuovo)",
40
+ "es": "cambiar de nuevo al viejo módulo shims (error nuevo)",
41
+ "pl": "przełącz ponownie na stary moduł shims (błąd w nowym)",
42
+ "uk": "повторно переключіть до старих модулів (error in new)",
43
+ "zh-cn": "再次切换到旧模块shims( 错误在新模块中)"
44
+ },
45
+ "1.24.3": {
46
+ "en": "first load of css bindings\nfix get box quads with slots\nfix es module shims",
47
+ "de": "erste belastung von css bindungen\nfix get box quads mit schlitzen\nfix es modul shims",
48
+ "ru": "первая нагрузка css связывания\nисправление получить коробка квады с слотами\nфиксация эс модуль shims",
49
+ "pt": "primeira carga de ligações css\ncorrigir get box quads com slots\ncorrigir es módulo shims",
50
+ "nl": "eerste belasting van css bindingen\nfix box quads met slots\nfix es module shims",
51
+ "fr": "première charge de fixations css\nfixer obtenir des quads de boîte avec des fentes\nfixer les shims du module es",
52
+ "it": "primo carico di attacchi css\nfix ottenere scatola quads con slot\nfix es modulo shims",
53
+ "es": "primera carga de fijación de css\nfijar conseguir cuádruples de caja con ranuras\nfijar es módulo shims",
54
+ "pl": "pierwsze obciążenie wiązania css\nfix get box quads with slots\nfix es module shims",
55
+ "uk": "перше навантаження css зв'язування\nзакріпити ящик квадроцикли з слотами\nзакріпити es модуль шім",
56
+ "zh-cn": "首先装入 css 绑定\n固定带插槽的框形\n修补 e 模块 shims"
57
+ },
32
58
  "1.24.2": {
33
59
  "en": "revert back es module shims, leads to errors",
34
60
  "de": "zurückkehren es modul shims, führt zu fehlern",
@@ -93,32 +119,6 @@
93
119
  "pl": "fix gulp powinien działać ponownie",
94
120
  "uk": "закріпити гельпом потрібно знову",
95
121
  "zh-cn": "修补 gulp 应再次工作"
96
- },
97
- "1.23.0": {
98
- "en": "fix paste in events assignment\niobroker Signal Selector\nbinding to width and height in custom controls",
99
- "de": "fixieren sie paste in der ereigniszuordnung\niobroker Signal Selektor\nbindung an breite und höhe in benutzerdefinierten steuerungen",
100
- "ru": "фиксация пасты в присвоении событий\niobroker Signal Selector\nпривязки к ширине и высоте в пользовательском контроле",
101
- "pt": "corrigir pasta na atribuição de eventos\nseletor de Sinal iobroker\nligação à largura e altura em controles personalizados",
102
- "nl": "plak plakken in de opdracht van gebeurtenissen\niobroker-signaalkiezer\nbinding aan breedte en hoogte in aangepaste controles",
103
- "fr": "fixer coller dans l'affectation des événements\nsélecteur de signal iobroker\nfixation à la largeur et à la hauteur dans les commandes personnalisées",
104
- "it": "correzione della pasta nell'assegnazione degli eventi\niobroker Selettore Segnale\nlegare a larghezza e altezza nei controlli personalizzati",
105
- "es": "arreglar pasta en la asignación de eventos\niobroker Signal Selector\nunión a ancho y altura en controles personalizados",
106
- "pl": "fix pasta w przyporządkowaniu zdarzeń\niobroker Selektor sygnału\nwiązanie do szerokości i wysokości w sterowaniu własnym",
107
- "uk": "фіксувати пасту в появі подій\niobroker Signal Вибратор\nобов'язковий для ширини і висоти в користувацьких управліннях",
108
- "zh-cn": "在事件任务中固定粘贴\nio 经纪人信号选择器\n绑定自定义控件中的宽度和高度"
109
- },
110
- "1.22.0": {
111
- "en": "local signals browser\nstyle completition fixes\nspecial bindings for \"ring\" cameras",
112
- "de": "lokale signale browser\nstil completition fixes\nspezielle bindungen für \"ring\"-kameras",
113
- "ru": "браузер местных сигналов\nстиль комплектации\nспециальные привязки для «кольцовых» камер",
114
- "pt": "navegador de sinais locais\ncorreções de conclusão de estilo\nligações especiais para câmeras \"ring\"",
115
- "nl": "lokale signalenbrowser\nstijl completitie fixes\nspeciale bindingen voor \"ring\"-camera's",
116
- "fr": "navigateur de signaux locaux\ncorrectifs de complétion de style\nfixations spéciales pour caméras \"ring\"",
117
- "it": "browser segnali locali\nstile correzioni di completamento\nattacchi speciali per telecamere \"ring\"",
118
- "es": "navegador de señales locales\nestilo completition fixes\nencuadernaciones especiales para cámaras \"ring\"",
119
- "pl": "przeglądarka lokalnych sygnałów\npoprawki zakończenia stylu\nspecjalne wiązania do kamer \"ring\"",
120
- "uk": "веб камера\nфіксація стилів\nспеціальні прив'язки для камер \"обручка\"",
121
- "zh-cn": "本地信号浏览器\n样式补丁修正\n“环”相机的特殊装订"
122
122
  }
123
123
  },
124
124
  "icon": "logo.png",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.webui",
3
- "version": "1.24.2",
3
+ "version": "1.24.4",
4
4
  "description": "ioBroker webui",
5
5
  "type": "module",
6
6
  "main": "dist/backend/main.js",
@@ -59,11 +59,11 @@
59
59
  "@node-projects/node-html-parser-esm": "^6.2.0",
60
60
  "@node-projects/propertygrid.webcomponent": "^1.3.0",
61
61
  "@node-projects/splitview.webcomponent": "^1.0.1",
62
- "@node-projects/web-component-designer": "^0.1.239",
62
+ "@node-projects/web-component-designer": "^0.1.240",
63
63
  "@node-projects/web-component-designer-codeview-monaco": "^0.1.33",
64
64
  "@node-projects/web-component-designer-htmlparserservice-nodehtmlparser": "^0.1.11",
65
65
  "@node-projects/web-component-designer-stylesheetservice-css-tools": "^0.1.10",
66
- "@node-projects/web-component-designer-visualization-addons": "^0.1.112",
66
+ "@node-projects/web-component-designer-visualization-addons": "^0.1.113",
67
67
  "@node-projects/web-component-designer-widgets-wunderbaum": "^0.1.32",
68
68
  "@types/json-schema": "^7.0.15",
69
69
  "@web/dev-server": "^0.4.6",
@@ -79,6 +79,17 @@ export class IobrokerWebuiScreenEditor extends BaseCustomWebComponentConstructor
79
79
  disableTextChangedEvent = false;
80
80
  });
81
81
  this.documentContainer.additionalStyleString = iobrokerHandler.config?.globalStyle ?? '';
82
+ if (style) {
83
+ try {
84
+ const ret = await window.appShell.bindingsHelper.parseCssBindings(style, this.documentContainer.designerView.designerCanvas.rootDesignItem.element, this.relativeBindingsPrefix, this.documentContainer.designerView.designerCanvas.rootDesignItem.element);
85
+ this._styleBindings = ret[1];
86
+ const sr = this.documentContainer.designerView.designerCanvas.rootDesignItem.element.shadowRoot;
87
+ sr.adoptedStyleSheets = [...sr.adoptedStyleSheets, ret[0]];
88
+ }
89
+ catch (err) {
90
+ console.error(err);
91
+ }
92
+ }
82
93
  if (html) {
83
94
  this.documentContainer.content = html;
84
95
  this.handlePropertyChanges();
@@ -55,7 +55,7 @@
55
55
  ],
56
56
  "type": "object"
57
57
  },
58
- "ClearSiganlsInGroup": {
58
+ "ClearSignalsInGroup": {
59
59
  "properties": {
60
60
  "additionalData": {
61
61
  "type": "string"
@@ -65,7 +65,7 @@
65
65
  "type": "string"
66
66
  },
67
67
  "type": {
68
- "const": "ClearSiganlsInGroup",
68
+ "const": "ClearSignalsInGroup",
69
69
  "type": "string"
70
70
  }
71
71
  },
@@ -1034,7 +1034,7 @@
1034
1034
  "$ref": "#/definitions/WriteSignalsInGroup"
1035
1035
  },
1036
1036
  {
1037
- "$ref": "#/definitions/ClearSiganlsInGroup"
1037
+ "$ref": "#/definitions/ClearSignalsInGroup"
1038
1038
  },
1039
1039
  {
1040
1040
  "$ref": "#/definitions/RunScript"
package/www/index.html CHANGED
@@ -218,7 +218,7 @@
218
218
  </button>
219
219
  <button data-command="save" title="save" disabled><img src="./node_modules/@node-projects/web-component-designer/assets/icons/save.svg"></button>
220
220
  <div style="margin-left: 30px;">
221
- webui - 1.24.2 - 9d75808
221
+ webui - 1.24.4 - 12f122d
222
222
  </div>
223
223
  <button style="margin-left: 30px;" data-command="paste" title="paste" disabled><img
224
224
  src="./node_modules/@node-projects/web-component-designer/assets/icons/paste.svg"></button>
@@ -305,21 +305,23 @@ export function getResultingTransformationBetweenElementAndAllAncestors(node, an
305
305
  }
306
306
  let lastOffsetParent = null;
307
307
  while (actualElement != ancestor && actualElement != null) {
308
- if (actualElement instanceof (actualElement.ownerDocument.defaultView ?? window).HTMLElement) {
309
- if (lastOffsetParent !== actualElement.offsetParent && !(actualElement instanceof (actualElement.ownerDocument.defaultView ?? window).HTMLSlotElement)) {
308
+ const parentElement = getParentElementIncludingSlots(actualElement, iframes);
309
+ if (!(parentElement instanceof HTMLSlotElement)) {
310
+ if (actualElement instanceof (actualElement.ownerDocument.defaultView ?? window).HTMLElement) {
311
+ if (lastOffsetParent !== actualElement.offsetParent && !(actualElement instanceof (actualElement.ownerDocument.defaultView ?? window).HTMLSlotElement)) {
312
+ const offsets = getElementOffsetsInContainer(actualElement, iframes);
313
+ lastOffsetParent = actualElement.offsetParent;
314
+ const mvMat = new DOMMatrix().translate(offsets.x, offsets.y);
315
+ originalElementAndAllParentsMultipliedMatrix = mvMat.multiply(originalElementAndAllParentsMultipliedMatrix);
316
+ }
317
+ }
318
+ else {
310
319
  const offsets = getElementOffsetsInContainer(actualElement, iframes);
311
- lastOffsetParent = actualElement.offsetParent;
320
+ lastOffsetParent = null;
312
321
  const mvMat = new DOMMatrix().translate(offsets.x, offsets.y);
313
322
  originalElementAndAllParentsMultipliedMatrix = mvMat.multiply(originalElementAndAllParentsMultipliedMatrix);
314
323
  }
315
324
  }
316
- else {
317
- const offsets = getElementOffsetsInContainer(actualElement, iframes);
318
- lastOffsetParent = null;
319
- const mvMat = new DOMMatrix().translate(offsets.x, offsets.y);
320
- originalElementAndAllParentsMultipliedMatrix = mvMat.multiply(originalElementAndAllParentsMultipliedMatrix);
321
- }
322
- const parentElement = getParentElementIncludingSlots(actualElement, iframes);
323
325
  if (parentElement) {
324
326
  parentElementMatrix = getElementCombinedTransform(parentElement, iframes);
325
327
  if (parentElement != ancestor)
@@ -239,7 +239,7 @@ export class ScriptSystem {
239
239
  this._visualizationHandler.writeSignalsInGroup(group);
240
240
  break;
241
241
  }
242
- case 'ClearSiganlsInGroup': {
242
+ case 'ClearSignalsInGroup': {
243
243
  const group = await this.getValue(command.group, context);
244
244
  this._visualizationHandler.clearSignalsInGroup(group);
245
245
  break;