@clr/angular 18.0.0-beta.2 → 18.0.0-beta.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 (95) hide show
  1. package/fesm2022/clr-angular-accordion.mjs +1 -1
  2. package/fesm2022/clr-angular-accordion.mjs.map +1 -1
  3. package/fesm2022/clr-angular-button.mjs +5 -5
  4. package/fesm2022/clr-angular-button.mjs.map +1 -1
  5. package/fesm2022/clr-angular-data-datagrid.mjs +18 -12
  6. package/fesm2022/clr-angular-data-datagrid.mjs.map +1 -1
  7. package/fesm2022/clr-angular-data.mjs +11 -9102
  8. package/fesm2022/clr-angular-data.mjs.map +1 -1
  9. package/fesm2022/clr-angular-emphasis.mjs +12 -778
  10. package/fesm2022/clr-angular-emphasis.mjs.map +1 -1
  11. package/fesm2022/clr-angular-forms-combobox.mjs +336 -43
  12. package/fesm2022/clr-angular-forms-combobox.mjs.map +1 -1
  13. package/fesm2022/clr-angular-forms-common.mjs +8 -6
  14. package/fesm2022/clr-angular-forms-common.mjs.map +1 -1
  15. package/fesm2022/clr-angular-forms-datepicker.mjs +5 -5
  16. package/fesm2022/clr-angular-forms-datepicker.mjs.map +1 -1
  17. package/fesm2022/clr-angular-forms-file-input.mjs +8 -6
  18. package/fesm2022/clr-angular-forms-file-input.mjs.map +1 -1
  19. package/fesm2022/clr-angular-forms.mjs +68 -8460
  20. package/fesm2022/clr-angular-forms.mjs.map +1 -1
  21. package/fesm2022/clr-angular-layout-nav.mjs +27 -25
  22. package/fesm2022/clr-angular-layout-nav.mjs.map +1 -1
  23. package/fesm2022/clr-angular-layout-tabs.mjs +1 -1
  24. package/fesm2022/clr-angular-layout-tabs.mjs.map +1 -1
  25. package/fesm2022/clr-angular-layout.mjs +15 -2057
  26. package/fesm2022/clr-angular-layout.mjs.map +1 -1
  27. package/fesm2022/clr-angular-modal.mjs +2 -3
  28. package/fesm2022/clr-angular-modal.mjs.map +1 -1
  29. package/fesm2022/clr-angular-popover-common.mjs +1 -1
  30. package/fesm2022/clr-angular-popover-common.mjs.map +1 -1
  31. package/fesm2022/clr-angular-popover-signpost.mjs +4 -4
  32. package/fesm2022/clr-angular-popover-signpost.mjs.map +1 -1
  33. package/fesm2022/clr-angular-popover-tooltip.mjs +4 -4
  34. package/fesm2022/clr-angular-popover-tooltip.mjs.map +1 -1
  35. package/fesm2022/clr-angular-popover.mjs +12 -2326
  36. package/fesm2022/clr-angular-popover.mjs.map +1 -1
  37. package/fesm2022/clr-angular-stepper.mjs +1 -1
  38. package/fesm2022/clr-angular-stepper.mjs.map +1 -1
  39. package/fesm2022/clr-angular-utils.mjs +9 -439
  40. package/fesm2022/clr-angular-utils.mjs.map +1 -1
  41. package/fesm2022/clr-angular-wizard.mjs +427 -224
  42. package/fesm2022/clr-angular-wizard.mjs.map +1 -1
  43. package/fesm2022/clr-angular.mjs +94 -38683
  44. package/fesm2022/clr-angular.mjs.map +1 -1
  45. package/package.json +7 -2
  46. package/schematics/collection.json +10 -0
  47. package/schematics/ng-update/index.d.ts +2 -0
  48. package/schematics/ng-update/index.js +66 -0
  49. package/schematics/ng-update/index.js.map +1 -0
  50. package/schematics/ng-update/migrations/css-migration.d.ts +5 -0
  51. package/schematics/ng-update/migrations/css-migration.js +167 -0
  52. package/schematics/ng-update/migrations/css-migration.js.map +1 -0
  53. package/schematics/ng-update/migrations/import-migration.d.ts +4 -0
  54. package/schematics/ng-update/migrations/import-migration.js +136 -0
  55. package/schematics/ng-update/migrations/import-migration.js.map +1 -0
  56. package/schematics/ng-update/migrations/template-migration.d.ts +5 -0
  57. package/schematics/ng-update/migrations/template-migration.js +175 -0
  58. package/schematics/ng-update/migrations/template-migration.js.map +1 -0
  59. package/schematics/ng-update/replacements/css-replacements.d.ts +17 -0
  60. package/schematics/ng-update/replacements/css-replacements.js +74 -0
  61. package/schematics/ng-update/replacements/css-replacements.js.map +1 -0
  62. package/schematics/ng-update/replacements/import-replacements.d.ts +13 -0
  63. package/schematics/ng-update/replacements/import-replacements.js +101 -0
  64. package/schematics/ng-update/replacements/import-replacements.js.map +1 -0
  65. package/schematics/ng-update/replacements/symbol-replacements.d.ts +12 -0
  66. package/schematics/ng-update/replacements/symbol-replacements.js +68 -0
  67. package/schematics/ng-update/replacements/symbol-replacements.js.map +1 -0
  68. package/schematics/ng-update/replacements/template-replacements.d.ts +14 -0
  69. package/schematics/ng-update/replacements/template-replacements.js +53 -0
  70. package/schematics/ng-update/replacements/template-replacements.js.map +1 -0
  71. package/schematics/ng-update/utils/file-visitor.d.ts +8 -0
  72. package/schematics/ng-update/utils/file-visitor.js +44 -0
  73. package/schematics/ng-update/utils/file-visitor.js.map +1 -0
  74. package/schematics/vitest.config.d.ts +2 -0
  75. package/schematics/vitest.config.js +17 -0
  76. package/schematics/vitest.config.js.map +1 -0
  77. package/types/clr-angular-accordion.d.ts +1 -1
  78. package/types/clr-angular-button.d.ts +1 -1
  79. package/types/clr-angular-data-datagrid.d.ts +23 -23
  80. package/types/clr-angular-data.d.ts +4 -2126
  81. package/types/clr-angular-emphasis.d.ts +4 -220
  82. package/types/clr-angular-forms-combobox.d.ts +56 -10
  83. package/types/clr-angular-forms-datepicker.d.ts +1 -1
  84. package/types/clr-angular-forms.d.ts +26 -2078
  85. package/types/clr-angular-layout-nav.d.ts +6 -2
  86. package/types/clr-angular-layout-tabs.d.ts +1 -1
  87. package/types/clr-angular-layout.d.ts +6 -463
  88. package/types/clr-angular-popover-common.d.ts +1 -1
  89. package/types/clr-angular-popover-signpost.d.ts +1 -1
  90. package/types/clr-angular-popover-tooltip.d.ts +1 -1
  91. package/types/clr-angular-popover.d.ts +7 -593
  92. package/types/clr-angular-stepper.d.ts +1 -1
  93. package/types/clr-angular-utils.d.ts +10 -162
  94. package/types/clr-angular-wizard.d.ts +89 -35
  95. package/types/clr-angular.d.ts +22 -10270
@@ -1 +1 @@
1
- {"version":3,"file":"clr-angular-modal.mjs","sources":["../../../projects/angular/modal/modal-stack.service.ts","../../../projects/angular/modal/modal-configuration.service.ts","../../../projects/angular/modal/modal.ts","../../../projects/angular/modal/modal.html","../../../projects/angular/modal/modal-body.ts","../../../projects/angular/modal/modal-host.component.ts","../../../projects/angular/modal/modal.module.ts","../../../projects/angular/modal/side-panel.ts","../../../projects/angular/modal/side-panel.html","../../../projects/angular/modal/side-panel.module.ts","../../../projects/angular/modal/index.ts","../../../projects/angular/modal/clr-angular-modal.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { isPlatformBrowser } from '@angular/common';\nimport { Inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { Keys } from '@clr/angular/utils';\n\nexport interface Closable {\n close(): void;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class ModalStackService {\n private readonly modalStack: Closable[] = [];\n private readonly keyUpEventListener = this.onKeyUp.bind(this);\n\n constructor(@Inject(PLATFORM_ID) private readonly platformId: unknown) {}\n\n trackModalOpen(openedModal: Closable) {\n if (this.modalStack.includes(openedModal) === false) {\n this.modalStack.unshift(openedModal);\n }\n\n if (isPlatformBrowser(this.platformId)) {\n document.body.addEventListener('keyup', this.keyUpEventListener);\n }\n }\n\n trackModalClose(closedModal: Closable) {\n const closedModalIndex = this.modalStack.indexOf(closedModal);\n\n if (closedModalIndex > -1) {\n this.modalStack.splice(closedModalIndex, 1);\n }\n\n if (this.modalStack.length === 0 && isPlatformBrowser(this.platformId)) {\n document.body.removeEventListener('keyup', this.keyUpEventListener);\n }\n }\n\n private onKeyUp(event: KeyboardEvent) {\n if (this.modalStack.length && event.key === Keys.Escape) {\n // We blur the active element because escaping with an input element in focus could cause\n // an ExpressionChangedAfterItHasBeenCheckedError for the touched state. (CDE-1662)\n (document.activeElement as HTMLElement).blur();\n\n this.modalStack[0].close();\n }\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Injectable } from '@angular/core';\n\n@Injectable({ providedIn: 'root' })\nexport class ClrModalConfigurationService {\n fadeMove = 'fadeDown';\n backdrop = true;\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { animate, AnimationEvent, style, transition, trigger } from '@angular/animations';\nimport {\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n SimpleChange,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { ClrCommonStringsService, ScrollingService, uniqueIdFactory } from '@clr/angular/utils';\n\nimport { ClrModalConfigurationService } from './modal-configuration.service';\nimport { ModalStackService } from './modal-stack.service';\n\n@Component({\n selector: 'clr-modal',\n viewProviders: [ScrollingService],\n templateUrl: './modal.html',\n styles: [\n `\n :host {\n display: none;\n }\n :host.open {\n display: inline;\n }\n `,\n ],\n animations: [\n trigger('fadeMove', [\n transition('* => fadeDown', [\n style({ opacity: 0, transform: 'translate(0, -25%)' }),\n animate('0.2s ease-in-out'),\n ]),\n transition('fadeDown => *', [\n animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(0, -25%)' })),\n ]),\n transition('* => fadeLeft', [style({ opacity: 0, transform: 'translate(25%, 0)' }), animate('0.2s ease-in-out')]),\n transition('fadeLeft => *', [animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(25%, 0)' }))]),\n transition('* => fadeUp', [style({ opacity: 0, transform: 'translate(0, 50%)' }), animate('0.2s ease-in-out')]),\n transition('fadeUp => *', [animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(0, 50%)' }))]),\n ]),\n trigger('fade', [\n transition('void => *', [style({ opacity: 0 }), animate('0.2s ease-in-out', style({ opacity: 0.85 }))]),\n transition('* => void', [animate('0.2s ease-in-out', style({ opacity: 0 }))]),\n ]),\n ],\n standalone: false,\n})\nexport class ClrModal implements OnChanges, OnDestroy {\n modalId = uniqueIdFactory();\n @ViewChild('title') title: ElementRef<HTMLElement>;\n\n @Input('clrModalOpen') @HostBinding('class.open') _open = false;\n @Output('clrModalOpenChange') _openChanged = new EventEmitter<boolean>(false);\n\n @Input('clrModalClosable') closable = true;\n @Input('clrModalCloseButtonAriaLabel') closeButtonAriaLabel = this.commonStrings.keys.close;\n @Input('clrModalSize') size = 'md';\n @Input('clrModalStaticBackdrop') staticBackdrop = true;\n @Input('clrModalSkipAnimation') skipAnimation = false;\n\n @Input('clrModalPreventClose') stopClose = false;\n @Output('clrModalAlternateClose') altClose = new EventEmitter<boolean>(false);\n\n @Input('clrModalLabelledById') labelledBy: string;\n\n // presently this is only used by inline wizards\n @Input('clrModalOverrideScrollService') bypassScrollService = false;\n\n // Provide raw modal content. This is used by the wizard so that the same template can be rendered with and without a modal.\n @ContentChild('clrInternalModalContentTemplate') protected readonly modalContentTemplate: TemplateRef<any>;\n\n @ViewChild('body') private readonly bodyElementRef: ElementRef<HTMLElement>;\n\n constructor(\n private _scrollingService: ScrollingService,\n public commonStrings: ClrCommonStringsService,\n private modalStackService: ModalStackService,\n private configuration: ClrModalConfigurationService\n ) {}\n\n get fadeMove(): string {\n return this.skipAnimation ? '' : this.configuration.fadeMove;\n }\n set fadeMove(move: string) {\n this.configuration.fadeMove = move;\n }\n\n get backdrop(): boolean {\n return this.configuration.backdrop;\n }\n\n // Detect when _open is set to true and set no-scrolling to true\n ngOnChanges(changes: { [propName: string]: SimpleChange }): void {\n if (!this.bypassScrollService && changes && Object.prototype.hasOwnProperty.call(changes, '_open')) {\n if (changes._open.currentValue) {\n this._scrollingService.stopScrolling();\n this.modalStackService.trackModalOpen(this);\n } else {\n this._scrollingService.resumeScrolling();\n }\n }\n }\n\n ngOnDestroy(): void {\n this._scrollingService.resumeScrolling();\n }\n\n open(): void {\n if (this._open) {\n return;\n }\n this._open = true;\n this._openChanged.emit(true);\n this.modalStackService.trackModalOpen(this);\n }\n\n backdropClick(): void {\n if (this.staticBackdrop) {\n this.title.nativeElement.focus();\n return;\n }\n\n this.close();\n }\n\n close(): void {\n if (this.stopClose) {\n this.altClose.emit(false);\n return;\n }\n if (!this.closable || !this._open) {\n return;\n }\n this._open = false;\n }\n\n fadeDone(e: AnimationEvent) {\n if (e.toState === 'void') {\n // TODO: Investigate if we can decouple from animation events\n this._openChanged.emit(false);\n this.modalStackService.trackModalClose(this);\n }\n }\n\n scrollTop() {\n this.bodyElementRef.nativeElement.scrollTo(0, 0);\n }\n}\n","<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n@if (_open) {\n<div class=\"modal\" [class.modal-full-screen]=\"size == 'full-screen'\">\n <!--fixme: revisit when ngClass works with exit animation-->\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"true\"\n [@fadeMove]=\"fadeMove\"\n (@fadeMove.done)=\"fadeDone($event)\"\n class=\"modal-dialog\"\n [class.modal-sm]=\"size == 'sm'\"\n [class.modal-lg]=\"size == 'lg'\"\n [class.modal-xl]=\"size == 'xl'\"\n role=\"dialog\"\n aria-modal=\"true\"\n [attr.aria-hidden]=\"!_open\"\n [attr.aria-labelledby]=\"labelledBy || modalId\"\n >\n <div class=\"clr-sr-only\">{{commonStrings.keys.modalContentStart}}</div>\n <!-- This wizard is tightly coupled to the modal styles, so changes here could require changes in the wizard. -->\n <div class=\"modal-content-wrapper\">\n @if (!modalContentTemplate) {\n <div class=\"modal-content\">\n <div class=\"modal-header--accessible\">\n <ng-content select=\".leading-button\"></ng-content>\n <div class=\"modal-title-wrapper\" #title [id]=\"modalId\" cdkFocusInitial tabindex=\"-1\">\n <ng-content select=\".modal-title\"></ng-content>\n </div>\n @if (closable) {\n <button\n type=\"button\"\n [attr.aria-label]=\"closeButtonAriaLabel || commonStrings.keys.close\"\n class=\"close\"\n (click)=\"close()\"\n >\n <cds-icon shape=\"window-close\"></cds-icon>\n </button>\n }\n </div>\n <div #body class=\"modal-body-wrapper\">\n <ng-content select=\".modal-body\"></ng-content>\n </div>\n <ng-content select=\".modal-footer\"></ng-content>\n </div>\n } @else {\n <ng-template [ngTemplateOutlet]=\"modalContentTemplate\"></ng-template>\n }\n </div>\n <div class=\"clr-sr-only\">{{commonStrings.keys.modalContentEnd}}</div>\n </div>\n @if (backdrop) {\n <div [@fade] class=\"modal-backdrop\" aria-hidden=\"true\" (click)=\"backdropClick()\"></div>\n }\n</div>\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, ElementRef, NgZone, OnDestroy, Renderer2 } from '@angular/core';\n\n/**\n * Allows modal overflow area to be scrollable via keyboard.\n * The modal body will focus with keyboard navigation only.\n * This allows inner focusable items to be focused without\n * the overflow scroll being focused.\n */\n@Directive({\n selector: '.modal-body',\n standalone: false,\n})\nexport class ClrModalBody implements OnDestroy {\n private tabindex = '0';\n private unlisteners: VoidFunction[] = [];\n private observer: ResizeObserver;\n\n constructor(\n private readonly renderer: Renderer2,\n private readonly host: ElementRef<HTMLElement>,\n ngZone: NgZone\n ) {\n ngZone.runOutsideAngular(() => {\n this.observer = new ResizeObserver(() => this.addOrRemoveTabIndex());\n this.observer.observe(host.nativeElement);\n\n this.unlisteners.push(\n renderer.listen(host.nativeElement, 'mouseup', () => {\n // set the tabindex binding back when click is completed with mouseup\n this.addOrRemoveTabIndex();\n }),\n renderer.listen(host.nativeElement, 'mousedown', () => {\n // tabindex = 0 binding should be removed\n // so it won't be focused when click starts with mousedown\n this.removeTabIndex();\n })\n );\n });\n }\n\n ngOnDestroy(): void {\n while (this.unlisteners.length) {\n this.unlisteners.pop()();\n }\n\n this.observer.disconnect();\n this.observer = null;\n }\n\n private addTabIndex() {\n this.renderer.setAttribute(this.host.nativeElement, 'tabindex', this.tabindex);\n }\n\n private removeTabIndex() {\n this.renderer.removeAttribute(this.host.nativeElement, 'tabindex');\n }\n\n private addOrRemoveTabIndex() {\n const modalBody = this.host.nativeElement.parentElement;\n\n if (modalBody && modalBody.clientHeight < modalBody.scrollHeight) {\n this.addTabIndex();\n } else {\n this.removeTabIndex();\n }\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Component } from '@angular/core';\n\n@Component({\n selector: '[clrModalHost]',\n host: { '[class.clr-modal-host]': 'true' },\n template: `\n <div class=\"clr-modal-host-scrollable\">\n <ng-content></ng-content>\n </div>\n `,\n standalone: false,\n})\nexport class ClrModalHostComponent {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule, Type } from '@angular/core';\nimport { ClarityIcons, ClrIcon, windowCloseIcon } from '@clr/angular/icon';\nimport { CdkTrapFocusModule } from '@clr/angular/utils';\n\nimport { ClrModal } from './modal';\nimport { ClrModalBody } from './modal-body';\nimport { ClrModalHostComponent } from './modal-host.component';\n\nexport const CLR_MODAL_DIRECTIVES: Type<any>[] = [ClrModal, ClrModalBody, ClrModalHostComponent];\n\n@NgModule({\n imports: [CommonModule, CdkTrapFocusModule, ClrIcon],\n declarations: [CLR_MODAL_DIRECTIVES],\n exports: [CLR_MODAL_DIRECTIVES, ClrIcon],\n})\nexport class ClrModalModule {\n constructor() {\n ClarityIcons.addIcons(windowCloseIcon);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport {\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { ClrCommonStringsService } from '@clr/angular/utils';\n\nimport { ClrModal } from './modal';\nimport { ClrModalConfigurationService } from './modal-configuration.service';\n\n@Component({\n selector: 'clr-side-panel',\n templateUrl: 'side-panel.html',\n host: {\n '[class.side-panel]': 'true',\n },\n standalone: false,\n})\nexport class ClrSidePanel implements OnInit, OnDestroy {\n @Output('clrSidePanelOpenChange') openChange = new EventEmitter<boolean>(false);\n @Input('clrSidePanelCloseButtonAriaLabel') closeButtonAriaLabel: string | undefined;\n @Input('clrSidePanelSkipAnimation') skipAnimation = false;\n @Input('clrSidePanelLabelledById') labelledById: string;\n @Input('clrSidePanelStaticBackdrop') staticBackdrop = false;\n @Input('clrSidePanelClosable') closable = true;\n @Input('clrSidePanelPreventClose') preventClose = false;\n @Output('clrSidePanelAlternateClose') altClose = new EventEmitter<boolean>(false);\n\n private _pinnable = false;\n private _pinned = false;\n private originalStopClose: boolean;\n private _position = 'right';\n private _modal: ClrModal;\n private __open = false;\n\n private _size = 'md';\n\n constructor(\n private element: ElementRef<HTMLElement>,\n private configuration: ClrModalConfigurationService,\n public commonStrings: ClrCommonStringsService\n ) {}\n\n @Input('clrSidePanelOpen')\n get _open(): boolean {\n return this.__open;\n }\n set _open(open: boolean) {\n if (open !== this.__open) {\n this.__open = open;\n if (this.pinned) {\n this.updateModalState();\n }\n }\n }\n\n @Input('clrSidePanelSize')\n get size(): string {\n return this._size;\n }\n\n set size(value: string) {\n if (!value) {\n value = 'md';\n }\n if (this._size !== value) {\n this._size = value;\n if (this.pinned) {\n this.updateModalState();\n }\n }\n }\n\n @Input('clrSidePanelPosition')\n get position(): string {\n return this._position;\n }\n\n set position(position: string) {\n if (position && position !== this._position) {\n this._position = position;\n if (this._position === 'right') {\n this.configuration.fadeMove = 'fadeLeft';\n } else if (this._position === 'bottom') {\n this.configuration.fadeMove = 'fadeUp';\n }\n }\n }\n\n @Input('clrSidePanelPinned')\n get pinned(): boolean {\n return this._pinned;\n }\n\n set pinned(pinned: boolean) {\n this._pinned = pinned;\n if (this.modal) {\n this.updateModalState();\n }\n }\n\n @Input()\n get clrSidePanelBackdrop(): boolean {\n return this.configuration.backdrop;\n }\n\n set clrSidePanelBackdrop(backdrop: boolean) {\n if (backdrop !== undefined) {\n this.configuration.backdrop = backdrop;\n }\n }\n\n @Input()\n get clrSidePanelPinnable(): boolean {\n return this._pinnable;\n }\n\n set clrSidePanelPinnable(pinnable: boolean) {\n this._pinnable = pinnable;\n }\n\n @ViewChild(ClrModal)\n private get modal(): ClrModal {\n return this._modal;\n }\n\n private set modal(modal: ClrModal) {\n this._modal = modal;\n this.originalStopClose = this.modal.stopClose;\n this.updateModalState();\n }\n\n private get hostElement(): HTMLElement {\n return (this.element.nativeElement as HTMLElement).closest('.clr-modal-host') || document.body;\n }\n\n @HostBinding('class.side-panel-bottom')\n private get bottomPositionCssClass() {\n return this.position === 'bottom';\n }\n\n ngOnInit(): void {\n this.configuration.fadeMove = 'fadeLeft';\n if (this.position === 'bottom') {\n this.configuration.fadeMove = 'fadeUp';\n }\n }\n\n ngOnDestroy(): void {\n this.cleanupPinnedClasses();\n }\n\n handleModalOpen(open: boolean) {\n if (open) {\n this.updateModalState();\n } else {\n this.cleanupPinnedClasses();\n }\n this.openChange.emit(open);\n }\n\n open() {\n this.modal.open();\n }\n\n close() {\n this.modal.close();\n }\n\n togglePinned() {\n this.pinned = !this.pinned;\n }\n\n @HostListener('document:pointerup', ['$event'])\n private documentClick(event: Event) {\n if (\n !this.element.nativeElement.contains(event.target as Node) &&\n this.modal._open &&\n !this.configuration.backdrop\n ) {\n this.modal.close();\n }\n }\n\n private updateModalState() {\n if (!this.modal) {\n return;\n }\n if (this.pinned) {\n this.modal.stopClose = true;\n this.updatePinnedClasses();\n } else {\n this.modal.stopClose = this.originalStopClose;\n this.cleanupPinnedClasses();\n }\n }\n\n private cleanupPinnedClasses() {\n [this.hostElement, document.body].forEach(host => {\n host.classList.forEach(className => {\n if (className.startsWith('clr-side-panel-pinned-')) {\n host.classList.remove(className);\n }\n });\n });\n }\n\n private updatePinnedClasses() {\n this.cleanupPinnedClasses();\n this.hostElement.classList.add(`clr-side-panel-pinned-${this.position}-${this.size}`);\n }\n}\n","<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n<clr-modal\n [clrModalOpen]=\"_open\"\n (clrModalOpenChange)=\"handleModalOpen($event)\"\n [clrModalCloseButtonAriaLabel]=\"closeButtonAriaLabel\"\n [clrModalSize]=\"size\"\n [clrModalSkipAnimation]=\"skipAnimation\"\n [clrModalStaticBackdrop]=\"staticBackdrop\"\n [clrModalLabelledById]=\"labelledById\"\n [clrModalPreventClose]=\"preventClose\"\n [clrModalClosable]=\"closable\"\n (clrModalAlternateClose)=\"altClose.emit($event)\"\n [clrModalOverrideScrollService]=\"true\"\n>\n @if (clrSidePanelPinnable) {\n <button\n type=\"button\"\n [attr.aria-label]=\"commonStrings.keys.sidePanelPin\"\n class=\"leading-button pinnable\"\n (click)=\"togglePinned()\"\n >\n <cds-icon [shape]=\"pinned ? 'unpin' : 'pin'\"></cds-icon>\n </button>\n }\n <div class=\"modal-title\"><ng-content select=\".side-panel-title\"></ng-content></div>\n <div class=\"modal-body\"><ng-content select=\".side-panel-body\"></ng-content></div>\n <div class=\"modal-footer\"><ng-content select=\".side-panel-footer\"></ng-content></div>\n</clr-modal>\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule, Type } from '@angular/core';\nimport { ClrIcon } from '@clr/angular/icon';\nimport { CdkTrapFocusModule } from '@clr/angular/utils';\n\nimport { ClrModalModule } from './modal.module';\nimport { ClrSidePanel } from './side-panel';\n\nexport const CLR_SIDEPANEL_DIRECTIVES: Type<any>[] = [ClrSidePanel];\n\n@NgModule({\n imports: [CommonModule, CdkTrapFocusModule, ClrIcon, ClrModalModule],\n declarations: [CLR_SIDEPANEL_DIRECTIVES],\n exports: [CLR_SIDEPANEL_DIRECTIVES, ClrModalModule, ClrIcon],\n})\nexport class ClrSidePanelModule {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './modal';\nexport * from './modal.module';\nexport * from './modal-configuration.service';\nexport * from './modal-host.component';\nexport * from './side-panel.module';\nexport * from './modal-body';\nexport * from './side-panel';\nexport * from './modal-stack.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.ModalStackService","i3.ClrModalConfigurationService","i1.ClrModalConfigurationService","i2","i3","i4.ClrModal","i5.ClrModalBody"],"mappings":"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"}
1
+ {"version":3,"file":"clr-angular-modal.mjs","sources":["../../../projects/angular/modal/modal-stack.service.ts","../../../projects/angular/modal/modal-configuration.service.ts","../../../projects/angular/modal/modal.ts","../../../projects/angular/modal/modal.html","../../../projects/angular/modal/modal-body.ts","../../../projects/angular/modal/modal-host.component.ts","../../../projects/angular/modal/modal.module.ts","../../../projects/angular/modal/side-panel.ts","../../../projects/angular/modal/side-panel.html","../../../projects/angular/modal/side-panel.module.ts","../../../projects/angular/modal/index.ts","../../../projects/angular/modal/clr-angular-modal.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { isPlatformBrowser } from '@angular/common';\nimport { Inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { Keys } from '@clr/angular/utils';\n\nexport interface Closable {\n close(): void;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class ModalStackService {\n private readonly modalStack: Closable[] = [];\n private readonly keyUpEventListener = this.onKeyUp.bind(this);\n\n constructor(@Inject(PLATFORM_ID) private readonly platformId: unknown) {}\n\n trackModalOpen(openedModal: Closable) {\n if (this.modalStack.includes(openedModal) === false) {\n this.modalStack.unshift(openedModal);\n }\n\n if (isPlatformBrowser(this.platformId)) {\n document.body.addEventListener('keyup', this.keyUpEventListener);\n }\n }\n\n trackModalClose(closedModal: Closable) {\n const closedModalIndex = this.modalStack.indexOf(closedModal);\n\n if (closedModalIndex > -1) {\n this.modalStack.splice(closedModalIndex, 1);\n }\n\n if (this.modalStack.length === 0 && isPlatformBrowser(this.platformId)) {\n document.body.removeEventListener('keyup', this.keyUpEventListener);\n }\n }\n\n private onKeyUp(event: KeyboardEvent) {\n if (this.modalStack.length && event.key === Keys.Escape) {\n // We blur the active element because escaping with an input element in focus could cause\n // an ExpressionChangedAfterItHasBeenCheckedError for the touched state. (CDE-1662)\n (document.activeElement as HTMLElement).blur();\n\n this.modalStack[0].close();\n }\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Injectable } from '@angular/core';\n\n@Injectable({ providedIn: 'root' })\nexport class ClrModalConfigurationService {\n fadeMove = 'fadeDown';\n backdrop = true;\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { animate, AnimationEvent, style, transition, trigger } from '@angular/animations';\nimport {\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n SimpleChange,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { ClrCommonStringsService, ScrollingService, uniqueIdFactory } from '@clr/angular/utils';\n\nimport { ClrModalConfigurationService } from './modal-configuration.service';\nimport { ModalStackService } from './modal-stack.service';\n\n@Component({\n selector: 'clr-modal',\n viewProviders: [ScrollingService],\n templateUrl: './modal.html',\n styles: [\n `\n :host {\n display: none;\n }\n :host.open {\n display: inline;\n }\n `,\n ],\n animations: [\n trigger('fadeMove', [\n transition('* => fadeDown', [\n style({ opacity: 0, transform: 'translate(0, -25%)' }),\n animate('0.2s ease-in-out'),\n ]),\n transition('fadeDown => *', [\n animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(0, -25%)' })),\n ]),\n transition('* => fadeLeft', [style({ opacity: 0, transform: 'translate(25%, 0)' }), animate('0.2s ease-in-out')]),\n transition('fadeLeft => *', [animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(25%, 0)' }))]),\n transition('* => fadeUp', [style({ opacity: 0, transform: 'translate(0, 50%)' }), animate('0.2s ease-in-out')]),\n transition('fadeUp => *', [animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(0, 50%)' }))]),\n ]),\n trigger('fade', [\n transition('void => *', [style({ opacity: 0 }), animate('0.2s ease-in-out', style({ opacity: 0.85 }))]),\n transition('* => void', [animate('0.2s ease-in-out', style({ opacity: 0 }))]),\n ]),\n ],\n standalone: false,\n})\nexport class ClrModal implements OnChanges, OnDestroy {\n modalId = uniqueIdFactory();\n @ViewChild('title') title: ElementRef<HTMLElement>;\n\n @Input('clrModalOpen') @HostBinding('class.open') _open = false;\n @Output('clrModalOpenChange') _openChanged = new EventEmitter<boolean>(false);\n\n @Input('clrModalClosable') closable = true;\n @Input('clrModalCloseButtonAriaLabel') closeButtonAriaLabel = this.commonStrings.keys.close;\n @Input('clrModalSize') size = 'md';\n @Input('clrModalStaticBackdrop') staticBackdrop = true;\n @Input('clrModalSkipAnimation') skipAnimation = false;\n\n @Input('clrModalPreventClose') stopClose = false;\n @Output('clrModalAlternateClose') altClose = new EventEmitter<boolean>(false);\n\n @Input('clrModalLabelledById') labelledBy: string;\n\n // presently this is only used by inline wizards\n @Input('clrModalOverrideScrollService') bypassScrollService = false;\n\n // Provide raw modal content. This is used by the wizard so that the same template can be rendered with and without a modal.\n @ContentChild('clrInternalModalContentTemplate') protected readonly modalContentTemplate: TemplateRef<any>;\n\n @ViewChild('body') private readonly bodyElementRef: ElementRef<HTMLElement>;\n\n constructor(\n private _scrollingService: ScrollingService,\n public commonStrings: ClrCommonStringsService,\n private modalStackService: ModalStackService,\n private configuration: ClrModalConfigurationService\n ) {}\n\n get fadeMove(): string {\n return this.skipAnimation ? '' : this.configuration.fadeMove;\n }\n set fadeMove(move: string) {\n this.configuration.fadeMove = move;\n }\n\n get backdrop(): boolean {\n return this.configuration.backdrop;\n }\n\n // Detect when _open is set to true and set no-scrolling to true\n ngOnChanges(changes: { [propName: string]: SimpleChange }): void {\n if (!this.bypassScrollService && changes && Object.prototype.hasOwnProperty.call(changes, '_open')) {\n if (changes._open.currentValue) {\n this._scrollingService.stopScrolling();\n this.modalStackService.trackModalOpen(this);\n } else {\n this._scrollingService.resumeScrolling();\n }\n }\n }\n\n ngOnDestroy(): void {\n this._scrollingService.resumeScrolling();\n }\n\n open(): void {\n if (this._open) {\n return;\n }\n this._open = true;\n this._openChanged.emit(true);\n this.modalStackService.trackModalOpen(this);\n }\n\n backdropClick(): void {\n if (this.staticBackdrop) {\n return;\n }\n\n this.close();\n }\n\n close(): void {\n if (this.stopClose) {\n this.altClose.emit(false);\n return;\n }\n if (!this.closable || !this._open) {\n return;\n }\n this._open = false;\n }\n\n fadeDone(e: AnimationEvent) {\n if (e.toState === 'void') {\n // TODO: Investigate if we can decouple from animation events\n this._openChanged.emit(false);\n this.modalStackService.trackModalClose(this);\n }\n }\n\n scrollTop() {\n this.bodyElementRef.nativeElement.scrollTo(0, 0);\n }\n}\n","<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n@if (_open) {\n<div class=\"modal\" [class.modal-full-screen]=\"size == 'full-screen'\">\n <!--fixme: revisit when ngClass works with exit animation-->\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"true\"\n [@fadeMove]=\"fadeMove\"\n (@fadeMove.done)=\"fadeDone($event)\"\n class=\"modal-dialog\"\n [class.modal-sm]=\"size == 'sm'\"\n [class.modal-lg]=\"size == 'lg'\"\n [class.modal-xl]=\"size == 'xl'\"\n role=\"dialog\"\n aria-modal=\"true\"\n [attr.aria-hidden]=\"!_open\"\n [attr.aria-labelledby]=\"labelledBy || modalId\"\n >\n <div class=\"clr-sr-only\">{{commonStrings.keys.modalContentStart}}</div>\n <!-- This wizard is tightly coupled to the modal styles, so changes here could require changes in the wizard. -->\n @if (!modalContentTemplate) {\n <div class=\"modal-content-wrapper\">\n <div class=\"modal-content\">\n <div class=\"modal-header--accessible\">\n <ng-content select=\".leading-button\"></ng-content>\n <div class=\"modal-title-wrapper\" #title [id]=\"modalId\" cdkFocusInitial tabindex=\"-1\">\n <ng-content select=\".modal-title\"></ng-content>\n </div>\n @if (closable) {\n <button\n type=\"button\"\n [attr.aria-label]=\"closeButtonAriaLabel || commonStrings.keys.close\"\n class=\"close\"\n (click)=\"close()\"\n >\n <cds-icon shape=\"window-close\"></cds-icon>\n </button>\n }\n </div>\n <div #body class=\"modal-body-wrapper\">\n <ng-content select=\".modal-body\"></ng-content>\n </div>\n <ng-content select=\".modal-footer\"></ng-content>\n </div>\n </div>\n } @else {\n <ng-template [ngTemplateOutlet]=\"modalContentTemplate\"></ng-template>\n }\n </div>\n <div class=\"clr-sr-only\">{{commonStrings.keys.modalContentEnd}}</div>\n @if (backdrop) {\n <div\n [@fade]\n class=\"modal-backdrop\"\n [class.static]=\"staticBackdrop\"\n aria-hidden=\"true\"\n (click)=\"backdropClick()\"\n ></div>\n }\n</div>\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, ElementRef, NgZone, OnDestroy, Renderer2 } from '@angular/core';\n\n/**\n * Allows modal overflow area to be scrollable via keyboard.\n * The modal body will focus with keyboard navigation only.\n * This allows inner focusable items to be focused without\n * the overflow scroll being focused.\n */\n@Directive({\n selector: '.modal-body',\n standalone: false,\n})\nexport class ClrModalBody implements OnDestroy {\n private tabindex = '0';\n private unlisteners: VoidFunction[] = [];\n private observer: ResizeObserver;\n\n constructor(\n private readonly renderer: Renderer2,\n private readonly host: ElementRef<HTMLElement>,\n ngZone: NgZone\n ) {\n ngZone.runOutsideAngular(() => {\n this.observer = new ResizeObserver(() => this.addOrRemoveTabIndex());\n this.observer.observe(host.nativeElement);\n\n this.unlisteners.push(\n renderer.listen(host.nativeElement, 'mouseup', () => {\n // set the tabindex binding back when click is completed with mouseup\n this.addOrRemoveTabIndex();\n }),\n renderer.listen(host.nativeElement, 'mousedown', () => {\n // tabindex = 0 binding should be removed\n // so it won't be focused when click starts with mousedown\n this.removeTabIndex();\n })\n );\n });\n }\n\n ngOnDestroy(): void {\n while (this.unlisteners.length) {\n this.unlisteners.pop()();\n }\n\n this.observer.disconnect();\n this.observer = null;\n }\n\n private addTabIndex() {\n this.renderer.setAttribute(this.host.nativeElement, 'tabindex', this.tabindex);\n }\n\n private removeTabIndex() {\n this.renderer.removeAttribute(this.host.nativeElement, 'tabindex');\n }\n\n private addOrRemoveTabIndex() {\n const modalBody = this.host.nativeElement.parentElement;\n\n if (modalBody && modalBody.clientHeight < modalBody.scrollHeight) {\n this.addTabIndex();\n } else {\n this.removeTabIndex();\n }\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Component } from '@angular/core';\n\n@Component({\n selector: '[clrModalHost]',\n host: { '[class.clr-modal-host]': 'true' },\n template: `\n <div class=\"clr-modal-host-scrollable\">\n <ng-content></ng-content>\n </div>\n `,\n standalone: false,\n})\nexport class ClrModalHostComponent {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule, Type } from '@angular/core';\nimport { ClarityIcons, ClrIcon, windowCloseIcon } from '@clr/angular/icon';\nimport { CdkTrapFocusModule } from '@clr/angular/utils';\n\nimport { ClrModal } from './modal';\nimport { ClrModalBody } from './modal-body';\nimport { ClrModalHostComponent } from './modal-host.component';\n\nexport const CLR_MODAL_DIRECTIVES: Type<any>[] = [ClrModal, ClrModalBody, ClrModalHostComponent];\n\n@NgModule({\n imports: [CommonModule, CdkTrapFocusModule, ClrIcon],\n declarations: [CLR_MODAL_DIRECTIVES],\n exports: [CLR_MODAL_DIRECTIVES, ClrIcon],\n})\nexport class ClrModalModule {\n constructor() {\n ClarityIcons.addIcons(windowCloseIcon);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport {\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { ClrCommonStringsService } from '@clr/angular/utils';\n\nimport { ClrModal } from './modal';\nimport { ClrModalConfigurationService } from './modal-configuration.service';\n\n@Component({\n selector: 'clr-side-panel',\n templateUrl: 'side-panel.html',\n host: {\n '[class.side-panel]': 'true',\n },\n standalone: false,\n})\nexport class ClrSidePanel implements OnInit, OnDestroy {\n @Output('clrSidePanelOpenChange') openChange = new EventEmitter<boolean>(false);\n @Input('clrSidePanelCloseButtonAriaLabel') closeButtonAriaLabel: string | undefined;\n @Input('clrSidePanelSkipAnimation') skipAnimation = false;\n @Input('clrSidePanelLabelledById') labelledById: string;\n @Input('clrSidePanelStaticBackdrop') staticBackdrop = false;\n @Input('clrSidePanelClosable') closable = true;\n @Input('clrSidePanelPreventClose') preventClose = false;\n @Output('clrSidePanelAlternateClose') altClose = new EventEmitter<boolean>(false);\n\n private _pinnable = false;\n private _pinned = false;\n private originalStopClose: boolean;\n private _position = 'right';\n private _modal: ClrModal;\n private __open = false;\n\n private _size = 'md';\n\n constructor(\n private element: ElementRef<HTMLElement>,\n private configuration: ClrModalConfigurationService,\n public commonStrings: ClrCommonStringsService\n ) {}\n\n @Input('clrSidePanelOpen')\n get _open(): boolean {\n return this.__open;\n }\n set _open(open: boolean) {\n if (open !== this.__open) {\n this.__open = open;\n if (this.pinned) {\n this.updateModalState();\n }\n }\n }\n\n @Input('clrSidePanelSize')\n get size(): string {\n return this._size;\n }\n\n set size(value: string) {\n if (!value) {\n value = 'md';\n }\n if (this._size !== value) {\n this._size = value;\n if (this.pinned) {\n this.updateModalState();\n }\n }\n }\n\n @Input('clrSidePanelPosition')\n get position(): string {\n return this._position;\n }\n\n set position(position: string) {\n if (position && position !== this._position) {\n this._position = position;\n if (this._position === 'right') {\n this.configuration.fadeMove = 'fadeLeft';\n } else if (this._position === 'bottom') {\n this.configuration.fadeMove = 'fadeUp';\n }\n }\n }\n\n @Input('clrSidePanelPinned')\n get pinned(): boolean {\n return this._pinned;\n }\n\n set pinned(pinned: boolean) {\n this._pinned = pinned;\n if (this.modal) {\n this.updateModalState();\n }\n }\n\n @Input()\n get clrSidePanelBackdrop(): boolean {\n return this.configuration.backdrop;\n }\n\n set clrSidePanelBackdrop(backdrop: boolean) {\n if (backdrop !== undefined) {\n this.configuration.backdrop = backdrop;\n }\n }\n\n @Input()\n get clrSidePanelPinnable(): boolean {\n return this._pinnable;\n }\n\n set clrSidePanelPinnable(pinnable: boolean) {\n this._pinnable = pinnable;\n }\n\n @ViewChild(ClrModal)\n private get modal(): ClrModal {\n return this._modal;\n }\n\n private set modal(modal: ClrModal) {\n this._modal = modal;\n this.originalStopClose = this.modal.stopClose;\n this.updateModalState();\n }\n\n private get hostElement(): HTMLElement {\n return (this.element.nativeElement as HTMLElement).closest('.clr-modal-host') || document.body;\n }\n\n @HostBinding('class.side-panel-bottom')\n private get bottomPositionCssClass() {\n return this.position === 'bottom';\n }\n\n ngOnInit(): void {\n this.configuration.fadeMove = 'fadeLeft';\n if (this.position === 'bottom') {\n this.configuration.fadeMove = 'fadeUp';\n }\n }\n\n ngOnDestroy(): void {\n this.cleanupPinnedClasses();\n }\n\n handleModalOpen(open: boolean) {\n if (open) {\n this.updateModalState();\n } else {\n this.cleanupPinnedClasses();\n }\n this.openChange.emit(open);\n }\n\n open() {\n this.modal.open();\n }\n\n close() {\n this.modal.close();\n }\n\n togglePinned() {\n this.pinned = !this.pinned;\n }\n\n @HostListener('document:pointerup', ['$event'])\n private documentClick(event: Event) {\n if (\n !this.element.nativeElement.contains(event.target as Node) &&\n this.modal._open &&\n !this.configuration.backdrop\n ) {\n this.modal.close();\n }\n }\n\n private updateModalState() {\n if (!this.modal) {\n return;\n }\n if (this.pinned) {\n this.modal.stopClose = true;\n this.updatePinnedClasses();\n } else {\n this.modal.stopClose = this.originalStopClose;\n this.cleanupPinnedClasses();\n }\n }\n\n private cleanupPinnedClasses() {\n [this.hostElement, document.body].forEach(host => {\n host.classList.forEach(className => {\n if (className.startsWith('clr-side-panel-pinned-')) {\n host.classList.remove(className);\n }\n });\n });\n }\n\n private updatePinnedClasses() {\n this.cleanupPinnedClasses();\n this.hostElement.classList.add(`clr-side-panel-pinned-${this.position}-${this.size}`);\n }\n}\n","<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n<clr-modal\n [clrModalOpen]=\"_open\"\n (clrModalOpenChange)=\"handleModalOpen($event)\"\n [clrModalCloseButtonAriaLabel]=\"closeButtonAriaLabel\"\n [clrModalSize]=\"size\"\n [clrModalSkipAnimation]=\"skipAnimation\"\n [clrModalStaticBackdrop]=\"staticBackdrop\"\n [clrModalLabelledById]=\"labelledById\"\n [clrModalPreventClose]=\"preventClose\"\n [clrModalClosable]=\"closable\"\n (clrModalAlternateClose)=\"altClose.emit($event)\"\n [clrModalOverrideScrollService]=\"true\"\n>\n @if (clrSidePanelPinnable) {\n <button\n type=\"button\"\n [attr.aria-label]=\"commonStrings.keys.sidePanelPin\"\n class=\"leading-button pinnable\"\n (click)=\"togglePinned()\"\n >\n <cds-icon [shape]=\"pinned ? 'unpin' : 'pin'\"></cds-icon>\n </button>\n }\n <div class=\"modal-title\"><ng-content select=\".side-panel-title\"></ng-content></div>\n <div class=\"modal-body\"><ng-content select=\".side-panel-body\"></ng-content></div>\n <div class=\"modal-footer\"><ng-content select=\".side-panel-footer\"></ng-content></div>\n</clr-modal>\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule, Type } from '@angular/core';\nimport { ClrIcon } from '@clr/angular/icon';\nimport { CdkTrapFocusModule } from '@clr/angular/utils';\n\nimport { ClrModalModule } from './modal.module';\nimport { ClrSidePanel } from './side-panel';\n\nexport const CLR_SIDEPANEL_DIRECTIVES: Type<any>[] = [ClrSidePanel];\n\n@NgModule({\n imports: [CommonModule, CdkTrapFocusModule, ClrIcon, ClrModalModule],\n declarations: [CLR_SIDEPANEL_DIRECTIVES],\n exports: [CLR_SIDEPANEL_DIRECTIVES, ClrModalModule, ClrIcon],\n})\nexport class ClrSidePanelModule {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './modal';\nexport * from './modal.module';\nexport * from './modal-configuration.service';\nexport * from './modal-host.component';\nexport * from './side-panel.module';\nexport * from './modal-body';\nexport * from './side-panel';\nexport * from './modal-stack.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.ModalStackService","i3.ClrModalConfigurationService","i1.ClrModalConfigurationService","i2","i3","i4.ClrModal","i5.ClrModalBody"],"mappings":"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"}
@@ -1089,5 +1089,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
1089
1089
  * Generated bundle index. Do not edit.
1090
1090
  */
1091
1091
 
1092
- export { ClrIfOpen, ClrPopoverContent, ClrPopoverHostDirective, ClrPopoverOrigin, ClrPopoverPosition, ClrPopoverService, ClrPopoverType, ClrStopEscapePropagationDirective, DROPDOWN_POSITIONS, POPOVER_HOST_ORIGIN, SIGNPOST_POSITIONS, TOOLTIP_POSITIONS, getConnectedPositions, getContentPosition, getOriginPosition, getPositionsArray, mapPopoverKeyToPosition, ClrPopoverCloseButton as ÇlrClrPopoverCloseButton, ClrPopoverModuleNext as ÇlrClrPopoverModuleNext, ClrPopoverOpenCloseButton as ÇlrClrPopoverOpenCloseButton };
1092
+ export { ClrIfOpen, ClrPopoverCloseButton, ClrPopoverContent, ClrPopoverHostDirective, ClrPopoverModuleNext, ClrPopoverOpenCloseButton, ClrPopoverOrigin, ClrPopoverPosition, ClrPopoverService, ClrPopoverType, ClrStopEscapePropagationDirective, DROPDOWN_POSITIONS, POPOVER_HOST_ORIGIN, SIGNPOST_POSITIONS, TOOLTIP_POSITIONS, getConnectedPositions, getContentPosition, getOriginPosition, getPositionsArray, mapPopoverKeyToPosition };
1093
1093
  //# sourceMappingURL=clr-angular-popover-common.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"clr-angular-popover-common.mjs","sources":["../../../projects/angular/popover/common/providers/popover.service.ts","../../../projects/angular/popover/common/utils/popover-positions.ts","../../../projects/angular/popover/common/popover-content.ts","../../../projects/angular/popover/common/popover-origin.ts","../../../projects/angular/popover/common/popover-host-origin.token.ts","../../../projects/angular/popover/common/stop-escape-propagation.directive.ts","../../../projects/angular/popover/common/popover-host.directive.ts","../../../projects/angular/popover/common/if-open.directive.ts","../../../projects/angular/popover/common/popover-close-button.ts","../../../projects/angular/popover/common/popover-open-close-button.ts","../../../projects/angular/popover/common/popover.module.ts","../../../projects/angular/popover/common/index.ts","../../../projects/angular/popover/common/clr-angular-popover-common.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { FlexibleConnectedPositionStrategyOrigin } from '@angular/cdk/overlay';\nimport { ElementRef, Injectable } from '@angular/core';\nimport { preventArrowKeyScroll } from '@clr/angular/utils';\nimport { Observable, Subject } from 'rxjs';\n\nimport { ClrPopoverPosition } from '../utils/popover-positions';\n\nexport interface ClrPopoverPoint {\n x: number;\n y: number;\n}\n\n@Injectable()\nexport class ClrPopoverService {\n origin: FlexibleConnectedPositionStrategyOrigin;\n closeButtonRef: ElementRef;\n panelClass: string[] = [];\n\n private _open = false;\n private _openChange = new Subject<boolean>();\n private _openEvent: Event;\n private _openEventChange = new Subject<Event>();\n private _positionChange = new Subject<string>();\n private _resetPositions = new Subject<void>();\n private _updatePosition = new Subject<void>();\n private _popoverVisible = new Subject<boolean>();\n\n get originElement(): ElementRef<HTMLElement> | null {\n return this.origin instanceof ElementRef ? this.origin : null;\n }\n\n get originPoint(): ClrPopoverPoint | null {\n return this.origin && 'x' in this.origin && 'y' in this.origin ? (this.origin as ClrPopoverPoint) : null;\n }\n\n get openChange(): Observable<boolean> {\n return this._openChange.asObservable();\n }\n\n get popoverVisible(): Observable<boolean> {\n return this._popoverVisible.asObservable();\n }\n\n get openEvent(): Event {\n return this._openEvent;\n }\n set openEvent(event: Event) {\n this._openEvent = event;\n this._openEventChange.next(event);\n }\n\n get open(): boolean {\n return this._open;\n }\n set open(value: boolean) {\n value = !!value;\n if (this._open !== value) {\n this._open = value;\n this._openChange.next(value);\n }\n }\n\n get resetPositionsChange(): Observable<void> {\n return this._resetPositions.asObservable();\n }\n\n positionChange(position: ClrPopoverPosition) {\n this._positionChange.next(position);\n }\n\n updatePositionChange(): Observable<void> {\n return this._updatePosition.asObservable();\n }\n\n getPositionChange(): Observable<string> {\n return this._positionChange.asObservable();\n }\n\n getEventChange(): Observable<Event> {\n return this._openEventChange.asObservable();\n }\n\n /**\n * Sometimes, we need to remember the event that triggered the toggling to avoid loops.\n * This is for instance the case of components that open on a click, but close on a click outside.\n */\n toggleWithEvent(event: any) {\n preventArrowKeyScroll(event);\n\n this.openEvent = event;\n this.open = !this.open;\n }\n\n /**\n * Opens the popover at a specific screen coordinate.\n * Useful for context menus where the popover should appear at the cursor position.\n */\n openAtPoint(point: ClrPopoverPoint) {\n if (this._open) {\n this._open = false;\n this._openChange.next(false);\n }\n\n this.origin = point;\n this.open = true;\n }\n\n popoverVisibleEmit(visible: boolean) {\n this._popoverVisible.next(visible);\n }\n\n resetPositions() {\n this._resetPositions.next();\n }\n\n updatePosition() {\n this._updatePosition.next();\n }\n\n focusCloseButton(): void {\n this.closeButtonRef.nativeElement?.focus();\n }\n\n focusOrigin(): void {\n this.originElement?.nativeElement?.focus({ preventScroll: true });\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ConnectedPosition } from '@angular/cdk/overlay';\nimport { ClrPosition } from '@clr/angular/utils';\n\nexport enum ClrPopoverType {\n SIGNPOST,\n TOOLTIP,\n DROPDOWN,\n DEFAULT,\n}\n\nexport enum ClrPopoverPosition {\n TOP_RIGHT = 'top-right',\n TOP_MIDDLE = 'top-middle',\n TOP_LEFT = 'top-left',\n RIGHT = 'right',\n RIGHT_TOP = 'right-top',\n RIGHT_MIDDLE = 'right-middle',\n RIGHT_BOTTOM = 'right-bottom',\n LEFT = 'left',\n LEFT_TOP = 'left-top',\n LEFT_MIDDLE = 'left-middle',\n LEFT_BOTTOM = 'left-bottom',\n BOTTOM_RIGHT = 'bottom-right',\n BOTTOM_MIDDLE = 'bottom-middle',\n BOTTOM_LEFT = 'bottom-left',\n}\n\nexport const TOOLTIP_POSITIONS: ClrPopoverPosition[] = [\n ClrPopoverPosition.RIGHT, // default. must be at index 0\n ClrPopoverPosition.LEFT,\n ClrPopoverPosition.BOTTOM_RIGHT,\n ClrPopoverPosition.BOTTOM_LEFT,\n ClrPopoverPosition.TOP_RIGHT,\n ClrPopoverPosition.TOP_LEFT,\n];\n\nexport const DROPDOWN_POSITIONS: ClrPopoverPosition[] = [\n ClrPopoverPosition.BOTTOM_LEFT, // default. must be at index 0\n ClrPopoverPosition.BOTTOM_RIGHT,\n ClrPopoverPosition.TOP_LEFT,\n ClrPopoverPosition.TOP_RIGHT,\n ClrPopoverPosition.RIGHT_TOP,\n ClrPopoverPosition.RIGHT_BOTTOM,\n ClrPopoverPosition.LEFT_TOP,\n ClrPopoverPosition.LEFT_BOTTOM,\n];\n\nexport const SIGNPOST_POSITIONS: ClrPopoverPosition[] = [\n ClrPopoverPosition.RIGHT_MIDDLE, // default. must be at index 0\n ClrPopoverPosition.RIGHT_TOP,\n ClrPopoverPosition.RIGHT_BOTTOM,\n ClrPopoverPosition.TOP_RIGHT,\n ClrPopoverPosition.TOP_LEFT,\n ClrPopoverPosition.TOP_MIDDLE,\n ClrPopoverPosition.BOTTOM_RIGHT,\n ClrPopoverPosition.BOTTOM_MIDDLE,\n ClrPopoverPosition.BOTTOM_LEFT,\n ClrPopoverPosition.LEFT_BOTTOM,\n ClrPopoverPosition.LEFT_MIDDLE,\n ClrPopoverPosition.LEFT_TOP,\n];\n\nexport function getPositionsArray(type: ClrPopoverType) {\n switch (type) {\n case ClrPopoverType.TOOLTIP:\n return TOOLTIP_POSITIONS;\n case ClrPopoverType.DROPDOWN:\n return DROPDOWN_POSITIONS;\n case ClrPopoverType.SIGNPOST:\n case ClrPopoverType.DEFAULT:\n default:\n return SIGNPOST_POSITIONS;\n }\n}\n\nexport function getConnectedPositions(type: ClrPopoverType): ConnectedPosition[] {\n const result: ConnectedPosition[] = [];\n\n getPositionsArray(type).forEach(position => {\n result.push(mapPopoverKeyToPosition(position, type));\n });\n\n return result;\n}\n\nconst POPOVER_OFFSETS: Record<ClrPopoverType, number> = {\n [ClrPopoverType.SIGNPOST]: 16,\n [ClrPopoverType.TOOLTIP]: 21,\n [ClrPopoverType.DROPDOWN]: 2,\n [ClrPopoverType.DEFAULT]: 0,\n};\n\nfunction getOffset(key: ClrPopoverPosition, type: ClrPopoverType): Partial<ConnectedPosition> {\n const offset = POPOVER_OFFSETS[type] || 0;\n\n switch (key) {\n // TOP\n case ClrPopoverPosition.TOP_LEFT:\n case ClrPopoverPosition.TOP_MIDDLE:\n case ClrPopoverPosition.TOP_RIGHT:\n return {\n offsetY: -offset,\n offsetX: 0,\n } as ConnectedPosition;\n\n // LEFT\n case ClrPopoverPosition.LEFT_TOP:\n case ClrPopoverPosition.LEFT_MIDDLE:\n case ClrPopoverPosition.LEFT:\n case ClrPopoverPosition.LEFT_BOTTOM:\n return {\n offsetY: 0,\n offsetX: -offset,\n } as ConnectedPosition;\n\n // RIGHT\n case ClrPopoverPosition.RIGHT_TOP:\n case ClrPopoverPosition.RIGHT_MIDDLE:\n case ClrPopoverPosition.RIGHT:\n case ClrPopoverPosition.RIGHT_BOTTOM:\n return {\n offsetY: 0,\n offsetX: offset,\n } as ConnectedPosition;\n\n // BOTTOM and DEFAULT\n case ClrPopoverPosition.BOTTOM_RIGHT:\n case ClrPopoverPosition.BOTTOM_MIDDLE:\n case ClrPopoverPosition.BOTTOM_LEFT:\n default:\n return {\n offsetY: offset,\n offsetX: 0,\n } as ConnectedPosition;\n }\n}\n\nconst STANDARD_ORIGINS = {\n // TOP\n [ClrPopoverPosition.TOP_RIGHT]: { origin: ClrPosition.TOP_CENTER, content: ClrPosition.BOTTOM_LEFT },\n [ClrPopoverPosition.TOP_MIDDLE]: { origin: ClrPosition.TOP_CENTER, content: ClrPosition.BOTTOM_CENTER },\n [ClrPopoverPosition.TOP_LEFT]: { origin: ClrPosition.TOP_CENTER, content: ClrPosition.BOTTOM_RIGHT },\n\n // LEFT\n [ClrPopoverPosition.LEFT]: { origin: ClrPosition.LEFT_CENTER, content: ClrPosition.RIGHT_TOP },\n [ClrPopoverPosition.LEFT_TOP]: { origin: ClrPosition.LEFT_CENTER, content: ClrPosition.RIGHT_BOTTOM },\n [ClrPopoverPosition.LEFT_MIDDLE]: { origin: ClrPosition.LEFT_CENTER, content: ClrPosition.RIGHT_CENTER },\n [ClrPopoverPosition.LEFT_BOTTOM]: { origin: ClrPosition.LEFT_CENTER, content: ClrPosition.RIGHT_TOP },\n\n // RIGHT\n [ClrPopoverPosition.RIGHT]: { origin: ClrPosition.RIGHT_CENTER, content: ClrPosition.LEFT_TOP },\n [ClrPopoverPosition.RIGHT_TOP]: { origin: ClrPosition.RIGHT_CENTER, content: ClrPosition.LEFT_BOTTOM },\n [ClrPopoverPosition.RIGHT_MIDDLE]: { origin: ClrPosition.RIGHT_CENTER, content: ClrPosition.LEFT_CENTER },\n [ClrPopoverPosition.RIGHT_BOTTOM]: { origin: ClrPosition.RIGHT_CENTER, content: ClrPosition.LEFT_TOP },\n\n // BOTTOM\n [ClrPopoverPosition.BOTTOM_RIGHT]: { origin: ClrPosition.BOTTOM_CENTER, content: ClrPosition.TOP_LEFT },\n [ClrPopoverPosition.BOTTOM_MIDDLE]: { origin: ClrPosition.BOTTOM_CENTER, content: ClrPosition.TOP_CENTER },\n [ClrPopoverPosition.BOTTOM_LEFT]: { origin: ClrPosition.BOTTOM_CENTER, content: ClrPosition.TOP_RIGHT },\n};\n\nconst DROPDOWN_ORIGINS = {\n // TOP\n [ClrPopoverPosition.TOP_RIGHT]: { origin: ClrPosition.TOP_RIGHT, content: ClrPosition.BOTTOM_RIGHT },\n [ClrPopoverPosition.TOP_LEFT]: { origin: ClrPosition.TOP_LEFT, content: ClrPosition.BOTTOM_LEFT },\n\n // LEFT\n [ClrPopoverPosition.LEFT_TOP]: { origin: ClrPosition.LEFT_TOP, content: ClrPosition.TOP_RIGHT },\n [ClrPopoverPosition.LEFT_BOTTOM]: { origin: ClrPosition.LEFT_BOTTOM, content: ClrPosition.BOTTOM_RIGHT },\n\n // RIGHT\n [ClrPopoverPosition.RIGHT_TOP]: { origin: ClrPosition.RIGHT_TOP, content: ClrPosition.LEFT_TOP },\n [ClrPopoverPosition.RIGHT_BOTTOM]: { origin: ClrPosition.RIGHT_BOTTOM, content: ClrPosition.LEFT_BOTTOM },\n\n // BOTTOM\n [ClrPopoverPosition.BOTTOM_RIGHT]: { origin: ClrPosition.BOTTOM_LEFT, content: ClrPosition.TOP_RIGHT },\n [ClrPopoverPosition.BOTTOM_LEFT]: { origin: ClrPosition.BOTTOM_RIGHT, content: ClrPosition.TOP_LEFT },\n};\n\nexport function mapPopoverKeyToPosition(key: ClrPopoverPosition, type: ClrPopoverType): ConnectedPosition {\n let offset = getOffset(key, type);\n\n const defaultPosition = { origin: ClrPosition.BOTTOM_LEFT, content: ClrPosition.TOP_LEFT };\n const { origin, content } =\n (type === ClrPopoverType.DROPDOWN ? DROPDOWN_ORIGINS[key] : STANDARD_ORIGINS[key]) ?? defaultPosition;\n\n return {\n ...getOriginPosition(origin),\n ...getContentPosition(content),\n ...offset,\n panelClass: key,\n } as ConnectedPosition;\n}\n\nexport function getOriginPosition(key: ClrPosition): Partial<ConnectedPosition> {\n switch (key) {\n // TOP Positions\n case ClrPosition.TOP_LEFT:\n return {\n originX: 'start',\n originY: 'top',\n };\n case ClrPosition.TOP_CENTER:\n return {\n originX: 'center',\n originY: 'top',\n };\n case ClrPosition.TOP_RIGHT:\n return {\n originX: 'end',\n originY: 'top',\n };\n // LEFT Positions\n case ClrPosition.LEFT_TOP:\n return {\n originX: 'start',\n originY: 'top',\n };\n case ClrPosition.LEFT_CENTER:\n return {\n originX: 'start',\n originY: 'center',\n };\n case ClrPosition.LEFT_BOTTOM:\n return {\n originX: 'start',\n originY: 'bottom',\n };\n // RIGHT Positions\n case ClrPosition.RIGHT_TOP:\n return {\n originX: 'end',\n originY: 'top',\n };\n case ClrPosition.RIGHT_CENTER:\n return {\n originX: 'end',\n originY: 'center',\n };\n case ClrPosition.RIGHT_BOTTOM:\n return {\n originX: 'end',\n originY: 'bottom',\n };\n // BOTTOM positions and default\n case ClrPosition.BOTTOM_LEFT:\n return {\n originX: 'end',\n originY: 'bottom',\n };\n case ClrPosition.BOTTOM_CENTER:\n return {\n originX: 'center',\n originY: 'bottom',\n };\n case ClrPosition.BOTTOM_RIGHT:\n default:\n return {\n originX: 'start',\n originY: 'bottom',\n };\n }\n}\n\nexport function getContentPosition(key: ClrPosition): Partial<ConnectedPosition> {\n switch (key) {\n // TOP Positions\n case ClrPosition.TOP_LEFT:\n return {\n overlayX: 'start',\n overlayY: 'top',\n };\n case ClrPosition.TOP_CENTER:\n return {\n overlayX: 'center',\n overlayY: 'top',\n };\n case ClrPosition.TOP_RIGHT:\n return {\n overlayX: 'end',\n overlayY: 'top',\n };\n\n // LEFT Positions\n case ClrPosition.LEFT_TOP:\n return {\n overlayX: 'start',\n overlayY: 'top',\n };\n case ClrPosition.LEFT_CENTER:\n return {\n overlayX: 'start',\n overlayY: 'center',\n };\n case ClrPosition.LEFT_BOTTOM:\n return {\n overlayX: 'start',\n overlayY: 'bottom',\n };\n\n // RIGHT Positions\n case ClrPosition.RIGHT_TOP:\n return {\n overlayX: 'end',\n overlayY: 'top',\n };\n case ClrPosition.RIGHT_CENTER:\n return {\n overlayX: 'end',\n overlayY: 'center',\n };\n case ClrPosition.RIGHT_BOTTOM:\n return {\n overlayX: 'end',\n overlayY: 'bottom',\n };\n\n // BOTTOM positions and default\n case ClrPosition.BOTTOM_LEFT:\n return {\n overlayX: 'start',\n overlayY: 'bottom',\n };\n case ClrPosition.BOTTOM_CENTER:\n return {\n overlayX: 'center',\n overlayY: 'bottom',\n };\n case ClrPosition.BOTTOM_RIGHT:\n default:\n return {\n overlayX: 'end',\n overlayY: 'bottom',\n };\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { hasModifierKey } from '@angular/cdk/keycodes';\nimport {\n ConnectedPosition,\n FlexibleConnectedPositionStrategyOrigin,\n Overlay,\n OverlayConfig,\n OverlayContainer,\n OverlayRef,\n} from '@angular/cdk/overlay';\nimport { DomPortal } from '@angular/cdk/portal';\nimport { isPlatformBrowser } from '@angular/common';\nimport {\n AfterViewInit,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n Inject,\n Input,\n NgZone,\n OnDestroy,\n Optional,\n PLATFORM_ID,\n SkipSelf,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport { Keys } from '@clr/angular/utils';\nimport { fromEvent, merge, Subscription, switchMap, timer } from 'rxjs';\n\nimport { ClrPopoverService } from './providers/popover.service';\nimport {\n ClrPopoverPosition,\n ClrPopoverType,\n getConnectedPositions,\n mapPopoverKeyToPosition,\n} from './utils/popover-positions';\n\n/** @dynamic */\n@Directive({\n selector: '[clrPopoverContent]',\n})\nexport class ClrPopoverContent implements OnDestroy, AfterViewInit {\n private _outsideClickClose = true;\n private _scrollToClose = false;\n private view: EmbeddedViewRef<void>;\n private elementRef: ElementRef;\n private overlayRef: OverlayRef;\n private popoverType: ClrPopoverType = ClrPopoverType.DEFAULT;\n private _availablePositions: ConnectedPosition[] = [];\n private _position = ClrPopoverPosition.BOTTOM_LEFT;\n private scrollableParents: (HTMLDocument | HTMLElement)[] = [];\n\n private subscriptions: Subscription[] = [];\n private openCloseSubscription: Subscription;\n private domPortal: DomPortal;\n private preferredPositionIsSet = false;\n private availablePositionsAreSet = false;\n private _preferredPosition: ConnectedPosition = {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n panelClass: ClrPopoverPosition.LEFT_TOP,\n };\n private intersectionObserver: IntersectionObserver;\n\n constructor(\n element: ElementRef,\n private container: ViewContainerRef,\n @Optional() private template: TemplateRef<any>,\n overlayContainer: OverlayContainer,\n\n @Optional() @SkipSelf() private parent: ClrPopoverContent,\n private overlay: Overlay,\n @Inject(ClrPopoverService) private popoverService: ClrPopoverService,\n private zone: NgZone,\n @Inject(PLATFORM_ID) private platformId: any\n ) {\n popoverService.panelClass.push('clr-popover-content');\n\n overlayContainer.getContainerElement().classList.add('clr-overlay-container');\n\n if (!template) {\n this.elementRef = element;\n }\n }\n\n @Input('clrPopoverContent')\n set open(value: boolean) {\n this.popoverService.open = !!value;\n }\n\n @Input('clrPopoverContentAt')\n get contentAt(): string | ClrPopoverPosition | ConnectedPosition {\n return this.preferredPositionIsSet ? this._preferredPosition : this._position;\n }\n set contentAt(position: string | ClrPopoverPosition | ConnectedPosition) {\n if (typeof position === 'string') {\n if (!position || Object.values(ClrPopoverPosition).indexOf(position as ClrPopoverPosition) === -1) {\n return;\n }\n\n // set the popover values based on menu position\n this._position = position as ClrPopoverPosition;\n this.popoverService.positionChange(this._position);\n } else {\n this.preferredPositionIsSet = true;\n this._preferredPosition = position;\n }\n }\n\n @Input('clrPopoverContentAvailablePositions')\n set availablePositions(positions: ConnectedPosition[]) {\n this.availablePositionsAreSet = true;\n\n this._availablePositions = positions;\n }\n\n @Input('clrPopoverContentType')\n set contentType(type: ClrPopoverType) {\n this.popoverType = type;\n\n if (!this.availablePositionsAreSet) {\n this._availablePositions = getConnectedPositions(type);\n }\n }\n\n @Input('clrPopoverContentOutsideClickToClose')\n get outsideClickClose() {\n return this._outsideClickClose;\n }\n set outsideClickClose(clickToClose: boolean) {\n this._outsideClickClose = !!clickToClose;\n }\n\n @Input('clrPopoverContentScrollToClose')\n get scrollToClose() {\n return this._scrollToClose;\n }\n set scrollToClose(scrollToClose: boolean) {\n this._scrollToClose = !!scrollToClose;\n }\n\n @Input('clrPopoverContentOrigin')\n set contentOrigin(origin: FlexibleConnectedPositionStrategyOrigin) {\n if (origin instanceof Element) {\n this.popoverService.origin = new ElementRef(origin as HTMLElement);\n } else {\n this.popoverService.origin = origin;\n }\n }\n\n private get positionStrategy() {\n return this.overlay\n .position()\n .flexibleConnectedTo(this.popoverService.origin)\n .setOrigin(this.popoverService.origin)\n .withPush(true)\n .withPositions([this.preferredPosition, ...this._availablePositions])\n .withFlexibleDimensions(true);\n }\n\n private get preferredPosition(): ConnectedPosition {\n if (this.preferredPositionIsSet) {\n return this._preferredPosition;\n }\n\n // Default position is \"bottom-left\"\n return mapPopoverKeyToPosition(this._position, this.popoverType);\n }\n\n ngAfterViewInit() {\n if (this.popoverService.open) {\n this.showOverlay();\n }\n\n this.openCloseSubscription = this.popoverService.openChange.subscribe(change => {\n if (change) {\n this.showOverlay();\n } else {\n this.closePopover();\n }\n });\n }\n\n ngOnDestroy() {\n this.removeOverlay();\n this.openCloseSubscription?.unsubscribe();\n }\n\n private _createOverlayRef() {\n this.overlayRef = this.overlay.create(\n new OverlayConfig({\n // This is where we can pass externally facing inputs into the angular overlay API, and essentially proxy behaviors our users want directly to the CDK if they have them.\n positionStrategy: this.positionStrategy,\n // the scrolling behaviour is controlled by this popover content directive\n scrollStrategy: this.overlay.scrollStrategies.noop(),\n panelClass: this.popoverService.panelClass,\n hasBackdrop: false,\n })\n );\n\n this.subscriptions.push(\n merge(this.popoverService.resetPositionsChange, this.popoverService.getPositionChange()).subscribe(() => {\n this.resetPosition();\n }),\n this.popoverService.updatePositionChange().subscribe(() => {\n this.overlayRef?.updatePosition();\n }),\n this.overlayRef.keydownEvents().subscribe(event => {\n if (event && event.key && event.key === Keys.Escape && !hasModifierKey(event)) {\n event.preventDefault();\n this.closePopover();\n }\n }),\n\n this.popoverService.originPoint\n ? this.createPointBasedOutsideClickSubscription()\n : this.createElementBasedOutsideClickSubscription()\n );\n }\n\n /**\n * Point-based origins (context menus) delay the subscription to avoid the\n * mouseup from the same right-click that opened the popover.\n */\n private createPointBasedOutsideClickSubscription(): Subscription {\n return timer(500)\n .pipe(switchMap(() => this.overlayRef.outsidePointerEvents()))\n .subscribe(event => {\n if (this.elementRef?.nativeElement?.contains(event.target)) {\n return;\n }\n\n if (this._outsideClickClose) {\n this.closePopover();\n }\n });\n }\n\n /**\n * Element-based origins close on outside clicks and suppress toggle-button\n * re-clicks so the popover doesn't immediately reopen.\n */\n private createElementBasedOutsideClickSubscription(): Subscription {\n return this.overlayRef.outsidePointerEvents().subscribe(event => {\n // web components (cds-icon) register as outside pointer events, so if the event target is inside the content panel return early\n if (this.elementRef?.nativeElement?.contains(event.target)) {\n return;\n }\n\n // Check if the same element that opened the popover is the same element triggering the outside pointer events (toggle button)\n const isToggleButton =\n this.popoverService.openEvent &&\n ((this.popoverService.openEvent.target as Element).contains(event.target as Element) ||\n (this.popoverService.openEvent.target as Element).parentElement.contains(event.target as Element) ||\n this.popoverService.openEvent.target === event.target);\n\n if (isToggleButton) {\n event.stopPropagation();\n }\n\n if (this._outsideClickClose || isToggleButton) {\n this.closePopover();\n }\n });\n }\n\n private resetPosition() {\n if (this.overlayRef) {\n this.overlayRef.updatePositionStrategy(this.positionStrategy);\n this.overlayRef.updatePosition();\n }\n }\n\n private closePopover() {\n if (!this.overlayRef) {\n return;\n }\n\n this.removeOverlay();\n this.popoverService.open = false;\n\n if (this.popoverService.originElement) {\n const shouldFocusTrigger =\n this.popoverType !== ClrPopoverType.TOOLTIP &&\n (document.activeElement === document.body ||\n document.activeElement === this.popoverService.originElement.nativeElement);\n\n if (shouldFocusTrigger) {\n this.popoverService.focusOrigin();\n }\n }\n }\n\n private showOverlay() {\n if (!this.overlayRef) {\n this._createOverlayRef();\n }\n\n if (!this.view && this.template) {\n this.view = this.container.createEmbeddedView(this.template);\n\n if (!this.elementRef) {\n const [rootNode] = this.view.rootNodes;\n this.elementRef = new ElementRef(rootNode); // So we know where/what to set close focus on\n }\n }\n\n if (!this.domPortal) {\n this.domPortal = new DomPortal<HTMLElement>(this.elementRef);\n this.overlayRef.attach(this.domPortal);\n }\n\n if (this.popoverService.originElement) {\n this.popoverService.originElement.nativeElement.scrollIntoView({\n behavior: 'instant',\n block: 'nearest',\n inline: 'nearest',\n });\n\n this.setupIntersectionObserver();\n }\n\n setTimeout(() => {\n // Get Scrollable Parents\n this.listenToScrollEvents();\n\n this.popoverService.popoverVisibleEmit(true);\n\n if (this.elementRef?.nativeElement?.focus) {\n this.elementRef.nativeElement.focus();\n }\n });\n }\n\n private removeOverlay(): void {\n this.subscriptions.forEach(s => s.unsubscribe());\n this.subscriptions = [];\n\n if (this.overlayRef?.hasAttached()) {\n this.overlayRef.detach();\n this.overlayRef.dispose();\n }\n\n if (this.domPortal?.isAttached) {\n this.domPortal.detach();\n }\n\n if (this.view) {\n this.view.destroy();\n }\n\n this.overlayRef = null;\n this.domPortal = null;\n if (this.template) {\n this.elementRef = null;\n }\n this.view = null;\n\n this.intersectionObserver?.disconnect();\n this.intersectionObserver = null;\n\n this.popoverService.popoverVisibleEmit(false);\n }\n\n private getScrollableParents(node: HTMLElement) {\n let parent = node;\n const overflowScrollKeys = ['auto', 'scroll', 'clip'];\n const scrollableParents: (HTMLDocument | HTMLElement)[] = [window.document];\n\n while (parent && !(parent instanceof HTMLHtmlElement)) {\n if (parent instanceof ShadowRoot) {\n parent = parent.host as HTMLElement;\n }\n\n const { overflowY, overflowX } = window.getComputedStyle(parent);\n\n if (overflowScrollKeys.includes(overflowY) || overflowScrollKeys.includes(overflowX)) {\n scrollableParents.push(parent);\n }\n\n parent = parent.parentNode as HTMLElement;\n }\n\n return scrollableParents;\n }\n\n /**\n * Uses IntersectionObserver to detect when the origin element leaves the screen.\n * This handles the \"Close on Scroll\" logic much cheaper than getBoundingClientRect.\n */\n private setupIntersectionObserver() {\n if (!this.popoverService.originElement || this.intersectionObserver) {\n return;\n }\n\n this.intersectionObserver = new IntersectionObserver(\n entries => {\n entries.forEach(entry => {\n // If the origin is no longer visible (scrolled out of view)\n if (!entry.isIntersecting && this.popoverService.open) {\n this.zone.run(() => this.closePopover());\n }\n });\n },\n { root: null, threshold: 0.8 }\n );\n\n this.intersectionObserver.observe(this.popoverService.originElement.nativeElement);\n }\n\n private listenToScrollEvents() {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n if (this.popoverService.originPoint) {\n this.listenToScrollForPointOrigin();\n } else {\n this.listenToScrollForElementOrigin();\n }\n }\n\n // Point origins have no scrollable parent chain — close on any scroll.\n private listenToScrollForPointOrigin() {\n this.zone.runOutsideAngular(() => {\n this.subscriptions.push(\n fromEvent(window, 'scroll', { passive: true, capture: true }).subscribe(() => {\n this.zone.run(() => this.closePopover());\n })\n );\n });\n }\n\n // Element origins track ancestor scroll containers to reposition or close.\n private listenToScrollForElementOrigin() {\n const originEl = this.getRootPopover(this)?.popoverService?.originElement?.nativeElement;\n const scrollableParents = this.getScrollableParents(originEl);\n\n this.zone.runOutsideAngular(() => {\n this.subscriptions.push(\n merge(...scrollableParents.map(parent => fromEvent(parent, 'scroll', { passive: true }))).subscribe(() => {\n if (this._scrollToClose) {\n this.zone.run(() => this.closePopover());\n return;\n }\n\n this.overlayRef?.updatePosition();\n })\n );\n });\n }\n\n private getRootPopover(popover: ClrPopoverContent): ClrPopoverContent {\n if (popover && popover.parent) {\n return this.getRootPopover(popover.parent);\n }\n\n return popover;\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, ElementRef } from '@angular/core';\n\nimport { ClrPopoverService } from './providers/popover.service';\n\n@Directive({\n selector: '[clrPopoverOrigin]',\n host: {\n '[class.clr-popover-origin]': 'true',\n },\n standalone: false,\n})\nexport class ClrPopoverOrigin {\n constructor(popoverService: ClrPopoverService, element: ElementRef<HTMLButtonElement>) {\n popoverService.origin = element;\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ElementRef, InjectionToken } from '@angular/core';\n\nexport const POPOVER_HOST_ORIGIN = new InjectionToken<ElementRef>('POPOVER_HOST_ORIGIN');\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, HostListener, OnDestroy, OnInit } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { ClrPopoverService } from './providers/popover.service';\n\n@Directive({\n standalone: true,\n})\nexport class ClrStopEscapePropagationDirective implements OnInit, OnDestroy {\n private subscription: Subscription;\n private lastOpenChange: boolean | null = null;\n\n constructor(private popoverService: ClrPopoverService) {}\n\n ngOnInit() {\n this.subscription = this.popoverService.openChange.subscribe(open => {\n this.lastOpenChange = open;\n });\n }\n\n ngOnDestroy() {\n this.subscription?.unsubscribe();\n }\n\n @HostListener('keyup.escape', ['$event'])\n onEscapeKey(event: KeyboardEvent) {\n if (this.lastOpenChange !== null) {\n if (this.lastOpenChange === false) {\n event.stopPropagation();\n }\n\n this.lastOpenChange = null;\n }\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, ElementRef } from '@angular/core';\n\nimport { POPOVER_HOST_ORIGIN } from './popover-host-origin.token';\nimport { ClrPopoverService } from './providers/popover.service';\nimport { ClrStopEscapePropagationDirective } from './stop-escape-propagation.directive';\n\n@Directive({\n standalone: true,\n providers: [ClrPopoverService, { provide: POPOVER_HOST_ORIGIN, useExisting: ElementRef }],\n hostDirectives: [ClrStopEscapePropagationDirective],\n})\nexport class ClrPopoverHostDirective {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, EventEmitter, Input, OnDestroy, Output, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { ClrPopoverService } from './providers/popover.service';\n\n/**********\n *\n * @class ClrIfOpen\n *\n * @description\n * A structural directive that controls whether or not the associated TemplateRef is instantiated or not.\n * It makes use of a Component instance level service: ClrPopoverService to maintain state between itself and the component\n * using it in the component template.\n *\n */\n@Directive({\n selector: '[clrIfOpen]',\n})\nexport class ClrIfOpen implements OnDestroy {\n static ngAcceptInputType_open: boolean | '';\n\n /**********\n * @property openChange\n *\n * @description\n * An event emitter that emits when the open property is set to allow for 2way binding when the directive is\n * used with de-structured / de-sugared syntax.\n */\n @Output('clrIfOpenChange') openChange = new EventEmitter<boolean>(false);\n\n private subscriptions: Subscription[] = [];\n\n constructor(\n private popoverService: ClrPopoverService,\n private template: TemplateRef<any>,\n private container: ViewContainerRef\n ) {\n this.subscriptions.push(\n popoverService.openChange.subscribe(change => {\n // OPEN before overlay is built\n if (change) {\n container.createEmbeddedView(template);\n this.openChange.emit(change);\n }\n }),\n popoverService.popoverVisible.subscribe(change => {\n // CLOSE after overlay is destroyed\n if (!change) {\n container.clear();\n this.openChange.emit(change);\n }\n })\n );\n }\n\n /**\n * @description\n * A property that gets/sets ClrPopoverService.open with value.\n */\n @Input('clrIfOpen')\n get open() {\n return this.popoverService.open;\n }\n set open(value: boolean | string) {\n this.popoverService.open = value as boolean;\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(sub => sub.unsubscribe());\n }\n\n /**\n * @description\n * Function that takes a boolean value and either created an embedded view for the associated ViewContainerRef or,\n * Clears all views from the ViewContainerRef\n *\n * @param value\n */\n updateView(value: boolean) {\n if (value) {\n this.container.createEmbeddedView(this.template);\n } else {\n this.container.clear();\n }\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { AfterViewInit, Directive, ElementRef, EventEmitter, HostListener, OnDestroy, Output } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { ClrPopoverService } from './providers/popover.service';\n\n@Directive({\n selector: '[clrPopoverCloseButton]',\n host: {\n '[class.clr-smart-close-button]': 'true',\n },\n standalone: false,\n})\nexport class ClrPopoverCloseButton implements OnDestroy, AfterViewInit {\n @Output('clrPopoverOnCloseChange') closeChange = new EventEmitter<void>();\n\n private subscriptions: Subscription[] = [];\n\n constructor(\n private elementRef: ElementRef<HTMLButtonElement>,\n private popoverService: ClrPopoverService\n ) {\n this.subscriptions.push(\n popoverService.openChange.pipe(filter(value => !value)).subscribe(() => {\n this.closeChange.emit();\n })\n );\n }\n\n @HostListener('click', ['$event'])\n handleClick(event: MouseEvent) {\n this.popoverService.toggleWithEvent(event);\n this.popoverService.focusOrigin();\n }\n\n ngAfterViewInit() {\n this.popoverService.closeButtonRef = this.elementRef;\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(sub => sub.unsubscribe());\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, EventEmitter, HostListener, OnDestroy, Output } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { ClrPopoverService } from './providers/popover.service';\n\n@Directive({\n selector: '[clrPopoverOpenCloseButton]',\n host: {\n '[class.clr-smart-open-close]': 'true',\n },\n standalone: false,\n})\nexport class ClrPopoverOpenCloseButton implements OnDestroy {\n @Output('clrPopoverOpenCloseChange') openCloseChange = new EventEmitter<boolean>();\n\n private subscriptions: Subscription[] = [];\n\n constructor(private popoverService: ClrPopoverService) {\n this.subscriptions.push(\n popoverService.openChange.subscribe(change => {\n this.openCloseChange.emit(change);\n })\n );\n }\n\n @HostListener('click', ['$event'])\n handleClick(event: MouseEvent) {\n this.popoverService.toggleWithEvent(event);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(sub => sub.unsubscribe());\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { ClrIfOpen } from './if-open.directive';\nimport { ClrPopoverCloseButton } from './popover-close-button';\nimport { ClrPopoverContent } from './popover-content';\nimport { ClrPopoverOpenCloseButton } from './popover-open-close-button';\nimport { ClrPopoverOrigin } from './popover-origin';\n\n@NgModule({\n imports: [ClrPopoverContent, ClrIfOpen],\n declarations: [ClrPopoverOrigin, ClrPopoverCloseButton, ClrPopoverOpenCloseButton],\n exports: [ClrPopoverOrigin, ClrPopoverCloseButton, ClrPopoverOpenCloseButton, ClrPopoverContent, ClrIfOpen],\n})\nexport class ClrPopoverModuleNext {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './popover-content';\nexport * from './providers/popover.service';\nexport * from './popover-origin';\nexport * from './popover-host.directive';\nexport * from './stop-escape-propagation.directive';\nexport * from './popover-host-origin.token';\nexport * from './if-open.directive';\nexport * from './utils/popover-positions';\nexport { ClrPopoverModuleNext as ÇlrClrPopoverModuleNext } from './popover.module';\nexport { ClrPopoverCloseButton as ÇlrClrPopoverCloseButton } from './popover-close-button';\nexport { ClrPopoverOpenCloseButton as ÇlrClrPopoverOpenCloseButton } from './popover-open-close-button';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.ClrPopoverService","i1.ClrStopEscapePropagationDirective"],"mappings":"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"}
1
+ {"version":3,"file":"clr-angular-popover-common.mjs","sources":["../../../projects/angular/popover/common/providers/popover.service.ts","../../../projects/angular/popover/common/utils/popover-positions.ts","../../../projects/angular/popover/common/popover-content.ts","../../../projects/angular/popover/common/popover-origin.ts","../../../projects/angular/popover/common/popover-host-origin.token.ts","../../../projects/angular/popover/common/stop-escape-propagation.directive.ts","../../../projects/angular/popover/common/popover-host.directive.ts","../../../projects/angular/popover/common/if-open.directive.ts","../../../projects/angular/popover/common/popover-close-button.ts","../../../projects/angular/popover/common/popover-open-close-button.ts","../../../projects/angular/popover/common/popover.module.ts","../../../projects/angular/popover/common/index.ts","../../../projects/angular/popover/common/clr-angular-popover-common.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { FlexibleConnectedPositionStrategyOrigin } from '@angular/cdk/overlay';\nimport { ElementRef, Injectable } from '@angular/core';\nimport { preventArrowKeyScroll } from '@clr/angular/utils';\nimport { Observable, Subject } from 'rxjs';\n\nimport { ClrPopoverPosition } from '../utils/popover-positions';\n\nexport interface ClrPopoverPoint {\n x: number;\n y: number;\n}\n\n@Injectable()\nexport class ClrPopoverService {\n origin: FlexibleConnectedPositionStrategyOrigin;\n closeButtonRef: ElementRef;\n panelClass: string[] = [];\n\n private _open = false;\n private _openChange = new Subject<boolean>();\n private _openEvent: Event;\n private _openEventChange = new Subject<Event>();\n private _positionChange = new Subject<string>();\n private _resetPositions = new Subject<void>();\n private _updatePosition = new Subject<void>();\n private _popoverVisible = new Subject<boolean>();\n\n get originElement(): ElementRef<HTMLElement> | null {\n return this.origin instanceof ElementRef ? this.origin : null;\n }\n\n get originPoint(): ClrPopoverPoint | null {\n return this.origin && 'x' in this.origin && 'y' in this.origin ? (this.origin as ClrPopoverPoint) : null;\n }\n\n get openChange(): Observable<boolean> {\n return this._openChange.asObservable();\n }\n\n get popoverVisible(): Observable<boolean> {\n return this._popoverVisible.asObservable();\n }\n\n get openEvent(): Event {\n return this._openEvent;\n }\n set openEvent(event: Event) {\n this._openEvent = event;\n this._openEventChange.next(event);\n }\n\n get open(): boolean {\n return this._open;\n }\n set open(value: boolean) {\n value = !!value;\n if (this._open !== value) {\n this._open = value;\n this._openChange.next(value);\n }\n }\n\n get resetPositionsChange(): Observable<void> {\n return this._resetPositions.asObservable();\n }\n\n positionChange(position: ClrPopoverPosition) {\n this._positionChange.next(position);\n }\n\n updatePositionChange(): Observable<void> {\n return this._updatePosition.asObservable();\n }\n\n getPositionChange(): Observable<string> {\n return this._positionChange.asObservable();\n }\n\n getEventChange(): Observable<Event> {\n return this._openEventChange.asObservable();\n }\n\n /**\n * Sometimes, we need to remember the event that triggered the toggling to avoid loops.\n * This is for instance the case of components that open on a click, but close on a click outside.\n */\n toggleWithEvent(event: any) {\n preventArrowKeyScroll(event);\n\n this.openEvent = event;\n this.open = !this.open;\n }\n\n /**\n * Opens the popover at a specific screen coordinate.\n * Useful for context menus where the popover should appear at the cursor position.\n */\n openAtPoint(point: ClrPopoverPoint) {\n if (this._open) {\n this._open = false;\n this._openChange.next(false);\n }\n\n this.origin = point;\n this.open = true;\n }\n\n popoverVisibleEmit(visible: boolean) {\n this._popoverVisible.next(visible);\n }\n\n resetPositions() {\n this._resetPositions.next();\n }\n\n updatePosition() {\n this._updatePosition.next();\n }\n\n focusCloseButton(): void {\n this.closeButtonRef.nativeElement?.focus();\n }\n\n focusOrigin(): void {\n this.originElement?.nativeElement?.focus({ preventScroll: true });\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ConnectedPosition } from '@angular/cdk/overlay';\nimport { ClrPosition } from '@clr/angular/utils';\n\nexport enum ClrPopoverType {\n SIGNPOST,\n TOOLTIP,\n DROPDOWN,\n DEFAULT,\n}\n\nexport enum ClrPopoverPosition {\n TOP_RIGHT = 'top-right',\n TOP_MIDDLE = 'top-middle',\n TOP_LEFT = 'top-left',\n RIGHT = 'right',\n RIGHT_TOP = 'right-top',\n RIGHT_MIDDLE = 'right-middle',\n RIGHT_BOTTOM = 'right-bottom',\n LEFT = 'left',\n LEFT_TOP = 'left-top',\n LEFT_MIDDLE = 'left-middle',\n LEFT_BOTTOM = 'left-bottom',\n BOTTOM_RIGHT = 'bottom-right',\n BOTTOM_MIDDLE = 'bottom-middle',\n BOTTOM_LEFT = 'bottom-left',\n}\n\nexport const TOOLTIP_POSITIONS: ClrPopoverPosition[] = [\n ClrPopoverPosition.RIGHT, // default. must be at index 0\n ClrPopoverPosition.LEFT,\n ClrPopoverPosition.BOTTOM_RIGHT,\n ClrPopoverPosition.BOTTOM_LEFT,\n ClrPopoverPosition.TOP_RIGHT,\n ClrPopoverPosition.TOP_LEFT,\n];\n\nexport const DROPDOWN_POSITIONS: ClrPopoverPosition[] = [\n ClrPopoverPosition.BOTTOM_LEFT, // default. must be at index 0\n ClrPopoverPosition.BOTTOM_RIGHT,\n ClrPopoverPosition.TOP_LEFT,\n ClrPopoverPosition.TOP_RIGHT,\n ClrPopoverPosition.RIGHT_TOP,\n ClrPopoverPosition.RIGHT_BOTTOM,\n ClrPopoverPosition.LEFT_TOP,\n ClrPopoverPosition.LEFT_BOTTOM,\n];\n\nexport const SIGNPOST_POSITIONS: ClrPopoverPosition[] = [\n ClrPopoverPosition.RIGHT_MIDDLE, // default. must be at index 0\n ClrPopoverPosition.RIGHT_TOP,\n ClrPopoverPosition.RIGHT_BOTTOM,\n ClrPopoverPosition.TOP_RIGHT,\n ClrPopoverPosition.TOP_LEFT,\n ClrPopoverPosition.TOP_MIDDLE,\n ClrPopoverPosition.BOTTOM_RIGHT,\n ClrPopoverPosition.BOTTOM_MIDDLE,\n ClrPopoverPosition.BOTTOM_LEFT,\n ClrPopoverPosition.LEFT_BOTTOM,\n ClrPopoverPosition.LEFT_MIDDLE,\n ClrPopoverPosition.LEFT_TOP,\n];\n\nexport function getPositionsArray(type: ClrPopoverType) {\n switch (type) {\n case ClrPopoverType.TOOLTIP:\n return TOOLTIP_POSITIONS;\n case ClrPopoverType.DROPDOWN:\n return DROPDOWN_POSITIONS;\n case ClrPopoverType.SIGNPOST:\n case ClrPopoverType.DEFAULT:\n default:\n return SIGNPOST_POSITIONS;\n }\n}\n\nexport function getConnectedPositions(type: ClrPopoverType): ConnectedPosition[] {\n const result: ConnectedPosition[] = [];\n\n getPositionsArray(type).forEach(position => {\n result.push(mapPopoverKeyToPosition(position, type));\n });\n\n return result;\n}\n\nconst POPOVER_OFFSETS: Record<ClrPopoverType, number> = {\n [ClrPopoverType.SIGNPOST]: 16,\n [ClrPopoverType.TOOLTIP]: 21,\n [ClrPopoverType.DROPDOWN]: 2,\n [ClrPopoverType.DEFAULT]: 0,\n};\n\nfunction getOffset(key: ClrPopoverPosition, type: ClrPopoverType): Partial<ConnectedPosition> {\n const offset = POPOVER_OFFSETS[type] || 0;\n\n switch (key) {\n // TOP\n case ClrPopoverPosition.TOP_LEFT:\n case ClrPopoverPosition.TOP_MIDDLE:\n case ClrPopoverPosition.TOP_RIGHT:\n return {\n offsetY: -offset,\n offsetX: 0,\n } as ConnectedPosition;\n\n // LEFT\n case ClrPopoverPosition.LEFT_TOP:\n case ClrPopoverPosition.LEFT_MIDDLE:\n case ClrPopoverPosition.LEFT:\n case ClrPopoverPosition.LEFT_BOTTOM:\n return {\n offsetY: 0,\n offsetX: -offset,\n } as ConnectedPosition;\n\n // RIGHT\n case ClrPopoverPosition.RIGHT_TOP:\n case ClrPopoverPosition.RIGHT_MIDDLE:\n case ClrPopoverPosition.RIGHT:\n case ClrPopoverPosition.RIGHT_BOTTOM:\n return {\n offsetY: 0,\n offsetX: offset,\n } as ConnectedPosition;\n\n // BOTTOM and DEFAULT\n case ClrPopoverPosition.BOTTOM_RIGHT:\n case ClrPopoverPosition.BOTTOM_MIDDLE:\n case ClrPopoverPosition.BOTTOM_LEFT:\n default:\n return {\n offsetY: offset,\n offsetX: 0,\n } as ConnectedPosition;\n }\n}\n\nconst STANDARD_ORIGINS = {\n // TOP\n [ClrPopoverPosition.TOP_RIGHT]: { origin: ClrPosition.TOP_CENTER, content: ClrPosition.BOTTOM_LEFT },\n [ClrPopoverPosition.TOP_MIDDLE]: { origin: ClrPosition.TOP_CENTER, content: ClrPosition.BOTTOM_CENTER },\n [ClrPopoverPosition.TOP_LEFT]: { origin: ClrPosition.TOP_CENTER, content: ClrPosition.BOTTOM_RIGHT },\n\n // LEFT\n [ClrPopoverPosition.LEFT]: { origin: ClrPosition.LEFT_CENTER, content: ClrPosition.RIGHT_TOP },\n [ClrPopoverPosition.LEFT_TOP]: { origin: ClrPosition.LEFT_CENTER, content: ClrPosition.RIGHT_BOTTOM },\n [ClrPopoverPosition.LEFT_MIDDLE]: { origin: ClrPosition.LEFT_CENTER, content: ClrPosition.RIGHT_CENTER },\n [ClrPopoverPosition.LEFT_BOTTOM]: { origin: ClrPosition.LEFT_CENTER, content: ClrPosition.RIGHT_TOP },\n\n // RIGHT\n [ClrPopoverPosition.RIGHT]: { origin: ClrPosition.RIGHT_CENTER, content: ClrPosition.LEFT_TOP },\n [ClrPopoverPosition.RIGHT_TOP]: { origin: ClrPosition.RIGHT_CENTER, content: ClrPosition.LEFT_BOTTOM },\n [ClrPopoverPosition.RIGHT_MIDDLE]: { origin: ClrPosition.RIGHT_CENTER, content: ClrPosition.LEFT_CENTER },\n [ClrPopoverPosition.RIGHT_BOTTOM]: { origin: ClrPosition.RIGHT_CENTER, content: ClrPosition.LEFT_TOP },\n\n // BOTTOM\n [ClrPopoverPosition.BOTTOM_RIGHT]: { origin: ClrPosition.BOTTOM_CENTER, content: ClrPosition.TOP_LEFT },\n [ClrPopoverPosition.BOTTOM_MIDDLE]: { origin: ClrPosition.BOTTOM_CENTER, content: ClrPosition.TOP_CENTER },\n [ClrPopoverPosition.BOTTOM_LEFT]: { origin: ClrPosition.BOTTOM_CENTER, content: ClrPosition.TOP_RIGHT },\n};\n\nconst DROPDOWN_ORIGINS = {\n // TOP\n [ClrPopoverPosition.TOP_RIGHT]: { origin: ClrPosition.TOP_RIGHT, content: ClrPosition.BOTTOM_RIGHT },\n [ClrPopoverPosition.TOP_LEFT]: { origin: ClrPosition.TOP_LEFT, content: ClrPosition.BOTTOM_LEFT },\n\n // LEFT\n [ClrPopoverPosition.LEFT_TOP]: { origin: ClrPosition.LEFT_TOP, content: ClrPosition.TOP_RIGHT },\n [ClrPopoverPosition.LEFT_BOTTOM]: { origin: ClrPosition.LEFT_BOTTOM, content: ClrPosition.BOTTOM_RIGHT },\n\n // RIGHT\n [ClrPopoverPosition.RIGHT_TOP]: { origin: ClrPosition.RIGHT_TOP, content: ClrPosition.LEFT_TOP },\n [ClrPopoverPosition.RIGHT_BOTTOM]: { origin: ClrPosition.RIGHT_BOTTOM, content: ClrPosition.LEFT_BOTTOM },\n\n // BOTTOM\n [ClrPopoverPosition.BOTTOM_RIGHT]: { origin: ClrPosition.BOTTOM_LEFT, content: ClrPosition.TOP_RIGHT },\n [ClrPopoverPosition.BOTTOM_LEFT]: { origin: ClrPosition.BOTTOM_RIGHT, content: ClrPosition.TOP_LEFT },\n};\n\nexport function mapPopoverKeyToPosition(key: ClrPopoverPosition, type: ClrPopoverType): ConnectedPosition {\n let offset = getOffset(key, type);\n\n const defaultPosition = { origin: ClrPosition.BOTTOM_LEFT, content: ClrPosition.TOP_LEFT };\n const { origin, content } =\n (type === ClrPopoverType.DROPDOWN ? DROPDOWN_ORIGINS[key] : STANDARD_ORIGINS[key]) ?? defaultPosition;\n\n return {\n ...getOriginPosition(origin),\n ...getContentPosition(content),\n ...offset,\n panelClass: key,\n } as ConnectedPosition;\n}\n\nexport function getOriginPosition(key: ClrPosition): Partial<ConnectedPosition> {\n switch (key) {\n // TOP Positions\n case ClrPosition.TOP_LEFT:\n return {\n originX: 'start',\n originY: 'top',\n };\n case ClrPosition.TOP_CENTER:\n return {\n originX: 'center',\n originY: 'top',\n };\n case ClrPosition.TOP_RIGHT:\n return {\n originX: 'end',\n originY: 'top',\n };\n // LEFT Positions\n case ClrPosition.LEFT_TOP:\n return {\n originX: 'start',\n originY: 'top',\n };\n case ClrPosition.LEFT_CENTER:\n return {\n originX: 'start',\n originY: 'center',\n };\n case ClrPosition.LEFT_BOTTOM:\n return {\n originX: 'start',\n originY: 'bottom',\n };\n // RIGHT Positions\n case ClrPosition.RIGHT_TOP:\n return {\n originX: 'end',\n originY: 'top',\n };\n case ClrPosition.RIGHT_CENTER:\n return {\n originX: 'end',\n originY: 'center',\n };\n case ClrPosition.RIGHT_BOTTOM:\n return {\n originX: 'end',\n originY: 'bottom',\n };\n // BOTTOM positions and default\n case ClrPosition.BOTTOM_LEFT:\n return {\n originX: 'end',\n originY: 'bottom',\n };\n case ClrPosition.BOTTOM_CENTER:\n return {\n originX: 'center',\n originY: 'bottom',\n };\n case ClrPosition.BOTTOM_RIGHT:\n default:\n return {\n originX: 'start',\n originY: 'bottom',\n };\n }\n}\n\nexport function getContentPosition(key: ClrPosition): Partial<ConnectedPosition> {\n switch (key) {\n // TOP Positions\n case ClrPosition.TOP_LEFT:\n return {\n overlayX: 'start',\n overlayY: 'top',\n };\n case ClrPosition.TOP_CENTER:\n return {\n overlayX: 'center',\n overlayY: 'top',\n };\n case ClrPosition.TOP_RIGHT:\n return {\n overlayX: 'end',\n overlayY: 'top',\n };\n\n // LEFT Positions\n case ClrPosition.LEFT_TOP:\n return {\n overlayX: 'start',\n overlayY: 'top',\n };\n case ClrPosition.LEFT_CENTER:\n return {\n overlayX: 'start',\n overlayY: 'center',\n };\n case ClrPosition.LEFT_BOTTOM:\n return {\n overlayX: 'start',\n overlayY: 'bottom',\n };\n\n // RIGHT Positions\n case ClrPosition.RIGHT_TOP:\n return {\n overlayX: 'end',\n overlayY: 'top',\n };\n case ClrPosition.RIGHT_CENTER:\n return {\n overlayX: 'end',\n overlayY: 'center',\n };\n case ClrPosition.RIGHT_BOTTOM:\n return {\n overlayX: 'end',\n overlayY: 'bottom',\n };\n\n // BOTTOM positions and default\n case ClrPosition.BOTTOM_LEFT:\n return {\n overlayX: 'start',\n overlayY: 'bottom',\n };\n case ClrPosition.BOTTOM_CENTER:\n return {\n overlayX: 'center',\n overlayY: 'bottom',\n };\n case ClrPosition.BOTTOM_RIGHT:\n default:\n return {\n overlayX: 'end',\n overlayY: 'bottom',\n };\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { hasModifierKey } from '@angular/cdk/keycodes';\nimport {\n ConnectedPosition,\n FlexibleConnectedPositionStrategyOrigin,\n Overlay,\n OverlayConfig,\n OverlayContainer,\n OverlayRef,\n} from '@angular/cdk/overlay';\nimport { DomPortal } from '@angular/cdk/portal';\nimport { isPlatformBrowser } from '@angular/common';\nimport {\n AfterViewInit,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n Inject,\n Input,\n NgZone,\n OnDestroy,\n Optional,\n PLATFORM_ID,\n SkipSelf,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport { Keys } from '@clr/angular/utils';\nimport { fromEvent, merge, Subscription, switchMap, timer } from 'rxjs';\n\nimport { ClrPopoverService } from './providers/popover.service';\nimport {\n ClrPopoverPosition,\n ClrPopoverType,\n getConnectedPositions,\n mapPopoverKeyToPosition,\n} from './utils/popover-positions';\n\n/** @dynamic */\n@Directive({\n selector: '[clrPopoverContent]',\n})\nexport class ClrPopoverContent implements OnDestroy, AfterViewInit {\n private _outsideClickClose = true;\n private _scrollToClose = false;\n private view: EmbeddedViewRef<void>;\n private elementRef: ElementRef;\n private overlayRef: OverlayRef;\n private popoverType: ClrPopoverType = ClrPopoverType.DEFAULT;\n private _availablePositions: ConnectedPosition[] = [];\n private _position = ClrPopoverPosition.BOTTOM_LEFT;\n private scrollableParents: (HTMLDocument | HTMLElement)[] = [];\n\n private subscriptions: Subscription[] = [];\n private openCloseSubscription: Subscription;\n private domPortal: DomPortal;\n private preferredPositionIsSet = false;\n private availablePositionsAreSet = false;\n private _preferredPosition: ConnectedPosition = {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n panelClass: ClrPopoverPosition.LEFT_TOP,\n };\n private intersectionObserver: IntersectionObserver;\n\n constructor(\n element: ElementRef,\n private container: ViewContainerRef,\n @Optional() private template: TemplateRef<any>,\n overlayContainer: OverlayContainer,\n\n @Optional() @SkipSelf() private parent: ClrPopoverContent,\n private overlay: Overlay,\n @Inject(ClrPopoverService) private popoverService: ClrPopoverService,\n private zone: NgZone,\n @Inject(PLATFORM_ID) private platformId: any\n ) {\n popoverService.panelClass.push('clr-popover-content');\n\n overlayContainer.getContainerElement().classList.add('clr-overlay-container');\n\n if (!template) {\n this.elementRef = element;\n }\n }\n\n @Input('clrPopoverContent')\n set open(value: boolean) {\n this.popoverService.open = !!value;\n }\n\n @Input('clrPopoverContentAt')\n get contentAt(): string | ClrPopoverPosition | ConnectedPosition {\n return this.preferredPositionIsSet ? this._preferredPosition : this._position;\n }\n set contentAt(position: string | ClrPopoverPosition | ConnectedPosition) {\n if (typeof position === 'string') {\n if (!position || Object.values(ClrPopoverPosition).indexOf(position as ClrPopoverPosition) === -1) {\n return;\n }\n\n // set the popover values based on menu position\n this._position = position as ClrPopoverPosition;\n this.popoverService.positionChange(this._position);\n } else {\n this.preferredPositionIsSet = true;\n this._preferredPosition = position;\n }\n }\n\n @Input('clrPopoverContentAvailablePositions')\n set availablePositions(positions: ConnectedPosition[]) {\n this.availablePositionsAreSet = true;\n\n this._availablePositions = positions;\n }\n\n @Input('clrPopoverContentType')\n set contentType(type: ClrPopoverType) {\n this.popoverType = type;\n\n if (!this.availablePositionsAreSet) {\n this._availablePositions = getConnectedPositions(type);\n }\n }\n\n @Input('clrPopoverContentOutsideClickToClose')\n get outsideClickClose() {\n return this._outsideClickClose;\n }\n set outsideClickClose(clickToClose: boolean) {\n this._outsideClickClose = !!clickToClose;\n }\n\n @Input('clrPopoverContentScrollToClose')\n get scrollToClose() {\n return this._scrollToClose;\n }\n set scrollToClose(scrollToClose: boolean) {\n this._scrollToClose = !!scrollToClose;\n }\n\n @Input('clrPopoverContentOrigin')\n set contentOrigin(origin: FlexibleConnectedPositionStrategyOrigin) {\n if (origin instanceof Element) {\n this.popoverService.origin = new ElementRef(origin as HTMLElement);\n } else {\n this.popoverService.origin = origin;\n }\n }\n\n private get positionStrategy() {\n return this.overlay\n .position()\n .flexibleConnectedTo(this.popoverService.origin)\n .setOrigin(this.popoverService.origin)\n .withPush(true)\n .withPositions([this.preferredPosition, ...this._availablePositions])\n .withFlexibleDimensions(true);\n }\n\n private get preferredPosition(): ConnectedPosition {\n if (this.preferredPositionIsSet) {\n return this._preferredPosition;\n }\n\n // Default position is \"bottom-left\"\n return mapPopoverKeyToPosition(this._position, this.popoverType);\n }\n\n ngAfterViewInit() {\n if (this.popoverService.open) {\n this.showOverlay();\n }\n\n this.openCloseSubscription = this.popoverService.openChange.subscribe(change => {\n if (change) {\n this.showOverlay();\n } else {\n this.closePopover();\n }\n });\n }\n\n ngOnDestroy() {\n this.removeOverlay();\n this.openCloseSubscription?.unsubscribe();\n }\n\n private _createOverlayRef() {\n this.overlayRef = this.overlay.create(\n new OverlayConfig({\n // This is where we can pass externally facing inputs into the angular overlay API, and essentially proxy behaviors our users want directly to the CDK if they have them.\n positionStrategy: this.positionStrategy,\n // the scrolling behaviour is controlled by this popover content directive\n scrollStrategy: this.overlay.scrollStrategies.noop(),\n panelClass: this.popoverService.panelClass,\n hasBackdrop: false,\n })\n );\n\n this.subscriptions.push(\n merge(this.popoverService.resetPositionsChange, this.popoverService.getPositionChange()).subscribe(() => {\n this.resetPosition();\n }),\n this.popoverService.updatePositionChange().subscribe(() => {\n this.overlayRef?.updatePosition();\n }),\n this.overlayRef.keydownEvents().subscribe(event => {\n if (event && event.key && event.key === Keys.Escape && !hasModifierKey(event)) {\n event.preventDefault();\n this.closePopover();\n }\n }),\n\n this.popoverService.originPoint\n ? this.createPointBasedOutsideClickSubscription()\n : this.createElementBasedOutsideClickSubscription()\n );\n }\n\n /**\n * Point-based origins (context menus) delay the subscription to avoid the\n * mouseup from the same right-click that opened the popover.\n */\n private createPointBasedOutsideClickSubscription(): Subscription {\n return timer(500)\n .pipe(switchMap(() => this.overlayRef.outsidePointerEvents()))\n .subscribe(event => {\n if (this.elementRef?.nativeElement?.contains(event.target)) {\n return;\n }\n\n if (this._outsideClickClose) {\n this.closePopover();\n }\n });\n }\n\n /**\n * Element-based origins close on outside clicks and suppress toggle-button\n * re-clicks so the popover doesn't immediately reopen.\n */\n private createElementBasedOutsideClickSubscription(): Subscription {\n return this.overlayRef.outsidePointerEvents().subscribe(event => {\n // web components (cds-icon) register as outside pointer events, so if the event target is inside the content panel return early\n if (this.elementRef?.nativeElement?.contains(event.target)) {\n return;\n }\n\n // Check if the same element that opened the popover is the same element triggering the outside pointer events (toggle button)\n const isToggleButton =\n this.popoverService.openEvent &&\n ((this.popoverService.openEvent.target as Element).contains(event.target as Element) ||\n (this.popoverService.openEvent.target as Element).parentElement.contains(event.target as Element) ||\n this.popoverService.openEvent.target === event.target);\n\n if (isToggleButton) {\n event.stopPropagation();\n }\n\n if (this._outsideClickClose || isToggleButton) {\n this.closePopover();\n }\n });\n }\n\n private resetPosition() {\n if (this.overlayRef) {\n this.overlayRef.updatePositionStrategy(this.positionStrategy);\n this.overlayRef.updatePosition();\n }\n }\n\n private closePopover() {\n if (!this.overlayRef) {\n return;\n }\n\n this.removeOverlay();\n this.popoverService.open = false;\n\n if (this.popoverService.originElement) {\n const shouldFocusTrigger =\n this.popoverType !== ClrPopoverType.TOOLTIP &&\n (document.activeElement === document.body ||\n document.activeElement === this.popoverService.originElement.nativeElement);\n\n if (shouldFocusTrigger) {\n this.popoverService.focusOrigin();\n }\n }\n }\n\n private showOverlay() {\n if (!this.overlayRef) {\n this._createOverlayRef();\n }\n\n if (!this.view && this.template) {\n this.view = this.container.createEmbeddedView(this.template);\n\n if (!this.elementRef) {\n const [rootNode] = this.view.rootNodes;\n this.elementRef = new ElementRef(rootNode); // So we know where/what to set close focus on\n }\n }\n\n if (!this.domPortal) {\n this.domPortal = new DomPortal<HTMLElement>(this.elementRef);\n this.overlayRef.attach(this.domPortal);\n }\n\n if (this.popoverService.originElement) {\n this.popoverService.originElement.nativeElement.scrollIntoView({\n behavior: 'instant',\n block: 'nearest',\n inline: 'nearest',\n });\n\n this.setupIntersectionObserver();\n }\n\n setTimeout(() => {\n // Get Scrollable Parents\n this.listenToScrollEvents();\n\n this.popoverService.popoverVisibleEmit(true);\n\n if (this.elementRef?.nativeElement?.focus) {\n this.elementRef.nativeElement.focus();\n }\n });\n }\n\n private removeOverlay(): void {\n this.subscriptions.forEach(s => s.unsubscribe());\n this.subscriptions = [];\n\n if (this.overlayRef?.hasAttached()) {\n this.overlayRef.detach();\n this.overlayRef.dispose();\n }\n\n if (this.domPortal?.isAttached) {\n this.domPortal.detach();\n }\n\n if (this.view) {\n this.view.destroy();\n }\n\n this.overlayRef = null;\n this.domPortal = null;\n if (this.template) {\n this.elementRef = null;\n }\n this.view = null;\n\n this.intersectionObserver?.disconnect();\n this.intersectionObserver = null;\n\n this.popoverService.popoverVisibleEmit(false);\n }\n\n private getScrollableParents(node: HTMLElement) {\n let parent = node;\n const overflowScrollKeys = ['auto', 'scroll', 'clip'];\n const scrollableParents: (HTMLDocument | HTMLElement)[] = [window.document];\n\n while (parent && !(parent instanceof HTMLHtmlElement)) {\n if (parent instanceof ShadowRoot) {\n parent = parent.host as HTMLElement;\n }\n\n const { overflowY, overflowX } = window.getComputedStyle(parent);\n\n if (overflowScrollKeys.includes(overflowY) || overflowScrollKeys.includes(overflowX)) {\n scrollableParents.push(parent);\n }\n\n parent = parent.parentNode as HTMLElement;\n }\n\n return scrollableParents;\n }\n\n /**\n * Uses IntersectionObserver to detect when the origin element leaves the screen.\n * This handles the \"Close on Scroll\" logic much cheaper than getBoundingClientRect.\n */\n private setupIntersectionObserver() {\n if (!this.popoverService.originElement || this.intersectionObserver) {\n return;\n }\n\n this.intersectionObserver = new IntersectionObserver(\n entries => {\n entries.forEach(entry => {\n // If the origin is no longer visible (scrolled out of view)\n if (!entry.isIntersecting && this.popoverService.open) {\n this.zone.run(() => this.closePopover());\n }\n });\n },\n { root: null, threshold: 0.8 }\n );\n\n this.intersectionObserver.observe(this.popoverService.originElement.nativeElement);\n }\n\n private listenToScrollEvents() {\n if (!isPlatformBrowser(this.platformId)) {\n return;\n }\n\n if (this.popoverService.originPoint) {\n this.listenToScrollForPointOrigin();\n } else {\n this.listenToScrollForElementOrigin();\n }\n }\n\n // Point origins have no scrollable parent chain — close on any scroll.\n private listenToScrollForPointOrigin() {\n this.zone.runOutsideAngular(() => {\n this.subscriptions.push(\n fromEvent(window, 'scroll', { passive: true, capture: true }).subscribe(() => {\n this.zone.run(() => this.closePopover());\n })\n );\n });\n }\n\n // Element origins track ancestor scroll containers to reposition or close.\n private listenToScrollForElementOrigin() {\n const originEl = this.getRootPopover(this)?.popoverService?.originElement?.nativeElement;\n const scrollableParents = this.getScrollableParents(originEl);\n\n this.zone.runOutsideAngular(() => {\n this.subscriptions.push(\n merge(...scrollableParents.map(parent => fromEvent(parent, 'scroll', { passive: true }))).subscribe(() => {\n if (this._scrollToClose) {\n this.zone.run(() => this.closePopover());\n return;\n }\n\n this.overlayRef?.updatePosition();\n })\n );\n });\n }\n\n private getRootPopover(popover: ClrPopoverContent): ClrPopoverContent {\n if (popover && popover.parent) {\n return this.getRootPopover(popover.parent);\n }\n\n return popover;\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, ElementRef } from '@angular/core';\n\nimport { ClrPopoverService } from './providers/popover.service';\n\n@Directive({\n selector: '[clrPopoverOrigin]',\n host: {\n '[class.clr-popover-origin]': 'true',\n },\n standalone: false,\n})\nexport class ClrPopoverOrigin {\n constructor(popoverService: ClrPopoverService, element: ElementRef<HTMLButtonElement>) {\n popoverService.origin = element;\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ElementRef, InjectionToken } from '@angular/core';\n\nexport const POPOVER_HOST_ORIGIN = new InjectionToken<ElementRef>('POPOVER_HOST_ORIGIN');\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, HostListener, OnDestroy, OnInit } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { ClrPopoverService } from './providers/popover.service';\n\n@Directive({\n standalone: true,\n})\nexport class ClrStopEscapePropagationDirective implements OnInit, OnDestroy {\n private subscription: Subscription;\n private lastOpenChange: boolean | null = null;\n\n constructor(private popoverService: ClrPopoverService) {}\n\n ngOnInit() {\n this.subscription = this.popoverService.openChange.subscribe(open => {\n this.lastOpenChange = open;\n });\n }\n\n ngOnDestroy() {\n this.subscription?.unsubscribe();\n }\n\n @HostListener('keyup.escape', ['$event'])\n onEscapeKey(event: KeyboardEvent) {\n if (this.lastOpenChange !== null) {\n if (this.lastOpenChange === false) {\n event.stopPropagation();\n }\n\n this.lastOpenChange = null;\n }\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, ElementRef } from '@angular/core';\n\nimport { POPOVER_HOST_ORIGIN } from './popover-host-origin.token';\nimport { ClrPopoverService } from './providers/popover.service';\nimport { ClrStopEscapePropagationDirective } from './stop-escape-propagation.directive';\n\n@Directive({\n standalone: true,\n providers: [ClrPopoverService, { provide: POPOVER_HOST_ORIGIN, useExisting: ElementRef }],\n hostDirectives: [ClrStopEscapePropagationDirective],\n})\nexport class ClrPopoverHostDirective {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, EventEmitter, Input, OnDestroy, Output, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { ClrPopoverService } from './providers/popover.service';\n\n/**********\n *\n * @class ClrIfOpen\n *\n * @description\n * A structural directive that controls whether or not the associated TemplateRef is instantiated or not.\n * It makes use of a Component instance level service: ClrPopoverService to maintain state between itself and the component\n * using it in the component template.\n *\n */\n@Directive({\n selector: '[clrIfOpen]',\n})\nexport class ClrIfOpen implements OnDestroy {\n static ngAcceptInputType_open: boolean | '';\n\n /**********\n * @property openChange\n *\n * @description\n * An event emitter that emits when the open property is set to allow for 2way binding when the directive is\n * used with de-structured / de-sugared syntax.\n */\n @Output('clrIfOpenChange') openChange = new EventEmitter<boolean>(false);\n\n private subscriptions: Subscription[] = [];\n\n constructor(\n private popoverService: ClrPopoverService,\n private template: TemplateRef<any>,\n private container: ViewContainerRef\n ) {\n this.subscriptions.push(\n popoverService.openChange.subscribe(change => {\n // OPEN before overlay is built\n if (change) {\n container.createEmbeddedView(template);\n this.openChange.emit(change);\n }\n }),\n popoverService.popoverVisible.subscribe(change => {\n // CLOSE after overlay is destroyed\n if (!change) {\n container.clear();\n this.openChange.emit(change);\n }\n })\n );\n }\n\n /**\n * @description\n * A property that gets/sets ClrPopoverService.open with value.\n */\n @Input('clrIfOpen')\n get open() {\n return this.popoverService.open;\n }\n set open(value: boolean | string) {\n this.popoverService.open = value as boolean;\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(sub => sub.unsubscribe());\n }\n\n /**\n * @description\n * Function that takes a boolean value and either created an embedded view for the associated ViewContainerRef or,\n * Clears all views from the ViewContainerRef\n *\n * @param value\n */\n updateView(value: boolean) {\n if (value) {\n this.container.createEmbeddedView(this.template);\n } else {\n this.container.clear();\n }\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { AfterViewInit, Directive, ElementRef, EventEmitter, HostListener, OnDestroy, Output } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { ClrPopoverService } from './providers/popover.service';\n\n@Directive({\n selector: '[clrPopoverCloseButton]',\n host: {\n '[class.clr-smart-close-button]': 'true',\n },\n standalone: false,\n})\nexport class ClrPopoverCloseButton implements OnDestroy, AfterViewInit {\n @Output('clrPopoverOnCloseChange') closeChange = new EventEmitter<void>();\n\n private subscriptions: Subscription[] = [];\n\n constructor(\n private elementRef: ElementRef<HTMLButtonElement>,\n private popoverService: ClrPopoverService\n ) {\n this.subscriptions.push(\n popoverService.openChange.pipe(filter(value => !value)).subscribe(() => {\n this.closeChange.emit();\n })\n );\n }\n\n @HostListener('click', ['$event'])\n handleClick(event: MouseEvent) {\n this.popoverService.toggleWithEvent(event);\n this.popoverService.focusOrigin();\n }\n\n ngAfterViewInit() {\n this.popoverService.closeButtonRef = this.elementRef;\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(sub => sub.unsubscribe());\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, EventEmitter, HostListener, OnDestroy, Output } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { ClrPopoverService } from './providers/popover.service';\n\n@Directive({\n selector: '[clrPopoverOpenCloseButton]',\n host: {\n '[class.clr-smart-open-close]': 'true',\n },\n standalone: false,\n})\nexport class ClrPopoverOpenCloseButton implements OnDestroy {\n @Output('clrPopoverOpenCloseChange') openCloseChange = new EventEmitter<boolean>();\n\n private subscriptions: Subscription[] = [];\n\n constructor(private popoverService: ClrPopoverService) {\n this.subscriptions.push(\n popoverService.openChange.subscribe(change => {\n this.openCloseChange.emit(change);\n })\n );\n }\n\n @HostListener('click', ['$event'])\n handleClick(event: MouseEvent) {\n this.popoverService.toggleWithEvent(event);\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(sub => sub.unsubscribe());\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { ClrIfOpen } from './if-open.directive';\nimport { ClrPopoverCloseButton } from './popover-close-button';\nimport { ClrPopoverContent } from './popover-content';\nimport { ClrPopoverOpenCloseButton } from './popover-open-close-button';\nimport { ClrPopoverOrigin } from './popover-origin';\n\n@NgModule({\n imports: [ClrPopoverContent, ClrIfOpen],\n declarations: [ClrPopoverOrigin, ClrPopoverCloseButton, ClrPopoverOpenCloseButton],\n exports: [ClrPopoverOrigin, ClrPopoverCloseButton, ClrPopoverOpenCloseButton, ClrPopoverContent, ClrIfOpen],\n})\nexport class ClrPopoverModuleNext {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './popover-content';\nexport * from './providers/popover.service';\nexport * from './popover-origin';\nexport * from './popover-host.directive';\nexport * from './stop-escape-propagation.directive';\nexport * from './popover-host-origin.token';\nexport * from './if-open.directive';\nexport * from './utils/popover-positions';\n\nexport { ClrPopoverModuleNext } from './popover.module';\nexport { ClrPopoverCloseButton } from './popover-close-button';\nexport { ClrPopoverOpenCloseButton } from './popover-open-close-button';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.ClrPopoverService","i1.ClrStopEscapePropagationDirective"],"mappings":";;;;;;;;;;;MAoBa,iBAAiB,CAAA;AAD9B,IAAA,WAAA,GAAA;QAIE,IAAA,CAAA,UAAU,GAAa,EAAE;QAEjB,IAAA,CAAA,KAAK,GAAG,KAAK;AACb,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,OAAO,EAAW;AAEpC,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,OAAO,EAAS;AACvC,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,OAAO,EAAU;AACvC,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,OAAO,EAAQ;AACrC,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,OAAO,EAAQ;AACrC,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,OAAO,EAAW;AAqGjD,IAAA;AAnGC,IAAA,IAAI,aAAa,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,MAAM,YAAY,UAAU,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI;IAC/D;AAEA,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,GAAI,IAAI,CAAC,MAA0B,GAAG,IAAI;IAC1G;AAEA,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;IACxC;AAEA,IAAA,IAAI,cAAc,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IAC5C;AAEA,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU;IACxB;IACA,IAAI,SAAS,CAAC,KAAY,EAAA;AACxB,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK;AACvB,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;IACnC;AAEA,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK;IACnB;IACA,IAAI,IAAI,CAAC,KAAc,EAAA;AACrB,QAAA,KAAK,GAAG,CAAC,CAAC,KAAK;AACf,QAAA,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE;AACxB,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK;AAClB,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;QAC9B;IACF;AAEA,IAAA,IAAI,oBAAoB,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IAC5C;AAEA,IAAA,cAAc,CAAC,QAA4B,EAAA;AACzC,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC;IACrC;IAEA,oBAAoB,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IAC5C;IAEA,iBAAiB,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IAC5C;IAEA,cAAc,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE;IAC7C;AAEA;;;AAGG;AACH,IAAA,eAAe,CAAC,KAAU,EAAA;QACxB,qBAAqB,CAAC,KAAK,CAAC;AAE5B,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,QAAA,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI;IACxB;AAEA;;;AAGG;AACH,IAAA,WAAW,CAAC,KAAsB,EAAA;AAChC,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE;AACd,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK;AAClB,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;QAC9B;AAEA,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACnB,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI;IAClB;AAEA,IAAA,kBAAkB,CAAC,OAAgB,EAAA;AACjC,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;IACpC;IAEA,cAAc,GAAA;AACZ,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;IAC7B;IAEA,cAAc,GAAA;AACZ,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;IAC7B;IAEA,gBAAgB,GAAA;AACd,QAAA,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,KAAK,EAAE;IAC5C;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACnE;8GAhHW,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAjB,iBAAiB,EAAA,CAAA,CAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B;;;ACnBD;;;;;AAKG;IAKS;AAAZ,CAAA,UAAY,cAAc,EAAA;AACxB,IAAA,cAAA,CAAA,cAAA,CAAA,UAAA,CAAA,GAAA,CAAA,CAAA,GAAA,UAAQ;AACR,IAAA,cAAA,CAAA,cAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAO;AACP,IAAA,cAAA,CAAA,cAAA,CAAA,UAAA,CAAA,GAAA,CAAA,CAAA,GAAA,UAAQ;AACR,IAAA,cAAA,CAAA,cAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAO;AACT,CAAC,EALW,cAAc,KAAd,cAAc,GAAA,EAAA,CAAA,CAAA;IAOd;AAAZ,CAAA,UAAY,kBAAkB,EAAA;AAC5B,IAAA,kBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB;AACvB,IAAA,kBAAA,CAAA,YAAA,CAAA,GAAA,YAAyB;AACzB,IAAA,kBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,kBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB;AACvB,IAAA,kBAAA,CAAA,cAAA,CAAA,GAAA,cAA6B;AAC7B,IAAA,kBAAA,CAAA,cAAA,CAAA,GAAA,cAA6B;AAC7B,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,kBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,kBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3B,IAAA,kBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3B,IAAA,kBAAA,CAAA,cAAA,CAAA,GAAA,cAA6B;AAC7B,IAAA,kBAAA,CAAA,eAAA,CAAA,GAAA,eAA+B;AAC/B,IAAA,kBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC7B,CAAC,EAfW,kBAAkB,KAAlB,kBAAkB,GAAA,EAAA,CAAA,CAAA;AAiBvB,MAAM,iBAAiB,GAAyB;IACrD,kBAAkB,CAAC,KAAK;AACxB,IAAA,kBAAkB,CAAC,IAAI;AACvB,IAAA,kBAAkB,CAAC,YAAY;AAC/B,IAAA,kBAAkB,CAAC,WAAW;AAC9B,IAAA,kBAAkB,CAAC,SAAS;AAC5B,IAAA,kBAAkB,CAAC,QAAQ;;AAGtB,MAAM,kBAAkB,GAAyB;IACtD,kBAAkB,CAAC,WAAW;AAC9B,IAAA,kBAAkB,CAAC,YAAY;AAC/B,IAAA,kBAAkB,CAAC,QAAQ;AAC3B,IAAA,kBAAkB,CAAC,SAAS;AAC5B,IAAA,kBAAkB,CAAC,SAAS;AAC5B,IAAA,kBAAkB,CAAC,YAAY;AAC/B,IAAA,kBAAkB,CAAC,QAAQ;AAC3B,IAAA,kBAAkB,CAAC,WAAW;;AAGzB,MAAM,kBAAkB,GAAyB;IACtD,kBAAkB,CAAC,YAAY;AAC/B,IAAA,kBAAkB,CAAC,SAAS;AAC5B,IAAA,kBAAkB,CAAC,YAAY;AAC/B,IAAA,kBAAkB,CAAC,SAAS;AAC5B,IAAA,kBAAkB,CAAC,QAAQ;AAC3B,IAAA,kBAAkB,CAAC,UAAU;AAC7B,IAAA,kBAAkB,CAAC,YAAY;AAC/B,IAAA,kBAAkB,CAAC,aAAa;AAChC,IAAA,kBAAkB,CAAC,WAAW;AAC9B,IAAA,kBAAkB,CAAC,WAAW;AAC9B,IAAA,kBAAkB,CAAC,WAAW;AAC9B,IAAA,kBAAkB,CAAC,QAAQ;;AAGvB,SAAU,iBAAiB,CAAC,IAAoB,EAAA;IACpD,QAAQ,IAAI;QACV,KAAK,cAAc,CAAC,OAAO;AACzB,YAAA,OAAO,iBAAiB;QAC1B,KAAK,cAAc,CAAC,QAAQ;AAC1B,YAAA,OAAO,kBAAkB;QAC3B,KAAK,cAAc,CAAC,QAAQ;QAC5B,KAAK,cAAc,CAAC,OAAO;AAC3B,QAAA;AACE,YAAA,OAAO,kBAAkB;;AAE/B;AAEM,SAAU,qBAAqB,CAAC,IAAoB,EAAA;IACxD,MAAM,MAAM,GAAwB,EAAE;IAEtC,iBAAiB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAG;QACzC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AACtD,IAAA,CAAC,CAAC;AAEF,IAAA,OAAO,MAAM;AACf;AAEA,MAAM,eAAe,GAAmC;AACtD,IAAA,CAAC,cAAc,CAAC,QAAQ,GAAG,EAAE;AAC7B,IAAA,CAAC,cAAc,CAAC,OAAO,GAAG,EAAE;AAC5B,IAAA,CAAC,cAAc,CAAC,QAAQ,GAAG,CAAC;AAC5B,IAAA,CAAC,cAAc,CAAC,OAAO,GAAG,CAAC;CAC5B;AAED,SAAS,SAAS,CAAC,GAAuB,EAAE,IAAoB,EAAA;IAC9D,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;IAEzC,QAAQ,GAAG;;QAET,KAAK,kBAAkB,CAAC,QAAQ;QAChC,KAAK,kBAAkB,CAAC,UAAU;QAClC,KAAK,kBAAkB,CAAC,SAAS;YAC/B,OAAO;gBACL,OAAO,EAAE,CAAC,MAAM;AAChB,gBAAA,OAAO,EAAE,CAAC;aACU;;QAGxB,KAAK,kBAAkB,CAAC,QAAQ;QAChC,KAAK,kBAAkB,CAAC,WAAW;QACnC,KAAK,kBAAkB,CAAC,IAAI;QAC5B,KAAK,kBAAkB,CAAC,WAAW;YACjC,OAAO;AACL,gBAAA,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC,MAAM;aACI;;QAGxB,KAAK,kBAAkB,CAAC,SAAS;QACjC,KAAK,kBAAkB,CAAC,YAAY;QACpC,KAAK,kBAAkB,CAAC,KAAK;QAC7B,KAAK,kBAAkB,CAAC,YAAY;YAClC,OAAO;AACL,gBAAA,OAAO,EAAE,CAAC;AACV,gBAAA,OAAO,EAAE,MAAM;aACK;;QAGxB,KAAK,kBAAkB,CAAC,YAAY;QACpC,KAAK,kBAAkB,CAAC,aAAa;QACrC,KAAK,kBAAkB,CAAC,WAAW;AACnC,QAAA;YACE,OAAO;AACL,gBAAA,OAAO,EAAE,MAAM;AACf,gBAAA,OAAO,EAAE,CAAC;aACU;;AAE5B;AAEA,MAAM,gBAAgB,GAAG;;AAEvB,IAAA,CAAC,kBAAkB,CAAC,SAAS,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE;AACpG,IAAA,CAAC,kBAAkB,CAAC,UAAU,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC,aAAa,EAAE;AACvG,IAAA,CAAC,kBAAkB,CAAC,QAAQ,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC,YAAY,EAAE;;AAGpG,IAAA,CAAC,kBAAkB,CAAC,IAAI,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,SAAS,EAAE;AAC9F,IAAA,CAAC,kBAAkB,CAAC,QAAQ,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,YAAY,EAAE;AACrG,IAAA,CAAC,kBAAkB,CAAC,WAAW,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,YAAY,EAAE;AACxG,IAAA,CAAC,kBAAkB,CAAC,WAAW,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,SAAS,EAAE;;AAGrG,IAAA,CAAC,kBAAkB,CAAC,KAAK,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE;AAC/F,IAAA,CAAC,kBAAkB,CAAC,SAAS,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE;AACtG,IAAA,CAAC,kBAAkB,CAAC,YAAY,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE;AACzG,IAAA,CAAC,kBAAkB,CAAC,YAAY,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE;;AAGtG,IAAA,CAAC,kBAAkB,CAAC,YAAY,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE;AACvG,IAAA,CAAC,kBAAkB,CAAC,aAAa,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,UAAU,EAAE;AAC1G,IAAA,CAAC,kBAAkB,CAAC,WAAW,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,SAAS,EAAE;CACxG;AAED,MAAM,gBAAgB,GAAG;;AAEvB,IAAA,CAAC,kBAAkB,CAAC,SAAS,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,YAAY,EAAE;AACpG,IAAA,CAAC,kBAAkB,CAAC,QAAQ,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE;;AAGjG,IAAA,CAAC,kBAAkB,CAAC,QAAQ,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,SAAS,EAAE;AAC/F,IAAA,CAAC,kBAAkB,CAAC,WAAW,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,YAAY,EAAE;;AAGxG,IAAA,CAAC,kBAAkB,CAAC,SAAS,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE;AAChG,IAAA,CAAC,kBAAkB,CAAC,YAAY,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE;;AAGzG,IAAA,CAAC,kBAAkB,CAAC,YAAY,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,SAAS,EAAE;AACtG,IAAA,CAAC,kBAAkB,CAAC,WAAW,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE;CACtG;AAEK,SAAU,uBAAuB,CAAC,GAAuB,EAAE,IAAoB,EAAA;IACnF,IAAI,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC;AAEjC,IAAA,MAAM,eAAe,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE;AAC1F,IAAA,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GACvB,CAAC,IAAI,KAAK,cAAc,CAAC,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,eAAe;IAEvG,OAAO;QACL,GAAG,iBAAiB,CAAC,MAAM,CAAC;QAC5B,GAAG,kBAAkB,CAAC,OAAO,CAAC;AAC9B,QAAA,GAAG,MAAM;AACT,QAAA,UAAU,EAAE,GAAG;KACK;AACxB;AAEM,SAAU,iBAAiB,CAAC,GAAgB,EAAA;IAChD,QAAQ,GAAG;;QAET,KAAK,WAAW,CAAC,QAAQ;YACvB,OAAO;AACL,gBAAA,OAAO,EAAE,OAAO;AAChB,gBAAA,OAAO,EAAE,KAAK;aACf;QACH,KAAK,WAAW,CAAC,UAAU;YACzB,OAAO;AACL,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,OAAO,EAAE,KAAK;aACf;QACH,KAAK,WAAW,CAAC,SAAS;YACxB,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,KAAK;aACf;;QAEH,KAAK,WAAW,CAAC,QAAQ;YACvB,OAAO;AACL,gBAAA,OAAO,EAAE,OAAO;AAChB,gBAAA,OAAO,EAAE,KAAK;aACf;QACH,KAAK,WAAW,CAAC,WAAW;YAC1B,OAAO;AACL,gBAAA,OAAO,EAAE,OAAO;AAChB,gBAAA,OAAO,EAAE,QAAQ;aAClB;QACH,KAAK,WAAW,CAAC,WAAW;YAC1B,OAAO;AACL,gBAAA,OAAO,EAAE,OAAO;AAChB,gBAAA,OAAO,EAAE,QAAQ;aAClB;;QAEH,KAAK,WAAW,CAAC,SAAS;YACxB,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,KAAK;aACf;QACH,KAAK,WAAW,CAAC,YAAY;YAC3B,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,QAAQ;aAClB;QACH,KAAK,WAAW,CAAC,YAAY;YAC3B,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,QAAQ;aAClB;;QAEH,KAAK,WAAW,CAAC,WAAW;YAC1B,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,QAAQ;aAClB;QACH,KAAK,WAAW,CAAC,aAAa;YAC5B,OAAO;AACL,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,OAAO,EAAE,QAAQ;aAClB;QACH,KAAK,WAAW,CAAC,YAAY;AAC7B,QAAA;YACE,OAAO;AACL,gBAAA,OAAO,EAAE,OAAO;AAChB,gBAAA,OAAO,EAAE,QAAQ;aAClB;;AAEP;AAEM,SAAU,kBAAkB,CAAC,GAAgB,EAAA;IACjD,QAAQ,GAAG;;QAET,KAAK,WAAW,CAAC,QAAQ;YACvB,OAAO;AACL,gBAAA,QAAQ,EAAE,OAAO;AACjB,gBAAA,QAAQ,EAAE,KAAK;aAChB;QACH,KAAK,WAAW,CAAC,UAAU;YACzB,OAAO;AACL,gBAAA,QAAQ,EAAE,QAAQ;AAClB,gBAAA,QAAQ,EAAE,KAAK;aAChB;QACH,KAAK,WAAW,CAAC,SAAS;YACxB,OAAO;AACL,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,QAAQ,EAAE,KAAK;aAChB;;QAGH,KAAK,WAAW,CAAC,QAAQ;YACvB,OAAO;AACL,gBAAA,QAAQ,EAAE,OAAO;AACjB,gBAAA,QAAQ,EAAE,KAAK;aAChB;QACH,KAAK,WAAW,CAAC,WAAW;YAC1B,OAAO;AACL,gBAAA,QAAQ,EAAE,OAAO;AACjB,gBAAA,QAAQ,EAAE,QAAQ;aACnB;QACH,KAAK,WAAW,CAAC,WAAW;YAC1B,OAAO;AACL,gBAAA,QAAQ,EAAE,OAAO;AACjB,gBAAA,QAAQ,EAAE,QAAQ;aACnB;;QAGH,KAAK,WAAW,CAAC,SAAS;YACxB,OAAO;AACL,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,QAAQ,EAAE,KAAK;aAChB;QACH,KAAK,WAAW,CAAC,YAAY;YAC3B,OAAO;AACL,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,QAAQ,EAAE,QAAQ;aACnB;QACH,KAAK,WAAW,CAAC,YAAY;YAC3B,OAAO;AACL,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,QAAQ,EAAE,QAAQ;aACnB;;QAGH,KAAK,WAAW,CAAC,WAAW;YAC1B,OAAO;AACL,gBAAA,QAAQ,EAAE,OAAO;AACjB,gBAAA,QAAQ,EAAE,QAAQ;aACnB;QACH,KAAK,WAAW,CAAC,aAAa;YAC5B,OAAO;AACL,gBAAA,QAAQ,EAAE,QAAQ;AAClB,gBAAA,QAAQ,EAAE,QAAQ;aACnB;QACH,KAAK,WAAW,CAAC,YAAY;AAC7B,QAAA;YACE,OAAO;AACL,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,QAAQ,EAAE,QAAQ;aACnB;;AAEP;;ACtVA;;;;;AAKG;AAuCH;MAIa,iBAAiB,CAAA;AAyB5B,IAAA,WAAA,CACE,OAAmB,EACX,SAA2B,EACf,QAA0B,EAC9C,gBAAkC,EAEF,MAAyB,EACjD,OAAgB,EACW,cAAiC,EAC5D,IAAY,EACS,UAAe,EAAA;QARpC,IAAA,CAAA,SAAS,GAAT,SAAS;QACG,IAAA,CAAA,QAAQ,GAAR,QAAQ;QAGI,IAAA,CAAA,MAAM,GAAN,MAAM;QAC9B,IAAA,CAAA,OAAO,GAAP,OAAO;QACoB,IAAA,CAAA,cAAc,GAAd,cAAc;QACzC,IAAA,CAAA,IAAI,GAAJ,IAAI;QACiB,IAAA,CAAA,UAAU,GAAV,UAAU;QAlCjC,IAAA,CAAA,kBAAkB,GAAG,IAAI;QACzB,IAAA,CAAA,cAAc,GAAG,KAAK;AAItB,QAAA,IAAA,CAAA,WAAW,GAAmB,cAAc,CAAC,OAAO;QACpD,IAAA,CAAA,mBAAmB,GAAwB,EAAE;AAC7C,QAAA,IAAA,CAAA,SAAS,GAAG,kBAAkB,CAAC,WAAW;QAC1C,IAAA,CAAA,iBAAiB,GAAmC,EAAE;QAEtD,IAAA,CAAA,aAAa,GAAmB,EAAE;QAGlC,IAAA,CAAA,sBAAsB,GAAG,KAAK;QAC9B,IAAA,CAAA,wBAAwB,GAAG,KAAK;AAChC,QAAA,IAAA,CAAA,kBAAkB,GAAsB;AAC9C,YAAA,OAAO,EAAE,OAAO;AAChB,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,kBAAkB,CAAC,QAAQ;SACxC;AAeC,QAAA,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC;QAErD,gBAAgB,CAAC,mBAAmB,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC;QAE7E,IAAI,CAAC,QAAQ,EAAE;AACb,YAAA,IAAI,CAAC,UAAU,GAAG,OAAO;QAC3B;IACF;IAEA,IACI,IAAI,CAAC,KAAc,EAAA;QACrB,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK;IACpC;AAEA,IAAA,IACI,SAAS,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS;IAC/E;IACA,IAAI,SAAS,CAAC,QAAyD,EAAA;AACrE,QAAA,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;AAChC,YAAA,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,QAA8B,CAAC,KAAK,CAAC,CAAC,EAAE;gBACjG;YACF;;AAGA,YAAA,IAAI,CAAC,SAAS,GAAG,QAA8B;YAC/C,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC;QACpD;aAAO;AACL,YAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI;AAClC,YAAA,IAAI,CAAC,kBAAkB,GAAG,QAAQ;QACpC;IACF;IAEA,IACI,kBAAkB,CAAC,SAA8B,EAAA;AACnD,QAAA,IAAI,CAAC,wBAAwB,GAAG,IAAI;AAEpC,QAAA,IAAI,CAAC,mBAAmB,GAAG,SAAS;IACtC;IAEA,IACI,WAAW,CAAC,IAAoB,EAAA;AAClC,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI;AAEvB,QAAA,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE;AAClC,YAAA,IAAI,CAAC,mBAAmB,GAAG,qBAAqB,CAAC,IAAI,CAAC;QACxD;IACF;AAEA,IAAA,IACI,iBAAiB,GAAA;QACnB,OAAO,IAAI,CAAC,kBAAkB;IAChC;IACA,IAAI,iBAAiB,CAAC,YAAqB,EAAA;AACzC,QAAA,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC,YAAY;IAC1C;AAEA,IAAA,IACI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,cAAc;IAC5B;IACA,IAAI,aAAa,CAAC,aAAsB,EAAA;AACtC,QAAA,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,aAAa;IACvC;IAEA,IACI,aAAa,CAAC,MAA+C,EAAA;AAC/D,QAAA,IAAI,MAAM,YAAY,OAAO,EAAE;YAC7B,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,IAAI,UAAU,CAAC,MAAqB,CAAC;QACpE;aAAO;AACL,YAAA,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,MAAM;QACrC;IACF;AAEA,IAAA,IAAY,gBAAgB,GAAA;QAC1B,OAAO,IAAI,CAAC;AACT,aAAA,QAAQ;AACR,aAAA,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM;AAC9C,aAAA,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM;aACpC,QAAQ,CAAC,IAAI;aACb,aAAa,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC;aACnE,sBAAsB,CAAC,IAAI,CAAC;IACjC;AAEA,IAAA,IAAY,iBAAiB,GAAA;AAC3B,QAAA,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC/B,OAAO,IAAI,CAAC,kBAAkB;QAChC;;QAGA,OAAO,uBAAuB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC;IAClE;IAEA,eAAe,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;YAC5B,IAAI,CAAC,WAAW,EAAE;QACpB;AAEA,QAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,IAAG;YAC7E,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,WAAW,EAAE;YACpB;iBAAO;gBACL,IAAI,CAAC,YAAY,EAAE;YACrB;AACF,QAAA,CAAC,CAAC;IACJ;IAEA,WAAW,GAAA;QACT,IAAI,CAAC,aAAa,EAAE;AACpB,QAAA,IAAI,CAAC,qBAAqB,EAAE,WAAW,EAAE;IAC3C;IAEQ,iBAAiB,GAAA;QACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CACnC,IAAI,aAAa,CAAC;;YAEhB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;;YAEvC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE;AACpD,YAAA,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU;AAC1C,YAAA,WAAW,EAAE,KAAK;AACnB,SAAA,CAAC,CACH;QAED,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC,CAAC,SAAS,CAAC,MAAK;YACtG,IAAI,CAAC,aAAa,EAAE;AACtB,QAAA,CAAC,CAAC,EACF,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,CAAC,SAAS,CAAC,MAAK;AACxD,YAAA,IAAI,CAAC,UAAU,EAAE,cAAc,EAAE;AACnC,QAAA,CAAC,CAAC,EACF,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,KAAK,IAAG;YAChD,IAAI,KAAK,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;gBAC7E,KAAK,CAAC,cAAc,EAAE;gBACtB,IAAI,CAAC,YAAY,EAAE;YACrB;AACF,QAAA,CAAC,CAAC,EAEF,IAAI,CAAC,cAAc,CAAC;AAClB,cAAE,IAAI,CAAC,wCAAwC;AAC/C,cAAE,IAAI,CAAC,0CAA0C,EAAE,CACtD;IACH;AAEA;;;AAGG;IACK,wCAAwC,GAAA;QAC9C,OAAO,KAAK,CAAC,GAAG;AACb,aAAA,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC;aAC5D,SAAS,CAAC,KAAK,IAAG;AACjB,YAAA,IAAI,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;gBAC1D;YACF;AAEA,YAAA,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBAC3B,IAAI,CAAC,YAAY,EAAE;YACrB;AACF,QAAA,CAAC,CAAC;IACN;AAEA;;;AAGG;IACK,0CAA0C,GAAA;QAChD,OAAO,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC,SAAS,CAAC,KAAK,IAAG;;AAE9D,YAAA,IAAI,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;gBAC1D;YACF;;AAGA,YAAA,MAAM,cAAc,GAClB,IAAI,CAAC,cAAc,CAAC,SAAS;AAC7B,iBAAE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,MAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAiB,CAAC;AACjF,oBAAA,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,MAAkB,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAiB,CAAC;oBACjG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC;YAE1D,IAAI,cAAc,EAAE;gBAClB,KAAK,CAAC,eAAe,EAAE;YACzB;AAEA,YAAA,IAAI,IAAI,CAAC,kBAAkB,IAAI,cAAc,EAAE;gBAC7C,IAAI,CAAC,YAAY,EAAE;YACrB;AACF,QAAA,CAAC,CAAC;IACJ;IAEQ,aAAa,GAAA;AACnB,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,IAAI,CAAC,gBAAgB,CAAC;AAC7D,YAAA,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE;QAClC;IACF;IAEQ,YAAY,GAAA;AAClB,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB;QACF;QAEA,IAAI,CAAC,aAAa,EAAE;AACpB,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,KAAK;AAEhC,QAAA,IAAI,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE;YACrC,MAAM,kBAAkB,GACtB,IAAI,CAAC,WAAW,KAAK,cAAc,CAAC,OAAO;AAC3C,iBAAC,QAAQ,CAAC,aAAa,KAAK,QAAQ,CAAC,IAAI;oBACvC,QAAQ,CAAC,aAAa,KAAK,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,aAAa,CAAC;YAE/E,IAAI,kBAAkB,EAAE;AACtB,gBAAA,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE;YACnC;QACF;IACF;IAEQ,WAAW,GAAA;AACjB,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,iBAAiB,EAAE;QAC1B;QAEA,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE;AAC/B,YAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC;AAE5D,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACpB,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS;gBACtC,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC;YAC7C;QACF;AAEA,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAc,IAAI,CAAC,UAAU,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;QACxC;AAEA,QAAA,IAAI,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE;YACrC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,aAAa,CAAC,cAAc,CAAC;AAC7D,gBAAA,QAAQ,EAAE,SAAS;AACnB,gBAAA,KAAK,EAAE,SAAS;AAChB,gBAAA,MAAM,EAAE,SAAS;AAClB,aAAA,CAAC;YAEF,IAAI,CAAC,yBAAyB,EAAE;QAClC;QAEA,UAAU,CAAC,MAAK;;YAEd,IAAI,CAAC,oBAAoB,EAAE;AAE3B,YAAA,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAE5C,IAAI,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE;AACzC,gBAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,EAAE;YACvC;AACF,QAAA,CAAC,CAAC;IACJ;IAEQ,aAAa,GAAA;AACnB,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;AAChD,QAAA,IAAI,CAAC,aAAa,GAAG,EAAE;AAEvB,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE;AAClC,YAAA,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;AACxB,YAAA,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;QAC3B;AAEA,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE;AAC9B,YAAA,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;QACzB;AAEA,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACb,YAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;QACrB;AAEA,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI;AACtB,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACrB,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI;QACxB;AACA,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI;AAEhB,QAAA,IAAI,CAAC,oBAAoB,EAAE,UAAU,EAAE;AACvC,QAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI;AAEhC,QAAA,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,KAAK,CAAC;IAC/C;AAEQ,IAAA,oBAAoB,CAAC,IAAiB,EAAA;QAC5C,IAAI,MAAM,GAAG,IAAI;QACjB,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC;AACrD,QAAA,MAAM,iBAAiB,GAAmC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAE3E,OAAO,MAAM,IAAI,EAAE,MAAM,YAAY,eAAe,CAAC,EAAE;AACrD,YAAA,IAAI,MAAM,YAAY,UAAU,EAAE;AAChC,gBAAA,MAAM,GAAG,MAAM,CAAC,IAAmB;YACrC;AAEA,YAAA,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC;AAEhE,YAAA,IAAI,kBAAkB,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;AACpF,gBAAA,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC;YAChC;AAEA,YAAA,MAAM,GAAG,MAAM,CAAC,UAAyB;QAC3C;AAEA,QAAA,OAAO,iBAAiB;IAC1B;AAEA;;;AAGG;IACK,yBAAyB,GAAA;QAC/B,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,IAAI,IAAI,CAAC,oBAAoB,EAAE;YACnE;QACF;QAEA,IAAI,CAAC,oBAAoB,GAAG,IAAI,oBAAoB,CAClD,OAAO,IAAG;AACR,YAAA,OAAO,CAAC,OAAO,CAAC,KAAK,IAAG;;gBAEtB,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;AACrD,oBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1C;AACF,YAAA,CAAC,CAAC;QACJ,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAC/B;AAED,QAAA,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,aAAa,CAAC;IACpF;IAEQ,oBAAoB,GAAA;QAC1B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACvC;QACF;AAEA,QAAA,IAAI,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE;YACnC,IAAI,CAAC,4BAA4B,EAAE;QACrC;aAAO;YACL,IAAI,CAAC,8BAA8B,EAAE;QACvC;IACF;;IAGQ,4BAA4B,GAAA;AAClC,QAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAK;YAC/B,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,MAAK;AAC3E,gBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1C,CAAC,CAAC,CACH;AACH,QAAA,CAAC,CAAC;IACJ;;IAGQ,8BAA8B,GAAA;AACpC,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa;QACxF,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC;AAE7D,QAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAK;AAC/B,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,KAAK,CAAC,GAAG,iBAAiB,CAAC,GAAG,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AACvG,gBAAA,IAAI,IAAI,CAAC,cAAc,EAAE;AACvB,oBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;oBACxC;gBACF;AAEA,gBAAA,IAAI,CAAC,UAAU,EAAE,cAAc,EAAE;YACnC,CAAC,CAAC,CACH;AACH,QAAA,CAAC,CAAC;IACJ;AAEQ,IAAA,cAAc,CAAC,OAA0B,EAAA;AAC/C,QAAA,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE;YAC7B,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC;QAC5C;AAEA,QAAA,OAAO,OAAO;IAChB;8GAnaW,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,OAAA,EAAA,EAAA,EAAA,KAAA,EAiClB,iBAAiB,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAEjB,WAAW,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAnCV,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,CAAA,mBAAA,EAAA,MAAA,CAAA,EAAA,SAAA,EAAA,CAAA,qBAAA,EAAA,WAAA,CAAA,EAAA,kBAAA,EAAA,CAAA,qCAAA,EAAA,oBAAA,CAAA,EAAA,WAAA,EAAA,CAAA,uBAAA,EAAA,aAAA,CAAA,EAAA,iBAAA,EAAA,CAAA,sCAAA,EAAA,mBAAA,CAAA,EAAA,aAAA,EAAA,CAAA,gCAAA,EAAA,eAAA,CAAA,EAAA,aAAA,EAAA,CAAA,yBAAA,EAAA,eAAA,CAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAChC,iBAAA;;0BA6BI;;0BAGA;;0BAAY;;0BAEZ,MAAM;2BAAC,iBAAiB;;0BAExB,MAAM;2BAAC,WAAW;;sBAWpB,KAAK;uBAAC,mBAAmB;;sBAKzB,KAAK;uBAAC,qBAAqB;;sBAmB3B,KAAK;uBAAC,qCAAqC;;sBAO3C,KAAK;uBAAC,uBAAuB;;sBAS7B,KAAK;uBAAC,sCAAsC;;sBAQ5C,KAAK;uBAAC,gCAAgC;;sBAQtC,KAAK;uBAAC,yBAAyB;;;ACtJlC;;;;;AAKG;MAaU,gBAAgB,CAAA;IAC3B,WAAA,CAAY,cAAiC,EAAE,OAAsC,EAAA;AACnF,QAAA,cAAc,CAAC,MAAM,GAAG,OAAO;IACjC;8GAHW,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAhB,gBAAgB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAP5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,IAAI,EAAE;AACJ,wBAAA,4BAA4B,EAAE,MAAM;AACrC,qBAAA;AACD,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;ACjBD;;;;;AAKG;MAIU,mBAAmB,GAAG,IAAI,cAAc,CAAa,qBAAqB;;ACTvF;;;;;AAKG;MAUU,iCAAiC,CAAA;AAI5C,IAAA,WAAA,CAAoB,cAAiC,EAAA;QAAjC,IAAA,CAAA,cAAc,GAAd,cAAc;QAF1B,IAAA,CAAA,cAAc,GAAmB,IAAI;IAEW;IAExD,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,IAAG;AAClE,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI;AAC5B,QAAA,CAAC,CAAC;IACJ;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE;IAClC;AAGA,IAAA,WAAW,CAAC,KAAoB,EAAA;AAC9B,QAAA,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,EAAE;AAChC,YAAA,IAAI,IAAI,CAAC,cAAc,KAAK,KAAK,EAAE;gBACjC,KAAK,CAAC,eAAe,EAAE;YACzB;AAEA,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI;QAC5B;IACF;8GAzBW,iCAAiC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAjC,iCAAiC,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAjC,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAH7C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;sBAiBE,YAAY;uBAAC,cAAc,EAAE,CAAC,QAAQ,CAAC;;;AC/B1C;;;;;AAKG;MAaU,uBAAuB,CAAA;8GAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,SAAA,EAHvB,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAAC,iCAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAG9E,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,SAAS,EAAE,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;oBACzF,cAAc,EAAE,CAAC,iCAAiC,CAAC;AACpD,iBAAA;;;ACjBD;;;;;AAKG;AAOH;;;;;;;;;AASG;MAIU,SAAS,CAAA;AAcpB,IAAA,WAAA,CACU,cAAiC,EACjC,QAA0B,EAC1B,SAA2B,EAAA;QAF3B,IAAA,CAAA,cAAc,GAAd,cAAc;QACd,IAAA,CAAA,QAAQ,GAAR,QAAQ;QACR,IAAA,CAAA,SAAS,GAAT,SAAS;AAdnB;;;;;;AAMG;AACwB,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,YAAY,CAAU,KAAK,CAAC;QAEhE,IAAA,CAAA,aAAa,GAAmB,EAAE;AAOxC,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,IAAG;;YAE3C,IAAI,MAAM,EAAE;AACV,gBAAA,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC;AACtC,gBAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9B;QACF,CAAC,CAAC,EACF,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,IAAG;;YAE/C,IAAI,CAAC,MAAM,EAAE;gBACX,SAAS,CAAC,KAAK,EAAE;AACjB,gBAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9B;QACF,CAAC,CAAC,CACH;IACH;AAEA;;;AAGG;AACH,IAAA,IACI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI;IACjC;IACA,IAAI,IAAI,CAAC,KAAuB,EAAA;AAC9B,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,KAAgB;IAC7C;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;IACtD;AAEA;;;;;;AAMG;AACH,IAAA,UAAU,CAAC,KAAc,EAAA;QACvB,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC;QAClD;aAAO;AACL,YAAA,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;QACxB;IACF;8GAlEW,SAAS,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAD,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAT,SAAS,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,CAAA,WAAA,EAAA,MAAA,CAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAT,SAAS,EAAA,UAAA,EAAA,CAAA;kBAHrB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACxB,iBAAA;;sBAWE,MAAM;uBAAC,iBAAiB;;sBA+BxB,KAAK;uBAAC,WAAW;;;AClEpB;;;;;AAKG;MAeU,qBAAqB,CAAA;IAKhC,WAAA,CACU,UAAyC,EACzC,cAAiC,EAAA;QADjC,IAAA,CAAA,UAAU,GAAV,UAAU;QACV,IAAA,CAAA,cAAc,GAAd,cAAc;AANW,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,YAAY,EAAQ;QAEjE,IAAA,CAAA,aAAa,GAAmB,EAAE;QAMxC,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AACrE,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;QACzB,CAAC,CAAC,CACH;IACH;AAGA,IAAA,WAAW,CAAC,KAAiB,EAAA;AAC3B,QAAA,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,KAAK,CAAC;AAC1C,QAAA,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE;IACnC;IAEA,eAAe,GAAA;QACb,IAAI,CAAC,cAAc,CAAC,cAAc,GAAG,IAAI,CAAC,UAAU;IACtD;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;IACtD;8GA5BW,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAArB,qBAAqB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,yBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,qBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAPjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,yBAAyB;AACnC,oBAAA,IAAI,EAAE;AACJ,wBAAA,gCAAgC,EAAE,MAAM;AACzC,qBAAA;AACD,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;sBAEE,MAAM;uBAAC,yBAAyB;;sBAehC,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;;ACpCnC;;;;;AAKG;MAcU,yBAAyB,CAAA;AAKpC,IAAA,WAAA,CAAoB,cAAiC,EAAA;QAAjC,IAAA,CAAA,cAAc,GAAd,cAAc;AAJG,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,YAAY,EAAW;QAE1E,IAAA,CAAA,aAAa,GAAmB,EAAE;AAGxC,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,IAAG;AAC3C,YAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC;QACnC,CAAC,CAAC,CACH;IACH;AAGA,IAAA,WAAW,CAAC,KAAiB,EAAA;AAC3B,QAAA,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,KAAK,CAAC;IAC5C;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;IACtD;8GApBW,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAzB,yBAAyB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,OAAA,EAAA,EAAA,eAAA,EAAA,2BAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,qBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAPrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,6BAA6B;AACvC,oBAAA,IAAI,EAAE;AACJ,wBAAA,8BAA8B,EAAE,MAAM;AACvC,qBAAA;AACD,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;sBAEE,MAAM;uBAAC,2BAA2B;;sBAYlC,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;;AChCnC;;;;;AAKG;MAeU,oBAAoB,CAAA;8GAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,iBAHhB,gBAAgB,EAAE,qBAAqB,EAAE,yBAAyB,aADvE,iBAAiB,EAAE,SAAS,CAAA,EAAA,OAAA,EAAA,CAE5B,gBAAgB,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,SAAS,CAAA,EAAA,CAAA,CAAA;+GAE/F,oBAAoB,EAAA,CAAA,CAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,iBAAiB,EAAE,SAAS,CAAC;AACvC,oBAAA,YAAY,EAAE,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,yBAAyB,CAAC;oBAClF,OAAO,EAAE,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,SAAS,CAAC;AAC5G,iBAAA;;;ACnBD;;;;;AAKG;;ACLH;;AAEG;;;;"}
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, DOCUMENT, PLATFORM_ID, HostListener, Inject, Directive, ContentChild, Input, Component, ElementRef, HostBinding, ViewChild, Optional, NgModule } from '@angular/core';
3
3
  import * as i4 from '@clr/angular/popover/common';
4
- import { ClrPopoverHostDirective, ClrPopoverPosition, ClrPopoverType, SIGNPOST_POSITIONS, POPOVER_HOST_ORIGIN, ClrPopoverContent, ClrIfOpen, ÇlrClrPopoverModuleNext as _lrClrPopoverModuleNext } from '@clr/angular/popover/common';
4
+ import { ClrPopoverHostDirective, ClrPopoverPosition, ClrPopoverType, SIGNPOST_POSITIONS, POPOVER_HOST_ORIGIN, ClrPopoverContent, ClrIfOpen, ClrPopoverModuleNext } from '@clr/angular/popover/common';
5
5
  import { Subject } from 'rxjs';
6
6
  import { isPlatformBrowser, CommonModule } from '@angular/common';
7
7
  import * as i1 from '@clr/angular/utils';
@@ -463,16 +463,16 @@ class ClrSignpostModule {
463
463
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.3", ngImport: i0, type: ClrSignpostModule, declarations: [ClrSignpost,
464
464
  ClrSignpostContent,
465
465
  ClrSignpostTrigger,
466
- ClrSignpostTitle], imports: [CommonModule, ClrIcon, ClrFocusOnViewInitModule, _lrClrPopoverModuleNext, ClrIfOpen], exports: [ClrSignpost,
466
+ ClrSignpostTitle], imports: [CommonModule, ClrIcon, ClrFocusOnViewInitModule, ClrPopoverModuleNext, ClrIfOpen], exports: [ClrSignpost,
467
467
  ClrSignpostContent,
468
468
  ClrSignpostTrigger,
469
469
  ClrSignpostTitle, ClrIfOpen] }); }
470
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrSignpostModule, imports: [CommonModule, ClrIcon, ClrFocusOnViewInitModule, _lrClrPopoverModuleNext] }); }
470
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrSignpostModule, imports: [CommonModule, ClrIcon, ClrFocusOnViewInitModule, ClrPopoverModuleNext] }); }
471
471
  }
472
472
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrSignpostModule, decorators: [{
473
473
  type: NgModule,
474
474
  args: [{
475
- imports: [CommonModule, ClrIcon, ClrFocusOnViewInitModule, _lrClrPopoverModuleNext, ClrIfOpen],
475
+ imports: [CommonModule, ClrIcon, ClrFocusOnViewInitModule, ClrPopoverModuleNext, ClrIfOpen],
476
476
  declarations: [CLR_SIGNPOST_DIRECTIVES],
477
477
  exports: [CLR_SIGNPOST_DIRECTIVES, ClrIfOpen],
478
478
  }]