{"version":3,"file":"discourse-private-topics.js","names":["define","_exports","_component","_tracking","_component2","_object","_service","_template","_discourseI18n","_groupChooser","_templateFactory","Object","defineProperty","value","default","PrivateTopics","dt7948","g","this","prototype","service","site","i","siteSettings","tracked","selectedGroups","args","outletArgs","category","permissions","constructor","super","arguments","groupNames","groupIds","custom_fields","private_topics_allowed_groups","split","filter","Boolean","map","id","parseInt","groups","forEach","group","includes","push","name","availableGroups","n","computed","onChangeGroups","join","action","showWarning","private_topics_enabled","everyoneName","some","permission","group_name","setComponentTemplate","createTemplateFactory","block","moduleName","scope","i18n","Input","htmlSafe","isStrictMode"],"sources":["discourse/plugins/discourse-private-topics/discourse/connectors/category-custom-security/private-topics.js"],"sourcesContent":["define(\"discourse/plugins/discourse-private-topics/discourse/connectors/category-custom-security/private-topics\", [\"exports\", \"@glimmer/component\", \"@glimmer/tracking\", \"@ember/component\", \"@ember/object\", \"@ember/service\", \"@ember/template\", \"discourse-i18n\", \"discourse/select-kit/components/group-chooser\", \"@ember/template-factory\"], function (_exports, _component, _tracking, _component2, _object, _service, _template, _discourseI18n, _groupChooser, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  class PrivateTopics extends _component.default {\n    static {\n      dt7948.g(this.prototype, \"site\", [_service.service]);\n    }\n    #site = (dt7948.i(this, \"site\"), void 0);\n    static {\n      dt7948.g(this.prototype, \"siteSettings\", [_service.service]);\n    }\n    #siteSettings = (dt7948.i(this, \"siteSettings\"), void 0);\n    static {\n      dt7948.g(this.prototype, \"selectedGroups\", [_tracking.tracked], function () {\n        return null;\n      });\n    }\n    #selectedGroups = (dt7948.i(this, \"selectedGroups\"), void 0);\n    static {\n      dt7948.g(this.prototype, \"permissions\", [_tracking.tracked], function () {\n        return this.args.outletArgs.category.permissions;\n      });\n    }\n    #permissions = (dt7948.i(this, \"permissions\"), void 0);\n    constructor() {\n      super(...arguments);\n      let groupNames = [];\n      let groupIds = (this.args.outletArgs.category.custom_fields.private_topics_allowed_groups || \"\").split(\",\").filter(Boolean).map(id => parseInt(id, 10));\n      this.site.groups.forEach(group => {\n        if (groupIds.includes(parseInt(group.id, 10))) {\n          groupNames.push(group.name);\n        }\n      });\n      this.selectedGroups = groupNames;\n    }\n    get availableGroups() {\n      return (this.site.groups || []).map(g => {\n        return g.id === 0 ? null : g.name;\n      }).filter(Boolean);\n    }\n    static {\n      dt7948.n(this.prototype, \"availableGroups\", [(0, _object.computed)(\"site.groups.[]\")]);\n    }\n    onChangeGroups(groupNames) {\n      this.selectedGroups = groupNames;\n      let groupIds = [];\n      this.site.groups.forEach(group => {\n        if (groupNames.includes(group.name)) {\n          groupIds.push(group.id);\n        }\n      });\n      this.args.outletArgs.category.custom_fields.private_topics_allowed_groups = groupIds.join(',');\n    }\n    static {\n      dt7948.n(this.prototype, \"onChangeGroups\", [_object.action]);\n    }\n    get showWarning() {\n      if (this.args.outletArgs.category.custom_fields.private_topics_enabled) {\n        let everyoneName = 'everyone';\n        this.site.groups.forEach(g => {\n          if (g.id === 0) {\n            everyoneName = g.name;\n          }\n        });\n        return this.permissions.some(permission => permission.group_name === everyoneName);\n      }\n      return false;\n    }\n    static {\n      (0, _component2.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n      /*\n        {{#if this.siteSettings.private_topics_enabled}}\n        <section>\n          <h3>{{i18n \"category.private_topics.title\"}}</h3>\n        </section>\n        <section class=\"field category_private_topics_enabled\">\n          <label>\n            <Input\n              @type=\"checkbox\"\n              @checked={{this.args.outletArgs.category.custom_fields.private_topics_enabled}}\n            />\n            {{i18n \"category.private_topics.enabled\"}}\n          </label>\n        </section>\n      \n        {{#if this.args.outletArgs.category.custom_fields.private_topics_enabled}}\n          {{#if this.showWarning}}\n            <section class=\"field\">\n              <div class=\"alert alert-warning\">\n                {{htmlSafe (i18n \"category.private_topics.warning\")}}\n              </div>\n            </section>\n          {{/if}}\n          <section class=\"field\">\n            <label>\n              {{i18n \"category.private_topics.allowed_groups_description\"}}\n            </label>\n            <div class=\"value\">\n            <GroupChooser\n              @content={{this.availableGroups}}\n              @valueProperty={{null}}\n              @nameProperty={{null}}\n              @value={{this.selectedGroups}}\n              @onChange={{this.onChangeGroups}}\n            />\n            </div>\n          </section>\n        {{/if}}\n      {{/if}}\n      */\n      {\n        \"id\": \"7Ux+x5w4\",\n        \"block\": \"[[[41,[30,0,[\\\"siteSettings\\\",\\\"private_topics_enabled\\\"]],[[[1,\\\"  \\\"],[10,\\\"section\\\"],[12],[1,\\\"\\\\n    \\\"],[10,\\\"h3\\\"],[12],[1,[28,[32,0],[\\\"category.private_topics.title\\\"],null]],[13],[1,\\\"\\\\n  \\\"],[13],[1,\\\"\\\\n  \\\"],[10,\\\"section\\\"],[14,0,\\\"field category_private_topics_enabled\\\"],[12],[1,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[12],[1,\\\"\\\\n      \\\"],[8,[32,1],null,[[\\\"@type\\\",\\\"@checked\\\"],[\\\"checkbox\\\",[30,0,[\\\"args\\\",\\\"outletArgs\\\",\\\"category\\\",\\\"custom_fields\\\",\\\"private_topics_enabled\\\"]]]],null],[1,\\\"\\\\n      \\\"],[1,[28,[32,0],[\\\"category.private_topics.enabled\\\"],null]],[1,\\\"\\\\n    \\\"],[13],[1,\\\"\\\\n  \\\"],[13],[1,\\\"\\\\n\\\\n\\\"],[41,[30,0,[\\\"args\\\",\\\"outletArgs\\\",\\\"category\\\",\\\"custom_fields\\\",\\\"private_topics_enabled\\\"]],[[[41,[30,0,[\\\"showWarning\\\"]],[[[1,\\\"      \\\"],[10,\\\"section\\\"],[14,0,\\\"field\\\"],[12],[1,\\\"\\\\n        \\\"],[10,0],[14,0,\\\"alert alert-warning\\\"],[12],[1,\\\"\\\\n          \\\"],[1,[28,[32,2],[[28,[32,0],[\\\"category.private_topics.warning\\\"],null]],null]],[1,\\\"\\\\n        \\\"],[13],[1,\\\"\\\\n      \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"    \\\"],[10,\\\"section\\\"],[14,0,\\\"field\\\"],[12],[1,\\\"\\\\n      \\\"],[10,\\\"label\\\"],[12],[1,\\\"\\\\n        \\\"],[1,[28,[32,0],[\\\"category.private_topics.allowed_groups_description\\\"],null]],[1,\\\"\\\\n      \\\"],[13],[1,\\\"\\\\n      \\\"],[10,0],[14,0,\\\"value\\\"],[12],[1,\\\"\\\\n      \\\"],[8,[32,3],null,[[\\\"@content\\\",\\\"@valueProperty\\\",\\\"@nameProperty\\\",\\\"@value\\\",\\\"@onChange\\\"],[[30,0,[\\\"availableGroups\\\"]],null,null,[30,0,[\\\"selectedGroups\\\"]],[30,0,[\\\"onChangeGroups\\\"]]]],null],[1,\\\"\\\\n      \\\"],[13],[1,\\\"\\\\n    \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null]],[]],null]],[],[\\\"if\\\"]]\",\n        \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-private-topics/discourse/connectors/category-custom-security/private-topics.js\",\n        \"scope\": () => [_discourseI18n.i18n, _component2.Input, _template.htmlSafe, _groupChooser.default],\n        \"isStrictMode\": true\n      }), this);\n    }\n  }\n  _exports.default = PrivateTopics;\n  ;\n});"],"mappings":"AAAAA,OAAA,yUAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,GACA;AAEAC,OAAAC,eAAAX,EAAA,cACAY,OAAA,IAEAZ,EAAAa,aAAA;AACA,MAAAC,UAAAb,EAAAY,eAEAE,OAAAC,EAAAC,KAAAC,UAAA,QAAAb,EAAAc,SACA,CACAC,QAAAL,OAAAM,EAAAJ,KAAA;OAEAF,OAAAC,EAAAC,KAAAC,UAAA,gBAAAb,EAAAc,SACA,CACAG,QAAAP,OAAAM,EAAAJ,KAAA;OAEAF,OAAAC,EAAAC,KAAAC,UAAA,kBAAAhB,EAAAqB,SAAA,WACA,WACA,EACA,CACAC,QAAAT,OAAAM,EAAAJ,KAAA;OAEAF,OAAAC,EAAAC,KAAAC,UAAA,eAAAhB,EAAAqB,SAAA,WACA,OAAAN,KAAAQ,KAAAC,WAAAC,SAAAC,WACA,EACA,CACAA,QAAAb,OAAAM,EAAAJ,KAAA;AACA,WAAAY,GACAC,SAAAC;AACA,IAAAC,EAAA,GACAC,GAAAhB,KAAAQ,KAAAC,WAAAC,SAAAO,cAAAC,+BAAA,IAAAC,MAAA,KAAAC,OAAAC,SAAAC,IAAAC,GAAAC,SAAAD,EAAA;AACAvB,KAAAG,KAAAsB,OAAAC,QAAAC,IACAX,EAAAY,SAAAJ,SAAAG,EAAAJ,GAAA,MACAR,EAAAc,KAAAF,EAAAG,QAGA9B,KAAAO,eAAAQ,CACA,CACA,mBAAAgB,GACA,OAAA/B,KAAAG,KAAAsB,QAAA,IAAAH,IAAAvB,GACA,IAAAA,EAAAwB,GAAA,KAAAxB,EAAA+B,MACAV,OAAAC,QACA,QAEAvB,OAAAkC,EAAAhC,KAAAC,UAAA,sBAAAd,EAAA8C,UAAA,mBACA,CACA,cAAAC,CAAAnB,GACAf,KAAAO,eAAAQ;AACA,IAAAC,EAAA;AACAhB,KAAAG,KAAAsB,OAAAC,QAAAC,IACAZ,EAAAa,SAAAD,EAAAG,OACAd,EAAAa,KAAAF,EAAAJ,MAGAvB,KAAAQ,KAAAC,WAAAC,SAAAO,cAAAC,8BAAAF,EAAAmB,KAAA,IACA,QAEArC,OAAAkC,EAAAhC,KAAAC,UAAA,kBAAAd,EAAAiD,QACA,CACA,eAAAC,GACA,GAAArC,KAAAQ,KAAAC,WAAAC,SAAAO,cAAAqB,uBAAA,CACA,IAAAC,EAAA;AAMA,OALAvC,KAAAG,KAAAsB,OAAAC,QAAA3B,IACA,IAAAA,EAAAwB,KACAgB,EAAAxC,EAAA+B,QAGA9B,KAAAW,YAAA6B,KAAAC,KAAAC,aAAAH,EACA,CACA,QACA,SAEA,EAAArD,EAAAyD,uBAAA,EAAAnD,EAAAoD,uBAyCA,CACArB,GAAA,WACAsB,MAAA,48CACAC,WAAA,mJACAC,MAAA,KAAAzD,EAAA0D,KAAA9D,EAAA+D,MAAA5D,EAAA6D,SAAA3D,EAAAK,SACAuD,cAAA,IACAnD,KACA,EAEAjB,EAAAa,QAAAC,C","ignoreList":[]}