{"version":3,"file":"discourse-duplicate-notification-terminator.js","names":["define","_exports","_ajax","_ajaxError","Object","defineProperty","value","default","actions","wipeNotifications","topicId","this","get","set","ajax","type","catch","popupAjaxError","finally","_pluginApi","_userNotifications","initWithApi","api","messageBus","container","lookup","appEvents","eventName","subscribe","nIds","trigger","reopen","setupController","controller","model","on","filter","x","includes","id","setEach","_super","arguments","willTransition","off","name","initialize","withPluginApi","_templateFactory","createTemplateFactory","block","moduleName","isStrictMode"],"sources":["discourse/plugins/discourse-duplicate-notification-terminator/discourse/connectors/after-topic-footer-buttons/wipe-admin-notifications-button.js","discourse/plugins/discourse-duplicate-notification-terminator/discourse/initializers/duplicate-notification-terminator.js","discourse/plugins/discourse-duplicate-notification-terminator/discourse/templates/connectors/after-topic-footer-buttons/wipe-admin-notifications-button.js"],"sourcesContent":["define(\"discourse/plugins/discourse-duplicate-notification-terminator/discourse/connectors/after-topic-footer-buttons/wipe-admin-notifications-button\", [\"exports\", \"discourse/lib/ajax\", \"discourse/lib/ajax-error\"], function (_exports, _ajax, _ajaxError) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _exports.default = {\n    actions: {\n      wipeNotifications(topicId) {\n        if (this.get(\"loading\")) return;\n        this.set(\"loading\", true);\n        (0, _ajax.ajax)(`/t/${topicId}/wipe-admin-notifications`, {\n          type: \"POST\"\n        }).catch(_ajaxError.popupAjaxError).finally(() => this.set(\"loading\", false));\n      }\n    }\n  };\n});","define(\"discourse/plugins/discourse-duplicate-notification-terminator/discourse/initializers/duplicate-notification-terminator\", [\"exports\", \"discourse/lib/plugin-api\", \"discourse/routes/user-notifications\"], function (_exports, _pluginApi, _userNotifications) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  function initWithApi(api) {\n    const messageBus = api.container.lookup(\"message-bus:main\");\n    const appEvents = api.container.lookup(\"service:app-events\");\n    const eventName = \"duplicate-notification-terminator\";\n    messageBus.subscribe(\"/duplicate-notification-terminator\", nIds => {\n      appEvents.trigger(eventName, nIds);\n    });\n    _userNotifications.default.reopen({\n      setupController(controller, model) {\n        this.appEvents.on(eventName, nIds => {\n          controller.get(\"model\").filter(x => nIds.includes(x.id)).setEach(\"read\", true);\n        });\n        this._super(...arguments);\n      },\n      actions: {\n        willTransition() {\n          this.appEvents.off(eventName);\n          this._super(...arguments);\n        }\n      }\n    });\n  }\n  var _default = _exports.default = {\n    name: \"duplicate-notification-terminator\",\n    initialize() {\n      (0, _pluginApi.withPluginApi)(\"0.8\", initWithApi);\n    }\n  };\n});","define(\"discourse/plugins/discourse-duplicate-notification-terminator/discourse/templates/connectors/after-topic-footer-buttons/wipe-admin-notifications-button\", [\"exports\", \"@ember/template-factory\"], function (_exports, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _exports.default = (0, _templateFactory.createTemplateFactory)(\n  /*\n    {{#if this.args.topic.isPrivateMessage}}\n    {{#if this.currentUser.can_wipe_notifications}}\n      {{#if this.siteSettings.duplicate_notification_admin_btn_enabled}}\n        {{d-button  action=(action \"wipeNotifications\" this.args.topic.id)\n                    class=\"btn-danger btn-large\"\n                    disabled=this.loading\n                    label=(unless this.site.mobileView \"duplicate_notification_terminator.wipe_notifications\")\n                    icon=\"bell-slash\"}}\n      {{/if}}\n    {{/if}}\n  {{/if}}\n  */\n  {\n    \"id\": \"ExT20sZ5\",\n    \"block\": \"[[[41,[30,0,[\\\"args\\\",\\\"topic\\\",\\\"isPrivateMessage\\\"]],[[[41,[30,0,[\\\"currentUser\\\",\\\"can_wipe_notifications\\\"]],[[[41,[30,0,[\\\"siteSettings\\\",\\\"duplicate_notification_admin_btn_enabled\\\"]],[[[1,\\\"      \\\"],[1,[28,[35,1],null,[[\\\"action\\\",\\\"class\\\",\\\"disabled\\\",\\\"label\\\",\\\"icon\\\"],[[28,[37,2],[[30,0],\\\"wipeNotifications\\\",[30,0,[\\\"args\\\",\\\"topic\\\",\\\"id\\\"]]],null],\\\"btn-danger btn-large\\\",[30,0,[\\\"loading\\\"]],[52,[51,[30,0,[\\\"site\\\",\\\"mobileView\\\"]]],\\\"duplicate_notification_terminator.wipe_notifications\\\"],\\\"bell-slash\\\"]]]],[1,\\\"\\\\n\\\"]],[]],null]],[]],null]],[]],null]],[],false,[\\\"if\\\",\\\"d-button\\\",\\\"action\\\",\\\"unless\\\"]]\",\n    \"moduleName\": \"discourse/plugins/discourse-duplicate-notification-terminator/discourse/templates/connectors/after-topic-footer-buttons/wipe-admin-notifications-button.hbs\",\n    \"isStrictMode\": false\n  });\n});"],"mappings":"AAAAA,OAAA,qNAAAC,EAAAC,EAAAC,GACA;AAEAC,OAAAC,eAAAJ,EAAA,cACAK,OAAA,IAEAL,EAAAM,aAAA;AACAN,EAAAM,QAAA,CACAC,QAAA,CACA,iBAAAC,CAAAC,GACAC,KAAAC,IAAA,aACAD,KAAAE,IAAA,eACA,EAAAX,EAAAY,MAAA,MAAAJ,6BAAA,CACAK,KAAA,SACAC,MAAAb,EAAAc,gBAAAC,QAAA,IAAAP,KAAAE,IAAA,eACA,G,GCfAb,OAAA,+MAAAC,EAAAkB,EAAAC,GACA;AAMA,SAAAC,EAAAC,GACA,MAAAC,EAAAD,EAAAE,UAAAC,OAAA,oBACAC,EAAAJ,EAAAE,UAAAC,OAAA,sBACAE,EAAA;AACAJ,EAAAK,UAAA,qCAAAC,IACAH,EAAAI,QAAAH,EAAAE,KAEAT,EAAAb,QAAAwB,OAAA,CACA,eAAAC,CAAAC,EAAAC,GACAvB,KAAAe,UAAAS,GAAAR,EAAAE,IACAI,EAAArB,IAAA,SAAAwB,OAAAC,GAAAR,EAAAS,SAAAD,EAAAE,KAAAC,QAAA,aAEA7B,KAAA8B,UAAAC,UACA,EACAlC,QAAA,CACA,cAAAmC,GACAhC,KAAAe,UAAAkB,IAAAjB,GACAhB,KAAA8B,UAAAC,UACA,IAGA,CAzBAtC,OAAAC,eAAAJ,EAAA,cACAK,OAAA,IAEAL,EAAAM,aAAA;AAuBAN,EAAAM,QAAA,CACAsC,KAAA,oCACA,UAAAC,IACA,EAAA3B,EAAA4B,eAAA,MAAA1B,EACA,E,GCjCArB,OAAA,yMAAAC,EAAA+C,GACA;AAEA5C,OAAAC,eAAAJ,EAAA,cACAK,OAAA,IAEAL,EAAAM,aAAA;AACAN,EAAAM,SAAA,EAAAyC,EAAAC,uBAcA,CACAV,GAAA,WACAW,MAAA,ikBACAC,WAAA,8JACAC,cAAA,G","ignoreList":[]}