{"version":3,"sources":["discourse/initializers/theme-field-289-common-html-script-1.js"],"names":["window","define","_exports","_pluginApi","Object","defineProperty","value","default","require","getObjectForTheme","_default","name","after","initialize","withPluginApi","api","SOBOT_BASE","SOBOT_BASE_ANON","encodeURIComponent","JSON","stringify","FIELD","d5Source","email","identity","teamName","teamId","serviceLevel","memberRole","async","updateSobotLink","link","document","querySelectorAll","forEach","el","i","remove","getElementById","parentElement","body","appendChild","createElement","id","target","rel","className","title","setAttribute","href","innerHTML","ensureSobotLink","user","getCurrentUser","cf","custom_fields","customerFields","String","parts","external_id","push","uname","username","join","buildSobotUrl","ajax","fetchUserEmail","e","onPageChange"],"mappings":"AAAI,WAAYA,QAChBC,OAAO,uEAAwE,CAAC,UAAW,6BAA6B,SAAUC,EAAUC,GAC1I;AAEAC,OAAOC,eAAeH,EAAU,aAAc,CAC5CI,OAAO,IAETJ,EAASK,aAAU;AACFC,QAAQ,sCAAsCC,kBAAkB;AAEjF,IAAIC,EAAW,CACbC,KAAM,uCACNC,MAAO,iBACPC,cACE,EAAIV,EAAWW,eAAe,OAAOC,IACnC,MACMC,EAAa,oFACbC,EAAkBD,EAAa,oBAAsBE,mBAAmBC,KAAKC,UAAU,CAC3F,mCAAoC,WAEhCC,EAAQ,CACZC,SAAU,mCACVC,MAAO,mCACPC,SAAU,mCACVC,SAAU,mCACVC,OAAQ,mCACRC,aAAc,mCACdC,WAAY;AA2EdC,eAAeC,IACb,MAAMC,EA1ER,WACEC,SAASC,iBAAiB,uBAAuBC,SAAQ,SAAUC,EAAIC,GACjEA,EAAI,GACND,EAAGE,QAEP;AACA,IAAIN,EAAOC,SAASM,eAAe;AAenC,OAdKP,EAWMA,EAAKQ,gBAAkBP,SAASQ,MACzCR,SAASQ,KAAKC,YAAYV,IAX1BA,EAAOC,SAASU,cAAc,KAC9BX,EAAKY,GAAK,qBACVZ,EAAKa,OAAS,SACdb,EAAKc,IAAM,sBACXd,EAAKe,UAAY,oBACjBf,EAAKgB,MAAQ,cACbhB,EAAKiB,aAAa,aAAc,eAChCjB,EAAKkB,KAAOhC,EACZc,EAAKmB,UAAY,scACjBlB,SAASQ,KAAKC,YAAYV,IAIrBA,CACT,CAoDeoB,GACPC,EAAOrC,EAAIsC;AACjB,GAAKD,EAIL,IACErB,EAAKkB,KAnDT,SAAuBG,EAAM7B,GAC3B,MAAM+B,EAAKF,EAAKG,eAAiB,CAAC,EAC5BC,EAAiB,CACrB,CAACnC,EAAMC,UAAW;AAEhBC,IACFiC,EAAenC,EAAME,OAASkC,OAAOlC,IAEnC+B,EAAG9B,WACLgC,EAAenC,EAAMG,UAAYiC,OAAOH,EAAG9B,WAEzB,SAAhB8B,EAAG9B,UACD8B,EAAG7B,WACL+B,EAAenC,EAAMI,UAAYgC,OAAOH,EAAG7B,WAEzC6B,EAAG5B,SACL8B,EAAenC,EAAMK,QAAU+B,OAAOH,EAAG5B,SAEvC4B,EAAG3B,eACL6B,EAAenC,EAAMM,cAAgB8B,OAAOH,EAAG3B,eAE7C2B,EAAG1B,aACL4B,EAAenC,EAAMO,YAAc6B,OAAOH,EAAG1B,eAG/C4B,EAAenC,EAAMI,UAAY,GACjC+B,EAAenC,EAAMK,QAAU,GAC/B8B,EAAenC,EAAMM,cAAgB,GACrC6B,EAAenC,EAAMO,YAAc;AAErC,MAAM8B,EAAQ,CAAC,mBAAqBxC,mBAAmBC,KAAKC,UAAUoC;AAClEJ,EAAKO,aACPD,EAAME,KAAK,aAAe1C,mBAAmBuC,OAAOL,EAAKO;AAE3D,MAAME,EAAQT,EAAKzC,MAAQyC,EAAKU;AAOhC,OANID,GACFH,EAAME,KAAK,SAAW1C,mBAAmB2C,IAEvCtC,GACFmC,EAAME,KAAK,SAAW1C,mBAAmBK,IAEpCP,EAAa,IAAM0C,EAAMK,KAAK,IACvC,CASgBC,CAAcZ,QA1D9BvB,eAA8BuB,GAC5B,MAAMa,KACJA,GACEzD,QAAQ;AAEZ,aADmByD,EAAK,MAAQ/C,mBAAmBkC,EAAKU,UAAY,iBACxDvC,KACd,CAoD0C2C,CAAed,GACvD,CAAE,MAAOe,GAAI,MALXpC,EAAKkB,KAAOhC,CAMhB,CACAF,EAAIqD,aAAatC,GACjBA,GAAiB,GAErB;AAEF5B,EAASK,QAAUG,CACrB","sourceRoot":"theme-36/","sourcesContent":["if ('define' in window) {\ndefine(\"discourse/theme-36/initializers/theme-field-289-common-html-script-1\", [\"exports\", \"discourse/lib/plugin-api\"], function (_exports, _pluginApi) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const settings = require(\"discourse/lib/theme-settings-store\").getObjectForTheme(36);\n  const themePrefix = key => `theme_translations.36.${key}`;\n  var _default = {\n    name: \"theme-field-289-common-html-script-1\",\n    after: \"inject-objects\",\n    initialize() {\n      (0, _pluginApi.withPluginApi)(\"0.8\", api => {\n        const SOBOT_SYSNUM = \"90c703483a764a038ed95e0b108558f3\";\n        const SOBOT_BASE = \"https://sg.sobot.io/chat/pc/v7/index.html?sysnum=\" + SOBOT_SYSNUM;\n        const SOBOT_BASE_ANON = SOBOT_BASE + \"&customer_fields=\" + encodeURIComponent(JSON.stringify({\n          \"04e5f35e25ca4e658ec0063a73436982\": \"Forum\"\n        }));\n        const FIELD = {\n          d5Source: \"04e5f35e25ca4e658ec0063a73436982\",\n          email: \"0347ad12933143e1acf26ca5e2293be5\",\n          identity: \"3ba63f4d369345df94d84410808b3390\",\n          teamName: \"1b52f148c8f34030be7059b3b2eef7ea\",\n          teamId: \"446bd03d778440bbb377ae22828c5ed0\",\n          serviceLevel: \"d55ec05285bf4eba91345248ebb2a8af\",\n          memberRole: \"a2e68783ab1b480d90783b1cfdd6ce36\"\n        };\n        function ensureSobotLink() {\n          document.querySelectorAll(\"#sobot-support-link\").forEach(function (el, i) {\n            if (i > 0) {\n              el.remove();\n            }\n          });\n          let link = document.getElementById(\"sobot-support-link\");\n          if (!link) {\n            link = document.createElement(\"a\");\n            link.id = \"sobot-support-link\";\n            link.target = \"_blank\";\n            link.rel = \"noopener noreferrer\";\n            link.className = \"sobot-support-fab\";\n            link.title = \"Get Support\";\n            link.setAttribute(\"aria-label\", \"Get Support\");\n            link.href = SOBOT_BASE_ANON;\n            link.innerHTML = '<span class=\"sobot-support-fab__icon\" aria-hidden=\"true\">' + '<svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' + '<path d=\"M12 3C7.03 3 3 6.58 3 11c0 2.39 1.19 4.53 3.05 6.05L5 21l4.02-2.01C9.95 19.32 10.95 19.5 12 19.5c4.97 0 9-3.58 9-8.5S16.97 3 12 3z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>' + \"</svg></span>\" + '<span class=\"sobot-support-fab__text\">Get Support</span>';\n            document.body.appendChild(link);\n          } else if (link.parentElement !== document.body) {\n            document.body.appendChild(link);\n          }\n          return link;\n        }\n        async function fetchUserEmail(user) {\n          const {\n            ajax\n          } = require(\"discourse/lib/ajax\");\n          const data = await ajax(\"/u/\" + encodeURIComponent(user.username) + \"/emails.json\");\n          return data.email;\n        }\n        function buildSobotUrl(user, email) {\n          const cf = user.custom_fields || {};\n          const customerFields = {\n            [FIELD.d5Source]: \"Forum\"\n          };\n          if (email) {\n            customerFields[FIELD.email] = String(email);\n          }\n          if (cf.identity) {\n            customerFields[FIELD.identity] = String(cf.identity);\n          }\n          if (cf.identity === \"Team\") {\n            if (cf.teamName) {\n              customerFields[FIELD.teamName] = String(cf.teamName);\n            }\n            if (cf.teamId) {\n              customerFields[FIELD.teamId] = String(cf.teamId);\n            }\n            if (cf.serviceLevel) {\n              customerFields[FIELD.serviceLevel] = String(cf.serviceLevel);\n            }\n            if (cf.memberRole) {\n              customerFields[FIELD.memberRole] = String(cf.memberRole);\n            }\n          } else {\n            customerFields[FIELD.teamName] = \"\";\n            customerFields[FIELD.teamId] = \"\";\n            customerFields[FIELD.serviceLevel] = \"\";\n            customerFields[FIELD.memberRole] = \"\";\n          }\n          const parts = [\"customer_fields=\" + encodeURIComponent(JSON.stringify(customerFields))];\n          if (user.external_id) {\n            parts.push(\"partnerid=\" + encodeURIComponent(String(user.external_id)));\n          }\n          const uname = user.name || user.username;\n          if (uname) {\n            parts.push(\"uname=\" + encodeURIComponent(uname));\n          }\n          if (email) {\n            parts.push(\"email=\" + encodeURIComponent(email));\n          }\n          return SOBOT_BASE + \"&\" + parts.join(\"&\");\n        }\n        async function updateSobotLink() {\n          const link = ensureSobotLink();\n          const user = api.getCurrentUser();\n          if (!user) {\n            link.href = SOBOT_BASE_ANON;\n            return;\n          }\n          try {\n            link.href = buildSobotUrl(user, await fetchUserEmail(user));\n          } catch (e) {}\n        }\n        api.onPageChange(updateSobotLink);\n        updateSobotLink();\n      });\n    }\n  };\n  _exports.default = _default;\n});\n}\n"]}