/*
The code below is generated from salesforce but modified in the following ways:
  * Only the javascript inside the second <script> tag in the provided salesforce code is copy pasted
  * CSS is not copied in
  * First <script> tag loading in the file from the CDN is not copied in
  * The only custom code added here is `let embedded_svc = window.embedded_svc` in the first line of the `initESW` function
	  and the wrapper exported function `initializeSalesforceWebChatForProd`
*/

export function initializeSalesforceWebchatForProd(embedded_svc) {
    var initESW = function (gslbBaseURL) {
        let embedded_svc = window.embedded_svc;
        embedded_svc.settings.displayHelpButton = true; //Or false
        embedded_svc.settings.language = ""; //For example, enter 'en' or 'en-US'

        //embedded_svc.settings.defaultMinimizedText = '...'; //(Defaults to Chat with an Expert)
        //embedded_svc.settings.disabledMinimizedText = '...'; //(Defaults to Agent Offline)

        //embedded_svc.settings.loadingText = ''; //(Defaults to Loading)
        //embedded_svc.settings.storageDomain = 'yourdomain.com'; //(Sets the domain for your deployment so that visitors can navigate subdomains during a chat session)

        // Settings for Chat
        //embedded_svc.settings.directToButtonRouting = function(prechatFormData) {
        // Dynamically changes the button ID based on what the visitor enters in the pre-chat form.
        // Returns a valid button ID.
        //};
        //embedded_svc.settings.prepopulatedPrechatFields = {}; //Sets the auto-population of pre-chat form fields
        //embedded_svc.settings.fallbackRouting = []; //An array of button IDs, user IDs, or userId_buttonId
        //embedded_svc.settings.offlineSupportMinimizedText = '...'; //(Defaults to Contact Us)

        embedded_svc.settings.enabledFeatures = ["LiveAgent"];
        embedded_svc.settings.entryFeature = "LiveAgent";

        embedded_svc.init(
            "https://safelite2.my.salesforce.com",
            "https://safelite2.my.salesforce-sites.com/chat",
            gslbBaseURL,
            "00D3t000004nvsT",
            "Sales_Central_Snap_in",
            {
                baseLiveAgentContentURL:
                    "https://c.la13-core2.sfdc-lywfpd.salesforceliveagent.com/content",
                deploymentId: "5723t0000008wWB",
                buttonId: "5733t000000D90z",
                baseLiveAgentURL: "https://d.la13-core2.sfdc-lywfpd.salesforceliveagent.com/chat",
                eswLiveAgentDevName:
                    "EmbeddedServiceLiveAgent_Parent04I3t000000Cq0SEAS_188de1871ea",
                isOfflineSupportEnabled: false,
            }
        );
    };

    if (!window.embedded_svc) {
        var s = document.createElement("script");
        s.setAttribute("src", "https://safelite2.my.salesforce.com/embeddedservice/5.0/esw.min.js");
        s.onload = function () {
            initESW(null);
        };
        document.body.appendChild(s);
    } else {
        initESW("https://service.force.com");
    }
}
