@cqa-lib/cqa-ui 1.0.12 → 1.0.14

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.
@@ -2,16 +2,60 @@ import { Injectable } from '@angular/core';
2
2
  import { OverlayContainer } from '@angular/cdk/overlay';
3
3
  import * as i0 from "@angular/core";
4
4
  /**
5
- * Ensures Angular CDK overlay content (e.g., MatSelect, Datepicker panels)
5
+ * Ensures Angular CDK overlay content (e.g., MatSelect, Datepicker panels, library dialogs)
6
6
  * is nested under an element with id="cqa-ui-root" so Tailwind utilities
7
7
  * configured with important: '#cqa-ui-root' are applied inside overlays.
8
+ *
9
+ * IMPORTANT: Only sets id="cqa-ui-root" when library overlays are present.
10
+ * Portal Material dialogs should NOT have this ID to prevent library CSS from affecting them.
8
11
  */
9
12
  export class TailwindOverlayContainer extends OverlayContainer {
13
+ constructor() {
14
+ super(...arguments);
15
+ this.libraryOverlayCount = 0;
16
+ }
10
17
  _createContainer() {
11
18
  super._createContainer();
12
19
  if (this._containerElement) {
20
+ // Don't set ID initially - we'll set it dynamically when library overlays are created
21
+ this._containerElement.id = '';
22
+ // Use MutationObserver to detect when library overlays are created/destroyed
23
+ this.observeLibraryOverlays();
24
+ }
25
+ }
26
+ observeLibraryOverlays() {
27
+ if (!this._containerElement)
28
+ return;
29
+ const observer = new MutationObserver(() => {
30
+ this.updateContainerId();
31
+ });
32
+ observer.observe(this._containerElement, {
33
+ childList: true,
34
+ subtree: true,
35
+ });
36
+ // Also check immediately in case overlays already exist
37
+ setTimeout(() => this.updateContainerId(), 0);
38
+ }
39
+ updateContainerId() {
40
+ if (!this._containerElement)
41
+ return;
42
+ // Count library overlays (dialogs, select panels, datepicker panels)
43
+ const libraryDialogs = this._containerElement.querySelectorAll('.cqa-dialog-panel').length;
44
+ const libraryBackdrops = this._containerElement.querySelectorAll('.cqa-dialog-backdrop').length;
45
+ const librarySelectPanels = this._containerElement.querySelectorAll('.ctc-select-panel').length;
46
+ const libraryDatePanels = this._containerElement.querySelectorAll('.ctc-date-range-panel').length;
47
+ const totalLibraryOverlays = libraryDialogs + libraryBackdrops + librarySelectPanels + libraryDatePanels;
48
+ // Check for portal Material dialogs (those without .cqa-dialog-panel)
49
+ const portalDialogs = this._containerElement.querySelectorAll('.mat-dialog-container:not(.cqa-dialog-panel)').length;
50
+ if (totalLibraryOverlays > 0) {
51
+ // Library overlays exist - set the ID
13
52
  this._containerElement.id = 'cqa-ui-root';
14
53
  }
54
+ else if (portalDialogs > 0 && totalLibraryOverlays === 0) {
55
+ // Only portal dialogs exist - remove the ID to prevent library CSS from affecting them
56
+ this._containerElement.id = '';
57
+ }
58
+ // If both exist, keep the ID (library overlays need it, CSS resets will handle portal dialogs)
15
59
  }
16
60
  }
17
61
  TailwindOverlayContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: TailwindOverlayContainer, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
@@ -19,4 +63,4 @@ TailwindOverlayContainer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0
19
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: TailwindOverlayContainer, decorators: [{
20
64
  type: Injectable
21
65
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHctb3ZlcmxheS1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3V0aWxzL3R3LW92ZXJsYXktY29udGFpbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBRXhEOzs7O0dBSUc7QUFFSCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsZ0JBQWdCO0lBQ3pDLGdCQUFnQjtRQUNqQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN6QixJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxHQUFHLGFBQWEsQ0FBQztTQUMzQztJQUNILENBQUM7O3FIQU5VLHdCQUF3Qjt5SEFBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBRHBDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPdmVybGF5Q29udGFpbmVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuXG4vKipcbiAqIEVuc3VyZXMgQW5ndWxhciBDREsgb3ZlcmxheSBjb250ZW50IChlLmcuLCBNYXRTZWxlY3QsIERhdGVwaWNrZXIgcGFuZWxzKVxuICogaXMgbmVzdGVkIHVuZGVyIGFuIGVsZW1lbnQgd2l0aCBpZD1cImNxYS11aS1yb290XCIgc28gVGFpbHdpbmQgdXRpbGl0aWVzXG4gKiBjb25maWd1cmVkIHdpdGggaW1wb3J0YW50OiAnI2NxYS11aS1yb290JyBhcmUgYXBwbGllZCBpbnNpZGUgb3ZlcmxheXMuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUYWlsd2luZE92ZXJsYXlDb250YWluZXIgZXh0ZW5kcyBPdmVybGF5Q29udGFpbmVyIHtcbiAgcHJvdGVjdGVkIG92ZXJyaWRlIF9jcmVhdGVDb250YWluZXIoKTogdm9pZCB7XG4gICAgc3VwZXIuX2NyZWF0ZUNvbnRhaW5lcigpO1xuICAgIGlmICh0aGlzLl9jb250YWluZXJFbGVtZW50KSB7XG4gICAgICB0aGlzLl9jb250YWluZXJFbGVtZW50LmlkID0gJ2NxYS11aS1yb290JztcbiAgICB9XG4gIH1cbn1cblxuXG4iXX0=
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHctb3ZlcmxheS1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3V0aWxzL3R3LW92ZXJsYXktY29udGFpbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBRXhEOzs7Ozs7O0dBT0c7QUFFSCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsZ0JBQWdCO0lBRDlEOztRQUVVLHdCQUFtQixHQUFHLENBQUMsQ0FBQztLQW9EakM7SUFsRG9CLGdCQUFnQjtRQUNqQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN6QixJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixzRkFBc0Y7WUFDdEYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7WUFFL0IsNkVBQTZFO1lBQzdFLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1NBQy9CO0lBQ0gsQ0FBQztJQUVPLHNCQUFzQjtRQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQjtZQUFFLE9BQU87UUFFcEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUU7WUFDekMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7UUFFSCxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUN2QyxTQUFTLEVBQUUsSUFBSTtZQUNmLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQyxDQUFDO1FBRUgsd0RBQXdEO1FBQ3hELFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCO1lBQUUsT0FBTztRQUVwQyxxRUFBcUU7UUFDckUsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLG1CQUFtQixDQUFDLENBQUMsTUFBTSxDQUFDO1FBQzNGLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLHNCQUFzQixDQUFDLENBQUMsTUFBTSxDQUFDO1FBQ2hHLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLG1CQUFtQixDQUFDLENBQUMsTUFBTSxDQUFDO1FBQ2hHLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLHVCQUF1QixDQUFDLENBQUMsTUFBTSxDQUFDO1FBRWxHLE1BQU0sb0JBQW9CLEdBQUcsY0FBYyxHQUFHLGdCQUFnQixHQUFHLG1CQUFtQixHQUFHLGlCQUFpQixDQUFDO1FBRXpHLHNFQUFzRTtRQUN0RSxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsOENBQThDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFFckgsSUFBSSxvQkFBb0IsR0FBRyxDQUFDLEVBQUU7WUFDNUIsc0NBQXNDO1lBQ3RDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEdBQUcsYUFBYSxDQUFDO1NBQzNDO2FBQU0sSUFBSSxhQUFhLEdBQUcsQ0FBQyxJQUFJLG9CQUFvQixLQUFLLENBQUMsRUFBRTtZQUMxRCx1RkFBdUY7WUFDdkYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7U0FDaEM7UUFDRCwrRkFBK0Y7SUFDakcsQ0FBQzs7cUhBcERVLHdCQUF3Qjt5SEFBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBRHBDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPdmVybGF5Q29udGFpbmVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuXG4vKipcbiAqIEVuc3VyZXMgQW5ndWxhciBDREsgb3ZlcmxheSBjb250ZW50IChlLmcuLCBNYXRTZWxlY3QsIERhdGVwaWNrZXIgcGFuZWxzLCBsaWJyYXJ5IGRpYWxvZ3MpXG4gKiBpcyBuZXN0ZWQgdW5kZXIgYW4gZWxlbWVudCB3aXRoIGlkPVwiY3FhLXVpLXJvb3RcIiBzbyBUYWlsd2luZCB1dGlsaXRpZXNcbiAqIGNvbmZpZ3VyZWQgd2l0aCBpbXBvcnRhbnQ6ICcjY3FhLXVpLXJvb3QnIGFyZSBhcHBsaWVkIGluc2lkZSBvdmVybGF5cy5cbiAqIFxuICogSU1QT1JUQU5UOiBPbmx5IHNldHMgaWQ9XCJjcWEtdWktcm9vdFwiIHdoZW4gbGlicmFyeSBvdmVybGF5cyBhcmUgcHJlc2VudC5cbiAqIFBvcnRhbCBNYXRlcmlhbCBkaWFsb2dzIHNob3VsZCBOT1QgaGF2ZSB0aGlzIElEIHRvIHByZXZlbnQgbGlicmFyeSBDU1MgZnJvbSBhZmZlY3RpbmcgdGhlbS5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRhaWx3aW5kT3ZlcmxheUNvbnRhaW5lciBleHRlbmRzIE92ZXJsYXlDb250YWluZXIge1xuICBwcml2YXRlIGxpYnJhcnlPdmVybGF5Q291bnQgPSAwO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBfY3JlYXRlQ29udGFpbmVyKCk6IHZvaWQge1xuICAgIHN1cGVyLl9jcmVhdGVDb250YWluZXIoKTtcbiAgICBpZiAodGhpcy5fY29udGFpbmVyRWxlbWVudCkge1xuICAgICAgLy8gRG9uJ3Qgc2V0IElEIGluaXRpYWxseSAtIHdlJ2xsIHNldCBpdCBkeW5hbWljYWxseSB3aGVuIGxpYnJhcnkgb3ZlcmxheXMgYXJlIGNyZWF0ZWRcbiAgICAgIHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuaWQgPSAnJztcbiAgICAgIFxuICAgICAgLy8gVXNlIE11dGF0aW9uT2JzZXJ2ZXIgdG8gZGV0ZWN0IHdoZW4gbGlicmFyeSBvdmVybGF5cyBhcmUgY3JlYXRlZC9kZXN0cm95ZWRcbiAgICAgIHRoaXMub2JzZXJ2ZUxpYnJhcnlPdmVybGF5cygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZUxpYnJhcnlPdmVybGF5cygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2NvbnRhaW5lckVsZW1lbnQpIHJldHVybjtcblxuICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKCkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVDb250YWluZXJJZCgpO1xuICAgIH0pO1xuXG4gICAgb2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLl9jb250YWluZXJFbGVtZW50LCB7XG4gICAgICBjaGlsZExpc3Q6IHRydWUsXG4gICAgICBzdWJ0cmVlOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgLy8gQWxzbyBjaGVjayBpbW1lZGlhdGVseSBpbiBjYXNlIG92ZXJsYXlzIGFscmVhZHkgZXhpc3RcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMudXBkYXRlQ29udGFpbmVySWQoKSwgMCk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUNvbnRhaW5lcklkKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fY29udGFpbmVyRWxlbWVudCkgcmV0dXJuO1xuXG4gICAgLy8gQ291bnQgbGlicmFyeSBvdmVybGF5cyAoZGlhbG9ncywgc2VsZWN0IHBhbmVscywgZGF0ZXBpY2tlciBwYW5lbHMpXG4gICAgY29uc3QgbGlicmFyeURpYWxvZ3MgPSB0aGlzLl9jb250YWluZXJFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5jcWEtZGlhbG9nLXBhbmVsJykubGVuZ3RoO1xuICAgIGNvbnN0IGxpYnJhcnlCYWNrZHJvcHMgPSB0aGlzLl9jb250YWluZXJFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5jcWEtZGlhbG9nLWJhY2tkcm9wJykubGVuZ3RoO1xuICAgIGNvbnN0IGxpYnJhcnlTZWxlY3RQYW5lbHMgPSB0aGlzLl9jb250YWluZXJFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5jdGMtc2VsZWN0LXBhbmVsJykubGVuZ3RoO1xuICAgIGNvbnN0IGxpYnJhcnlEYXRlUGFuZWxzID0gdGhpcy5fY29udGFpbmVyRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuY3RjLWRhdGUtcmFuZ2UtcGFuZWwnKS5sZW5ndGg7XG4gICAgXG4gICAgY29uc3QgdG90YWxMaWJyYXJ5T3ZlcmxheXMgPSBsaWJyYXJ5RGlhbG9ncyArIGxpYnJhcnlCYWNrZHJvcHMgKyBsaWJyYXJ5U2VsZWN0UGFuZWxzICsgbGlicmFyeURhdGVQYW5lbHM7XG4gICAgXG4gICAgLy8gQ2hlY2sgZm9yIHBvcnRhbCBNYXRlcmlhbCBkaWFsb2dzICh0aG9zZSB3aXRob3V0IC5jcWEtZGlhbG9nLXBhbmVsKVxuICAgIGNvbnN0IHBvcnRhbERpYWxvZ3MgPSB0aGlzLl9jb250YWluZXJFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5tYXQtZGlhbG9nLWNvbnRhaW5lcjpub3QoLmNxYS1kaWFsb2ctcGFuZWwpJykubGVuZ3RoO1xuXG4gICAgaWYgKHRvdGFsTGlicmFyeU92ZXJsYXlzID4gMCkge1xuICAgICAgLy8gTGlicmFyeSBvdmVybGF5cyBleGlzdCAtIHNldCB0aGUgSURcbiAgICAgIHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuaWQgPSAnY3FhLXVpLXJvb3QnO1xuICAgIH0gZWxzZSBpZiAocG9ydGFsRGlhbG9ncyA+IDAgJiYgdG90YWxMaWJyYXJ5T3ZlcmxheXMgPT09IDApIHtcbiAgICAgIC8vIE9ubHkgcG9ydGFsIGRpYWxvZ3MgZXhpc3QgLSByZW1vdmUgdGhlIElEIHRvIHByZXZlbnQgbGlicmFyeSBDU1MgZnJvbSBhZmZlY3RpbmcgdGhlbVxuICAgICAgdGhpcy5fY29udGFpbmVyRWxlbWVudC5pZCA9ICcnO1xuICAgIH1cbiAgICAvLyBJZiBib3RoIGV4aXN0LCBrZWVwIHRoZSBJRCAobGlicmFyeSBvdmVybGF5cyBuZWVkIGl0LCBDU1MgcmVzZXRzIHdpbGwgaGFuZGxlIHBvcnRhbCBkaWFsb2dzKVxuICB9XG59XG5cblxuIl19
@@ -3403,16 +3403,60 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
3403
3403
  }] } });
3404
3404
 
3405
3405
  /**
3406
- * Ensures Angular CDK overlay content (e.g., MatSelect, Datepicker panels)
3406
+ * Ensures Angular CDK overlay content (e.g., MatSelect, Datepicker panels, library dialogs)
3407
3407
  * is nested under an element with id="cqa-ui-root" so Tailwind utilities
3408
3408
  * configured with important: '#cqa-ui-root' are applied inside overlays.
3409
+ *
3410
+ * IMPORTANT: Only sets id="cqa-ui-root" when library overlays are present.
3411
+ * Portal Material dialogs should NOT have this ID to prevent library CSS from affecting them.
3409
3412
  */
3410
3413
  class TailwindOverlayContainer extends OverlayContainer {
3414
+ constructor() {
3415
+ super(...arguments);
3416
+ this.libraryOverlayCount = 0;
3417
+ }
3411
3418
  _createContainer() {
3412
3419
  super._createContainer();
3413
3420
  if (this._containerElement) {
3421
+ // Don't set ID initially - we'll set it dynamically when library overlays are created
3422
+ this._containerElement.id = '';
3423
+ // Use MutationObserver to detect when library overlays are created/destroyed
3424
+ this.observeLibraryOverlays();
3425
+ }
3426
+ }
3427
+ observeLibraryOverlays() {
3428
+ if (!this._containerElement)
3429
+ return;
3430
+ const observer = new MutationObserver(() => {
3431
+ this.updateContainerId();
3432
+ });
3433
+ observer.observe(this._containerElement, {
3434
+ childList: true,
3435
+ subtree: true,
3436
+ });
3437
+ // Also check immediately in case overlays already exist
3438
+ setTimeout(() => this.updateContainerId(), 0);
3439
+ }
3440
+ updateContainerId() {
3441
+ if (!this._containerElement)
3442
+ return;
3443
+ // Count library overlays (dialogs, select panels, datepicker panels)
3444
+ const libraryDialogs = this._containerElement.querySelectorAll('.cqa-dialog-panel').length;
3445
+ const libraryBackdrops = this._containerElement.querySelectorAll('.cqa-dialog-backdrop').length;
3446
+ const librarySelectPanels = this._containerElement.querySelectorAll('.ctc-select-panel').length;
3447
+ const libraryDatePanels = this._containerElement.querySelectorAll('.ctc-date-range-panel').length;
3448
+ const totalLibraryOverlays = libraryDialogs + libraryBackdrops + librarySelectPanels + libraryDatePanels;
3449
+ // Check for portal Material dialogs (those without .cqa-dialog-panel)
3450
+ const portalDialogs = this._containerElement.querySelectorAll('.mat-dialog-container:not(.cqa-dialog-panel)').length;
3451
+ if (totalLibraryOverlays > 0) {
3452
+ // Library overlays exist - set the ID
3414
3453
  this._containerElement.id = 'cqa-ui-root';
3415
3454
  }
3455
+ else if (portalDialogs > 0 && totalLibraryOverlays === 0) {
3456
+ // Only portal dialogs exist - remove the ID to prevent library CSS from affecting them
3457
+ this._containerElement.id = '';
3458
+ }
3459
+ // If both exist, keep the ID (library overlays need it, CSS resets will handle portal dialogs)
3416
3460
  }
3417
3461
  }
3418
3462
  TailwindOverlayContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: TailwindOverlayContainer, deps: null, target: i0.ɵɵFactoryTarget.Injectable });