cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
315
Views
0
Helpful
1
Replies

Custom Element added twice into DOM

uzair.anwar
Level 1
Level 1

This my desktop layout file,

 

{
    "version": "0.0.6",
    "appTitle": "Webex Contact Center Desktop",
    "logo": "",
    "dragDropEnabled": false,
    "notificationTimer": 8,
    "maximumNotificationCount": 3,
    "browserNotificationTimer": 8,
    "wxmConfigured": false,
    "area": {
      "header": {
        "id": "dw-header",
        "widgets": {
          "comp1": {
            "comp": "agentx-custom-desktop1",
             "script":"http://localhost:8080/dist/EfCustomWebComponentBundle.js",
              "attributes": {
              "widgetName":"Crm_integration_by_EF",
              "widgetProvider":"Expertflow",
              "outDialAni":"+12068130579",
              "crmLibPath":"./CrmFile/SAP_WebExCC_Integration.js",
              "teamId": "$STORE.agent.teamName",
              "agentName":"$STORE.agent.agentName",
              "selectedTaskDetail":"$STORE.agentContact.taskSelected",
              "agentId":"$STORE.agent.agentId",
              "selectedTask":"$STORE.agentContact.selectedTaskId",
              "organizationID":"<OutDialAniValue>",
              "entryPointId":"57f3a184-a8a9-40af-840d-d45fb4e1ee33",
              "crmDefaultEntityName" : "Accounts",
              "crmEntityNames":"Contacts|Accounts|Leads",
              "isAdvancedScreenpopEnabled" : "false",
              "noMatchEntity":"contact"
              }
          }
        },
        "layout": {
          "areas": [["comp1"]],
          "size": { "cols": [1], "rows": [1] }
        }
      },
      "panel": {
        "comp": "md-tabs",
        "attributes": { "class": "widget-tabs" },
        "children": [
          {
            "comp": "md-tab",
            "attributes": { "slot": "tab", "class": "widget-pane-tab" },
            "children": [
              { "comp": "slot", "attributes": { "name": "IVR_TRANSCRIPT_TAB" } }
            ],
            "visibility": "IVR_TRANSCRIPT"
          },
          {
            "comp": "md-tab-panel",
            "attributes": { "slot": "panel", "class": "widget-pane" },
            "children": [
              { "comp": "slot", "attributes": { "name": "IVR_TRANSCRIPT" } }
            ],
            "visibility": "IVR_TRANSCRIPT"
          },
          {
            "comp": "md-tab",
            "attributes": { "slot": "tab" },
            "children": [
              { "comp": "slot", "attributes": { "name": "WXM_JOURNEY_TAB" } }
            ],
            "visibility": "WXM_JOURNEY"
          },
          {
            "comp": "md-tab-panel",
            "attributes": { "slot": "panel", "class": "widget-pane" },
            "children": [
              {
                "comp": "agentx-wc-cloudcherry-widget",
                "properties": {
                  "userModel": "$STORE.app.userModel",
                  "spaceId": "",
                  "metricsId": "",
                  "teamId": "$STORE.agent.teamName",
                  "ani": "$STORE.agentContact.taskSelected.ani",
                  "isDarkMode": "$STORE.app.darkMode"
                },
                "wrapper": {
                  "title": "Customer Experience Journey",
                  "maximizeAreaName": "app-maximize-area"
                }
              }
            ],
            "visibility": "WXM_JOURNEY"
          },
          {
            "comp": "md-tab",
            "attributes": { "slot": "tab", "class": "widget-pane-tab" },
            "children": [
              { "comp": "slot", "attributes": { "name": "CONTACT_HISTORY_TAB" } }
            ]
          },
          {
            "comp": "md-tab-panel",
            "attributes": { "slot": "panel", "class": "widget-pane" },
            "children": [
              { "comp": "slot", "attributes": { "name": "CONTACT_HISTORY" } }
            ]
          },
          {
            "comp": "md-tab",
            "attributes": { "slot": "tab", "class": "widget-pane-tab" },
            "children": [
              { "comp": "slot", "attributes": { "name": "SCREEN_POP_TAB" } }
            ],
            "visibility": "SCREEN_POP"
          },
          {
            "comp": "md-tab-panel",
            "attributes": { "slot": "panel", "class": "widget-pane" },
            "children": [
              { "comp": "slot", "attributes": { "name": "SCREEN_POP" } }
            ],
            "visibility": "SCREEN_POP"
          }
        ]
      },
      "navigation": [
        {
          "nav": {
            "label": "Customer Experience Analytics",
            "icon": "/app/images/wxm.bcd45cc3.svg",
            "iconType": "other",
            "navigateTo": "wxm-metrics",
            "align": "top"
          },
          "page": {
            "id": "wxm-metrics",
            "widgets": {
              "comp1": {
                "comp": "agentx-wc-cloudcherry-widget",
                "attributes": {
                  "metrics": true
                },
                "properties": {
                  "userModel": "$STORE.app.userModel",
                  "spaceId": "",
                  "metricsId": "",
                  "teamId": "$STORE.agent.teamName",
                  "isDarkMode": "$STORE.app.darkMode"
                }
              }
            },
            "layout": {
              "areas": [["comp1"]],
              "size": {
                "cols": [1],
                "rows": [1]
              }
            }
          },
          "visibility": "WXM_METRICS"
        }
      ]
    }
  }

 


I noticed that my custom component is being added twice in the DOM.
Screenshot (11).png

As a result:

  • The connectedCallback method of my custom component is triggered twice.
  • The attributeChangedCallback method is also called multiple times.

I want to understand why this is happening and why my custom component is being added twice in the DOM.

1 Reply 1

Janos Benyovszki
Cisco Employee
Cisco Employee

@uzair.anwar it might be better to open a Support Request for this issue with all the details. Would you mind opening one on https://developer.webex.com/support ? Thanks