{"version":3,"file":"primeng-toast.mjs","sources":["../../src/app/components/toast/toast.ts","../../src/app/components/toast/primeng-toast.ts"],"sourcesContent":["import {NgModule,Component,Input,Output,OnInit,AfterViewInit,AfterContentInit,OnDestroy,ElementRef,ViewChild,EventEmitter,ContentChildren,QueryList,TemplateRef,ChangeDetectionStrategy, NgZone, ChangeDetectorRef, ViewEncapsulation} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {Message, PrimeNGConfig} from 'primeng/api';\nimport {DomHandler} from 'primeng/dom';\nimport {PrimeTemplate,SharedModule} from 'primeng/api';\nimport {MessageService} from 'primeng/api';\nimport {ObjectUtils, UniqueComponentId} from 'primeng/utils';\nimport {RippleModule} from 'primeng/ripple';\nimport {Subscription} from 'rxjs';\nimport {trigger,state,style,transition,animate,query,animateChild,AnimationEvent} from '@angular/animations';\nimport { ZIndexUtils } from 'primeng/utils';\n\n@Component({\n    selector: 'p-toastItem',\n    template: `\n        <div #container [attr.id]=\"message.id\" [class]=\"message.styleClass\" [ngClass]=\"['p-toast-message-' + message.severity, 'p-toast-message']\" [@messageState]=\"{value: 'visible', params: {showTransformParams: showTransformOptions, hideTransformParams: hideTransformOptions, showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions}}\"\n                (mouseenter)=\"onMouseEnter()\" (mouseleave)=\"onMouseLeave()\">\n            <div class=\"p-toast-message-content\" role=\"alert\" aria-live=\"assertive\" aria-atomic=\"true\"  [ngClass]=\"message.contentStyleClass\">\n                <ng-container *ngIf=\"!template\">\n                    <span [class]=\"'p-toast-message-icon pi' + (message.icon ? ' ' + message.icon : '')\" [ngClass]=\"{'pi-info-circle': message.severity == 'info', 'pi-exclamation-triangle': message.severity == 'warn',\n                        'pi-times-circle': message.severity == 'error', 'pi-check' :message.severity == 'success'}\"></span>\n                    <div class=\"p-toast-message-text\">\n                        <div class=\"p-toast-summary\">{{message.summary}}</div>\n                        <div class=\"p-toast-detail\">{{message.detail}}</div>\n                    </div>\n                </ng-container>\n                <ng-container *ngTemplateOutlet=\"template; context: {$implicit: message}\"></ng-container>\n                <button type=\"button\" class=\"p-toast-icon-close p-link\" (click)=\"onCloseIconClick($event)\" (keydown.enter)=\"onCloseIconClick($event)\" *ngIf=\"message.closable !== false\" pRipple>\n                    <span class=\"p-toast-icon-close-icon pi pi-times\"></span>\n                </button>\n            </div>\n        </div>\n    `,\n    animations: [\n        trigger('messageState', [\n            state('visible', style({\n                transform: 'translateY(0)',\n                opacity: 1\n            })),\n            transition('void => *', [\n                style({transform: '{{showTransformParams}}', opacity: 0}),\n                animate('{{showTransitionParams}}')\n            ]),\n            transition('* => void', [\n                animate(('{{hideTransitionParams}}'), style({\n                    height: 0,\n                    opacity: 0,\n                    transform: '{{hideTransformParams}}'\n                }))\n            ])\n        ])\n    ],\n    encapsulation: ViewEncapsulation.None,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    host: {\n        'class': 'p-element'\n    }\n})\nexport class ToastItem implements AfterViewInit, OnDestroy {\n\n    @Input() message: Message;\n\n    @Input() index: number;\n\n    @Input() template: TemplateRef<any>;\n\n    @Input() showTransformOptions: string;\n\n    @Input() hideTransformOptions: string;\n\n    @Input() showTransitionOptions: string;\n\n    @Input() hideTransitionOptions: string;\n\n    @Output() onClose: EventEmitter<any> = new EventEmitter();\n\n    @ViewChild('container') containerViewChild: ElementRef;\n\n    timeout: any;\n\n    constructor(private zone: NgZone) {}\n\n    ngAfterViewInit() {\n        this.initTimeout();\n    }\n\n    initTimeout() {\n        if (!this.message.sticky) {\n            this.zone.runOutsideAngular(() => {\n                this.timeout = setTimeout(() => {\n                    this.onClose.emit({\n                        index: this.index,\n                        message: this.message\n                    });\n                }, this.message.life || 3000);\n            });\n        }\n    }\n\n    clearTimeout() {\n        if (this.timeout) {\n            clearTimeout(this.timeout);\n            this.timeout = null;\n        }\n    }\n\n    onMouseEnter() {\n        this.clearTimeout();\n    }\n\n    onMouseLeave() {\n        this.initTimeout();\n    }\n\n    onCloseIconClick(event) {\n        this.clearTimeout();\n\n        this.onClose.emit({\n            index: this.index,\n            message: this.message\n        });\n\n        event.preventDefault();\n    }\n\n    ngOnDestroy() {\n        this.clearTimeout();\n    }\n}\n\n@Component({\n    selector: 'p-toast',\n    template: `\n        <div #container [ngClass]=\"'p-toast p-component p-toast-' + position\" [ngStyle]=\"style\" [class]=\"styleClass\">\n            <p-toastItem *ngFor=\"let msg of messages; let i=index\" [message]=\"msg\" [index]=\"i\" (onClose)=\"onMessageClose($event)\"\n                    [template]=\"template\" @toastAnimation (@toastAnimation.start)=\"onAnimationStart($event)\" (@toastAnimation.done)=\"onAnimationEnd($event)\"\n                    [showTransformOptions]=\"showTransformOptions\" [hideTransformOptions]=\"hideTransformOptions\"\n                    [showTransitionOptions]=\"showTransitionOptions\" [hideTransitionOptions]=\"hideTransitionOptions\"></p-toastItem>\n        </div>\n    `,\n    animations: [\n        trigger('toastAnimation', [\n            transition(':enter, :leave', [\n                query('@*', animateChild())\n            ])\n        ])\n    ],\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    encapsulation: ViewEncapsulation.None,\n    styleUrls: ['./toast.css'],\n    host: {\n        'class': 'p-element'\n    }\n})\nexport class Toast implements OnInit,AfterContentInit,OnDestroy {\n\n    @Input() key: string;\n\n    @Input() autoZIndex: boolean = true;\n\n    @Input() baseZIndex: number = 0;\n\n    @Input() style: any;\n\n    @Input() styleClass: string;\n\n    @Input() position: string = 'top-right';\n\n    @Input() preventOpenDuplicates: boolean = false;\n\n    @Input() preventDuplicates: boolean = false;\n\n    @Input() showTransformOptions: string = 'translateY(100%)';\n\n    @Input() hideTransformOptions: string = 'translateY(-100%)';\n\n    @Input() showTransitionOptions: string = '300ms ease-out';\n\n    @Input() hideTransitionOptions: string = '250ms ease-in';\n\n    @Input() breakpoints: any;\n\n    @Output() onClose: EventEmitter<any> = new EventEmitter();\n\n    @ViewChild('container') containerViewChild: ElementRef;\n\n    @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n    messageSubscription: Subscription;\n\n    clearSubscription: Subscription;\n\n    messages: Message[];\n\n    messagesArchieve: Message[];\n\n    template: TemplateRef<any>;\n\n    constructor(public messageService: MessageService, private cd: ChangeDetectorRef, public config: PrimeNGConfig) {}\n\n    styleElement: any;\n\n    id: string = UniqueComponentId();\n\n    ngOnInit() {\n        this.messageSubscription = this.messageService.messageObserver.subscribe(messages => {\n            if (messages) {\n                if (messages instanceof Array) {\n                    const filteredMessages = messages.filter(m => this.canAdd(m));\n                    this.add(filteredMessages);\n                }\n                else if (this.canAdd(messages)) {\n                    this.add([messages]);\n                }\n            }\n        });\n\n        this.clearSubscription = this.messageService.clearObserver.subscribe(key => {\n            if (key) {\n                if (this.key === key) {\n                    this.messages = null;\n                }\n            }\n            else {\n                this.messages = null;\n            }\n\n            this.cd.markForCheck();\n        });\n    }\n\n    ngAfterViewInit() {\n        if (this.breakpoints) {\n            this.createStyle();\n        }\n    }\n\n    add(messages: Message[]): void {\n        this.messages = this.messages ? [...this.messages, ...messages] : [...messages];\n\n        if (this.preventDuplicates) {\n            this.messagesArchieve = this.messagesArchieve ? [...this.messagesArchieve, ...messages] : [...messages];\n        }\n\n        this.cd.markForCheck();\n    }\n\n    canAdd(message: Message): boolean {\n        let allow = this.key === message.key;\n\n        if (allow && this.preventOpenDuplicates) {\n            allow = !this.containsMessage(this.messages, message);\n        }\n\n        if (allow && this.preventDuplicates) {\n            allow = !this.containsMessage(this.messagesArchieve, message);\n        }\n\n        return allow;\n    }\n\n    containsMessage(collection: Message[], message: Message): boolean {\n        if (!collection) {\n            return false;\n        }\n\n        return collection.find(m => {\n           return ((m.summary === message.summary) && (m.detail == message.detail) && (m.severity === message.severity));\n        }) != null;\n    }\n\n    ngAfterContentInit() {\n        this.templates.forEach((item) => {\n            switch(item.getType()) {\n                case 'message':\n                    this.template = item.template;\n                break;\n\n                default:\n                    this.template = item.template;\n                break;\n            }\n        });\n    }\n\n    onMessageClose(event) {\n        this.messages.splice(event.index, 1);\n\n        this.onClose.emit({\n            message: event.message\n        });\n\n        this.cd.detectChanges();\n    }\n\n    onAnimationStart(event: AnimationEvent) {\n        if (event.fromState === 'void') {\n            this.containerViewChild.nativeElement.setAttribute(this.id, '');\n\n            if (this.autoZIndex) {\n                ZIndexUtils.set('modal', this.containerViewChild.nativeElement, this.baseZIndex || this.config.zIndex.modal);\n            }\n        }\n    }\n\n    onAnimationEnd(event: AnimationEvent) {\n        if (event.toState === 'void') {\n            if (this.autoZIndex && ObjectUtils.isEmpty(this.messages)) {\n                ZIndexUtils.clear(this.containerViewChild.nativeElement);\n            }\n        }\n    }\n\n    createStyle() {\n        if (!this.styleElement) {\n            this.styleElement = document.createElement('style');\n            this.styleElement.type = 'text/css';\n            document.head.appendChild(this.styleElement);\n            let innerHTML = '';\n            for (let breakpoint in this.breakpoints) {\n                let breakpointStyle = '';\n                for (let styleProp in this.breakpoints[breakpoint]) {\n                    breakpointStyle += styleProp + ':' + this.breakpoints[breakpoint][styleProp] + ' !important;';\n                }\n                innerHTML += `\n                    @media screen and (max-width: ${breakpoint}) {\n                        .p-toast[${this.id}] {\n                           ${breakpointStyle}\n                        }\n                    }\n                `\n            }\n\n            this.styleElement.innerHTML = innerHTML;\n        }\n    }\n\n    destroyStyle() {\n        if (this.styleElement) {\n            document.head.removeChild(this.styleElement);\n            this.styleElement = null;\n        }\n    }\n\n    ngOnDestroy() {\n        if (this.messageSubscription) {\n            this.messageSubscription.unsubscribe();\n        }\n\n        if (this.containerViewChild && this.autoZIndex) {\n            ZIndexUtils.clear(this.containerViewChild.nativeElement);\n        }\n\n        if (this.clearSubscription) {\n            this.clearSubscription.unsubscribe();\n        }\n\n        this.destroyStyle();\n    }\n}\n\n@NgModule({\n    imports: [CommonModule,RippleModule],\n    exports: [Toast,SharedModule],\n    declarations: [Toast,ToastItem]\n})\nexport class ToastModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;;;;MA0Da,SAAS,CAAA;AAsBlB,IAAA,WAAA,CAAoB,IAAY,EAAA;AAAZ,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAQ;AANtB,QAAA,IAAA,CAAA,OAAO,GAAsB,IAAI,YAAY,EAAE,CAAC;KAMtB;IAEpC,eAAe,GAAA;QACX,IAAI,CAAC,WAAW,EAAE,CAAC;KACtB;IAED,WAAW,GAAA;AACP,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;AACtB,YAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAK;AAC7B,gBAAA,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,MAAK;AAC3B,oBAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;wBACd,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,OAAO,EAAE,IAAI,CAAC,OAAO;AACxB,qBAAA,CAAC,CAAC;iBACN,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;AAClC,aAAC,CAAC,CAAC;AACN,SAAA;KACJ;IAED,YAAY,GAAA;QACR,IAAI,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC3B,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACvB,SAAA;KACJ;IAED,YAAY,GAAA;QACR,IAAI,CAAC,YAAY,EAAE,CAAC;KACvB;IAED,YAAY,GAAA;QACR,IAAI,CAAC,WAAW,EAAE,CAAC;KACtB;AAED,IAAA,gBAAgB,CAAC,KAAK,EAAA;QAClB,IAAI,CAAC,YAAY,EAAE,CAAC;AAEpB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACd,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;AACxB,SAAA,CAAC,CAAC;QAEH,KAAK,CAAC,cAAc,EAAE,CAAC;KAC1B;IAED,WAAW,GAAA;QACP,IAAI,CAAC,YAAY,EAAE,CAAC;KACvB;;sGArEQ,SAAS,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAT,SAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,SAAS,EA5CR,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,WAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,WAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;AAkBT,IAAA,CAAA,EACW,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,QAAA,EAAA,WAAA,EAAA,CAAA,EAAA,UAAA,EAAA;QACR,OAAO,CAAC,cAAc,EAAE;AACpB,YAAA,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC;AACnB,gBAAA,SAAS,EAAE,eAAe;AAC1B,gBAAA,OAAO,EAAE,CAAC;AACb,aAAA,CAAC,CAAC;YACH,UAAU,CAAC,WAAW,EAAE;gBACpB,KAAK,CAAC,EAAC,SAAS,EAAE,yBAAyB,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC;gBACzD,OAAO,CAAC,0BAA0B,CAAC;aACtC,CAAC;YACF,UAAU,CAAC,WAAW,EAAE;AACpB,gBAAA,OAAO,EAAE,0BAA0B,GAAG,KAAK,CAAC;AACxC,oBAAA,MAAM,EAAE,CAAC;AACT,oBAAA,OAAO,EAAE,CAAC;AACV,oBAAA,SAAS,EAAE,yBAAyB;AACvC,iBAAA,CAAC,CAAC;aACN,CAAC;SACL,CAAC;AACL,KAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FAOQ,SAAS,EAAA,UAAA,EAAA,CAAA;kBA9CrB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,aAAa;AACvB,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;;;;AAkBT,IAAA,CAAA;AACD,oBAAA,UAAU,EAAE;wBACR,OAAO,CAAC,cAAc,EAAE;AACpB,4BAAA,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC;AACnB,gCAAA,SAAS,EAAE,eAAe;AAC1B,gCAAA,OAAO,EAAE,CAAC;AACb,6BAAA,CAAC,CAAC;4BACH,UAAU,CAAC,WAAW,EAAE;gCACpB,KAAK,CAAC,EAAC,SAAS,EAAE,yBAAyB,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC;gCACzD,OAAO,CAAC,0BAA0B,CAAC;6BACtC,CAAC;4BACF,UAAU,CAAC,WAAW,EAAE;AACpB,gCAAA,OAAO,EAAE,0BAA0B,GAAG,KAAK,CAAC;AACxC,oCAAA,MAAM,EAAE,CAAC;AACT,oCAAA,OAAO,EAAE,CAAC;AACV,oCAAA,SAAS,EAAE,yBAAyB;AACvC,iCAAA,CAAC,CAAC;6BACN,CAAC;yBACL,CAAC;AACL,qBAAA;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,IAAI,EAAE;AACF,wBAAA,OAAO,EAAE,WAAW;AACvB,qBAAA;iBACJ,CAAA;6FAGY,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAEG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,oBAAoB,EAAA,CAAA;sBAA5B,KAAK;gBAEG,oBAAoB,EAAA,CAAA;sBAA5B,KAAK;gBAEG,qBAAqB,EAAA,CAAA;sBAA7B,KAAK;gBAEG,qBAAqB,EAAA,CAAA;sBAA7B,KAAK;gBAEI,OAAO,EAAA,CAAA;sBAAhB,MAAM;gBAEiB,kBAAkB,EAAA,CAAA;sBAAzC,SAAS;uBAAC,WAAW,CAAA;;MA8Eb,KAAK,CAAA;AA4Cd,IAAA,WAAA,CAAmB,cAA8B,EAAU,EAAqB,EAAS,MAAqB,EAAA;AAA3F,QAAA,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;AAAU,QAAA,IAAE,CAAA,EAAA,GAAF,EAAE,CAAmB;AAAS,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAe;AAxCrG,QAAA,IAAU,CAAA,UAAA,GAAY,IAAI,CAAC;AAE3B,QAAA,IAAU,CAAA,UAAA,GAAW,CAAC,CAAC;AAMvB,QAAA,IAAQ,CAAA,QAAA,GAAW,WAAW,CAAC;AAE/B,QAAA,IAAqB,CAAA,qBAAA,GAAY,KAAK,CAAC;AAEvC,QAAA,IAAiB,CAAA,iBAAA,GAAY,KAAK,CAAC;AAEnC,QAAA,IAAoB,CAAA,oBAAA,GAAW,kBAAkB,CAAC;AAElD,QAAA,IAAoB,CAAA,oBAAA,GAAW,mBAAmB,CAAC;AAEnD,QAAA,IAAqB,CAAA,qBAAA,GAAW,gBAAgB,CAAC;AAEjD,QAAA,IAAqB,CAAA,qBAAA,GAAW,eAAe,CAAC;AAI/C,QAAA,IAAA,CAAA,OAAO,GAAsB,IAAI,YAAY,EAAE,CAAC;AAoB1D,QAAA,IAAE,CAAA,EAAA,GAAW,iBAAiB,EAAE,CAAC;KAJiF;IAMlH,QAAQ,GAAA;AACJ,QAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,SAAS,CAAC,QAAQ,IAAG;AAChF,YAAA,IAAI,QAAQ,EAAE;gBACV,IAAI,QAAQ,YAAY,KAAK,EAAE;AAC3B,oBAAA,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,oBAAA,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;AAC9B,iBAAA;AACI,qBAAA,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;AAC5B,oBAAA,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;AACxB,iBAAA;AACJ,aAAA;AACL,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,IAAG;AACvE,YAAA,IAAI,GAAG,EAAE;AACL,gBAAA,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,EAAE;AAClB,oBAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;AACxB,iBAAA;AACJ,aAAA;AACI,iBAAA;AACD,gBAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;AACxB,aAAA;AAED,YAAA,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;AAC3B,SAAC,CAAC,CAAC;KACN;IAED,eAAe,GAAA;QACX,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,WAAW,EAAE,CAAC;AACtB,SAAA;KACJ;AAED,IAAA,GAAG,CAAC,QAAmB,EAAA;QACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;QAEhF,IAAI,IAAI,CAAC,iBAAiB,EAAE;YACxB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;AAC3G,SAAA;AAED,QAAA,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;KAC1B;AAED,IAAA,MAAM,CAAC,OAAgB,EAAA;QACnB,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC;AAErC,QAAA,IAAI,KAAK,IAAI,IAAI,CAAC,qBAAqB,EAAE;AACrC,YAAA,KAAK,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACzD,SAAA;AAED,QAAA,IAAI,KAAK,IAAI,IAAI,CAAC,iBAAiB,EAAE;AACjC,YAAA,KAAK,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;AACjE,SAAA;AAED,QAAA,OAAO,KAAK,CAAC;KAChB;IAED,eAAe,CAAC,UAAqB,EAAE,OAAgB,EAAA;QACnD,IAAI,CAAC,UAAU,EAAE;AACb,YAAA,OAAO,KAAK,CAAC;AAChB,SAAA;AAED,QAAA,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,IAAG;AACxB,YAAA,QAAQ,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC,EAAE;SAChH,CAAC,IAAI,IAAI,CAAC;KACd;IAED,kBAAkB,GAAA;QACd,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AAC5B,YAAA,QAAO,IAAI,CAAC,OAAO,EAAE;AACjB,gBAAA,KAAK,SAAS;AACV,oBAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;oBAClC,MAAM;AAEN,gBAAA;AACI,oBAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;oBAClC,MAAM;AACT,aAAA;AACL,SAAC,CAAC,CAAC;KACN;AAED,IAAA,cAAc,CAAC,KAAK,EAAA;QAChB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAErC,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACd,OAAO,EAAE,KAAK,CAAC,OAAO;AACzB,SAAA,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;KAC3B;AAED,IAAA,gBAAgB,CAAC,KAAqB,EAAA;AAClC,QAAA,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,EAAE;AAC5B,YAAA,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAEhE,IAAI,IAAI,CAAC,UAAU,EAAE;gBACjB,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChH,aAAA;AACJ,SAAA;KACJ;AAED,IAAA,cAAc,CAAC,KAAqB,EAAA;AAChC,QAAA,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE;AAC1B,YAAA,IAAI,IAAI,CAAC,UAAU,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBACvD,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;AAC5D,aAAA;AACJ,SAAA;KACJ;IAED,WAAW,GAAA;AACP,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACpB,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AACpD,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,UAAU,CAAC;YACpC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7C,IAAI,SAAS,GAAG,EAAE,CAAC;AACnB,YAAA,KAAK,IAAI,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE;gBACrC,IAAI,eAAe,GAAG,EAAE,CAAC;gBACzB,KAAK,IAAI,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE;AAChD,oBAAA,eAAe,IAAI,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,GAAG,cAAc,CAAC;AACjG,iBAAA;AACD,gBAAA,SAAS,IAAI,CAAA;oDACuB,UAAU,CAAA;AAC3B,iCAAA,EAAA,IAAI,CAAC,EAAE,CAAA;6BACb,eAAe,CAAA;;;iBAG3B,CAAA;AACJ,aAAA;AAED,YAAA,IAAI,CAAC,YAAY,CAAC,SAAS,GAAG,SAAS,CAAC;AAC3C,SAAA;KACJ;IAED,YAAY,GAAA;QACR,IAAI,IAAI,CAAC,YAAY,EAAE;YACnB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAC7C,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;AAC5B,SAAA;KACJ;IAED,WAAW,GAAA;QACP,IAAI,IAAI,CAAC,mBAAmB,EAAE;AAC1B,YAAA,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,CAAC;AAC1C,SAAA;AAED,QAAA,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,UAAU,EAAE;YAC5C,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;AAC5D,SAAA;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;AACxB,YAAA,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;AACxC,SAAA;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;KACvB;;kGA5MQ,KAAK,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;sFAAL,KAAK,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,KAAA,EAAA,UAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,WAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EAgCG,aAAa,EAtDpB,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,WAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;KAOT,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,0rBAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAjFQ,SAAS,EAkFN,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,UAAA,EAAA,sBAAA,EAAA,sBAAA,EAAA,uBAAA,EAAA,uBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA;QACR,OAAO,CAAC,gBAAgB,EAAE;YACtB,UAAU,CAAC,gBAAgB,EAAE;AACzB,gBAAA,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC;aAC9B,CAAC;SACL,CAAC;AACL,KAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FAQQ,KAAK,EAAA,UAAA,EAAA,CAAA;kBAxBjB,SAAS;YACI,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,SAAS,EACT,QAAA,EAAA,CAAA;;;;;;;AAOT,IAAA,CAAA,EACW,UAAA,EAAA;wBACR,OAAO,CAAC,gBAAgB,EAAE;4BACtB,UAAU,CAAC,gBAAgB,EAAE;AACzB,gCAAA,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC;6BAC9B,CAAC;yBACL,CAAC;AACL,qBAAA,EAAA,eAAA,EACgB,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI,EAE/B,IAAA,EAAA;AACF,wBAAA,OAAO,EAAE,WAAW;AACvB,qBAAA,EAAA,MAAA,EAAA,CAAA,0rBAAA,CAAA,EAAA,CAAA;iKAIQ,GAAG,EAAA,CAAA;sBAAX,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,qBAAqB,EAAA,CAAA;sBAA7B,KAAK;gBAEG,iBAAiB,EAAA,CAAA;sBAAzB,KAAK;gBAEG,oBAAoB,EAAA,CAAA;sBAA5B,KAAK;gBAEG,oBAAoB,EAAA,CAAA;sBAA5B,KAAK;gBAEG,qBAAqB,EAAA,CAAA;sBAA7B,KAAK;gBAEG,qBAAqB,EAAA,CAAA;sBAA7B,KAAK;gBAEG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEI,OAAO,EAAA,CAAA;sBAAhB,MAAM;gBAEiB,kBAAkB,EAAA,CAAA;sBAAzC,SAAS;uBAAC,WAAW,CAAA;gBAEU,SAAS,EAAA,CAAA;sBAAxC,eAAe;uBAAC,aAAa,CAAA;;MAoLrB,WAAW,CAAA;;wGAAX,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;yGAAX,WAAW,EAAA,YAAA,EAAA,CApNX,KAAK,EAhGL,SAAS,CAAA,EAAA,OAAA,EAAA,CAgTR,YAAY,EAAC,YAAY,CAAA,EAAA,OAAA,EAAA,CAhN1B,KAAK,EAiNE,YAAY,CAAA,EAAA,CAAA,CAAA;AAGnB,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,YAJX,CAAC,YAAY,EAAC,YAAY,CAAC,EACpB,YAAY,CAAA,EAAA,CAAA,CAAA;2FAGnB,WAAW,EAAA,UAAA,EAAA,CAAA;kBALvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAC,YAAY,CAAC;AACpC,oBAAA,OAAO,EAAE,CAAC,KAAK,EAAC,YAAY,CAAC;AAC7B,oBAAA,YAAY,EAAE,CAAC,KAAK,EAAC,SAAS,CAAC;iBAClC,CAAA;;;AC7WD;;AAEG;;;;"}