Repository: onecx/onecx-shell-ui
Pull request #579: fix: dynamic css variables
Author: login: markuczy
Created: 2025-05-07T09:31:24Z | Merged: 2025-05-08T10:21:33Z



Diff:
diff --git a/package-lock.json b/package-lock.json
index aa29debd..387b333f 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -23,17 +23,17 @@
         "@angular/router": "^19.1.6",
         "@ngx-translate/core": "^16.0.4",
         "@nx/angular": "20.4.4",
-        "@onecx/accelerator": "^6.0.0-rc.9",
-        "@onecx/angular-accelerator": "^6.0.0-rc.9",
-        "@onecx/angular-auth": "^6.0.0-rc.9",
-        "@onecx/angular-integration-interface": "^6.0.0-rc.9",
-        "@onecx/angular-remote-components": "^6.0.0-rc.9",
-        "@onecx/angular-utils": "^6.0.0-rc.9",
-        "@onecx/angular-webcomponents": "^6.0.0-rc.9",
-        "@onecx/integration-interface": "^6.0.0-rc.9",
-        "@onecx/portal-integration-angular": "^6.0.0-rc.9",
-        "@onecx/portal-layout-styles": "^5.33.0",
-        "@onecx/shell-core": "^6.0.0-rc.9",
+        "@onecx/accelerator": "^6.0.0-rc.10",
+        "@onecx/angular-accelerator": "^6.0.0-rc.10",
+        "@onecx/angular-auth": "^6.0.0-rc.10",
+        "@onecx/angular-integration-interface": "^6.0.0-rc.10",
+        "@onecx/angular-remote-components": "^6.0.0-rc.10",
+        "@onecx/angular-utils": "^6.0.0-rc.10",
+        "@onecx/angular-webcomponents": "^6.0.0-rc.10",
+        "@onecx/integration-interface": "^6.0.0-rc.10",
+        "@onecx/portal-integration-angular": "^6.0.0-rc.10",
+        "@onecx/portal-layout-styles": "^5.38.0",
+        "@onecx/shell-core": "^6.0.0-rc.10",
         "@primeng/themes": "^19.0.6",
         "keycloak-js": "^25.0.6",
         "primeflex": "^3.3.1",
@@ -7338,9 +7338,9 @@
       }
     },
     "node_modules/@onecx/accelerator": {
-      "version": "6.0.0-rc.9",
-      "resolved": "https://registry.npmjs.org/@onecx/accelerator/-/accelerator-6.0.0-rc.9.tgz",
-      "integrity": "sha512-NlQv2JOKCQX8NgzOnsD26wnPt8jbKqUijElAIiEKA5leiQ05bqvguSW2FD40Oqk5srxDlAg730Owya+hE+t9PA==",
+      "version": "6.0.0-rc.10",
+      "resolved": "https://registry.npmjs.org/@onecx/accelerator/-/accelerator-6.0.0-rc.10.tgz",
+      "integrity": "sha512-xExF11RN/XJjBd3oJGNfOXsDxKuYEnkvCMKowHf59HAVfiXDxKg/u0+PAhmBzPUtyhdS9gC/2TyXyG2YKcO6Pw==",
       "peerDependencies": {
         "@nx/devkit": "^20.3.0",
         "rxjs": "^7.8.1",
@@ -7348,9 +7348,9 @@
       }
     },
     "node_modules/@onecx/angular-accelerator": {
-      "version": "6.0.0-rc.9",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-accelerator/-/angular-accelerator-6.0.0-rc.9.tgz",
-      "integrity": "sha512-fSubom7PL0pFFz3e8DFhrfHEgJCqgvqzR90gota2Fz0n4uw4U+m/mv+HS/gIR+u1RiO+ooEi8dry9FNaz7PinQ==",
+      "version": "6.0.0-rc.10",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-accelerator/-/angular-accelerator-6.0.0-rc.10.tgz",
+      "integrity": "sha512-q6CaJ6y/thKk7aj9y4f3iG7mpVlB3vmb0sHLEQn9A+aK6bLkRJfYf+Rl4JnzIJAmjI8Mn66GvFhPWw7aju6KpA==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -7365,12 +7365,12 @@
         "@ngx-translate/core": "^16.0.0",
         "@ngx-translate/http-loader": "^8.0.0",
         "@nx/devkit": "^20.3.0",
-        "@onecx/accelerator": "^6.0.0-rc.9",
-        "@onecx/angular-integration-interface": "^6.0.0-rc.9",
-        "@onecx/angular-remote-components": "^6.0.0-rc.9",
-        "@onecx/angular-testing": "^6.0.0-rc.9",
-        "@onecx/angular-utils": "^6.0.0-rc.9",
-        "@onecx/integration-interface": "^6.0.0-rc.9",
+        "@onecx/accelerator": "^6.0.0-rc.10",
+        "@onecx/angular-integration-interface": "^6.0.0-rc.10",
+        "@onecx/angular-remote-components": "^6.0.0-rc.10",
+        "@onecx/angular-testing": "^6.0.0-rc.10",
+        "@onecx/angular-utils": "^6.0.0-rc.10",
+        "@onecx/integration-interface": "^6.0.0-rc.10",
         "@storybook/angular": "^8.3.2",
         "chart.js": "^4.4.3",
         "d3-scale-chromatic": "^3.1.0",
@@ -7379,9 +7379,9 @@
       }
     },
     "node_modules/@onecx/angular-auth": {
-      "version": "6.0.0-rc.9",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-auth/-/angular-auth-6.0.0-rc.9.tgz",
-      "integrity": "sha512-+5TSUXFLSJvcr0cHkoMFCuVhuwA0RASxLed5J9jfCVSUCQbimfFGyI8DY4DvdO/tLXk88cgfRuko3Yfh0Gmbzg==",
+      "version": "6.0.0-rc.10",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-auth/-/angular-auth-6.0.0-rc.10.tgz",
+      "integrity": "sha512-8zqv42h59flxx0GoHA4Nw7G5KX2MDdqxpWQ7vwUqkEE5XG8kJrOJmewKHeeDMcpwTZMzgBIIXzYLyKrgpYyFGA==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -7390,32 +7390,32 @@
         "@angular/common": "^19.0.0",
         "@angular/core": "^19.0.0",
         "@nx/devkit": "^20.3.0",
-        "@onecx/angular-integration-interface": "^6.0.0-rc.9",
-        "@onecx/integration-interface": "^6.0.0-rc.9",
+        "@onecx/angular-integration-interface": "^6.0.0-rc.10",
+        "@onecx/integration-interface": "^6.0.0-rc.10",
         "keycloak-js": "^25.0.1",
         "rxjs": "~7.8.0"
       }
     },
     "node_modules/@onecx/angular-integration-interface": {
-      "version": "6.0.0-rc.9",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-integration-interface/-/angular-integration-interface-6.0.0-rc.9.tgz",
-      "integrity": "sha512-9YFZzLY3SBIPQJfAzB7r3SQNNEVNjj0mX6KJjpKv/GV3VNQoWvYEhIa+s4yb8tvdTz24Q7e+HZMPXfZZk8U8bA==",
+      "version": "6.0.0-rc.10",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-integration-interface/-/angular-integration-interface-6.0.0-rc.10.tgz",
+      "integrity": "sha512-RZdeYHdSiCjmqdWteMCbR/CEbx0ssm6rcBvF9K0CZ+kTbFAslE/Fc7W5p6wBfY1D7EPJZbcX0rKFICjXfv6rRw==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
       "peerDependencies": {
         "@angular/core": "^19.0.0",
         "@nx/devkit": "^20.3.0",
-        "@onecx/accelerator": "^6.0.0-rc.9",
-        "@onecx/integration-interface": "^6.0.0-rc.9",
+        "@onecx/accelerator": "^6.0.0-rc.10",
+        "@onecx/integration-interface": "^6.0.0-rc.10",
         "rxjs": "~7.8.1",
         "ts-semaphore": "^1.0.0"
       }
     },
     "node_modules/@onecx/angular-remote-components": {
-      "version": "6.0.0-rc.9",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-remote-components/-/angular-remote-components-6.0.0-rc.9.tgz",
-      "integrity": "sha512-meG1IpHUv19b7xYzA3t365ccaVVlsYF7IHmHs5ltIQLBSd/f3d7KC/MCZZFq5dkCNHoENmgy3y6sLsunWOb0IA==",
+      "version": "6.0.0-rc.10",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-remote-components/-/angular-remote-components-6.0.0-rc.10.tgz",
+      "integrity": "sha512-T9atDiJMZhv2xcUwkjyQZeTaSDJzk2AIBfN78vRXFFCEjO4JYTOveyCy1ci75jfW2eSz2IBWuSYn9EOkNlu2Vw==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -7425,15 +7425,15 @@
         "@angular/core": "^19.0.0",
         "@ngx-translate/core": "^16.0.0",
         "@nx/devkit": "^20.3.0",
-        "@onecx/angular-utils": "^6.0.0-rc.9",
-        "@onecx/integration-interface": "^6.0.0-rc.9",
+        "@onecx/angular-utils": "^6.0.0-rc.10",
+        "@onecx/integration-interface": "^6.0.0-rc.10",
         "rxjs": "^7.8.1"
       }
     },
     "node_modules/@onecx/angular-testing": {
-      "version": "6.0.0-rc.9",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-testing/-/angular-testing-6.0.0-rc.9.tgz",
-      "integrity": "sha512-lbdLMlN2D+7vyDJbs4ERSsEOoOxndW82XhB09jx/kOeCTzRCP/CeZNp51PDA15cTKB/uWX7I0e3J+EGnhkQHSw==",
+      "version": "6.0.0-rc.10",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-testing/-/angular-testing-6.0.0-rc.10.tgz",
+      "integrity": "sha512-AhBdjH7+dpgOnjbpSP0IKyNPE/guhCKeQPHYh5AEdOpE1lE3n3oX3A7+F2yAIAd0+hUnZKdR7QUzwSgCBTXYTg==",
       "peer": true,
       "dependencies": {
         "tslib": "^2.3.0"
@@ -7445,9 +7445,9 @@
       }
     },
     "node_modules/@onecx/angular-utils": {
-      "version": "6.0.0-rc.9",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-utils/-/angular-utils-6.0.0-rc.9.tgz",
-      "integrity": "sha512-j/BRNF037YZ8I2oAv/AgtWJqPUJ7JchWCXbzP0vsidf13sQHZiXps4oLbLcRrgVu1AmcT/e5/bl4VWU57G2mXw==",
+      "version": "6.0.0-rc.10",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-utils/-/angular-utils-6.0.0-rc.10.tgz",
+      "integrity": "sha512-WZgzweq55g1sqiL8Nx2kOC66dwby7bK3iMJFrlYSSucdIPjLToKrTP0l5ZixNGUUzuzEOTFsClRbgnHUjfhzUQ==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -7458,9 +7458,9 @@
         "@ngx-translate/core": "^16.0.0",
         "@ngx-translate/http-loader": "^8.0.0",
         "@nx/devkit": "^20.3.0",
-        "@onecx/accelerator": "^6.0.0-rc.9",
-        "@onecx/angular-integration-interface": "^6.0.0-rc.9",
-        "@onecx/integration-interface": "^6.0.0-rc.9",
+        "@onecx/accelerator": "^6.0.0-rc.10",
+        "@onecx/angular-integration-interface": "^6.0.0-rc.10",
+        "@onecx/integration-interface": "^6.0.0-rc.10",
         "@primeng/themes": "^19.0.5",
         "@primeuix/styled": "^0.3.2",
         "primeng": "^19.0.6",
@@ -7468,9 +7468,9 @@
       }
     },
     "node_modules/@onecx/angular-webcomponents": {
-      "version": "6.0.0-rc.9",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-webcomponents/-/angular-webcomponents-6.0.0-rc.9.tgz",
-      "integrity": "sha512-Qn/+JPIsUvpCDM9sZB0gO7G5uEgW9GwvZ8zh7Ilh7lRGqZ2dDt0ouWBVP6rlJ2siQH9V15uqWVqxxXC9G9D7vg==",
+      "version": "6.0.0-rc.10",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-webcomponents/-/angular-webcomponents-6.0.0-rc.10.tgz",
+      "integrity": "sha512-I6amDKSw5IUfqeY+0ppXAc0TlKnJPpCwO6TnSRCRvgr56RuAdGepx6qokncOzGzrsxL14mpA0funpJPvOoO77g==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -7481,21 +7481,21 @@
         "@angular/platform-browser": "^19.0.0",
         "@angular/router": "^19.0.0",
         "@nx/devkit": "^20.3.0",
-        "@onecx/accelerator": "^6.0.0-rc.9",
-        "@onecx/angular-integration-interface": "^6.0.0-rc.9",
-        "@onecx/angular-utils": "^6.0.0-rc.9",
-        "@onecx/integration-interface": "^6.0.0-rc.9",
+        "@onecx/accelerator": "^6.0.0-rc.10",
+        "@onecx/angular-integration-interface": "^6.0.0-rc.10",
+        "@onecx/angular-utils": "^6.0.0-rc.10",
+        "@onecx/integration-interface": "^6.0.0-rc.10",
         "rxjs": "~7.8.1"
       }
     },
     "node_modules/@onecx/integration-interface": {
-      "version": "6.0.0-rc.9",
-      "resolved": "https://registry.npmjs.org/@onecx/integration-interface/-/integration-interface-6.0.0-rc.9.tgz",
-      "integrity": "sha512-8GdcRy0WPdKTbKNefm3vu+y9L2NCSEZUr2VE9Eb21Hru0bNJkdv6iSNOxa59EAgZyCVIVjapED+Rw1fi7QRyQg==",
+      "version": "6.0.0-rc.10",
+      "resolved": "https://registry.npmjs.org/@onecx/integration-interface/-/integration-interface-6.0.0-rc.10.tgz",
+      "integrity": "sha512-KWTjd26ciQcy9v65VoDCq2D99Ubs8/6zcuB9nhvRYmNAtdsTA/g+i7zI/6i5X/E77uvv/IxWa7tBKiin+K9KhQ==",
       "peerDependencies": {
         "@nx/devkit": "^20.3.0",
-        "@onecx/accelerator": "^6.0.0-rc.9",
-        "@onecx/nx-migration-utils": "^6.0.0-rc.9",
+        "@onecx/accelerator": "^6.0.0-rc.10",
+        "@onecx/nx-migration-utils": "^6.0.0-rc.10",
         "@phenomnomnominal/tsquery": "^6",
         "rxjs": "^7.8.1",
         "tslib": "^2.6.3",
@@ -7503,9 +7503,9 @@
       }
     },
     "node_modules/@onecx/nx-migration-utils": {
-      "version": "6.0.0-rc.9",
-      "resolved": "https://registry.npmjs.org/@onecx/nx-migration-utils/-/nx-migration-utils-6.0.0-rc.9.tgz",
-      "integrity": "sha512-rYjSS0oXnEb3xEQxngmntfgSiD60rHfjtXzKhLDpZ+tMvK9Jjz+wZ1+wGs4bOk485QYAVPffefYsNWPRBt5lYQ==",
+      "version": "6.0.0-rc.10",
+      "resolved": "https://registry.npmjs.org/@onecx/nx-migration-utils/-/nx-migration-utils-6.0.0-rc.10.tgz",
+      "integrity": "sha512-WpgDjMQRRf+BvSEQcfytUsoIiveP82TCbkgBqkR5V65EHu4WlMmh+4Hi+vOGXHkzXLznQ1A2cuNgIvYxAjaoOQ==",
       "peer": true,
       "peerDependencies": {
         "@nx/devkit": "^20.3.0",
@@ -7515,9 +7515,9 @@
       }
     },
     "node_modules/@onecx/portal-integration-angular": {
-      "version": "6.0.0-rc.9",
-      "resolved": "https://registry.npmjs.org/@onecx/portal-integration-angular/-/portal-integration-angular-6.0.0-rc.9.tgz",
-      "integrity": "sha512-rFg6KX7BAqqtdbSV8obEagVL+9fUeQpEOzSh9/Ukl+un5p7/UstPNAFSbqJqbJNWnMGHfHbXPokb50lR3TO/zQ==",
+      "version": "6.0.0-rc.10",
+      "resolved": "https://registry.npmjs.org/@onecx/portal-integration-angular/-/portal-integration-angular-6.0.0-rc.10.tgz",
+      "integrity": "sha512-eeKTl90T+jPgDnSTUa/4WBBzWVJdMG2L2+oV8R8KPfMcn4l1hsQlSICDE/mL7frwmG+B+a9iGOEXlmoTFTwCNA==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -7535,13 +7535,13 @@
         "@ngrx/store": "^19.0.0",
         "@ngx-translate/core": "^16.0.0",
         "@ngx-translate/http-loader": "^8.0.0",
-        "@onecx/accelerator": "^6.0.0-rc.9",
-        "@onecx/angular-accelerator": "^6.0.0-rc.9",
-        "@onecx/angular-integration-interface": "^6.0.0-rc.9",
-        "@onecx/angular-remote-components": "^6.0.0-rc.9",
-        "@onecx/angular-testing": "^6.0.0-rc.9",
-        "@onecx/angular-utils": "^6.0.0-rc.9",
-        "@onecx/integration-interface": "^6.0.0-rc.9",
+        "@onecx/accelerator": "^6.0.0-rc.10",
+        "@onecx/angular-accelerator": "^6.0.0-rc.10",
+        "@onecx/angular-integration-interface": "^6.0.0-rc.10",
+        "@onecx/angular-remote-components": "^6.0.0-rc.10",
+        "@onecx/angular-testing": "^6.0.0-rc.10",
+        "@onecx/angular-utils": "^6.0.0-rc.10",
+        "@onecx/integration-interface": "^6.0.0-rc.10",
         "@primeng/themes": "^19.0.0",
         "fast-deep-equal": "^3.1.3",
         "msw": "^2.3.1",
@@ -7551,17 +7551,17 @@
       }
     },
     "node_modules/@onecx/portal-layout-styles": {
-      "version": "5.33.0",
-      "resolved": "https://registry.npmjs.org/@onecx/portal-layout-styles/-/portal-layout-styles-5.33.0.tgz",
-      "integrity": "sha512-4mz1jphHi/I6SvwveF22TdQeQKy4gM+LQQT1EmyyckNRk+iEknEvLvP4ybU+5XHjnmbuzV1WUPJGXNVYRsr4wA==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/portal-layout-styles/-/portal-layout-styles-5.38.0.tgz",
+      "integrity": "sha512-PlS9mJ/7JnoIBymJdiJqUl4zO3UqoEiQ3BmJGMt9GfItWZPn+0DEc/vDIa4Tu48b09nYNS8SQIKUp4L540n6+w==",
       "peerDependencies": {
         "tslib": "^2.6.3"
       }
     },
     "node_modules/@onecx/shell-core": {
-      "version": "6.0.0-rc.9",
-      "resolved": "https://registry.npmjs.org/@onecx/shell-core/-/shell-core-6.0.0-rc.9.tgz",
-      "integrity": "sha512-Fv9B0jMwsRl8uTVNrXfi/oL+3W357unv4zWtX9h6JukAcTFsJJDrFDTnIVgwn5n4LcOELDka3LRA+ofYNW2gng==",
+      "version": "6.0.0-rc.10",
+      "resolved": "https://registry.npmjs.org/@onecx/shell-core/-/shell-core-6.0.0-rc.10.tgz",
+      "integrity": "sha512-1MD82sP1bftkWsluWyPwa8JXEnfmJDvb7/tqLG00yqhjXRbmBLTmeXGtSnIscX7RO1dh8KHT8bqzcZCsro7GCw==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -7573,8 +7573,8 @@
         "@ngneat/until-destroy": "^10.0.0",
         "@ngx-translate/core": "^16.0.0",
         "@nx/devkit": "^20.3.0",
-        "@onecx/angular-integration-interface": "^6.0.0-rc.9",
-        "@onecx/angular-remote-components": "^6.0.0-rc.9",
+        "@onecx/angular-integration-interface": "^6.0.0-rc.10",
+        "@onecx/angular-remote-components": "^6.0.0-rc.10",
         "primeng": "^19.0.0",
         "rxjs": "^7.8.1"
       }
diff --git a/package.json b/package.json
index bf6e2c02..0f5eb903 100644
--- a/package.json
+++ b/package.json
@@ -54,17 +54,17 @@
     "@angular/router": "^19.1.6",
     "@ngx-translate/core": "^16.0.4",
     "@nx/angular": "20.4.4",
-    "@onecx/accelerator": "^6.0.0-rc.9",
-    "@onecx/angular-accelerator": "^6.0.0-rc.9",
-    "@onecx/angular-auth": "^6.0.0-rc.9",
-    "@onecx/angular-integration-interface": "^6.0.0-rc.9",
-    "@onecx/angular-remote-components": "^6.0.0-rc.9",
-    "@onecx/angular-utils": "^6.0.0-rc.9",
-    "@onecx/angular-webcomponents": "^6.0.0-rc.9",
-    "@onecx/integration-interface": "^6.0.0-rc.9",
-    "@onecx/portal-integration-angular": "^6.0.0-rc.9",
-    "@onecx/portal-layout-styles": "^5.33.0",
-    "@onecx/shell-core": "^6.0.0-rc.9",
+    "@onecx/accelerator": "^6.0.0-rc.10",
+    "@onecx/angular-accelerator": "^6.0.0-rc.10",
+    "@onecx/angular-auth": "^6.0.0-rc.10",
+    "@onecx/angular-integration-interface": "^6.0.0-rc.10",
+    "@onecx/angular-remote-components": "^6.0.0-rc.10",
+    "@onecx/angular-utils": "^6.0.0-rc.10",
+    "@onecx/angular-webcomponents": "^6.0.0-rc.10",
+    "@onecx/integration-interface": "^6.0.0-rc.10",
+    "@onecx/portal-integration-angular": "^6.0.0-rc.10",
+    "@onecx/portal-layout-styles": "^5.38.0",
+    "@onecx/shell-core": "^6.0.0-rc.10",
     "@primeng/themes": "^19.0.6",
     "keycloak-js": "^25.0.6",
     "primeflex": "^3.3.1",
diff --git a/pre_loaders/angular-18/package-lock.json b/pre_loaders/angular-18/package-lock.json
index 8a4a604f..cfeaf0ed 100644
--- a/pre_loaders/angular-18/package-lock.json
+++ b/pre_loaders/angular-18/package-lock.json
@@ -19,18 +19,18 @@
         "@angular/platform-browser-dynamic": "^18.2.13",
         "@angular/router": "^18.2.13",
         "@ngx-translate/core": "^15.0.0",
-        "@onecx/accelerator": "^5.37.0",
-        "@onecx/angular-accelerator": "^5.37.0",
-        "@onecx/angular-auth": "^5.37.0",
-        "@onecx/angular-integration-interface": "^5.37.0",
-        "@onecx/angular-remote-components": "^5.37.0",
-        "@onecx/angular-utils": "^5.37.0",
-        "@onecx/angular-webcomponents": "^5.37.0",
-        "@onecx/integration-interface": "^5.37.0",
-        "@onecx/keycloak-auth": "^5.37.0",
-        "@onecx/portal-integration-angular": "^5.37.0",
-        "@onecx/portal-layout-styles": "^5.37.0",
-        "@onecx/shell-core": "^5.37.0",
+        "@onecx/accelerator": "^5.38.0",
+        "@onecx/angular-accelerator": "^5.38.0",
+        "@onecx/angular-auth": "^5.38.0",
+        "@onecx/angular-integration-interface": "^5.38.0",
+        "@onecx/angular-remote-components": "^5.38.0",
+        "@onecx/angular-utils": "^5.38.0",
+        "@onecx/angular-webcomponents": "^5.38.0",
+        "@onecx/integration-interface": "^5.38.0",
+        "@onecx/keycloak-auth": "^5.38.0",
+        "@onecx/portal-integration-angular": "^5.38.0",
+        "@onecx/portal-layout-styles": "^5.38.0",
+        "@onecx/shell-core": "^5.38.0",
         "primeng": "^17.18.15",
         "rxjs": "~7.8.1"
       },
@@ -3652,9 +3652,9 @@
       }
     },
     "node_modules/@nx/nx-darwin-arm64": {
-      "version": "21.0.0",
-      "resolved": "https://registry.npmjs.org/@nx/nx-darwin-arm64/-/nx-darwin-arm64-21.0.0.tgz",
-      "integrity": "sha512-K2Vlapy7untEPzbc79nkCPHUpCRAfW/VvI4HSS1r5wrHBLLrnqUr9A9yTUO36A2Xd/TkWAdyWFP7oMCPvsVFgQ==",
+      "version": "21.0.2",
+      "resolved": "https://registry.npmjs.org/@nx/nx-darwin-arm64/-/nx-darwin-arm64-21.0.2.tgz",
+      "integrity": "sha512-C2A94y4TJpAsxbyAZufCzcWNDFKvHNcGCxSwdMxyaDBHXOxDasSYH6KsUTj95sZtjMiHvMn9J4xforTwF/tE7w==",
       "cpu": [
         "arm64"
       ],
@@ -3665,9 +3665,9 @@
       "peer": true
     },
     "node_modules/@nx/nx-darwin-x64": {
-      "version": "21.0.0",
-      "resolved": "https://registry.npmjs.org/@nx/nx-darwin-x64/-/nx-darwin-x64-21.0.0.tgz",
-      "integrity": "sha512-3hB8A01ZUd8QMmLJ7BGzkl6rbmavh/STutrVKrGRrWGZpweZizd03gH+hMzf7yzjMrcYClfLhTkQdYQCNaTcOg==",
+      "version": "21.0.2",
+      "resolved": "https://registry.npmjs.org/@nx/nx-darwin-x64/-/nx-darwin-x64-21.0.2.tgz",
+      "integrity": "sha512-eWHM0gmOZBuqFw0QrO6h/ku0+LxbjmTYaWFJerPjqfAyOHKI9CEY/nPWHuJRkq7algUQdlgX5Utf+oQ+6aJlTQ==",
       "cpu": [
         "x64"
       ],
@@ -3678,9 +3678,9 @@
       "peer": true
     },
     "node_modules/@nx/nx-freebsd-x64": {
-      "version": "21.0.0",
-      "resolved": "https://registry.npmjs.org/@nx/nx-freebsd-x64/-/nx-freebsd-x64-21.0.0.tgz",
-      "integrity": "sha512-vDYFa5MfheyC49uzeucYswQhslaaAtaiD605qUbFhPyPm+7Icm3+GU8OWj6zPGxEMuv5R9dXl3JaXMz5Q2E7aQ==",
+      "version": "21.0.2",
+      "resolved": "https://registry.npmjs.org/@nx/nx-freebsd-x64/-/nx-freebsd-x64-21.0.2.tgz",
+      "integrity": "sha512-k9bPYiHscJhinxlWC/iZTObpZo6SEBqEaObvgBH4csZpirQ5sQSy/tHB0H1pPKzDwLqkRtUHn3Z6hdWwjF1hdQ==",
       "cpu": [
         "x64"
       ],
@@ -3691,9 +3691,9 @@
       "peer": true
     },
     "node_modules/@nx/nx-linux-arm-gnueabihf": {
-      "version": "21.0.0",
-      "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-21.0.0.tgz",
-      "integrity": "sha512-5FJ3zP3trxGjkw50f4JOmPadpd25ewQJYMOl9GZYUqYFR8l4l7PwX2B7NIJKSRDUy7agyaK1oNkSBlxWLJ4MbQ==",
+      "version": "21.0.2",
+      "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-21.0.2.tgz",
+      "integrity": "sha512-4u9TIfaeG+H9p8+LWXkBMJzqEVqfae0SMB06r7WB4RDRRe5elkU7sOtJK1LRs2MogBpTC6AErShFHXGEgQhSIQ==",
       "cpu": [
         "arm"
       ],
@@ -3704,9 +3704,9 @@
       "peer": true
     },
     "node_modules/@nx/nx-linux-arm64-gnu": {
-      "version": "21.0.0",
-      "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-21.0.0.tgz",
-      "integrity": "sha512-PzSgmxa7WFXHUhtTb9zb0QnzjYlkIXzajmeyJLyu1KnFG1kp765zp8lU+onRFZAYo+i4C7GMQjlvLb+LhgnkTw==",
+      "version": "21.0.2",
+      "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-21.0.2.tgz",
+      "integrity": "sha512-415Rj9nXUUyqFB/YwkK1Ag41jgymn0BNAqTZ/9sv1NZR1K/B5hA938Cc8eqFmrk5tFbLzqIwr5EA3QGrGZKN9Q==",
       "cpu": [
         "arm64"
       ],
@@ -3717,9 +3717,9 @@
       "peer": true
     },
     "node_modules/@nx/nx-linux-arm64-musl": {
-      "version": "21.0.0",
-      "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-21.0.0.tgz",
-      "integrity": "sha512-vlZFgr8wtPyk69WhpnXWIwrb+aq/vvD0gCplA53lS52K+3rWY7oOqAtkLWqOEQRFQcHYUV3euo4KEIWRmt0/HA==",
+      "version": "21.0.2",
+      "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-21.0.2.tgz",
+      "integrity": "sha512-gkA/TzOY4/sNHQF0k4EeLR6Pt79c1/PiVOmVN5tdjgljOzTkbrPzeeaBWlS/JH/e005+tkZZmceAZmXYEP9vGw==",
       "cpu": [
         "arm64"
       ],
@@ -3730,9 +3730,9 @@
       "peer": true
     },
     "node_modules/@nx/nx-linux-x64-gnu": {
-      "version": "21.0.0",
-      "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-21.0.0.tgz",
-      "integrity": "sha512-n2EhxhqCYsg09EffVgnb2lZkHn1o/bs4cjk8ETU4wW2odgz8reuFEkOgNOk1rsC/+EjTCv08ZsBrmbyVYSKzXQ==",
+      "version": "21.0.2",
+      "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-21.0.2.tgz",
+      "integrity": "sha512-F7PT9gJCdtUmVXecVOjU6kRbN8vs3FPI4G0Kuuh9n5OQ+y8uqTMIrSD8//yyn0S4tfz4Esd/UjtWB9Inw1WMgQ==",
       "cpu": [
         "x64"
       ],
@@ -3743,9 +3743,9 @@
       "peer": true
     },
     "node_modules/@nx/nx-linux-x64-musl": {
-      "version": "21.0.0",
-      "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-21.0.0.tgz",
-      "integrity": "sha512-DdLhgM7u3OkCRA3rrOblOZdqB6i5c1CrMfhGzFzbhlHWe59ZY2okqijKmjZe065oM2Ul+t4i9E62qj3IBvzANg==",
+      "version": "21.0.2",
+      "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-21.0.2.tgz",
+      "integrity": "sha512-a/qEWf7E7xjnh3XonnPKbzBbIhmCset7pJuDAWHyaoMRfjdYI3/uxs8mvRUZAMwThg7KMwmxx5QLAqEcMRgoyw==",
       "cpu": [
         "x64"
       ],
@@ -3756,9 +3756,9 @@
       "peer": true
     },
     "node_modules/@nx/nx-win32-arm64-msvc": {
-      "version": "21.0.0",
-      "resolved": "https://registry.npmjs.org/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-21.0.0.tgz",
-      "integrity": "sha512-q2pCz0EJspPN1L68TRulUuHN8eZbkR7OUGDbXr0R9+LBT0YHB/sFhuL/PS2gRbNFlrsBk+80SJVTf9ArxzYfzg==",
+      "version": "21.0.2",
+      "resolved": "https://registry.npmjs.org/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-21.0.2.tgz",
+      "integrity": "sha512-vZIv4/fS30WZ2yQA8tq2oQeyq3Pq9stx6NA7VW/Vtw2/Uv9QY0kXKysf7/pBY81h3pKNGi8FNaOOAgoT/+dz9w==",
       "cpu": [
         "arm64"
       ],
@@ -3769,9 +3769,9 @@
       "peer": true
     },
     "node_modules/@nx/nx-win32-x64-msvc": {
-      "version": "21.0.0",
-      "resolved": "https://registry.npmjs.org/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-21.0.0.tgz",
-      "integrity": "sha512-vxlMn+dSct2Q2xma4fpNqJDda3UPI4BQO/CSlGxAxpzitjN2NqJ9dWV7a/OaxKtjBKowHS+Bat610kXABSn1Hg==",
+      "version": "21.0.2",
+      "resolved": "https://registry.npmjs.org/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-21.0.2.tgz",
+      "integrity": "sha512-GJFjODSuNhcEjSm1sBHJ8GZ4quE299nnuWADoZYpXkkAhjCElyZJME/nuOpbh8r2E7cCFRbv04qTbkA/73UcFw==",
       "cpu": [
         "x64"
       ],
@@ -3782,18 +3782,18 @@
       "peer": true
     },
     "node_modules/@onecx/accelerator": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/accelerator/-/accelerator-5.37.0.tgz",
-      "integrity": "sha512-NXSb8ufcIkXB23ho/eyLfdXg4GqyF2AqhhZh0a996eIP5dvcmN13F4k1E2rVqZtYNEsf3mIUT0wpioxhPKXYKQ==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/accelerator/-/accelerator-5.38.0.tgz",
+      "integrity": "sha512-CETDDQl5zTk4xl1t0Tie3qhNkezsmOzlTnhs3bmlVqRGhoCgHH0J0qP83OMEhis5ozFhm3szgpJrySiJHvMgcA==",
       "peerDependencies": {
         "rxjs": "^7.8.1",
         "tslib": "^2.6.3"
       }
     },
     "node_modules/@onecx/angular-accelerator": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-accelerator/-/angular-accelerator-5.37.0.tgz",
-      "integrity": "sha512-rpbwRMGf9vEHsfQAkb9y1wTQwhtpoEJY3pYP24Ew8g0ebVPW+7ESkDhRqEs+HlqX8wLGgbLqCc+Tg5HRaZ5A0Q==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-accelerator/-/angular-accelerator-5.38.0.tgz",
+      "integrity": "sha512-I6yeTV8Mi9VeDa49v92++TH1WjgRTTdDw6Hcq0ADHu/G+ncl8EttIAU+hmfMp5bJXVQh8Vi6JBesDdoOMv52kQ==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -3807,12 +3807,12 @@
         "@ngneat/until-destroy": "^10.0.0",
         "@ngx-translate/core": "^15.0.0",
         "@ngx-translate/http-loader": "^8.0.0",
-        "@onecx/accelerator": "^5.37.0",
-        "@onecx/angular-integration-interface": "^5.37.0",
-        "@onecx/angular-remote-components": "^5.37.0",
-        "@onecx/angular-testing": "^5.37.0",
-        "@onecx/angular-utils": "^5.37.0",
-        "@onecx/integration-interface": "^5.37.0",
+        "@onecx/accelerator": "^5.38.0",
+        "@onecx/angular-integration-interface": "^5.38.0",
+        "@onecx/angular-remote-components": "^5.38.0",
+        "@onecx/angular-testing": "^5.38.0",
+        "@onecx/angular-utils": "^5.38.0",
+        "@onecx/integration-interface": "^5.38.0",
         "@storybook/angular": "^8.3.2",
         "chart.js": "^4.4.3",
         "d3-scale-chromatic": "^3.1.0",
@@ -3821,9 +3821,9 @@
       }
     },
     "node_modules/@onecx/angular-auth": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-auth/-/angular-auth-5.37.0.tgz",
-      "integrity": "sha512-7QMLBroKczq64PLmBIKZXl0ISL20P9SFLkgeo0O+O9Krak6lNAJY53KBkPkCda1BTue5aQMW68PzkjeAuZ1CCw==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-auth/-/angular-auth-5.38.0.tgz",
+      "integrity": "sha512-5tNJPzjGHLbkDgnkgK0Gb/gc9soE0ZPSnL3973Q86POTXbIjNTkfiJc2pDrZrmE15drAQOyFc7VtdHTkigaLzA==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -3831,30 +3831,30 @@
         "@angular-architects/module-federation": "^18.0.4",
         "@angular/common": "^18.0.5",
         "@angular/core": "^18.0.5",
-        "@onecx/angular-integration-interface": "^5.37.0",
-        "@onecx/integration-interface": "^5.37.0",
+        "@onecx/angular-integration-interface": "^5.38.0",
+        "@onecx/integration-interface": "^5.38.0",
         "keycloak-angular": "^16.0.1",
         "keycloak-js": "^25.0.1",
         "rxjs": "~7.8.0"
       }
     },
     "node_modules/@onecx/angular-integration-interface": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-integration-interface/-/angular-integration-interface-5.37.0.tgz",
-      "integrity": "sha512-/d74iXMugjfC8Z92eKCbGeUOH3+X59II5gHA7JjomluH0pRJjmgV45LF0eEXD+N+jthqlSZME+HauMDyFpVyYQ==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-integration-interface/-/angular-integration-interface-5.38.0.tgz",
+      "integrity": "sha512-yztfEAzOEJvTwzD+gBxCnzHKoBJGGI2hIuLdPRfVjWf3/RVz/ouU4NpyAJO4hjaaW9qhSmLPTuZvm2Rj4QYGZw==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
       "peerDependencies": {
         "@angular/core": "^18.0.5",
-        "@onecx/integration-interface": "^5.37.0",
+        "@onecx/integration-interface": "^5.38.0",
         "rxjs": "~7.8.1"
       }
     },
     "node_modules/@onecx/angular-remote-components": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-remote-components/-/angular-remote-components-5.37.0.tgz",
-      "integrity": "sha512-9vNphuszISd6luuhGyARYqyRI21mg50q6vQ5aejvHMeAZ5aJ6L+6HnjByTE1mChtMrsEw0dNO0eaNRpv+SOfXg==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-remote-components/-/angular-remote-components-5.38.0.tgz",
+      "integrity": "sha512-wJxHjQisSzC2rGWSDWos1GRltwht/TeLp3S+wS3fgqrVBPmHagzezNuqQNAkV9QV+21rTmOXvwPfx4LbXoUEYA==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -3863,15 +3863,15 @@
         "@angular/common": "^18.0.5",
         "@angular/core": "^18.0.5",
         "@ngx-translate/core": "^15.0.0",
-        "@onecx/angular-utils": "^5.37.0",
-        "@onecx/integration-interface": "^5.37.0",
+        "@onecx/angular-utils": "^5.38.0",
+        "@onecx/integration-interface": "^5.38.0",
         "rxjs": "^7.8.1"
       }
     },
     "node_modules/@onecx/angular-testing": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-testing/-/angular-testing-5.37.0.tgz",
-      "integrity": "sha512-IiJqQEpmXCcqOS779Oow8jPdUR20HJYaHOUEzmQMU8/YZrEuBkiiQlchCeHC7DSi+rInyWk/P5Lf9aVKqOzz/g==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-testing/-/angular-testing-5.38.0.tgz",
+      "integrity": "sha512-mOxOrTsbB599hsmBo9n7MSDD/D3axC/OKzWo/49QEba+AyPpFq9p8hStAoneZfzBeu1gLzpd2MVQyl/svdue4Q==",
       "peer": true,
       "dependencies": {
         "tslib": "^2.3.0"
@@ -3882,9 +3882,9 @@
       }
     },
     "node_modules/@onecx/angular-utils": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-utils/-/angular-utils-5.37.0.tgz",
-      "integrity": "sha512-wHxyNey81Xmr/hZDvR5JzvufyiExQb13loIaJ1kb2AZN9ksiPn7d0FQujRMIYFH1ULJOzvQDE1FrvbMZEVoUKQ==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-utils/-/angular-utils-5.38.0.tgz",
+      "integrity": "sha512-GU9+BKu9Ief35bLash2kb8PRmhFjIImrD+8Hnb2zOPTPdfjFe0uQWMtxjZOFzo2/zs3/gE0cgegj3I3K9weTew==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -3893,15 +3893,15 @@
         "@angular/core": "^18.0.5",
         "@ngx-translate/core": "^15.0.0",
         "@ngx-translate/http-loader": "^8.0.0",
-        "@onecx/accelerator": "^5.37.0",
-        "@onecx/angular-integration-interface": "^5.37.0",
+        "@onecx/accelerator": "^5.38.0",
+        "@onecx/angular-integration-interface": "^5.38.0",
         "rxjs": "^7.8.1"
       }
     },
     "node_modules/@onecx/angular-webcomponents": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/angular-webcomponents/-/angular-webcomponents-5.37.0.tgz",
-      "integrity": "sha512-VNDYQ0TlAnLk0BK2a+M09kBEQOkZFB40OgKUBLYGdUwBZDJDZyPEyo2osaeEj7Sx7jAlQambXBbNh3nnOMKocQ==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/angular-webcomponents/-/angular-webcomponents-5.38.0.tgz",
+      "integrity": "sha512-VJvF+jVR23qlghfZNyqsG5d2TP9GcNcP8M6I+G8zReQFuS/0JyiRftIUHD/9gJ8B+gvOmdHM4Ld2Eu1noHo7Gw==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -3911,20 +3911,20 @@
         "@angular/elements": "^18.0.5",
         "@angular/platform-browser": "^18.0.5",
         "@angular/router": "^18.0.5",
-        "@onecx/accelerator": "^5.37.0",
-        "@onecx/angular-integration-interface": "^5.37.0",
-        "@onecx/integration-interface": "^5.37.0",
+        "@onecx/accelerator": "^5.38.0",
+        "@onecx/angular-integration-interface": "^5.38.0",
+        "@onecx/integration-interface": "^5.38.0",
         "rxjs": "~7.8.1"
       }
     },
     "node_modules/@onecx/integration-interface": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/integration-interface/-/integration-interface-5.37.0.tgz",
-      "integrity": "sha512-OJiq0IlXpNM/+5WM1qxbg7xhj7DIeiLHc0JeHfgySAtDYt2OmfaEgbIcbePsdqXHOogEnE4pqL5L7G2sk3UWRw==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/integration-interface/-/integration-interface-5.38.0.tgz",
+      "integrity": "sha512-TCj4N60a7DYQCOiWGM5upqcrzgBCY0SsVCJLp0TV+5F1NSHLy0xGSrezJSIcabiFo84kymW22D2Gbg5oizRi4w==",
       "peerDependencies": {
         "@nx/devkit": "^19.8.0",
-        "@onecx/accelerator": "^5.37.0",
-        "@onecx/nx-migration-utils": "^5.37.0",
+        "@onecx/accelerator": "^5.38.0",
+        "@onecx/nx-migration-utils": "^5.38.0",
         "@phenomnomnominal/tsquery": "^6",
         "rxjs": "^7.8.1",
         "tslib": "^2.6.3",
@@ -3932,26 +3932,26 @@
       }
     },
     "node_modules/@onecx/keycloak-auth": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/keycloak-auth/-/keycloak-auth-5.37.0.tgz",
-      "integrity": "sha512-N5OOUQzIK39NDt3p++V5S5HenbL2nDkJP9GgmEgrzgER/0NPlKagsrCd5d1U6gt2s9DzY36pwjIiVhWR2990sA==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/keycloak-auth/-/keycloak-auth-5.38.0.tgz",
+      "integrity": "sha512-Fi5xkH8DJijOlJ0g2C0z/NiiZkytG1KJzXsSBj7ZAMwpgjwaLUq5tEfPVbHl1WucticdtJ8biI0yhcLxvP1atA==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
       "peerDependencies": {
         "@angular/common": "^18.0.5",
         "@angular/core": "^18.0.5",
-        "@onecx/angular-integration-interface": "^5.37.0",
-        "@onecx/integration-interface": "^5.37.0",
+        "@onecx/angular-integration-interface": "^5.38.0",
+        "@onecx/integration-interface": "^5.38.0",
         "keycloak-angular": "^16.0.1",
         "keycloak-js": "^25.0.1",
         "rxjs": "^7.8.1"
       }
     },
     "node_modules/@onecx/nx-migration-utils": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/nx-migration-utils/-/nx-migration-utils-5.37.0.tgz",
-      "integrity": "sha512-1tSU+K+g5xlLEg1n3g/ZFpng0d6chA70oK57saGRkc84KcRRdxyfuQVU46sd7wmYv5c7M2YUqayzCzJ5B5rvrA==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/nx-migration-utils/-/nx-migration-utils-5.38.0.tgz",
+      "integrity": "sha512-PyxM/yXJzb4OCNLG2FNY8UYkZC46yYOo+6XM1g6ASyKnG+Z1UaG4e1wT8Ovu9It7S/8PtlYDq0gtJpK97q+V2g==",
       "peer": true,
       "peerDependencies": {
         "@nx/devkit": "^19.8.0",
@@ -3961,9 +3961,9 @@
       }
     },
     "node_modules/@onecx/portal-integration-angular": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/portal-integration-angular/-/portal-integration-angular-5.37.0.tgz",
-      "integrity": "sha512-n3KtXgvBNaqsUp1rxbjSiwx7yh8eN4ryPXX4XGRwMwRKfYpN0Utx5kodTAdWC3WbFgXv5YQX4ZMiL3pp2f164A==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/portal-integration-angular/-/portal-integration-angular-5.38.0.tgz",
+      "integrity": "sha512-ohbI+MwKoIQhy+eDSQtXD1GD0z1E+I3e/mdV89OV4Kmg8Qp2LvWl18Qn4Xiy6aYwyu9FR1ea4V0tnLdT39Hrfg==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -3983,11 +3983,11 @@
         "@ngrx/store": "^18.0.1",
         "@ngx-translate/core": "^15.0.0",
         "@ngx-translate/http-loader": "^8.0.0",
-        "@onecx/angular-accelerator": "^5.37.0",
-        "@onecx/angular-integration-interface": "^5.37.0",
-        "@onecx/angular-testing": "^5.37.0",
-        "@onecx/angular-utils": "^5.37.0",
-        "@onecx/integration-interface": "^5.37.0",
+        "@onecx/angular-accelerator": "^5.38.0",
+        "@onecx/angular-integration-interface": "^5.38.0",
+        "@onecx/angular-testing": "^5.38.0",
+        "@onecx/angular-utils": "^5.38.0",
+        "@onecx/integration-interface": "^5.38.0",
         "fast-deep-equal": "^3.1.3",
         "msw": "^2.3.1",
         "primeng": "^17.18.6",
@@ -3996,17 +3996,17 @@
       }
     },
     "node_modules/@onecx/portal-layout-styles": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/portal-layout-styles/-/portal-layout-styles-5.37.0.tgz",
-      "integrity": "sha512-pDh90A6dYKbDe/DbPbDjdfLGsxBODKqdN/YNHTVbjEmKXNe2EWIfEfWCEVbIn6dmVFdAQBKVKqcGBUouO5se5g==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/portal-layout-styles/-/portal-layout-styles-5.38.0.tgz",
+      "integrity": "sha512-PlS9mJ/7JnoIBymJdiJqUl4zO3UqoEiQ3BmJGMt9GfItWZPn+0DEc/vDIa4Tu48b09nYNS8SQIKUp4L540n6+w==",
       "peerDependencies": {
         "tslib": "^2.6.3"
       }
     },
     "node_modules/@onecx/shell-core": {
-      "version": "5.37.0",
-      "resolved": "https://registry.npmjs.org/@onecx/shell-core/-/shell-core-5.37.0.tgz",
-      "integrity": "sha512-oixNSuKa+JZ0zWW8LceakzAvM23AwDhAynmNhFclPcTwBVNRl4TmSEQHHIDdTzO5QWoXKt1OWtQMEpWeBRqqCQ==",
+      "version": "5.38.0",
+      "resolved": "https://registry.npmjs.org/@onecx/shell-core/-/shell-core-5.38.0.tgz",
+      "integrity": "sha512-Esrh76uOge+1plsar5NUx6l07P3HUti9L/ZineQTiwpLlU86V/lS2YoJUvywN0n4VUvNNySC/t4+1v76W2+H0w==",
       "dependencies": {
         "tslib": "^2.3.0"
       },
@@ -4017,8 +4017,8 @@
         "@angular/router": "^18.0.5",
         "@ngneat/until-destroy": "^10.0.0",
         "@ngx-translate/core": "^15.0.0",
-        "@onecx/angular-integration-interface": "^5.37.0",
-        "@onecx/angular-remote-components": "^5.37.0",
+        "@onecx/angular-integration-interface": "^5.38.0",
+        "@onecx/angular-remote-components": "^5.38.0",
         "primeng": "^17.18.6",
         "rxjs": "^7.8.1"
       }
@@ -9715,9 +9715,9 @@
       }
     },
     "node_modules/nx": {
-      "version": "21.0.0",
-      "resolved": "https://registry.npmjs.org/nx/-/nx-21.0.0.tgz",
-      "integrity": "sha512-SiinQD5x85qarNy2brW5qaI3a2KW/gPp1El9tC/k1tjPgxY1nAkwhceiUdp+okmD++FIEHitF5ZDT4f7Odz8zw==",
+      "version": "21.0.2",
+      "resolved": "https://registry.npmjs.org/nx/-/nx-21.0.2.tgz",
+      "integrity": "sha512-Kkf7d4XgQH5KglwuWxtjY0scHClEf3G3I3wZpBWRdUd52t/a1kxUPL4lDcJ7hwkW+FWgSxFB+jmp/kMbroMXOg==",
       "hasInstallScript": true,
       "peer": true,
       "dependencies": {
@@ -9765,16 +9765,16 @@
         "node": "^20.19.0 || ^22.12.0"
       },
       "optionalDependencies": {
-        "@nx/nx-darwin-arm64": "21.0.0",
-        "@nx/nx-darwin-x64": "21.0.0",
-        "@nx/nx-freebsd-x64": "21.0.0",
-        "@nx/nx-linux-arm-gnueabihf": "21.0.0",
-        "@nx/nx-linux-arm64-gnu": "21.0.0",
-        "@nx/nx-linux-arm64-musl": "21.0.0",
-        "@nx/nx-linux-x64-gnu": "21.0.0",
-        "@nx/nx-linux-x64-musl": "21.0.0",
-        "@nx/nx-win32-arm64-msvc": "21.0.0",
-        "@nx/nx-win32-x64-msvc": "21.0.0"
+        "@nx/nx-darwin-arm64": "21.0.2",
+        "@nx/nx-darwin-x64": "21.0.2",
+        "@nx/nx-freebsd-x64": "21.0.2",
+        "@nx/nx-linux-arm-gnueabihf": "21.0.2",
+        "@nx/nx-linux-arm64-gnu": "21.0.2",
+        "@nx/nx-linux-arm64-musl": "21.0.2",
+        "@nx/nx-linux-x64-gnu": "21.0.2",
+        "@nx/nx-linux-x64-musl": "21.0.2",
+        "@nx/nx-win32-arm64-msvc": "21.0.2",
+        "@nx/nx-win32-x64-msvc": "21.0.2"
       },
       "peerDependencies": {
         "@swc-node/register": "^1.8.0",
diff --git a/pre_loaders/angular-18/package.json b/pre_loaders/angular-18/package.json
index caa1b568..94387aa1 100644
--- a/pre_loaders/angular-18/package.json
+++ b/pre_loaders/angular-18/package.json
@@ -18,18 +18,18 @@
     "@angular/platform-browser-dynamic": "^18.2.13",
     "@angular/router": "^18.2.13",
     "@ngx-translate/core": "^15.0.0",
-    "@onecx/accelerator": "^5.37.0",
-    "@onecx/angular-accelerator": "^5.37.0",
-    "@onecx/angular-auth": "^5.37.0",
-    "@onecx/angular-integration-interface": "^5.37.0",
-    "@onecx/angular-remote-components": "^5.37.0",
-    "@onecx/angular-webcomponents": "^5.37.0",
-    "@onecx/integration-interface": "^5.37.0",
-    "@onecx/keycloak-auth": "^5.37.0",
-    "@onecx/portal-integration-angular": "^5.37.0",
-    "@onecx/portal-layout-styles": "^5.37.0",
-    "@onecx/shell-core": "^5.37.0",
-    "@onecx/angular-utils": "^5.37.0",
+    "@onecx/accelerator": "^5.38.0",
+    "@onecx/angular-accelerator": "^5.38.0",
+    "@onecx/angular-auth": "^5.38.0",
+    "@onecx/angular-integration-interface": "^5.38.0",
+    "@onecx/angular-remote-components": "^5.38.0",
+    "@onecx/angular-webcomponents": "^5.38.0",
+    "@onecx/integration-interface": "^5.38.0",
+    "@onecx/keycloak-auth": "^5.38.0",
+    "@onecx/portal-integration-angular": "^5.38.0",
+    "@onecx/portal-layout-styles": "^5.38.0",
+    "@onecx/shell-core": "^5.38.0",
+    "@onecx/angular-utils": "^5.38.0",
     "rxjs": "~7.8.1",
     "primeng": "^17.18.15"
   },
diff --git a/src/app/app.component.html b/src/app/app.component.html
index 842748e1..1af50680 100644
--- a/src/app/app.component.html
+++ b/src/app/app.component.html
@@ -1,5 +1 @@
-<ocx-shell-portal-viewport
-  data-style-isolation
-  data-style-id="shell-ui"
-  data-no-portal-layout-styles
-></ocx-shell-portal-viewport>
+<ocx-shell-portal-viewport></ocx-shell-portal-viewport>
diff --git a/src/app/shell/utils/styles/legacy-style.utils.ts b/src/app/shell/utils/styles/legacy-style.utils.ts
index 30b6284c..21dbc72f 100644
--- a/src/app/shell/utils/styles/legacy-style.utils.ts
+++ b/src/app/shell/utils/styles/legacy-style.utils.ts
@@ -8,8 +8,7 @@ import {
   dataDynamicPortalLayoutStylesKey,
   isCssScopeRuleSupported,
   addStyleToHead,
-  extractNonRootRules,
-  extractRootRules
+  replaceRootWithScope
 } from '@onecx/angular-utils'
 
 export async function fetchPortalLayoutStyles(http: HttpClient) {
@@ -25,9 +24,8 @@ function loadPortalLayoutStylesStyles(css: string) {
   if (isCssScopeRuleSupported()) {
     addStyleToHead(
       `
-      ${extractRootRules(css)}
-    @scope([${dataStyleIdAttribute}]:not([${dataNoPortalLayoutStylesAttribute}])) to ([${dataStyleIsolationAttribute}]) {
-      ${extractNonRootRules(css)}
+      @scope([${dataStyleIdAttribute}]:not([${dataNoPortalLayoutStylesAttribute}])) to ([${dataStyleIsolationAttribute}]) {
+      ${replaceRootWithScope(css)}
     }
     `,
       {
@@ -37,9 +35,8 @@ function loadPortalLayoutStylesStyles(css: string) {
   } else {
     addStyleToHead(
       `
-        ${extractRootRules(css)}
-        @supports(@scope([${dataStyleIdAttribute}]:not([${dataNoPortalLayoutStylesAttribute}])) to ([${dataStyleIsolationAttribute}])) {
-          ${extractNonRootRules(css)}
+      @supports(@scope([${dataStyleIdAttribute}]:not([${dataNoPortalLayoutStylesAttribute}])) to ([${dataStyleIsolationAttribute}])) {
+          ${replaceRootWithScope(css)}
         }
         `,
       {
@@ -53,9 +50,8 @@ function loadDynamicPortalLayoutStylesStyles(css: string) {
   if (isCssScopeRuleSupported()) {
     addStyleToHead(
       `
-      ${extractRootRules(css)}
-    @scope(body > :not([${dataNoPortalLayoutStylesAttribute}])) to ([${dataStyleIsolationAttribute}]) {
-      ${extractNonRootRules(css)}
+      @scope(body > :not([${dataNoPortalLayoutStylesAttribute}])) to ([${dataStyleIsolationAttribute}]) {
+      ${replaceRootWithScope(css)}
     }
       `,
       {
@@ -65,9 +61,8 @@ function loadDynamicPortalLayoutStylesStyles(css: string) {
   } else {
     addStyleToHead(
       `
-      ${extractRootRules(css)}
-    @supports(@scope(body > :not([${dataNoPortalLayoutStylesAttribute}])) to ([${dataStyleIsolationAttribute}])) {
-      ${extractNonRootRules(css)}
+      @supports(@scope(body > :not([${dataNoPortalLayoutStylesAttribute}])) to ([${dataStyleIsolationAttribute}])) {
+      ${replaceRootWithScope(css)}
     }
     `,
       {
diff --git a/src/app/shell/utils/styles/shell-styles.utils.ts b/src/app/shell/utils/styles/shell-styles.utils.ts
index 09b021e8..ef4bde0a 100644
--- a/src/app/shell/utils/styles/shell-styles.utils.ts
+++ b/src/app/shell/utils/styles/shell-styles.utils.ts
@@ -6,8 +6,7 @@ import {
   isCssScopeRuleSupported,
   shellScopeId,
   addStyleToHead,
-  extractRootRules,
-  extractNonRootRules
+  replaceRootWithScope
 } from '@onecx/angular-utils'
 
 export async function fetchShellStyles(http: HttpClient) {
@@ -18,9 +17,8 @@ export function loadShellStyles(css: string) {
   if (isCssScopeRuleSupported()) {
     addStyleToHead(
       `
-        ${extractRootRules(css)}
-        @scope([${dataStyleIdAttribute}="${shellScopeId}"]) to ([${dataStyleIsolationAttribute}]) {
-          ${extractNonRootRules(css)}
+      @scope([${dataStyleIdAttribute}="${shellScopeId}"]) to ([${dataStyleIsolationAttribute}]) {
+          ${replaceRootWithScope(css)}
         }
       `,
       {
@@ -30,9 +28,8 @@ export function loadShellStyles(css: string) {
   } else {
     addStyleToHead(
       `
-        ${extractRootRules(css)}
-        @supports (@scope([${dataStyleIdAttribute}="${shellScopeId}"]) to ([${dataStyleIsolationAttribute}])) {
-              ${extractNonRootRules(css)}
+      @supports (@scope([${dataStyleIdAttribute}="${shellScopeId}"]) to ([${dataStyleIsolationAttribute}])) {
+          ${replaceRootWithScope(css)}
           }
       `,
       {
diff --git a/src/global-styles.scss b/src/global-styles.scss
index 7c273534..7b2a2a16 100644
--- a/src/global-styles.scss
+++ b/src/global-styles.scss
@@ -5,6 +5,10 @@
 
   To define styles for Shell only, please refer to shell-styles.scss.
 */
+
+// Import theme_defaults so default theme variables are available on the page
+@import "node_modules/@onecx/portal-layout-styles/src/styles/shell/theme_defaults.scss";
+
 $mobileBreakpoint: 991px !default;
 $fallbackFontFamily: Ubuntu, Helvetica Neue Light, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;
 $fallbackFontSize: 1rem;
diff --git a/src/index.html b/src/index.html
index 0027d78d..0cf09431 100644
--- a/src/index.html
+++ b/src/index.html
@@ -18,7 +18,7 @@
     </style>
   </head>
   <body>
-    <ocx-shell-root></ocx-shell-root>
+    <ocx-shell-root data-style-isolation data-style-id="shell-ui" data-no-portal-layout-styles></ocx-shell-root>
     <div class="splash">
       <div class="splash-content flex flex-column align-items-center gap-2">
         <h1>Welcome</h1>
diff --git a/src/portal-layout-styles.scss b/src/portal-layout-styles.scss
index e5c1b4cd..756e79d7 100644
--- a/src/portal-layout-styles.scss
+++ b/src/portal-layout-styles.scss
@@ -1,6 +1,10 @@
+// Imports for portal layout styles crucial variables and styles.
+// Not importing theme default variables! Those are imported via 'node_modules/@onecx/portal-layout-styles/src/styles/shell/theme_defaults.scss' on App initialization
+
 // Portal layout styles depend on primeflex and primeicons
 @import 'node_modules/primeflex/primeflex.scss';
 @import 'node_modules/primeicons/primeicons.css';
+
 @import 'node_modules/@onecx/portal-layout-styles/src/styles/shell/shell.scss';
 @import 'node_modules/@onecx/portal-layout-styles/src/styles/primeng/theme-light.scss';
 @import 'node_modules/@onecx/portal-layout-styles/src/styles/primeng/primeng.css';
\ No newline at end of file
diff --git a/src/scope-polyfill/css-style-sheet-updater.ts b/src/scope-polyfill/css-style-sheet-updater.ts
index 4d72a55c..43ad2d0e 100644
--- a/src/scope-polyfill/css-style-sheet-updater.ts
+++ b/src/scope-polyfill/css-style-sheet-updater.ts
@@ -28,9 +28,10 @@ export class CssStyleSheetHandler {
       console.warn('Expected to have a scoped sheet for:', sheetWithSupportsRule)
       return
     }
-    // eslint-disable-next-line @typescript-eslint/no-extra-semi
     // Save data about the scope so we can access it later and not recompute
-    (sheetWithSupportsRule as OcxCSSStyleSheet).ownerNode.ocxMatch = normalize(match)
+    // Save data about the scope so we can access it later and not recompute
+    // eslint-disable-next-line @typescript-eslint/no-extra-semi
+    ;(sheetWithSupportsRule as OcxCSSStyleSheet).ownerNode.ocxMatch = normalize(match)
     ;(sheetWithSupportsRule as OcxCSSStyleSheet).ownerNode.ocxFrom = normalize(from)
     ;(sheetWithSupportsRule as OcxCSSStyleSheet).ownerNode.ocxTo = normalize(to)
     ;(sheetWithSupportsRule as OcxCSSStyleSheet).ownerNode.ocxScopeUniqueId = scopeFromToUniqueId(normalize(from))
@@ -116,16 +117,18 @@ export class CssStyleSheetHandler {
     if (childrenCss) {
       let ruleStyleText = rule.style.cssText
       if (ruleStyleText) ruleStyleText = this.applyAnimationChangesToCssText(ruleStyleText, sheet)
-      return `${appendToUniqueSelectors(rule.selectorText, ':where(0)')} {${ruleStyleText}${childrenCss}}`
+      return `${this.constructDefaultSelector(rule)} {${ruleStyleText}${childrenCss}}`
     }
 
-    const updatedRuleText = rule.cssText.replace(
-      rule.selectorText,
-      appendToUniqueSelectors(rule.selectorText, ':where(0)')
-    )
+    const updatedRuleText = rule.cssText.replace(rule.selectorText, this.constructDefaultSelector(rule))
     return this.applyAnimationChangesToCssText(updatedRuleText, sheet)
   }
 
+  private static constructDefaultSelector(rule: CSSStyleRule) {
+    if (rule.selectorText === ':scope') return `${rule.selectorText}:where(0)`
+    return appendToUniqueSelectors(rule.selectorText, ':where(0)')
+  }
+
   private static applyAnimationChangesToCssText(cssText: string, sheet: OcxCSSStyleSheet) {
     return cssText.replace(animationNameValueRegex, (match, p1) => {
       let animationName = p1
@@ -243,6 +246,11 @@ export class CssStyleSheetHandler {
   ) {
     const originalQuerySelectorText = (cssRule as any).ocxQuerySelectorText
     if (originalQuerySelectorText === undefined) return
+    // Special case for styles that have to be applied for the @scope root
+    if (originalQuerySelectorText === ':scope') {
+      return this.updateScopeSelector(cssRule, fromNodes, sheet, mutationData, cachedSelectors)
+    }
+
     if (
       mutationData.skipMutationCheck
         ? true
@@ -255,6 +263,31 @@ export class CssStyleSheetHandler {
     }
   }
 
+  private static updateScopeSelector(
+    cssRule: CSSStyleRule & CSSGroupingRule,
+    fromNodes: Element[],
+    sheet: OcxCSSStyleSheet,
+    mutationData: MutationData,
+    cachedSelectors: SelectorPresenceMap
+  ) {
+    // :scope selector has to be replaced with the selection of found @scope root elements
+    // e.g., :scope {} -> :where(:nth-child(1) > :nth-child(2)) {}
+    cssRule.selectorText = computeRootSelectorsForElements(fromNodes).join(', ')
+    this.updateStyleRuleChildren(cssRule, fromNodes, sheet, mutationData, cachedSelectors)
+  }
+
+  private static updateStyleRuleChildren(
+    cssRule: CSSStyleRule & CSSGroupingRule,
+    fromNodes: Element[],
+    sheet: OcxCSSStyleSheet,
+    mutationData: MutationData,
+    cachedSelectors: SelectorPresenceMap
+  ) {
+    for (const child of Array.from(cssRule?.cssRules) ?? []) {
+      this.updateRule(child, fromNodes, sheet, mutationData, cachedSelectors)
+    }
+  }
+
   // If any subselector is fully matched the rule has to be updated
   private static doesRuleRequireUpdate(
     selectorText: string,
diff --git a/src/scope-polyfill/utils.ts b/src/scope-polyfill/utils.ts
index 217625ff..c5a7ba0e 100644
--- a/src/scope-polyfill/utils.ts
+++ b/src/scope-polyfill/utils.ts
@@ -176,9 +176,11 @@ export function nodeToStyleIdSelectors(node: HTMLElement) {
     return [dynamicPortalLayoutStylesSheetId]
   }
 
-  // Node that is a child of shell requires to update shell styles and any styles with shell-ui style id
   if (styleId === shellScopeId) {
-    return [shellStylesSheetId]
+    return [
+      `[${dataStyleIdAttribute}="${shellScopeId}"]`,
+      `[${dataStyleIdAttribute}="${shellScopeId}"][${dataNoPortalLayoutStylesAttribute}]`
+    ]
   }
 
   const appStyles = `[${dataStyleIdAttribute}="${styleId}"]:is([${dataNoPortalLayoutStylesAttribute}], [${dataMfeElementAttribute}])`


Reviews:
user: login: bastianjakobi
body: Can you add a few comments to the files explaining your changes or will this be done later?
state: CHANGES_REQUESTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-07T11:51:11Z
user: login: markuczy
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-07T12:42:01Z
user: login: markuczy
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-07T12:42:37Z

Review comments:
diff_hunk: @@ -5,6 +5,10 @@
 
   To define styles for Shell only, please refer to shell-styles.scss.
 */
+
+// Import theme_defaults so default theme variables are available on the page
+@import "node_modules/@onecx/portal-layout-styles/src/styles/shell/theme_defaults.scss";
path: src/global-styles.scss
user: login: bastianjakobi
body: Why is this a responsibility of shell and not of the app using portal-layout-styles?
created_at: 2025-05-07T11:47:22Z
author_association: CONTRIBUTOR
diff_hunk: @@ -18,7 +18,7 @@
     </style>
   </head>
   <body>
-    <ocx-shell-root></ocx-shell-root>
+    <ocx-shell-root data-style-isolation data-style-id="shell-ui" data-no-portal-layout-styles></ocx-shell-root>
path: src/index.html
user: login: bastianjakobi
body: What difference does this make compared to how it was before?
created_at: 2025-05-07T11:47:45Z
author_association: CONTRIBUTOR
diff_hunk: @@ -5,6 +5,10 @@
 
   To define styles for Shell only, please refer to shell-styles.scss.
 */
+
+// Import theme_defaults so default theme variables are available on the page
+@import "node_modules/@onecx/portal-layout-styles/src/styles/shell/theme_defaults.scss";
path: src/global-styles.scss
user: login: markuczy
body: Theme variables have to be provided regardless of style isolation and regardless of portal-layout-styles usage.
Before theme is applied for the workspace default values have to be defined so the UI is not completely broken.

Apps should provide default values as well, but those will be scoped. Shell needs those as well and making them global ensures that there is at least a fallback.
created_at: 2025-05-07T12:42:01Z
author_association: CONTRIBUTOR
diff_hunk: @@ -18,7 +18,7 @@
     </style>
   </head>
   <body>
-    <ocx-shell-root></ocx-shell-root>
+    <ocx-shell-root data-style-isolation data-style-id="shell-ui" data-no-portal-layout-styles></ocx-shell-root>
path: src/index.html
user: login: markuczy
body: Dynamic portal layout styles (body > :not([data-no-portal-layout-styles])) were applied on the ocx-shell-root which was incorrect.
created_at: 2025-05-07T12:42:37Z
author_association: CONTRIBUTOR

PR comments:
user: login: markuczy
created_at: 2025-05-07T12:43:58Z
body: > Can you add a few comments to the files explaining your changes or will this be done later?

What exactly do you need to be explained in the code?
author_association: CONTRIBUTOR
user: login: bastianjakobi
created_at: 2025-05-08T08:04:25Z
body: > > Can you add a few comments to the files explaining your changes or will this be done later?
> 
> What exactly do you need to be explained in the code?

It might be helpful to add some explanations to the methods present in `src/scope-polyfill/css-style-sheet-updater.ts`. What do you think?
author_association: CONTRIBUTOR
user: login: sonarqubecloud[bot]
created_at: 2025-05-08T10:20:20Z
body: ## [![Quality Gate Failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-failed-20px.png 'Quality Gate Failed')](https://sonarcloud.io/dashboard?id=onecx_onecx-shell-ui&pullRequest=579) **Quality Gate failed**  
Failed conditions  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png '') [0.0% Coverage on New Code](https://sonarcloud.io/component_measures?id=onecx_onecx-shell-ui&pullRequest=579&metric=new_coverage&view=list) (required ≥ 100%)  
  
[See analysis details on SonarQube Cloud](https://sonarcloud.io/dashboard?id=onecx_onecx-shell-ui&pullRequest=579)


author_association: NONE