/* eslint-disable */ (function () { let source, isMicroSite, activationStatus, enterpriseNumber; let secondIframeLoaded = false, onceClickedOnSecFrame = false, windowIframeBody; try { if ( window && window.parent && window.parent.__INITIAL_STATE__ && window.parent.__INITIAL_STATE__.homeReducer && window.parent.__INITIAL_STATE__.homeReducer.data ) { let homeReducerData = window.parent.__INITIAL_STATE__.homeReducer.data; isMicroSite = true; //ask microsite enterpriseNumber = homeReducerData.enterpriseInfo ? homeReducerData.enterpriseInfo.businessNumber : homeReducerData.businessNumber; source = 6; activationStatus = homeReducerData.activationStatus; //var businessName = homeReducerData.name; } } catch (e) { log(e); } if (!document.getElementsByClassName) { document.getElementsByClassName = function (className) { return this.querySelectorAll("." + className); }; Element.prototype.getElementsByClassName = document.getElementsByClassName; } const CONSIDER_MIN_WIDTH = { "https://grabercustomstructures.com" : true } let bfi; let totalWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; if (CONSIDER_MIN_WIDTH[window?.origin]) { let widths = [ window.innerWidth, document.documentElement?.clientWidth, document.body?.clientWidth ].filter(Boolean); // Removes undefined or falsy values totalWidth = Math.min(...widths); } let totalHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight; let tries = 1; let extensionInterval; let env; let windowIframe; window.be_webchat = null; function playBubbleSound() { let context, source = "https://d3cnqzq0ivprch.cloudfront.net/prod/media/notification-sound.mp3"; try { window.AudioContext = window.AudioContext || window.webkitAudioContext; context = new AudioContext(); let request = new XMLHttpRequest(); request.open("GET", source, true); request.responseType = "arraybuffer"; request.onload = function () { context.decodeAudioData( request.response, function (buffer) { let source = context.createBufferSource(); source.buffer = buffer; source.connect(context.destination); source.start(0); context.resume(); }, function (e) { console.log("error", e); } ); }; request.send(); } catch (e) { if (/Edge\/|Trident\/|MSIE /.test(navigator.userAgent)) { let audio = document.createElement("audio"); audio.autoplay = true; audio.src = source; audio.play(); } } } function checkIsAgentPreview (isPreview, widgetAgent) { return (isPreview === 1 || isPreview === "1") && widgetAgent.length > 0; }; function getGoodBot(type) { const goodBots = [ "facebookexternalhit", "Facebot", "Googlebot", "Google", "LinkedInBot", ]; const ua = navigator.userAgent; let isGoodBots = false; let botName = ""; for (let i = 0; i < goodBots.length; i++) { const bot = goodBots[i]; if (ua.indexOf(bot) > -1) { isGoodBots = true; botName = bot.toLowerCase(); break; } } if (type == "isGoodBot") { return isGoodBots; } else { botName = botName != "" ? botName : "facebook"; botName = botName.indexOf("face") > -1 ? "facebook" : botName; botName = botName.indexOf("linked") > -1 ? "linked-in" : botName; return botName; } } function initIframe() { let bfdiv = document.getElementById("bf-revz-widget-" + window.wid) || document.getElementById("bf-revz-widget-" + "0" + window.wid); if (!bfdiv) { tries++; if (tries > 50) { return false; } setTimeout(initIframe, 500); return; } if (!bfdiv.firstChild) { bfdiv.appendChild(bfi); } else if (bfdiv.firstChild && bfdiv.firstChild.nodeName != "IFRAME") { bfdiv.insertBefore(bfi, bfdiv.firstChild); } } let winHeight = 100; let winWidth = "431px"; if (window.innerHeight < 100) { winHeight = window.innerHeight; } if (CONSIDER_MIN_WIDTH[window?.origin]) { if (totalWidth < 500) { winWidth = "100%"; } } else { if (window.innerWidth < 500) { winWidth = "100%"; } } window.addEventListener("resize", function () { if (window.innerHeight < 727) { winHeight = window.innerHeight; } else { winHeight = 773; } }); const openWebchatFromOutside = (objFromClient) => { const firstIframe = document.getElementById("bewebchat"); const secondIframe = document.getElementById("window-iframe"); firstIframe.contentWindow.postMessage( { type: "post-message-from-outside", clientObj: objFromClient, beWebchatWindowObj: JSON.stringify(window.be_webchat), isWidgetAlignLeft: window.isWidgetAlignLeft, mFullView: window.mFullView, isPreview: window.isPreview, widgetAgent: JSON.stringify(window.widgetAgent), draftSessionId: window.draftSessionId }, "*" ); secondIframe.contentWindow.postMessage( { type: "post-message-from-outside-chat", clientObj: objFromClient, beWebchatWindowObj: JSON.stringify(window.be_webchat), isWidgetAlignLeft: window.isWidgetAlignLeft, locale: window.locale, mFullView: window.mFullView, isPreview: window.isPreview, widgetAgent: JSON.stringify(window.widgetAgent), draftSessionId: window.draftSessionId }, "*" ); }; window.onmessage = function (e) { if (e.data && e.data.split) { const isAgentPreview = checkIsAgentPreview(window.isPreview, window.widgetAgent); let dataReceivedSplit = e.data.split("***"); let dataReceived = dataReceivedSplit[0]; let widthReceived = dataReceivedSplit[1]; if (totalWidth < 960) { widthReceived = "drawer"; } if (dataReceived == "icon-clicked") { if (!secondIframeLoaded) { if (!onceClickedOnSecFrame) { loadNewIframe(); } } document.getElementById("bewebchat").style.height = isAgentPreview ? "70px" : "80px"; document.getElementById("bewebchat").style.width = isAgentPreview ? "200px" : "70px"; if (widthReceived == "floating") { document .getElementById("window-iframe") .setAttribute( "style", `-webkit-overflow-scrolling: touch; visibility: visible; opacity: 1; ${window.isWidgetAlignLeft ? "left:20px" : "right:20px"}; bottom:${isAgentPreview ? "0" : "20px"}; position:fixed; overflow:hidden; width:${winWidth}; z-index:9999998; border: 0; height: ${(isAgentPreview ? 90 : winHeight) + "%"}; ` ); } else { document .getElementById("window-iframe") .setAttribute( "style", `-webkit-overflow-scrolling: touch; visibility: visible; opacity: 1; z-index: 9999999; ${window.isWidgetAlignLeft ? "left:0px" : "right:0px"}; bottom:0px; position:fixed; overflow:hidden; width:${winWidth}; height: 100%; border: 0;` ); } window.be_webchat = { ...window.be_webchat, windowOpened: true, }; if(isAgentPreview) { window.dispatchEvent(new CustomEvent("webchat:opened", { detail: true })); } } else if (dataReceived == "icon-closed") { let wid = "20px"; if (totalWidth < 960) { wid = "20px"; } let element = document.getElementById("window-iframe"); element.style.height = 0; secondIframeLoaded = false; window.be_webchat = { ...window.be_webchat, windowOpened: false, }; if(isAgentPreview){ window.dispatchEvent(new CustomEvent("webchat:closed", { detail: false })); } } else if (dataReceived == "getwidth") { e.source.postMessage( { width: totalWidth, height: totalHeight, src: "birdeye", updateValFromParent: window.update, }, "*" ); } else if (dataReceived == "show-bubble") { bfi.setAttribute( "style", `-webkit-overflow-scrolling: touch; visibility: ${isAgentPreview ? "hidden" : "visible"}; opacity: 1; z-index: 9999999; ${window.isWidgetAlignLeft ? "left:20px" : "right:20px"}; bottom:20px; position:fixed; overflow:hidden; ${isAgentPreview ? "width:200px" : "width:340px"}; ${isAgentPreview ? "height:70px" : "height:227px"}; border: 0;` ); } else if (dataReceived == "hide-bubble") { bfi.setAttribute( "style", `-webkit-overflow-scrolling: touch; visibility: ${isAgentPreview ? "hidden" : "visible"}; opacity: 1; z-index: 9999999; ${window.isWidgetAlignLeft ? "left:20px" : "right:20px"}; bottom:20px; position:fixed; overflow:hidden; ${isAgentPreview ? "width:200px" : "width:70px"}; ${isAgentPreview ? "height:70px" : "height:80px"}; border: 0;` ); } else if (dataReceived == "get-parent-url") { if (!window.be_webchat) { window.be_webchat = { open: openWebchatFromOutside, }; } e.source.postMessage( { type: "put-parent-url", url: document.location.href, hostname: document.location.hostname, href: document.location.origin, src: "birdeye", isMicroSite: isMicroSite ? isMicroSite : false, frmMicrosite: frmMicrosite ? frmMicrosite : false, isWidgetAlignLeft: window.isWidgetAlignLeft ? window.isWidgetAlignLeft : false, mFullView: window.mFullView ? window.mFullView : false, enterpriseNumber: isMicroSite ? enterpriseNumber : null, width: totalWidth, height: totalHeight, src: "birdeye", updateValFromParent: window.update, bizDataResp: window.bizDataResp, beWebchatWindowObj: JSON.stringify(window.be_webchat), updatedBizData: true, locale: window.locale, isPreview: window.isPreview ? window.isPreview : 0, widgetAgent: window.widgetAgent ? window.widgetAgent : "", draftSessionId: window.draftSessionId }, "*" ); } else if ( dataReceived == "push-datalayer" && window && typeof window.dataLayer !== "undefined" ) { window.dataLayer.push(JSON.parse(dataReceivedSplit[1])); } else if ( dataReceived == "push-avbDatalayer" && window && typeof window.avbData !== "undefined" ) { window.avbData.push(JSON.parse(dataReceivedSplit[1])); } else if (dataReceived == "push-analytics") { try { try { const config = JSON.parse(dataReceivedSplit[1]); switch (config.googleAnalyticsVersion) { case "UA": if (ga && typeof ga == "function") { const nonInteractionObj = config.nonInteraction ? { nonInteraction: 1 } : null; ga( "send", "event", "webchat", config.action, config.actionLabel, nonInteractionObj ); } else { console.warn( "Webchat Analytics ReferenceError: ga is not defined" ); } break; case "GST": if (gtag && typeof gtag == "function") { const nonInteractionObj = config.nonInteraction ? { non_interaction: true } : {}; gtag("event", config.action, { event_category: "webchat", event_label: config.actionLabel.trim(), value: 1, ...nonInteractionObj, }); } else { console.warn( "Webchat Analytics ReferenceError: gtag is not defined" ); } break; } } catch (e) { console.warn("Webchat Analytics", e); } } catch (e) { console.warn("Webchat Analytics", e); } } else if (dataReceived == "be-custom-event-fire") { const customEventData = JSON.parse(dataReceivedSplit[1]); const be_event = new CustomEvent("beWebchatCustomEvent", { detail: customEventData, }); window.parent.document.dispatchEvent(be_event); } else if (dataReceived == "bubble-icon-sound") { playBubbleSound(); } } }; if (document.readyState === "complete") { extensionInterval = setInterval(function () { env = window.envObj ? window.envObj : {}; const bizResp = window.bizDataResp ? window.bizDataResp : {}; const locationListLen = bizResp ? bizResp["businessLocations"] && bizResp["businessLocations"].length : 0; if (Object.keys(env).length && locationListLen > 0) { getFirstIframeAndInit(env); } }, 100); } else { if (window.addEventListener) { // DOM2 standard window.addEventListener("load", windowOnloadHandler, false); } else if (window.attachEvent) { // Microsoft's precursor to it, IE8 and earlier window.attachEvent("onload", windowOnloadHandler); } else { // Some pre-1999 browser window.onload = windowOnloadHandler; } function windowOnloadHandler() { env = window.envObj ? window.envObj : {}; const bizResp = window.bizDataResp ? window.bizDataResp : {}; const locationListLen = bizResp ? bizResp["businessLocations"] && bizResp["businessLocations"].length : 0; if (locationListLen > 0) { getFirstIframeAndInit(env); } } } function getFirstIframeAndInit(env) { extensionInterval && clearInterval(extensionInterval); const isAgentPreview = checkIsAgentPreview(window.isPreview, window.widgetAgent); bfi = document.createElement("iframe"); bfi.name = "bfiframe"; bfi.id = "bewebchat"; bfi.loading = "lazy"; bfi.title = "Webchat widget"; bfi.src = env.protocol + env.domain + `/getBubbleContent?update=${window.update}&source=${window.source}&bNum=${window.bNum}&apikey=${window.apikey}&widgetApiVersion=${window.widgetApiVersion}&isWidgetAlignLeft=${window.isWidgetAlignLeft}&mFullView=${window.mFullView}&isPreview=${window.isPreview}&widgetAgent=${window.widgetAgent}&draftSessionId=${draftSessionId}`; bfi.setAttribute( "style", `-webkit-overflow-scrolling: touch; visibility: ${isAgentPreview ? "hidden" : "visible"}; opacity: 1; z-index: 9999999; ${window.isWidgetAlignLeft ? "left:20px" : "right:20px"}; bottom:20px; position:fixed; overflow:hidden; ${isAgentPreview ? "width:200px" : "width:70px"}; ${isAgentPreview ? "height:70px" : "height:80px"}; border:0` ); initIframe(); bfi.onload = loadNewIframe.bind(this); const firstIframeEl = document.getElementById("bewebchat"); firstIframeEl.style.colorScheme = "light"; } function appendSecondIframe() { secondIframeLoaded = true; onceClickedOnSecFrame = true; let bfdiv = document.getElementById("bf-revz-widget-" + window.wid) || document.getElementById("bf-revz-widget-" + "0" + window.wid); bfdiv.appendChild(windowIframe); const bodyEl = document.querySelector("#window-iframe").parentElement .parentElement; windowIframeBody = document.querySelector("#window-iframe") .contentDocument ? document.querySelector("#window-iframe").contentDocument.body : null; bodyEl.addEventListener("click", function (e) { let emojiEl = windowIframeBody && windowIframeBody.querySelector(".emoji-wrap"); if ( emojiEl && e.target !== document.querySelector("#window-iframe") ) { emojiEl.classList.add("hide-emoji"); emojiEl.style.display = "none"; } }); const secondIframeEl = document.getElementById("window-iframe"); secondIframeEl.style.colorScheme = "light"; } function loadNewIframe() { windowIframe = document.createElement("iframe"); windowIframe.name = "wciframe"; windowIframe.id = "window-iframe"; windowIframe.loading = "lazy"; windowIframe.title = "Webchat widget"; windowIframe.src = env.protocol + env.domain + `/getChatWindowContent?emailRequired=${window.emailRequired}&bNum=${window.bNum}&mobileRequired=${window.mobileRequired}&defaultCountryCode=${window.defaultCountryCode}&apikey=${window.apikey}&widgetApiVersion=${window.widgetApiVersion}&isMicroSite=${window.isMicroSite}&activationStatus=${window.activationStatus}&isWidgetAlignLeft=${window.isWidgetAlignLeft}&mFullView=${window.mFullView}&isPreview=${window.isPreview}&widgetAgent=${window.widgetAgent}&draftSessionId=${draftSessionId}`; windowIframe.setAttribute( "style", `-webkit-overflow-scrolling: touch; visibility: visible; opacity: 1; ${window.isWidgetAlignLeft ? "left:20px" : "right:20px"}; bottom:20px; position:fixed; overflow:hidden; width:346px; z-index:9999998; border: 0; height: 0px;` ); appendSecondIframe(); } })(); var wid = 3551372032; var update = 0; var soundOff = 1; var envObj = {"domain":"webchat.birdeye.com","protocol":"https://","isWidgetAlignLeft":false,"mFullView":false,"isPreview":0,"widgetAgent":""}; var emailRequired = 0; var isPreview = 0; var widgetAgent = ""; var defaultCountryCode = 0; var mobileRequired = 1; var apikey = "a4dbf79a71c19843fb1fef290537022d439a2c06ffafd6cb"; var widgetApiVersion = 2; var bNum = 210894; var update = 0; var isMicroSite = false; var frmMicrosite = false; var isWidgetAlignLeft = false; var mFullView = false; var activationStatus = false; var source = false; var bizDataResp = {"businessId":169818166451834,"chatTheme":"floating","chatIcon":"twocolored","chatIconValue":null,"bannerColor":"#F8F8F8","bannerTextColor":"#000000","btnColor":"#1976D2","btnTxtColor":"#FFFFFF","enableReplyInBusinessHr":1,"enableReplyPostBusinessHr":1,"autoReplyTxt":"Thank you for contacting NY Minimally Invasive Surgery! Someone from our team will reach out shortly.","replyTextPostBusinessHr":"Thank you for contacting us! We are currently out of business hours, but we’ll get back to you as soon as we can. Please provide your full name, best contact phone number and email. You may also contact us at 917-261-2061.😊","headerHeadline":"Hi there!","headerDescription":"Questions? We are here to help! Send us a message below.","thankyouMsgHeadline":null,"thankyouMsgDescription":null,"webChatOnlineClosingMessageHeader":"We will text you !","webChatOnlineClosingMessageBody":"We will follow up with you soon. You can always text us at [Business Phone] ","apiKey":null,"businessDomain":null,"onlineClosingMessageBody":null,"onlineWelcomeMessageHeader":null,"smb":false,"popupInterval":5,"microsite":0,"userProfile":[{"userProfileName":"","userProfileImage":""}],"businessLocations":[{"businessId":169824051054563,"location":"Queens, NY","businessSMSPhoneNumber":"(551) 465-5320","countryCode":"US","zipcode":"11102","address1":"30-16 30th Dr 3rd Floor","chatEnabled":true,"shortBusinessId":1205885,"businessAlias":"Queens, NY","businessName":"New York Minimally Invasive Surgery, PLLC","name":"New York Minimally Invasive Surgery, PLLC","city":"Queens","state":"NY","locationName":"New York Minimally Invasive Surgery, PLLC","latitude":40.76523199,"longitude":-73.9231,"emailId":"support@noobesity.com","phone":"(917) 261-2061"}],"chatBubble":"Have a question? We are here to help!","enableChatBubble":1,"enableChatBubbleSound":1,"chatIconColor":"#455B76","chatIconForeColor":"#FFFFFF","supportedCountryCodes":["US","PR","VI","MX","CA"],"businessName":"NY Minimally Invasive Surgery","widgetName":null,"enabled":1,"widgetConfigId":210894,"businessSMSPhoneNumber":null,"teams":null,"isLiveChatEnabled":false,"isChatbotEnabled":true,"enableGoogleAnalytics":false,"googleAnalyticsVersion":"","googleTrackingId":"","webChatOfflineClosingMessageHeader":"We will text you !","webChatOfflineClosingMessageBody":"We will follow up with you soon. You can always text us at [Business Phone].","liveChatOfflineClosingMessageHeader":"Text us!","liveChatOfflineClosingMessageBody":"The best way to get ahold of us is to text us [Business Texting Number].","liveChatOnlineClosingMessageHeader":"Text us!","liveChatOnlineClosingMessageBody":"The best way to get ahold of us is to text us [Business Texting Number].","liveChatOfflineWelcomeMessage":"We're closed right now but we got your message. We'll text you on your number when we're back!","liveChatOnlineWelcomeMessage":"Give us a moment while we look for someone available to help you.","installed":1,"websites":["https%3A//nymis.com"],"statusUpdateOn":"2026-04-19T03:01:16.000+00:00","liveChatOnlineTextMessage":"Thank you for contacting [Business Name]! Someone from our team will reach out shortly.","liveChatOfflineTextMessage":"Thank you for contacting [Business Name]! We are currently closed, but we’ll text you when we’re back!","locationHierarchy":null,"externalId":210894,"allLocationDisabled":0,"emailMandatory":false,"customFields":null,"disclaimer":"By sending this message, you expressly consent to receive communications from us. You may opt out at any time.","disclaimerLinks":[],"autoDetectLocationEnabled":true,"disclaimerSelectionStatus":0,"robinInsideBusinessHours":null,"robinOutsideBusinessHours":null,"enablePrechatForm":1,"prechatFormInsideBusinessHours":1,"prechatFormOutsideBusinessHours":1,"chatbotHours":null,"timerDisplay":1,"timerSeconds":180,"mobileView":"fullView","widgetAgent":[],"fallbackMessage":null,"accountType":3,"businessOpen":false,"locale":null,"fields":null,"bubbleBGColor":"#F8F8F8"}; var locale = "en"; var draftSessionId = null;