1"use strict";(self.webpackChunkclient_panel=self.webpackChunkclient_panel||[]).push([[7391],{77391:(y,d,a)=>{a.d(d,{_:()=>M});var t=a(54438),h=a(60177),f=a(65136);const _=["trigger"],C=["tooltip"];function T(s,m){1&s&&t.nrm(0,"div",7)}function b(s,m){if(1&s&&(t.j41(0,"div",10),t.nrm(1,"ngx-contentful-rich-text",8),t.k0s()),2&s){const o=t.XpG(2);t.R7$(),t.Y8G("document",o.learnmoreText)}}function P(s,m){if(1&s&&(t.qex(0),t.nrm(1,"ngx-contentful-rich-text",8),t.DNE(2,b,2,1,"div",9),t.bVm()),2&s){const o=t.XpG();t.R7$(),t.Y8G("document",o.contentfulDoc),t.R7$(),t.Y8G("ngIf",o.learnmoreText)}}const w=["*",[["","tooltipBody",""]]],v=["*","[tooltipBody]"];let M=(()=>{class s{cdr;contentfulDoc;learnmoreText;placement="auto";delay=200;maxWidth=350;interactive=!0;raw=!1;trigger;tooltip;isVisible=!1;tooltipLeft=0;tooltipTop=0;currentPlacement="top";timeoutId;linkSetupTimeoutId=null;isHoveringTooltip=!1;constructor(o){this.cdr=o}ngAfterViewInit(){this.positionTooltip()}ngOnDestroy(){this.timeoutId&&clearTimeout(this.timeoutId),this.linkSetupTimeoutId&&(clearTimeout(this.linkSetupTimeoutId),this.linkSetupTimeoutId=null)}onTriggerMouseEnter(){this.timeoutId=setTimeout(()=>{this.showTooltip()},this.delay)}onTriggerMouseLeave(){this.timeoutId&&clearTimeout(this.timeoutId),this.interactive?setTimeout(()=>{this.isHoveringTooltip||this.hideTooltip()},100):this.hideTooltip()}onDocumentMouseOver(o){if(!this.interactive||!this.isVisible)return;const e=this.tooltip?.nativeElement;e&&e.contains(o.target)&&(this.isHoveringTooltip=!0)}onDocumentMouseOut(o){if(!this.interactive||!this.isVisible)return;const e=this.tooltip?.nativeElement;e&&!e.contains(o.target)&&(this.isHoveringTooltip=!1,setTimeout(()=>{this.isHoveringTooltip||this.hideTooltip()},100))}onWindowResize(){this.isVisible&&this.positionTooltip()}showTooltip(){this.linkSetupTimeoutId&&(clearTimeout(this.linkSetupTimeoutId),this.linkSetupTimeoutId=null),this.isVisible=!0,this.cdr.detectChanges(),this.positionTooltip(),this.linkSetupTimeoutId=setTimeout(()=>{this.linkSetupTimeoutId=null,this.configureLinksToOpenInNewTab(),this.positionTooltip(),this.cdr.detectChanges()},0)}configureLinksToOpenInNewTab(){this.tooltip?.nativeElement&&this.tooltip.nativeElement.querySelectorAll("a").forEach(e=>{e.setAttribute("target","_blank"),e.setAttribute("rel","noopener noreferrer")})}hideTooltip(){this.linkSetupTimeoutId&&(clearTimeout(this.linkSetupTimeoutId),this.linkSetupTimeoutId=null),this.isVisible=!1,this.isHoveringTooltip=!1,this.cdr.detectChanges()}getAutoPlacement(){if(!this.trigger?.nativeElement)return"top";const o=this.trigger.nativeElement.getBoundingClientRect(),e=window.innerWidth,n=window.innerHeight,i=this.maxWidth,l=o.top,c=n-o.bottom,p=o.left,u=e-o.right;if(l>=208)return"top";if(c>=208)return"bottom";if(u>=i+8)return"right";if(p>=i+8)return"left";const g=[{placement:"top",space:l},{placement:"bottom",space:c},{placement:"right",space:u},{placement:"left",space:p}];return g.sort((E,I)=>I.space-E.space),g[0].placement}positionTooltip(){if(!this.trigger?.nativeElement||!this.tooltip?.nativeElement)return;const o=this.trigger.nativeElement.getBoundingClientRect(),e=this.tooltip.nativeElement.getBoundingClientRect(),n=window.pageYOffset||document.documentElement.scrollTop,i=window.pageXOffset||document.documentElement.scrollLeft;this.currentPlacement="auto"===this.placement?this.getAutoPlacement():this.placement;let r=0,l=0;switch(this.currentPlacement){case"top":r=o.left+o.width/2-e.width/2+i,l=o.top-e.height-8+n;break;case"bottom":r=o.left+o.width/2-e.width/2+i,l=o.bottom+8+n;break;case"left":r=o.left-e.width-8+i,l=o.top+o.height/2-e.height/2+n;break;case"right":r=o.right+8+i,l=o.top+o.height/2-e.height/2+n}const c=window.innerWidth,p=window.innerHeight;r<8&&(r=8),r+e.width>c-8&&(r=c-e.width-8),l<8&&(l=8),l+e.height>p-8&&(l=p-e.height-8),this.tooltipLeft=r,this.tooltipTop=l}static \u0275fac=function(e){return new(e||s)(t.rXU(t.gRc))};static \u0275cmp=t.VBU({type:s,selectors:[["app-recotap-custom-tooltip"]],viewQuery:function(e,n){if(1&e&&(t.GBs(_,5),t.GBs(C,5)),2&e){let i;t.mGM(i=t.lsd())&&(n.trigger=i.first),t.mGM(i=t.lsd())&&(n.tooltip=i.first)}},hostBindings:function(e,n){1&e&&t.bIt("mouseenter",function(){return n.onTriggerMouseEnter()})("mouseleave",function(){return n.onTriggerMouseLeave()})("mouseover",function(r){return n.onDocumentMouseOver(r)},!1,t.EBC)("mouseout",function(r){return n.onDocumentMouseOut(r)},!1,t.EBC)("resize",function(){return n.onWindowResize()},!1,t.tSv)},inputs:{contentfulDoc:"contentfulDoc",learnmoreText:"learnmoreText",placement:"placement",delay:"delay",maxWidth:"maxWidth",interactive:"interactive",raw:"raw"},ngContentSelectors:v,decls:9,vars:22,consts:[[1,"tooltip-trigger"],["trigger",""],[1,"custom-tooltip"],["tooltip",""],["class","tooltip-arrow",4,"ngIf"],["id","recotap-tooltip-content",1,"tooltip-content"],[4,"ngIf"],[1,"tooltip-arrow"],[3,"document"],["class","learn-more-section",4,"ngIf"],[1,"learn-more-section"]],template:function(e,n){1&e&&(t.NAR(w),t.j41(0,"div",0,1),t.SdG(2),t.k0s(),t.j41(3,"div",2,3),t.DNE(5,T,1,0,"div",4),t.j41(6,"div",5),t.DNE(7,P,3,2,"ng-container",6),t.S
1dG(8,1),t.k0s()()),2&e&&(t.R7$(3),t.xc7("left",n.tooltipLeft,"px")("top",n.tooltipTop,"px")("max-width",n.maxWidth,"px"),t.AVh("show",n.isVisible)("top","top"===n.currentPlacement)("bottom","bottom"===n.currentPlacement)("left","left"===n.currentPlacement)("right","right"===n.currentPlacement)("interactive",n.interactive)("raw",n.raw),t.R7$(2),t.Y8G("ngIf",!n.raw),t.R7$(2),t.Y8G("ngIf",n.contentfulDoc))},dependencies:[h.bT,f.Mq],styles:[".tooltip-trigger[_ngcontent-%COMP%]{display:inline-block;cursor:pointer}.custom-tooltip[_ngcontent-%COMP%]{position:fixed;z-index:9999;background:#fff;margin-right:12px;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #00000026;max-width:350px;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;pointer-events:none}.custom-tooltip.show[_ngcontent-%COMP%]{opacity:1;visibility:visible}.modal:not(.show)[_nghost-%COMP%] .custom-tooltip[_ngcontent-%COMP%], .modal:not(.show) [_nghost-%COMP%] .custom-tooltip[_ngcontent-%COMP%]{opacity:0!important;visibility:hidden!important;display:none!important}.custom-tooltip.interactive[_ngcontent-%COMP%]{pointer-events:auto}.custom-tooltip.raw[_ngcontent-%COMP%]{background:transparent;border:none;box-shadow:none}.custom-tooltip.raw[_ngcontent-%COMP%] .tooltip-content[_ngcontent-%COMP%]{padding:0}.custom-tooltip[_ngcontent-%COMP%] .tooltip-arrow[_ngcontent-%COMP%]{position:absolute;width:0;height:0;border:6px solid transparent}.custom-tooltip[_ngcontent-%COMP%] .tooltip-content[_ngcontent-%COMP%]{font-size:12px!important;padding:12px;color:#525252!important;text-align:left!important;text-transform:none!important}.custom-tooltip[_ngcontent-%COMP%] .tooltip-content[_ngcontent-%COMP%] p{margin-top:0!important;margin-bottom:0!important;font-size:12px!important;color:#525252!important;text-align:left!important;text-transform:none!important}.custom-tooltip[_ngcontent-%COMP%] .tooltip-content[_ngcontent-%COMP%] .tooltip-content p{margin-top:0!important;margin-bottom:0!important;font-size:12px!important;color:#525252!important;text-align:left!important;text-transform:none!important}.custom-tooltip[_ngcontent-%COMP%] .tooltip-content[_ngcontent-%COMP%] ngx-contentful-rich-text p{margin-top:0!important;margin-bottom:0!important;font-size:12px!important;color:#525252!important;text-align:left!important;text-transform:none!important}.custom-tooltip[_ngcontent-%COMP%] .tooltip-content[_ngcontent-%COMP%] a[target=_blank][_ngcontent-%COMP%]{text-decoration:underline}.custom-tooltip.top[_ngcontent-%COMP%] .tooltip-arrow[_ngcontent-%COMP%]{bottom:-6px;left:50%;transform:translate(-50%);border-top-color:#e0e0e0;border-bottom:none}.custom-tooltip.bottom[_ngcontent-%COMP%] .tooltip-arrow[_ngcontent-%COMP%]{top:-6px;left:50%;transform:translate(-50%);border-bottom-color:#e0e0e0;border-top:none}.custom-tooltip.left[_ngcontent-%COMP%] .tooltip-arrow[_ngcontent-%COMP%]{right:-6px;top:50%;transform:translateY(-50%);border-left-color:#e0e0e0;border-right:none}.custom-tooltip.right[_ngcontent-%COMP%] .tooltip-arrow[_ngcontent-%COMP%]{left:-6px;top:50%;transform:translateY(-50%);border-right-color:#e0e0e0;border-left:none}.custom-tooltip.dark[_ngcontent-%COMP%]{background:#333;border-color:#555;color:#fff}.custom-tooltip.dark.top[_ngcontent-%COMP%] .tooltip-arrow[_ngcontent-%COMP%]{border-top-color:#555}.custom-tooltip.dark.bottom[_ngcontent-%COMP%] .tooltip-arrow[_ngcontent-%COMP%]{border-bottom-color:#555}.custom-tooltip.dark.left[_ngcontent-%COMP%] .tooltip-arrow[_ngcontent-%COMP%]{border-left-color:#555}.custom-tooltip.dark.right[_ngcontent-%COMP%] .tooltip-arrow[_ngcontent-%COMP%]{border-right-color:#555}.learn-more-section[_ngcontent-%COMP%]{margin-top:4px!important}.learn-more-section[_ngcontent-%COMP%] a{color:#3b82f6;text-decoration:underline}.learn-more-section[_ngcontent-%COMP%] a:hover{color:#2563eb}"]})}return s})()}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.