{"version":3,"file":"main.CV9HVl.js","sources":["theme-58/virtual:theme","theme-58/discourse/api-initializers/theme-initializer.gjs","theme-58/virtual:entrypoint:main"],"sourcesContent":["import { getObjectForTheme } from \"discourse/lib/theme-settings-store\";\n\nexport const settings = getObjectForTheme(58);\n\nexport function themePrefix(key) {\n  return `theme_translations.58.${key}`;\n}\n","import { withPluginApi } from \"discourse/lib/plugin-api\";\n\nexport default {\n  name: \"hashtag-processor\",\n  initialize() {\n    withPluginApi(\"1.0.0\", (api) => {\n      let interval = null;\n      let processedElements = new WeakSet();\n      \n      function cleanup() {\n        if (interval) {\n          clearInterval(interval);\n          interval = null;\n        }\n      }\n      \n      function scanAndUpdateHashtags() {\n        try {\n          // LEAVE THIS AS IS - original selector\n          const selectors = ['.hashtag', '.hashtag-cooked', '[data-hashtag]', 'a[href*=\"/tag/\"]'];\n          \n          selectors.forEach(selector => {\n            document.querySelectorAll(selector).forEach(element => {\n              if (processedElements.has(element)) return;\n              \n              if (element.href && element.href.includes('devtalk.com/tag/')) {\n                try {\n                  const tagName = element.href.split('devtalk.com/tag/')[1]?.split('/')[0]?.split('?')[0];\n                  if (tagName) {\n                    element.href = `https://devtalk.com/${tagName}`;\n                    \n                    element.removeAttribute('target');\n                    element.removeAttribute('rel');\n                    \n                    element.addEventListener('click', function(e) {\n                      if (this.href.includes('devtalk.com')) {\n                        e.stopPropagation();\n                        e.stopImmediatePropagation();\n                        window.location.href = this.href;\n                        return false;\n                      }\n                    }, true);\n                    \n                    processedElements.add(element);\n                  }\n                } catch (e) {\n                  // Skip this element\n                }\n              }\n            });\n          });\n        } catch (error) {\n          console.error('Error in hashtag scanner:', error);\n        }\n      }\n      \n      function startScanning() {\n        cleanup();\n        scanAndUpdateHashtags();\n        interval = setInterval(scanAndUpdateHashtags, 1000);\n      }\n      \n      // Start scanning\n      startScanning();\n      \n      // Re-run on page transitions\n      api.onPageChange(() => {\n        // Clear processed elements for new page\n        processedElements = new WeakSet();\n        startScanning();\n      });\n      \n      // Optional: Clean up when app destroys\n      if (api.onAppEvent) {\n        api.onAppEvent('destroy', cleanup);\n      }\n    });\n  }\n};","import * as Mod1 from \"./discourse/api-initializers/theme-initializer\";\nconst compatModules = {\n  \"discourse/api-initializers/theme-initializer\": Mod1,\n};\nexport { compatModules };\nexport default compatModules;\n"],"names":["getObjectForTheme","themeInitializer","name","initialize","withPluginApi","api","interval","processedElements","WeakSet","cleanup","clearInterval","scanAndUpdateHashtags","forEach","selector","document","querySelectorAll","element","has","href","includes","tagName","split","removeAttribute","addEventListener","e","this","stopPropagation","stopImmediatePropagation","window","location","add","error","console","startScanning","setInterval","onPageChange","onAppEvent","compatModules"],"mappings":";AAEwBA,EAAkB;;ACA1C,IAAAC,EAAe,CACbC,KAAM,oBACNC,UAAAA;8BACEC,CAAc,QAAUC,IACtB,IAAIC,EAAW,KACXC,EAAoB,IAAIC;AAE5B,SAASC,IACHH,IACFI,cAAcJ,GACdA,EAAW,KAEf,CAEA,SAASK,IACP,IAEoB,CAAC,WAAY,kBAAmB,iBAAkB,oBAE1DC,QAAQC,IAChBC,SAASC,iBAAiBF,GAAUD,QAAQI,IAC1C,IAAIT,EAAkBU,IAAID,IAEtBA,EAAQE,MAAQF,EAAQE,KAAKC,SAAS,oBACxC,IACE,MAAMC,EAAUJ,EAAQE,KAAKG,MAAM,oBAAoB,IAAIA,MAAM,KAAK,IAAIA,MAAM,KAAK;AACjFD,IACFJ,EAAQE,KAAO,uBAAuBE,IAEtCJ,EAAQM,gBAAgB,UACxBN,EAAQM,gBAAgB,OAExBN,EAAQO,iBAAiB,QAAS,SAASC,GACzC,GAAIC,KAAKP,KAAKC,SAAS,eAIrB,OAHAK,EAAEE,kBACFF,EAAEG,2BACFC,OAAOC,SAASX,KAAOO,KAAKP,MACrB,CAEX,GAAG,GAEHX,EAAkBuB,IAAId,GAE1B,CAAE,MAAOQ,GACP,KAKV,CAAE,MAAOO,GACPC,QAAQD,MAAM,4BAA6BA,EAC7C,CACF,CAEA,SAASE,IACPxB,IACAE,IACAL,EAAW4B,YAAYvB,EAAuB,IAChD,CAGAsB,IAGA5B,EAAI8B,aAAa,KAEf5B,EAAoB,IAAIC,QACxByB,MAIE5B,EAAI+B,YACN/B,EAAI+B,WAAW,UAAW3B,IAGhC;AC5EG,MAAC4B,EAAgB,CACpB;"}