iobroker.mywebui 1.37.52 → 1.37.54

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/io-package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "mywebui",
4
- "version": "1.37.52",
4
+ "version": "1.37.54",
5
5
  "titleLang": {
6
6
  "en": "mywebui",
7
7
  "de": "mywebui",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.mywebui",
3
- "version": "1.37.52",
3
+ "version": "1.37.54",
4
4
  "description": "ioBroker mywebui - Custom edited mywebui by gokturk413",
5
5
  "type": "module",
6
6
  "main": "dist/backend/main.js",
@@ -785,11 +785,13 @@ export class IobrokerHandler {
785
785
  // Group check — server-side via sendTo (ioBroker DB-dən oxuyur, manipulate edilə bilməz)
786
786
  if (visibilityConfig.groups && visibilityConfig.groups.length > 0) {
787
787
  const username = this.userName || await this.connection.getCurrentUser();
788
- const result = await this.connection.sendTo(
788
+ const _timeout = new Promise(r => setTimeout(() => r({ visible: true, enabled: true }), 4000));
789
+ const _sendTo = this.connection.sendTo(
789
790
  this.namespace,
790
791
  'checkVisibility',
791
792
  { username, allowedGroups: visibilityConfig.groups, action: visibilityConfig.action || 'hide' }
792
793
  );
794
+ const result = await Promise.race([_sendTo, _timeout]);
793
795
  if (!result.visible || !result.enabled) {
794
796
  return result;
795
797
  }
@@ -365,6 +365,17 @@ let ScreenViewer = class ScreenViewer extends BaseCustomWebComponentConstructorA
365
365
  }
366
366
  }
367
367
  }
368
+ // Custom bind-prop:hidden handler — uses inline style instead of hidden attribute
369
+ // because web components with :host{display:block} override the UA [hidden]{display:none}
370
+ for (const el of this._rootShadow.querySelectorAll('[bind-prop\\:hidden]')) {
371
+ Object.defineProperty(el, 'hidden', {
372
+ configurable: true,
373
+ set(val) {
374
+ el.style.display = val ? 'none' : '';
375
+ },
376
+ get() { return el.style.display === 'none'; }
377
+ });
378
+ }
368
379
  // Custom bind-prop:disable handler — sets pointer-events+opacity when value is truthy
369
380
  for (const el of this._rootShadow.querySelectorAll('[bind-prop\\:disable]')) {
370
381
  Object.defineProperty(el, 'disable', {