{"version":3,"file":"main.BDMMPJ.js","sources":["theme-17/virtual:theme","theme-17/discourse/components/roon-support-button.gjs","theme-17/discourse/initializers/roon-support-plugin.js","theme-17/virtual:entrypoint:main"],"sourcesContent":["import { getObjectForTheme } from \"discourse/lib/theme-settings-store\";\n\nexport const settings = getObjectForTheme(17);\n\nexport function themePrefix(key) {\n  return `theme_translations.17.${key}`;\n}\n","import Component from \"@glimmer/component\";\nimport { action } from \"@ember/object\";\nimport { on } from \"@ember/modifier\";\nimport { service } from \"@ember/service\";\nimport dIcon from \"discourse-common/helpers/d-icon\";\n\nlet popup = null;\n\nexport default class RoonSupportButton extends Component {\n  @service currentUser;\n\n  get shouldShow() {\n    return this.currentUser?.groups?.some((g) => g.name === \"Roon_Staff\");\n  }\n\n  @action\n  handleClick() {\n    console.log(\"Outlet args:\", this.args);\n\n    const post = this.args.outletArgs?.post;\n    const userId = post?.user_id;\n    const topicUrl = post?.topic?.url;\n    if (!userId || !topicUrl) return;\n\n    const url = `https://support-tool.roonlabs.net/workspace?discourse_user_id=${userId}&threadUrl=${encodeURIComponent(topicUrl)}`;\n\n    if (!popup || popup.closed) {\n      popup = window.open(url, \"roonSupportTab\");\n    } else {\n      popup.postMessage({ userId, threadUrl: topicUrl }, \"*\");\n      popup.focus();\n    }\n  }\n\n  <template>\n    {{#if this.shouldShow}}\n      <div\n        class=\"roon-support-button\"\n        title=\"Open in Roon Support Tool\"\n        role=\"button\"\n        {{on \"click\" this.handleClick}}\n      >\n        {{dIcon \"wrench\"}}\n      </div>\n    {{/if}}\n  </template>\n}\n","import { apiInitializer } from \"discourse/lib/api\";\nimport RoonSupportButton from \"../components/roon-support-button\";\n\nexport default apiInitializer(\"1.35.0\", (api) => {\n  window.addEventListener(\"message\", (event) => {\n    console.log(\"Received message from popup: \", event.data);\n  }, false);\n\n  api.renderAfterWrapperOutlet(\n    \"post-meta-data-poster-name\",\n    RoonSupportButton\n  );\n});\n","import * as Mod1 from \"./discourse/components/roon-support-button\";\nimport * as Mod2 from \"./discourse/initializers/roon-support-plugin\";\nconst compatModules = {\n  \"discourse/components/roon-support-button\": Mod1,\n  \"discourse/initializers/roon-support-plugin\": Mod2,\n};\nexport { compatModules };\nexport default compatModules;\n"],"names":["getObjectForTheme","popup","RoonSupportButton","Component","dt7948","g","this","prototype","service","currentUser","i","shouldShow","groups","some","name","handleClick","console","log","args","post","outletArgs","userId","user_id","topicUrl","topic","url","encodeURIComponent","closed","window","open","postMessage","threadUrl","focus","n","action","setComponentTemplate","createTemplateFactory","id","block","moduleName","scope","on","dIcon","isStrictMode","roonSupportPlugin","apiInitializer","api","addEventListener","event","data","renderAfterWrapperOutlet","compatModules","Mod1"],"mappings":";AAEwBA,EAAkB;ACI1C,IAAIC,EAAQ;AAEG,MAAMC,UAA0BC,SAAAC,OAAAC,EAAAC,KAAAC,yBAC5CC,GAAA,CAAAC,QAAAL,OAAAM,EAAAJ,KAAA;AAED,cAAIK,GACF,OAAOL,KAAKG,aAAaG,QAAQC,KAAMR,GAAiB,eAAXA,EAAES,KACjD,CAGAC,WAAAA,GACEC,QAAQC,IAAI,eAAgBX,KAAKY;AAEjC,MAAMC,EAAOb,KAAKY,KAAKE,YAAYD,KAC7BE,EAASF,GAAMG,QACfC,EAAWJ,GAAMK,OAAOC;AAC9B,IAAKJ,IAAWE,EAAU;AAE1B,MAAME,EAAM,iEAAiEJ,eAAoBK,mBAAmBH;CAE/GtB,GAASA,EAAM0B,OAClB1B,EAAQ2B,OAAOC,KAAKJ,EAAK,mBAEzBxB,EAAM6B,YAAY,CAAET,SAAQU,UAAWR,GAAY,KACnDtB,EAAM+B,QAEV,QAAA5B,OAAA6B,EAAA3B,KAAAC,yBAjBC2B,GAAA,QAmBDC,EAAAC,EAAA,CAAAC,GAAA,KAAAC,MAAA,iSAAAC,WAAA,4BAAAC,MAAAA,KAAAA,CAAAC,KAAAC,UAAAC,cAAA,IAWArC,KAAU;;;AC1CZ,IAAAsC;oCAAeC,CAAe,SAAWC,IACvClB,OAAOmB,iBAAiB,UAAYC,IAClChC,QAAQC,IAAI,gCAAiC+B,EAAMC,QAClD,GAEHH,EAAII,yBACF,6BACAhD;ACRC,MAACiD,EAAgB,CACpB,2CAA4CC,EAC5C;"}