{"version":3,"file":"main.DngLLP.js","sources":["theme-231/virtual:theme","theme-231/discourse/api-initializers/enterprise-support-helper.js","theme-231/virtual:entrypoint:main"],"sourcesContent":["import { getObjectForTheme } from \"discourse/lib/theme-settings-store\";\n\nexport const settings = getObjectForTheme(231);\n\nexport function themePrefix(key) {\n  return `theme_translations.231.${key}`;\n}\n","import { apiInitializer } from \"discourse/lib/api\";\nimport Category from \"discourse/models/category\";\nimport I18n from \"discourse-i18n\";\n\nexport default apiInitializer((api) => {\n  const rootCategoryId = parseInt(settings.root_support_category, 10);\n  const rootCategory = Category.findById(rootCategoryId);\n  if (!rootCategory) {\n    return;\n  }\n\n  if (!rootCategory.subcategories || rootCategory.subcategories.length === 0) {\n    return;\n  }\n\n  const params = new URLSearchParams(document.location.search.substring(1));\n  const testCategorySlug = params.get(\"test_enterprise_support\");\n\n  if (!testCategorySlug) {\n    // Skip for excluded groups (unless the test_enterprise_support param is passed)\n    let userInExcludedGroups;\n\n    if (Object.hasOwn(settings, \"user_in_exclude_groups\")) {\n      userInExcludedGroups = settings.user_in_exclude_groups;\n    } else {\n      // TODO Remove this fallback once resolve_group_membership is available\n      // in all supported Discourse versions.\n      const excludedGroups = new Set(\n        settings.exclude_groups?.split(\"|\").map(Number)\n      );\n      const currentUserGroups = api.getCurrentUser()?.groups ?? [];\n\n      userInExcludedGroups = currentUserGroups.some((group) =>\n        excludedGroups.has(group.id)\n      );\n    }\n\n    if (userInExcludedGroups) {\n      return;\n    }\n  }\n\n  let supportCategory;\n  if (testCategorySlug) {\n    supportCategory = rootCategory.subcategories.find(\n      (c) => c.slug === testCategorySlug\n    );\n  } else {\n    supportCategory = rootCategory.subcategories[0];\n  }\n\n  // Add top menu button\n  api.addNavigationBarItem({\n    name: \"enterprise-support\",\n    displayName: `${supportCategory.name} Support`,\n    href: supportCategory.url,\n    customFilter: (category) => {\n      return category?.parent_category_id !== rootCategory.id;\n    },\n  });\n\n  I18n.translations[\"en\"] ??= {};\n  I18n.translations[\"en\"][\"js\"] ??= {};\n  I18n.translations[\"en\"][\"js\"][\"filters\"] ??= {};\n  I18n.translations[\"en\"][\"js\"][\"filters\"][\"enterprise-support\"] = {\n    help: `Enterprise customer support category for ${supportCategory.name}`,\n  };\n\n  // Set default composer category\n  api.registerBehaviorTransformer(\"composer-open\", ({ context, next }) => {\n    if (!context.opts.categoryId && supportCategory) {\n      context.opts.categoryId = supportCategory.id;\n    }\n\n    return next();\n  });\n});\n","import * as Mod1 from \"./discourse/api-initializers/enterprise-support-helper\";\nconst compatModules = {\n  \"discourse/api-initializers/enterprise-support-helper\": Mod1,\n};\nexport { compatModules };\nexport default compatModules;\n"],"names":["settings","getObjectForTheme","enterpriseSupportHelper","apiInitializer","api","rootCategoryId","parseInt","root_support_category","rootCategory","Category","findById","subcategories","length","testCategorySlug","URLSearchParams","document","location","search","substring","get","userInExcludedGroups","Object","hasOwn","user_in_exclude_groups","excludedGroups","Set","exclude_groups","split","map","Number","getCurrentUser","groups","some","group","has","id","supportCategory","find","c","slug","addNavigationBarItem","name","displayName","href","url","customFilter","category","parent_category_id","I18n","translations","help","registerBehaviorTransformer","context","next","opts","categoryId","compatModules"],"mappings":"mTAEaA,EAAWC,EAAkB;ACE1C,IAAAC;oCAAeC,CAAgBC,IAC7B,MAAMC,EAAiBC,SAASN,EAASO,sBAAuB,IAC1DC,EAAeC,EAASC,SAASL;AACvC,IAAKG,EACH;AAGF,IAAKA,EAAaG,eAAuD,IAAtCH,EAAaG,cAAcC,OAC5D;AAGF,MACMC,EADS,IAAIC,gBAAgBC,SAASC,SAASC,OAAOC,UAAU,IACtCC,IAAI;AAEpC,IAAKN,EAAkB,CAErB,IAAIO;AAEJ,GAAIC,OAAOC,OAAOtB,EAAU,0BAC1BoB,EAAuBpB,EAASuB;IAC3B,CAGL,MAAMC,EAAiB,IAAIC,IACzBzB,EAAS0B,gBAAgBC,MAAM,KAAKC,IAAIC;AAI1CT,GAF0BhB,EAAI0B,kBAAkBC,QAAU,IAEjBC,KAAMC,GAC7CT,EAAeU,IAAID,EAAME,IAE7B,CAEA,GAAIf,EACF,MAEJ,CAEA,IAAIgB;AAEFA,EADEvB,EACgBL,EAAaG,cAAc0B,KAC1CC,GAAMA,EAAEC,OAAS1B,GAGFL,EAAaG,cAAc,GAI/CP,EAAIoC,qBAAqB,CACvBC,KAAM,qBACNC,YAAa,GAAGN,EAAgBK,eAChCE,KAAMP,EAAgBQ,IACtBC,aAAeC,GACNA,GAAUC,qBAAuBvC,EAAa2B,KAIzDa,EAAKC,aAAiB,KAAM,CAAA,EAC5BD,EAAKC,aAAiB,GAAM,KAAM,CAAA,EAClCD,EAAKC,aAAiB,GAAM,GAAW,UAAM,CAAA,EAC7CD,EAAKC,aAAiB,GAAM,GAAW,QAAE,sBAAwB,CAC/DC,KAAM,4CAA4Cd,EAAgBK,QAIpErC,EAAI+C,4BAA4B,gBAAiB,EAAGC,UAASC,YACtDD,EAAQE,KAAKC,YAAcnB,IAC9BgB,EAAQE,KAAKC,WAAanB,EAAgBD,IAGrCkB;ACzEN,MAACG,EAAgB,CACpB;"}