{"version":3,"file":"discourse-solved.js","names":["define","_exports","_component","_tracking","_object","_service","_dButton","_ajax","_ajaxError","_component2","_templateFactory","Object","defineProperty","value","default","SolvedAcceptAnswerButton","hidden","args","post","topic_accepted_answer","dt7948","g","this","prototype","service","appEvents","i","currentUser","tracked","saving","showLabel","id","topicCreatedById","acceptAnswer","async","can_accept_answer","accepted_answer","topic","acceptedAnswer","ajax","type","data","setAcceptedSolution","e","popupAjaxError","acceptPost","trigger","n","action","setComponentTemplate","createTemplateFactory","block","moduleName","scope","isStrictMode","_modifier","_template","_interpolatedTranslation","_cookedHtml","_userLink","_concatClass","_dIcon","_discourseI18n","SolvedAcceptedAnswer","siteSettings","expanded","quoteId","post_number","hasExcerpt","excerpt","content","htmlSafe","showMarkedBy","show_who_marked_solved","showSolvedBy","username","postNumber","i18n","solverUsername","accepterUsername","accepter_username","solverDisplayName","name","display_name_on_posts","accepterDisplayName","accepter_name","postPath","url","toggleExpanded","onClickTitle","event","target","closest","on","_dTooltip","_truthHelpers","SolvedUnacceptAnswerButton","unacceptAnswer","undefined","unacceptPost","showAcceptedBy","acceptedByUsername","acceptedByDisplayName","and","_templateOnly","SolvedStatus","or","eq","_helper","_comboBox","QUERY_PARAM_VALUES","solved","unsolved","all","UX_VALUES","yes","no","SolvedStatusFilter","shouldRender","context","owner","router","lookup","show_filter_by_solved_status","currentRouteName","editingCategory","allow_solved_on_all_topics","currentCategory","enable_accepted_answers","statuses","map","status","queryParamValue","currentRoute","queryParams","changeStatus","newStatus","transitionTo","hash","_withEventValue","SolvedSettings","c","onChangeSetting","set","fn","classNames","tagName","_runloop","_topicNavigationPopup","_environment","ONE_WEEK","MAX_DURATION_WITH_NO_ANSWER","DISPLAY_DELAY","isTesting","NoAnswer","site","mobileView","init","super","arguments","setProperties","oneWeek","show","later","element","isDestroying","isDestroyed","user_id","moment","created_at","postStream","posts","some","_routing","SolvedList","LinkTo","AcceptedAnswers","_userStat","SolvedCount","_pluginApi","initialize","withPluginApi","api","registerValueTransformer","has_accepted_answer","push","_solvedAcceptAnswerButton","_solvedAcceptedAnswer","_solvedUnacceptAnswerButton","initializeWithApi","addTrackedPostProperties","renderAfterWrapperOutlet","customizePost","dag","firstButtonKey","secondLastHiddenButtonKey","lastHiddenButtonKey","solvedButton","add","before","after","customizePostMenu","callback","controller","message","model","registerCustomPostMessageCallback","handleMessages","addDiscoveryQueryParam","replace","refreshModel","modifyClass","Superclass","forEach","replaceIcon","addAdvancedSearchOptions","statusOptions","addSearchSuggestion","container","admin","setAdminPluginIcon","_category","reopen","computed","get","fieldName","custom_fields","_rsvp","_discourse","SolvedPostsStream","loading","loaded","itemsLoaded","canLoadMore","constructor","siteCategories","noContent","length","findItems","Promise","resolve","then","result","userSolvedPosts","user_solved_posts","p","create","topic_title","category_id","find","finally","UserActivitySolved","user","modelFor","stream","categories","emptyState","setupController","renderTemplate","render","title","body","resource","route","_emptyState","_userStream"],"sources":["discourse/plugins/discourse-solved/discourse/components/solved-accept-answer-button.js","discourse/plugins/discourse-solved/discourse/components/solved-accepted-answer.js","discourse/plugins/discourse-solved/discourse/components/solved-unaccept-answer-button.js","discourse/plugins/discourse-solved/discourse/connectors/after-topic-status/solved-status.js","discourse/plugins/discourse-solved/discourse/connectors/bread-crumbs-right/solved-status-filter.js","discourse/plugins/discourse-solved/discourse/connectors/category-custom-settings/solved-settings.js","discourse/plugins/discourse-solved/discourse/connectors/topic-navigation/no-answer.js","discourse/plugins/discourse-solved/discourse/connectors/user-activity-bottom/solved-list.js","discourse/plugins/discourse-solved/discourse/connectors/user-card-metadata/accepted-answers.js","discourse/plugins/discourse-solved/discourse/connectors/user-summary-stat/solved-count.js","discourse/plugins/discourse-solved/discourse/initializers/add-topic-list-class.js","discourse/plugins/discourse-solved/discourse/initializers/extend-for-solved-button.js","discourse/plugins/discourse-solved/discourse/initializers/solved-admin-plugin-configuration-nav.js","discourse/plugins/discourse-solved/discourse/pre-initializers/extend-category-for-solved.js","discourse/plugins/discourse-solved/discourse/routes/user-activity/solved.js","discourse/plugins/discourse-solved/discourse/solved-route-map.js","discourse/plugins/discourse-solved/discourse/templates/user-activity/solved.js"],"sourcesContent":["define(\"discourse/plugins/discourse-solved/discourse/components/solved-accept-answer-button\", [\"exports\", \"@glimmer/component\", \"@glimmer/tracking\", \"@ember/object\", \"@ember/service\", \"discourse/components/d-button\", \"discourse/lib/ajax\", \"discourse/lib/ajax-error\", \"@ember/component\", \"@ember/template-factory\"], function (_exports, _component, _tracking, _object, _service, _dButton, _ajax, _ajaxError, _component2, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  class SolvedAcceptAnswerButton extends _component.default {\n    static hidden(args) {\n      return args.post.topic_accepted_answer;\n    }\n    static {\n      dt7948.g(this.prototype, \"appEvents\", [_service.service]);\n    }\n    #appEvents = (dt7948.i(this, \"appEvents\"), void 0);\n    static {\n      dt7948.g(this.prototype, \"currentUser\", [_service.service]);\n    }\n    #currentUser = (dt7948.i(this, \"currentUser\"), void 0);\n    static {\n      dt7948.g(this.prototype, \"saving\", [_tracking.tracked], function () {\n        return false;\n      });\n    }\n    #saving = (dt7948.i(this, \"saving\"), void 0);\n    get showLabel() {\n      return this.currentUser?.id === this.args.post.topicCreatedById;\n    }\n    async acceptAnswer() {\n      const post = this.args.post;\n      this.saving = true;\n      try {\n        await acceptPost(post, this.currentUser);\n        this.appEvents.trigger(\"discourse-solved:solution-toggled\", post);\n      } catch (e) {\n        (0, _ajaxError.popupAjaxError)(e);\n      } finally {\n        this.saving = false;\n      }\n    }\n    static {\n      dt7948.n(this.prototype, \"acceptAnswer\", [_object.action]);\n    }\n    static {\n      (0, _component2.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n      /*\n        \n          <DButton\n            class=\"post-action-menu__solved-unaccepted unaccepted\"\n            ...attributes\n            @action={{this.acceptAnswer}}\n            @disabled={{this.saving}}\n            @icon=\"far-square-check\"\n            @label={{if this.showLabel \"solved.solution\"}}\n            @title=\"solved.accept_answer\"\n          />\n        \n      */\n      {\n        \"id\": \"PwLa8OC8\",\n        \"block\": \"[[[1,\\\"\\\\n    \\\"],[8,[32,0],[[24,0,\\\"post-action-menu__solved-unaccepted unaccepted\\\"],[17,1]],[[\\\"@action\\\",\\\"@disabled\\\",\\\"@icon\\\",\\\"@label\\\",\\\"@title\\\"],[[30,0,[\\\"acceptAnswer\\\"]],[30,0,[\\\"saving\\\"]],\\\"far-square-check\\\",[52,[30,0,[\\\"showLabel\\\"]],\\\"solved.solution\\\"],\\\"solved.accept_answer\\\"]],null],[1,\\\"\\\\n  \\\"]],[\\\"&attrs\\\"],[\\\"if\\\"]]\",\n        \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-solved/discourse/components/solved-accept-answer-button.js\",\n        \"scope\": () => [_dButton.default],\n        \"isStrictMode\": true\n      }), this);\n    }\n  }\n  _exports.default = SolvedAcceptAnswerButton;\n  async function acceptPost(post) {\n    if (!post.can_accept_answer || post.accepted_answer) {\n      return;\n    }\n    const topic = post.topic;\n    try {\n      const acceptedAnswer = await (0, _ajax.ajax)(\"/solution/accept\", {\n        type: \"POST\",\n        data: {\n          id: post.id\n        }\n      });\n      topic.setAcceptedSolution(acceptedAnswer);\n    } catch (e) {\n      (0, _ajaxError.popupAjaxError)(e);\n    }\n  }\n});","define(\"discourse/plugins/discourse-solved/discourse/components/solved-accepted-answer\", [\"exports\", \"@glimmer/component\", \"@glimmer/tracking\", \"@ember/modifier\", \"@ember/object\", \"@ember/service\", \"@ember/template\", \"discourse/components/d-button\", \"discourse/components/interpolated-translation\", \"discourse/components/post/cooked-html\", \"discourse/components/user-link\", \"discourse/helpers/concat-class\", \"discourse/helpers/d-icon\", \"discourse-i18n\", \"@ember/component\", \"@ember/template-factory\"], function (_exports, _component, _tracking, _modifier, _object, _service, _template, _dButton, _interpolatedTranslation, _cookedHtml, _userLink, _concatClass, _dIcon, _discourseI18n, _component2, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  class SolvedAcceptedAnswer extends _component.default {\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, \"expanded\", [_tracking.tracked], function () {\n        return false;\n      });\n    }\n    #expanded = (dt7948.i(this, \"expanded\"), void 0);\n    get topic() {\n      return this.args.post.topic;\n    }\n    get acceptedAnswer() {\n      return this.topic.accepted_answer;\n    }\n    get quoteId() {\n      return `accepted-answer-${this.topic.id}-${this.acceptedAnswer.post_number}`;\n    }\n    get hasExcerpt() {\n      return !!this.acceptedAnswer.excerpt;\n    }\n    get content() {\n      if (!this.hasExcerpt) {\n        return \"\";\n      }\n      return (0, _template.htmlSafe)(this.acceptedAnswer.excerpt);\n    }\n    get showMarkedBy() {\n      return this.siteSettings.show_who_marked_solved;\n    }\n    get showSolvedBy() {\n      return !(!this.acceptedAnswer.username || !this.acceptedAnswer.post_number);\n    }\n    get postNumber() {\n      return (0, _discourseI18n.i18n)(\"solved.accepted_answer_post_number\", {\n        post_number: this.acceptedAnswer.post_number\n      });\n    }\n    get solverUsername() {\n      return this.acceptedAnswer.username;\n    }\n    get accepterUsername() {\n      return this.acceptedAnswer.accepter_username;\n    }\n    get solverDisplayName() {\n      const username = this.acceptedAnswer.username;\n      const name = this.acceptedAnswer.name;\n      return this.siteSettings.display_name_on_posts && name ? name : username;\n    }\n    get accepterDisplayName() {\n      const username = this.acceptedAnswer.accepter_username;\n      const name = this.acceptedAnswer.accepter_name;\n      return this.siteSettings.display_name_on_posts && name ? name : username;\n    }\n    get postPath() {\n      const postNumber = this.acceptedAnswer.post_number;\n      return `${this.topic.url}/${postNumber}`;\n    }\n    toggleExpanded() {\n      this.expanded = !this.expanded;\n    }\n    static {\n      dt7948.n(this.prototype, \"toggleExpanded\", [_object.action]);\n    }\n    onClickTitle(event) {\n      if (event.target.closest(\"a\") || event.target.closest(\".quote-controls\")) {\n        return;\n      }\n      this.toggleExpanded();\n    }\n    static {\n      dt7948.n(this.prototype, \"onClickTitle\", [_object.action]);\n    }\n    static {\n      (0, _component2.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n      /*\n        \n          {{! template-lint-disable no-unnecessary-concat }}\n          {{#if this.acceptedAnswer}}\n            <aside\n              class={{concatClass\n                \"quote accepted-answer\"\n                (if this.hasExcerpt \"accepted-answer--has-excerpt\")\n                (unless this.content \"title-only\")\n              }}\n              data-expanded=\"{{this.expanded}}\"\n              data-username={{this.acceptedAnswer.username}}\n              data-post={{this.acceptedAnswer.post_number}}\n              data-topic={{this.topic.id}}\n            >\n              <div\n                class=\"title\"\n                data-has-quote-controls=\"true\"\n                {{(if this.content (modifier on \"click\" this.onClickTitle))}}\n              >\n                <div class=\"accepted-answer--solver-accepter\">\n                  <div class=\"accepted-answer--solver\">\n                    {{#if this.showSolvedBy}}\n                      {{icon \"square-check\" class=\"accepted\"}}\n                      <InterpolatedTranslation\n                        @key=\"solved.accepted_answer_solver_info\"\n                        as |Placeholder|\n                      >\n                        <Placeholder @name=\"user\">\n                          <UserLink\n                            @username={{this.solverUsername}}\n                          >{{this.solverDisplayName}}</UserLink>\n                        </Placeholder>\n                        <Placeholder @name=\"post\">\n                          <a href={{this.postPath}}>{{this.postNumber}}</a>\n                        </Placeholder>\n                      </InterpolatedTranslation>\n                    {{/if}}\n                  </div>\n                  <div class=\"accepted-answer--accepter\">\n                    {{#if this.showMarkedBy}}\n                      <InterpolatedTranslation\n                        @key=\"solved.marked_solved_by\"\n                        as |Placeholder|\n                      >\n                        <Placeholder @name=\"user\">\n                          <UserLink\n                            @username={{this.accepterUsername}}\n                          >{{this.accepterDisplayName}}</UserLink>\n                        </Placeholder>\n                      </InterpolatedTranslation>\n                    {{/if}}\n                  </div>\n                </div>\n                <div class=\"quote-controls\">\n                  {{#if this.content}}\n                    <DButton\n                      class=\"btn-flat quote-toggle\"\n                      @action={{this.toggleExpanded}}\n                      @ariaControls={{this.quoteId}}\n                      @ariaExpanded={{this.expanded}}\n                      @ariaLabel={{if this.expanded \"post.collapse\" \"expand\"}}\n                      @title={{if this.expanded \"post.collapse\" \"expand\"}}\n                      @icon={{if this.expanded \"chevron-up\" \"chevron-down\"}}\n                    />\n                  {{/if}}\n                  <DButton\n                    class=\"btn-flat back\"\n                    @href={{this.postPath}}\n                    @title=\"post.follow_quote\"\n                    @ariaLabel=\"post.follow_quote\"\n                    @icon=\"arrow-down\"\n                  />\n                </div>\n              </div>\n              {{#if this.content}}\n                <blockquote id={{this.quoteId}}>\n                  <PostCookedHtml\n                    @post={{@post}}\n                    @cooked={{this.content}}\n                    @decoratorState={{@decoratorState}}\n                  />\n                </blockquote>\n              {{/if}}\n            </aside>\n          {{/if}}\n        \n      */\n      {\n        \"id\": \"+4V/KTcM\",\n        \"block\": \"[[[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"acceptedAnswer\\\"]],[[[1,\\\"      \\\"],[10,\\\"aside\\\"],[15,0,[28,[32,0],[\\\"quote accepted-answer\\\",[52,[30,0,[\\\"hasExcerpt\\\"]],\\\"accepted-answer--has-excerpt\\\"],[52,[51,[30,0,[\\\"content\\\"]]],\\\"title-only\\\"]],null]],[15,\\\"data-expanded\\\",[29,[[30,0,[\\\"expanded\\\"]]]]],[15,\\\"data-username\\\",[30,0,[\\\"acceptedAnswer\\\",\\\"username\\\"]]],[15,\\\"data-post\\\",[30,0,[\\\"acceptedAnswer\\\",\\\"post_number\\\"]]],[15,\\\"data-topic\\\",[30,0,[\\\"topic\\\",\\\"id\\\"]]],[12],[1,\\\"\\\\n        \\\"],[11,0],[24,0,\\\"title\\\"],[24,\\\"data-has-quote-controls\\\",\\\"true\\\"],[4,[52,[30,0,[\\\"content\\\"]],[50,[32,1],2,[\\\"click\\\",[30,0,[\\\"onClickTitle\\\"]]],null]],null,null],[12],[1,\\\"\\\\n          \\\"],[10,0],[14,0,\\\"accepted-answer--solver-accepter\\\"],[12],[1,\\\"\\\\n            \\\"],[10,0],[14,0,\\\"accepted-answer--solver\\\"],[12],[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"showSolvedBy\\\"]],[[[1,\\\"                \\\"],[1,[28,[32,2],[\\\"square-check\\\"],[[\\\"class\\\"],[\\\"accepted\\\"]]]],[1,\\\"\\\\n                \\\"],[8,[32,3],null,[[\\\"@key\\\"],[\\\"solved.accepted_answer_solver_info\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n                  \\\"],[8,[30,1],null,[[\\\"@name\\\"],[\\\"user\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n                    \\\"],[8,[32,4],null,[[\\\"@username\\\"],[[30,0,[\\\"solverUsername\\\"]]]],[[\\\"default\\\"],[[[[1,[30,0,[\\\"solverDisplayName\\\"]]]],[]]]]],[1,\\\"\\\\n                  \\\"]],[]]]]],[1,\\\"\\\\n                  \\\"],[8,[30,1],null,[[\\\"@name\\\"],[\\\"post\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n                    \\\"],[10,3],[15,6,[30,0,[\\\"postPath\\\"]]],[12],[1,[30,0,[\\\"postNumber\\\"]]],[13],[1,\\\"\\\\n                  \\\"]],[]]]]],[1,\\\"\\\\n                \\\"]],[1]]]]],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"            \\\"],[13],[1,\\\"\\\\n            \\\"],[10,0],[14,0,\\\"accepted-answer--accepter\\\"],[12],[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"showMarkedBy\\\"]],[[[1,\\\"                \\\"],[8,[32,3],null,[[\\\"@key\\\"],[\\\"solved.marked_solved_by\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n                  \\\"],[8,[30,2],null,[[\\\"@name\\\"],[\\\"user\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n                    \\\"],[8,[32,4],null,[[\\\"@username\\\"],[[30,0,[\\\"accepterUsername\\\"]]]],[[\\\"default\\\"],[[[[1,[30,0,[\\\"accepterDisplayName\\\"]]]],[]]]]],[1,\\\"\\\\n                  \\\"]],[]]]]],[1,\\\"\\\\n                \\\"]],[2]]]]],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"            \\\"],[13],[1,\\\"\\\\n          \\\"],[13],[1,\\\"\\\\n          \\\"],[10,0],[14,0,\\\"quote-controls\\\"],[12],[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"content\\\"]],[[[1,\\\"              \\\"],[8,[32,5],[[24,0,\\\"btn-flat quote-toggle\\\"]],[[\\\"@action\\\",\\\"@ariaControls\\\",\\\"@ariaExpanded\\\",\\\"@ariaLabel\\\",\\\"@title\\\",\\\"@icon\\\"],[[30,0,[\\\"toggleExpanded\\\"]],[30,0,[\\\"quoteId\\\"]],[30,0,[\\\"expanded\\\"]],[52,[30,0,[\\\"expanded\\\"]],\\\"post.collapse\\\",\\\"expand\\\"],[52,[30,0,[\\\"expanded\\\"]],\\\"post.collapse\\\",\\\"expand\\\"],[52,[30,0,[\\\"expanded\\\"]],\\\"chevron-up\\\",\\\"chevron-down\\\"]]],null],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"            \\\"],[8,[32,5],[[24,0,\\\"btn-flat back\\\"]],[[\\\"@href\\\",\\\"@title\\\",\\\"@ariaLabel\\\",\\\"@icon\\\"],[[30,0,[\\\"postPath\\\"]],\\\"post.follow_quote\\\",\\\"post.follow_quote\\\",\\\"arrow-down\\\"]],null],[1,\\\"\\\\n          \\\"],[13],[1,\\\"\\\\n        \\\"],[13],[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"content\\\"]],[[[1,\\\"          \\\"],[10,\\\"blockquote\\\"],[15,1,[30,0,[\\\"quoteId\\\"]]],[12],[1,\\\"\\\\n            \\\"],[8,[32,6],null,[[\\\"@post\\\",\\\"@cooked\\\",\\\"@decoratorState\\\"],[[30,3],[30,0,[\\\"content\\\"]],[30,4]]],null],[1,\\\"\\\\n          \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"      \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"  \\\"]],[\\\"Placeholder\\\",\\\"Placeholder\\\",\\\"@post\\\",\\\"@decoratorState\\\"],[\\\"if\\\",\\\"unless\\\",\\\"modifier\\\"]]\",\n        \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-solved/discourse/components/solved-accepted-answer.js\",\n        \"scope\": () => [_concatClass.default, _modifier.on, _dIcon.default, _interpolatedTranslation.default, _userLink.default, _dButton.default, _cookedHtml.default],\n        \"isStrictMode\": true\n      }), this);\n    }\n  }\n  _exports.default = SolvedAcceptedAnswer;\n});","define(\"discourse/plugins/discourse-solved/discourse/components/solved-unaccept-answer-button\", [\"exports\", \"@glimmer/component\", \"@glimmer/tracking\", \"@ember/object\", \"@ember/service\", \"discourse/components/d-button\", \"discourse/components/interpolated-translation\", \"discourse/components/user-link\", \"discourse/float-kit/components/d-tooltip\", \"discourse/helpers/d-icon\", \"discourse/lib/ajax\", \"discourse/lib/ajax-error\", \"discourse/truth-helpers\", \"discourse-i18n\", \"@ember/component\", \"@ember/template-factory\"], function (_exports, _component, _tracking, _object, _service, _dButton, _interpolatedTranslation, _userLink, _dTooltip, _dIcon, _ajax, _ajaxError, _truthHelpers, _discourseI18n, _component2, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  class SolvedUnacceptAnswerButton extends _component.default {\n    static {\n      dt7948.g(this.prototype, \"appEvents\", [_service.service]);\n    }\n    #appEvents = (dt7948.i(this, \"appEvents\"), 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, \"saving\", [_tracking.tracked], function () {\n        return false;\n      });\n    }\n    #saving = (dt7948.i(this, \"saving\"), void 0);\n    async unacceptAnswer() {\n      const post = this.args.post;\n      this.saving = true;\n      try {\n        await unacceptPost(post);\n        this.appEvents.trigger(\"discourse-solved:solution-toggled\", post);\n      } catch (e) {\n        (0, _ajaxError.popupAjaxError)(e);\n      } finally {\n        this.saving = false;\n      }\n    }\n    static {\n      dt7948.n(this.prototype, \"unacceptAnswer\", [_object.action]);\n    }\n    get showAcceptedBy() {\n      return !(!this.siteSettings.show_who_marked_solved || !this.args.post.topic.accepted_answer.accepter_username);\n    }\n    get acceptedByUsername() {\n      return this.args.post.topic.accepted_answer.accepter_username;\n    }\n    get acceptedByDisplayName() {\n      const username = this.args.post.topic.accepted_answer.accepter_username;\n      const name = this.args.post.topic.accepted_answer.accepter_name;\n      return this.siteSettings.display_name_on_posts && name ? name : username;\n    }\n    static {\n      (0, _component2.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n      /*\n        \n          <span class=\"extra-buttons\">\n            {{#if (and @post.can_accept_answer @post.accepted_answer)}}\n              {{#if this.showAcceptedBy}}\n                <DTooltip @identifier=\"post-action-menu__solved-accepted-tooltip\">\n                  <:trigger>\n                    <DButton\n                      class=\"post-action-menu__solved-accepted accepted fade-out\"\n                      ...attributes\n                      @action={{this.unacceptAnswer}}\n                      @icon=\"square-check\"\n                      @label=\"solved.solution\"\n                      @title=\"solved.unaccept_answer\"\n                    />\n                  </:trigger>\n                  <:content>\n                    <InterpolatedTranslation\n                      @key=\"solved.marked_solved_by\"\n                      as |Placeholder|\n                    >\n                      <Placeholder @name=\"user\">\n                        <UserLink @username={{this.acceptedByUsername}}>\n                          {{this.acceptedByDisplayName}}\n                        </UserLink>\n                      </Placeholder>\n                    </InterpolatedTranslation>\n                  </:content>\n                </DTooltip>\n              {{else}}\n                <DButton\n                  class=\"post-action-menu__solved-accepted accepted fade-out\"\n                  ...attributes\n                  @action={{this.unacceptAnswer}}\n                  @disabled={{this.saving}}\n                  @icon=\"square-check\"\n                  @label=\"solved.solution\"\n                  @title=\"solved.unaccept_answer\"\n                />\n              {{/if}}\n            {{else}}\n              <span\n                class=\"accepted-text\"\n                title={{i18n \"solved.accepted_description\"}}\n              >\n                <span>{{icon \"check\"}}</span>\n                <span class=\"accepted-label\">\n                  {{i18n \"solved.solution\"}}\n                </span>\n              </span>\n            {{/if}}\n          </span>\n        \n      */\n      {\n        \"id\": \"SHdDjCjy\",\n        \"block\": \"[[[1,\\\"\\\\n    \\\"],[10,1],[14,0,\\\"extra-buttons\\\"],[12],[1,\\\"\\\\n\\\"],[41,[28,[32,0],[[30,1,[\\\"can_accept_answer\\\"]],[30,1,[\\\"accepted_answer\\\"]]],null],[[[41,[30,0,[\\\"showAcceptedBy\\\"]],[[[1,\\\"          \\\"],[8,[32,1],null,[[\\\"@identifier\\\"],[\\\"post-action-menu__solved-accepted-tooltip\\\"]],[[\\\"trigger\\\",\\\"content\\\"],[[[[1,\\\"\\\\n              \\\"],[8,[32,2],[[24,0,\\\"post-action-menu__solved-accepted accepted fade-out\\\"],[17,2]],[[\\\"@action\\\",\\\"@icon\\\",\\\"@label\\\",\\\"@title\\\"],[[30,0,[\\\"unacceptAnswer\\\"]],\\\"square-check\\\",\\\"solved.solution\\\",\\\"solved.unaccept_answer\\\"]],null],[1,\\\"\\\\n            \\\"]],[]],[[[1,\\\"\\\\n              \\\"],[8,[32,3],null,[[\\\"@key\\\"],[\\\"solved.marked_solved_by\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n                \\\"],[8,[30,3],null,[[\\\"@name\\\"],[\\\"user\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n                  \\\"],[8,[32,4],null,[[\\\"@username\\\"],[[30,0,[\\\"acceptedByUsername\\\"]]]],[[\\\"default\\\"],[[[[1,\\\"\\\\n                    \\\"],[1,[30,0,[\\\"acceptedByDisplayName\\\"]]],[1,\\\"\\\\n                  \\\"]],[]]]]],[1,\\\"\\\\n                \\\"]],[]]]]],[1,\\\"\\\\n              \\\"]],[3]]]]],[1,\\\"\\\\n            \\\"]],[]]]]],[1,\\\"\\\\n\\\"]],[]],[[[1,\\\"          \\\"],[8,[32,2],[[24,0,\\\"post-action-menu__solved-accepted accepted fade-out\\\"],[17,2]],[[\\\"@action\\\",\\\"@disabled\\\",\\\"@icon\\\",\\\"@label\\\",\\\"@title\\\"],[[30,0,[\\\"unacceptAnswer\\\"]],[30,0,[\\\"saving\\\"]],\\\"square-check\\\",\\\"solved.solution\\\",\\\"solved.unaccept_answer\\\"]],null],[1,\\\"\\\\n\\\"]],[]]]],[]],[[[1,\\\"        \\\"],[10,1],[14,0,\\\"accepted-text\\\"],[15,\\\"title\\\",[28,[32,5],[\\\"solved.accepted_description\\\"],null]],[12],[1,\\\"\\\\n          \\\"],[10,1],[12],[1,[28,[32,6],[\\\"check\\\"],null]],[13],[1,\\\"\\\\n          \\\"],[10,1],[14,0,\\\"accepted-label\\\"],[12],[1,\\\"\\\\n            \\\"],[1,[28,[32,5],[\\\"solved.solution\\\"],null]],[1,\\\"\\\\n          \\\"],[13],[1,\\\"\\\\n        \\\"],[13],[1,\\\"\\\\n\\\"]],[]]],[1,\\\"    \\\"],[13],[1,\\\"\\\\n  \\\"]],[\\\"@post\\\",\\\"&attrs\\\",\\\"Placeholder\\\"],[\\\"if\\\"]]\",\n        \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-solved/discourse/components/solved-unaccept-answer-button.js\",\n        \"scope\": () => [_truthHelpers.and, _dTooltip.default, _dButton.default, _interpolatedTranslation.default, _userLink.default, _discourseI18n.i18n, _dIcon.default],\n        \"isStrictMode\": true\n      }), this);\n    }\n  }\n  _exports.default = SolvedUnacceptAnswerButton;\n  async function unacceptPost(post) {\n    if (!post.can_accept_answer || !post.accepted_answer) {\n      return;\n    }\n    const topic = post.topic;\n    try {\n      await (0, _ajax.ajax)(\"/solution/unaccept\", {\n        type: \"POST\",\n        data: {\n          id: post.id\n        }\n      });\n      topic.setAcceptedSolution(undefined);\n    } catch (e) {\n      (0, _ajaxError.popupAjaxError)(e);\n    }\n  }\n});","define(\"discourse/plugins/discourse-solved/discourse/connectors/after-topic-status/solved-status\", [\"exports\", \"discourse/helpers/d-icon\", \"discourse/truth-helpers\", \"discourse-i18n\", \"@ember/component\", \"@ember/template-factory\", \"@ember/component/template-only\"], function (_exports, _dIcon, _truthHelpers, _discourseI18n, _component, _templateFactory, _templateOnly) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const SolvedStatus = (0, _component.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n  /*\n    \n    {{~#if\n      (or @outletArgs.topic.has_accepted_answer @outletArgs.topic.accepted_answer)\n    ~}}\n      <span\n        title={{i18n \"topic_statuses.solved.help\"}}\n        class=\"topic-status solved\"\n      >{{icon \"far-square-check\"}}</span>\n    {{~else if\n      (and\n        @outletArgs.topic.can_have_answer (eq @outletArgs.context \"topic-list\")\n      )\n    ~}}\n      <span\n        title={{i18n \"solved.has_no_accepted_answer\"}}\n        class=\"topic-status\"\n      >{{icon \"far-square\"}}</span>\n    {{~/if~}}\n  \n  */\n  {\n    \"id\": \"NCefG4Mv\",\n    \"block\": \"[[[41,[28,[32,0],[[30,1,[\\\"topic\\\",\\\"has_accepted_answer\\\"]],[30,1,[\\\"topic\\\",\\\"accepted_answer\\\"]]],null],[[[10,1],[15,\\\"title\\\",[28,[32,1],[\\\"topic_statuses.solved.help\\\"],null]],[14,0,\\\"topic-status solved\\\"],[12],[1,[28,[32,2],[\\\"far-square-check\\\"],null]],[13]],[]],[[[41,[28,[32,3],[[30,1,[\\\"topic\\\",\\\"can_have_answer\\\"]],[28,[32,4],[[30,1,[\\\"context\\\"]],\\\"topic-list\\\"],null]],null],[[[10,1],[15,\\\"title\\\",[28,[32,1],[\\\"solved.has_no_accepted_answer\\\"],null]],[14,0,\\\"topic-status\\\"],[12],[1,[28,[32,2],[\\\"far-square\\\"],null]],[13]],[]],null]],[]]]],[\\\"@outletArgs\\\"],[\\\"if\\\"]]\",\n    \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-solved/discourse/connectors/after-topic-status/solved-status.js\",\n    \"scope\": () => [_truthHelpers.or, _discourseI18n.i18n, _dIcon.default, _truthHelpers.and, _truthHelpers.eq],\n    \"isStrictMode\": true\n  }), (0, _templateOnly.default)(undefined, \"solved-status:SolvedStatus\"));\n  var _default = _exports.default = SolvedStatus;\n});","define(\"discourse/plugins/discourse-solved/discourse/connectors/bread-crumbs-right/solved-status-filter\", [\"exports\", \"@glimmer/component\", \"@ember/helper\", \"@ember/object\", \"@ember/service\", \"discourse/select-kit/components/combo-box\", \"discourse-i18n\", \"@ember/component\", \"@ember/template-factory\"], function (_exports, _component, _helper, _object, _service, _comboBox, _discourseI18n, _component2, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const QUERY_PARAM_VALUES = {\n    solved: \"yes\",\n    unsolved: \"no\",\n    all: null\n  };\n  const UX_VALUES = {\n    yes: \"solved\",\n    no: \"unsolved\"\n  };\n  class SolvedStatusFilter extends _component.default {\n    static shouldRender(args, context, owner) {\n      const router = owner.lookup(\"service:router\");\n      if (!context.siteSettings.show_filter_by_solved_status || router.currentRouteName === \"discovery.categories\" || args.editingCategory) {\n        return false;\n      } else if (context.siteSettings.allow_solved_on_all_topics || router.currentRouteName === \"tag.show\") {\n        return true;\n      } else {\n        return args.currentCategory?.enable_accepted_answers;\n      }\n    }\n    static {\n      dt7948.g(this.prototype, \"router\", [_service.service]);\n    }\n    #router = (dt7948.i(this, \"router\"), void 0);\n    static {\n      dt7948.g(this.prototype, \"siteSettings\", [_service.service]);\n    }\n    #siteSettings = (dt7948.i(this, \"siteSettings\"), void 0);\n    get statuses() {\n      return [\"all\", \"solved\", \"unsolved\"].map(status => {\n        return {\n          name: (0, _discourseI18n.i18n)(`solved.topic_status_filter.${status}`),\n          value: status\n        };\n      });\n    }\n    get status() {\n      const queryParamValue = this.router.currentRoute.queryParams?.solved;\n      return UX_VALUES[queryParamValue] || \"all\";\n    }\n    changeStatus(newStatus) {\n      this.router.transitionTo({\n        queryParams: {\n          solved: QUERY_PARAM_VALUES[newStatus]\n        }\n      });\n    }\n    static {\n      dt7948.n(this.prototype, \"changeStatus\", [_object.action]);\n    }\n    static {\n      (0, _component2.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n      /*\n        \n          {{#if this.siteSettings.solved_enabled}}\n            <li>\n              <ComboBox\n                @content={{this.statuses}}\n                @value={{this.status}}\n                @valueProperty=\"value\"\n                @options={{hash caretDownIcon=\"caret-right\" caretUpIcon=\"caret-down\"}}\n                @onChange={{this.changeStatus}}\n                class=\"solved-status-filter\"\n              />\n            </li>\n          {{/if}}\n        \n      */\n      {\n        \"id\": \"AS1CCvUR\",\n        \"block\": \"[[[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"siteSettings\\\",\\\"solved_enabled\\\"]],[[[1,\\\"      \\\"],[10,\\\"li\\\"],[12],[1,\\\"\\\\n        \\\"],[8,[32,0],[[24,0,\\\"solved-status-filter\\\"]],[[\\\"@content\\\",\\\"@value\\\",\\\"@valueProperty\\\",\\\"@options\\\",\\\"@onChange\\\"],[[30,0,[\\\"statuses\\\"]],[30,0,[\\\"status\\\"]],\\\"value\\\",[28,[32,1],null,[[\\\"caretDownIcon\\\",\\\"caretUpIcon\\\"],[\\\"caret-right\\\",\\\"caret-down\\\"]]],[30,0,[\\\"changeStatus\\\"]]]],null],[1,\\\"\\\\n      \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"  \\\"]],[],[\\\"if\\\"]]\",\n        \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-solved/discourse/connectors/bread-crumbs-right/solved-status-filter.js\",\n        \"scope\": () => [_comboBox.default, _helper.hash],\n        \"isStrictMode\": true\n      }), this);\n    }\n  }\n  _exports.default = SolvedStatusFilter;\n});","define(\"discourse/plugins/discourse-solved/discourse/connectors/category-custom-settings/solved-settings\", [\"exports\", \"@ember/component\", \"@ember/helper\", \"@ember/modifier\", \"@ember/object\", \"@ember-decorators/component\", \"discourse/helpers/with-event-value\", \"discourse-i18n\", \"@ember/template-factory\"], function (_exports, _component, _helper, _modifier, _object, _component2, _withEventValue, _discourseI18n, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  /* eslint-disable ember/no-classic-components */\n  const SolvedSettings = dt7948.c(class SolvedSettings extends _component.default {\n    onChangeSetting(value) {\n      this.set(\"category.custom_fields.enable_accepted_answers\", value ? \"true\" : \"false\");\n    }\n    static {\n      dt7948.n(this.prototype, \"onChangeSetting\", [_object.action]);\n    }\n    static {\n      (0, _component.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n      /*\n        \n          <h3>{{i18n \"solved.title\"}}</h3>\n      \n          {{#unless this.siteSettings.allow_solved_on_all_topics}}\n            <section class=\"field\">\n              <div class=\"enable-accepted-answer\">\n                <label class=\"checkbox-label\">\n                  <input\n                    {{on\n                      \"change\"\n                      (withEventValue this.onChangeSetting \"target.checked\")\n                    }}\n                    checked={{this.category.enable_accepted_answers}}\n                    type=\"checkbox\"\n                  />\n                  {{i18n \"solved.allow_accepted_answers\"}}\n                </label>\n              </div>\n            </section>\n          {{/unless}}\n      \n          <section class=\"field auto-close-solved-topics\">\n            <label for=\"auto-close-solved-topics\">\n              {{i18n \"solved.solved_topics_auto_close_hours\"}}\n            </label>\n            <input\n              {{on\n                \"input\"\n                (withEventValue\n                  (fn\n                    (mut this.category.custom_fields.solved_topics_auto_close_hours)\n                  )\n                )\n              }}\n              value={{this.category.custom_fields.solved_topics_auto_close_hours}}\n              type=\"number\"\n              min=\"0\"\n              id=\"auto-close-solved-topics\"\n            />\n          </section>\n        \n      */\n      {\n        \"id\": \"UfBfPHC8\",\n        \"block\": \"[[[1,\\\"\\\\n    \\\"],[10,\\\"h3\\\"],[12],[1,[28,[32,0],[\\\"solved.title\\\"],null]],[13],[1,\\\"\\\\n\\\\n\\\"],[41,[51,[30,0,[\\\"siteSettings\\\",\\\"allow_solved_on_all_topics\\\"]]],[[[1,\\\"      \\\"],[10,\\\"section\\\"],[14,0,\\\"field\\\"],[12],[1,\\\"\\\\n        \\\"],[10,0],[14,0,\\\"enable-accepted-answer\\\"],[12],[1,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[14,0,\\\"checkbox-label\\\"],[12],[1,\\\"\\\\n            \\\"],[11,\\\"input\\\"],[16,\\\"checked\\\",[30,0,[\\\"category\\\",\\\"enable_accepted_answers\\\"]]],[24,4,\\\"checkbox\\\"],[4,[32,1],[\\\"change\\\",[28,[32,2],[[30,0,[\\\"onChangeSetting\\\"]],\\\"target.checked\\\"],null]],null],[12],[13],[1,\\\"\\\\n            \\\"],[1,[28,[32,0],[\\\"solved.allow_accepted_answers\\\"],null]],[1,\\\"\\\\n          \\\"],[13],[1,\\\"\\\\n        \\\"],[13],[1,\\\"\\\\n      \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"\\\\n    \\\"],[10,\\\"section\\\"],[14,0,\\\"field auto-close-solved-topics\\\"],[12],[1,\\\"\\\\n      \\\"],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"auto-close-solved-topics\\\"],[12],[1,\\\"\\\\n        \\\"],[1,[28,[32,0],[\\\"solved.solved_topics_auto_close_hours\\\"],null]],[1,\\\"\\\\n      \\\"],[13],[1,\\\"\\\\n      \\\"],[11,\\\"input\\\"],[16,2,[30,0,[\\\"category\\\",\\\"custom_fields\\\",\\\"solved_topics_auto_close_hours\\\"]]],[24,\\\"min\\\",\\\"0\\\"],[24,1,\\\"auto-close-solved-topics\\\"],[24,4,\\\"number\\\"],[4,[32,1],[\\\"input\\\",[28,[32,2],[[28,[32,3],[[28,[31,1],[[30,0,[\\\"category\\\",\\\"custom_fields\\\",\\\"solved_topics_auto_close_hours\\\"]]],null]],null]],null]],null],[12],[13],[1,\\\"\\\\n    \\\"],[13],[1,\\\"\\\\n  \\\"]],[],[\\\"unless\\\",\\\"mut\\\"]]\",\n        \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-solved/discourse/connectors/category-custom-settings/solved-settings.js\",\n        \"scope\": () => [_discourseI18n.i18n, _modifier.on, _withEventValue.default, _helper.fn],\n        \"isStrictMode\": true\n      }), this);\n    }\n  }, [(0, _component2.classNames)(\"category-custom-settings-outlet\", \"solved-settings\"), (0, _component2.tagName)(\"\")]);\n  var _default = _exports.default = SolvedSettings;\n});","define(\"discourse/plugins/discourse-solved/discourse/connectors/topic-navigation/no-answer\", [\"exports\", \"@ember/component\", \"@ember/runloop\", \"@ember-decorators/component\", \"discourse/components/topic-navigation-popup\", \"discourse/lib/environment\", \"discourse-i18n\", \"@ember/template-factory\"], function (_exports, _component, _runloop, _component2, _topicNavigationPopup, _environment, _discourseI18n, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  /* eslint-disable ember/no-classic-components */\n\n  const ONE_WEEK = 7 * 24 * 60 * 60 * 1000; // milliseconds\n  const MAX_DURATION_WITH_NO_ANSWER = ONE_WEEK;\n  const DISPLAY_DELAY = (0, _environment.isTesting)() ? 0 : 2000;\n  const NoAnswer = dt7948.c(class NoAnswer extends _component.default {\n    static shouldRender(args, context) {\n      return !context.site.mobileView;\n    }\n    init() {\n      super.init(...arguments);\n      this.set(\"show\", false);\n      this.setProperties({\n        oneWeek: ONE_WEEK,\n        show: false\n      });\n      (0, _runloop.later)(() => {\n        if (!this.element || this.isDestroying || this.isDestroyed) {\n          return;\n        }\n        const topic = this.topic;\n        const currentUser = this.currentUser;\n        // show notice if:\n        // - user can accept answer\n        // - it does not have an accepted answer\n        // - topic is old\n        // - topic has at least one reply from another user that can be accepted\n        if (!topic.accepted_answer && currentUser && topic.user_id === currentUser.id && moment() - moment(topic.created_at) > MAX_DURATION_WITH_NO_ANSWER && topic.postStream.posts.some(post => post.user_id !== currentUser.id && post.can_accept_answer)) {\n          this.set(\"show\", true);\n        }\n      }, DISPLAY_DELAY);\n    }\n    static {\n      (0, _component.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n      /*\n        \n          {{#if this.show}}\n            <TopicNavigationPopup\n              @popupId=\"solved-notice\"\n              @dismissDuration={{this.oneWeek}}\n            >\n              <h2>{{i18n \"solved.no_answer.title\"}}</h2>\n              <p>{{i18n \"solved.no_answer.description\"}}</p>\n            </TopicNavigationPopup>\n          {{/if}}\n        \n      */\n      {\n        \"id\": \"DUaFHqWG\",\n        \"block\": \"[[[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"show\\\"]],[[[1,\\\"      \\\"],[8,[32,0],null,[[\\\"@popupId\\\",\\\"@dismissDuration\\\"],[\\\"solved-notice\\\",[30,0,[\\\"oneWeek\\\"]]]],[[\\\"default\\\"],[[[[1,\\\"\\\\n        \\\"],[10,\\\"h2\\\"],[12],[1,[28,[32,1],[\\\"solved.no_answer.title\\\"],null]],[13],[1,\\\"\\\\n        \\\"],[10,2],[12],[1,[28,[32,1],[\\\"solved.no_answer.description\\\"],null]],[13],[1,\\\"\\\\n      \\\"]],[]]]]],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"  \\\"]],[],[\\\"if\\\"]]\",\n        \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-solved/discourse/connectors/topic-navigation/no-answer.js\",\n        \"scope\": () => [_topicNavigationPopup.default, _discourseI18n.i18n],\n        \"isStrictMode\": true\n      }), this);\n    }\n  }, [(0, _component2.classNames)(\"topic-navigation-outlet\", \"no-answer\"), (0, _component2.tagName)(\"div\")]);\n  var _default = _exports.default = NoAnswer;\n});","define(\"discourse/plugins/discourse-solved/discourse/connectors/user-activity-bottom/solved-list\", [\"exports\", \"@glimmer/component\", \"@ember/routing\", \"@ember/service\", \"discourse/helpers/d-icon\", \"discourse-i18n\", \"@ember/component\", \"@ember/template-factory\"], function (_exports, _component, _routing, _service, _dIcon, _discourseI18n, _component2, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  class SolvedList extends _component.default {\n    static {\n      dt7948.g(this.prototype, \"siteSettings\", [_service.service]);\n    }\n    #siteSettings = (dt7948.i(this, \"siteSettings\"), void 0);\n    static {\n      (0, _component2.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n      /*\n        \n          {{#if this.siteSettings.solved_enabled}}\n            <li class=\"user-activity-bottom-outlet solved-list\">\n              <LinkTo @route=\"userActivity.solved\">\n                {{icon \"square-check\"}}\n                {{i18n \"solved.title\"}}\n              </LinkTo>\n            </li>\n          {{/if}}\n        \n      */\n      {\n        \"id\": \"LJc+ULJn\",\n        \"block\": \"[[[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"siteSettings\\\",\\\"solved_enabled\\\"]],[[[1,\\\"      \\\"],[10,\\\"li\\\"],[14,0,\\\"user-activity-bottom-outlet solved-list\\\"],[12],[1,\\\"\\\\n        \\\"],[8,[32,0],null,[[\\\"@route\\\"],[\\\"userActivity.solved\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n          \\\"],[1,[28,[32,1],[\\\"square-check\\\"],null]],[1,\\\"\\\\n          \\\"],[1,[28,[32,2],[\\\"solved.title\\\"],null]],[1,\\\"\\\\n        \\\"]],[]]]]],[1,\\\"\\\\n      \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"  \\\"]],[],[\\\"if\\\"]]\",\n        \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-solved/discourse/connectors/user-activity-bottom/solved-list.js\",\n        \"scope\": () => [_routing.LinkTo, _dIcon.default, _discourseI18n.i18n],\n        \"isStrictMode\": true\n      }), this);\n    }\n  }\n  _exports.default = SolvedList;\n});","define(\"discourse/plugins/discourse-solved/discourse/connectors/user-card-metadata/accepted-answers\", [\"exports\", \"@ember/component\", \"@ember-decorators/component\", \"discourse-i18n\", \"@ember/template-factory\"], function (_exports, _component, _component2, _discourseI18n, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  /* eslint-disable ember/no-classic-components */\n  const AcceptedAnswers = dt7948.c(class AcceptedAnswers extends _component.default {\n    static {\n      (0, _component.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n      /*\n        \n          {{#if this.user.accepted_answers}}\n            <span class=\"desc\">{{i18n \"solutions\"}}</span>\n            <span>{{this.user.accepted_answers}}</span>\n          {{/if}}\n        \n      */\n      {\n        \"id\": \"bBonTpzd\",\n        \"block\": \"[[[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"user\\\",\\\"accepted_answers\\\"]],[[[1,\\\"      \\\"],[10,1],[14,0,\\\"desc\\\"],[12],[1,[28,[32,0],[\\\"solutions\\\"],null]],[13],[1,\\\"\\\\n      \\\"],[10,1],[12],[1,[30,0,[\\\"user\\\",\\\"accepted_answers\\\"]]],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"  \\\"]],[],[\\\"if\\\"]]\",\n        \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-solved/discourse/connectors/user-card-metadata/accepted-answers.js\",\n        \"scope\": () => [_discourseI18n.i18n],\n        \"isStrictMode\": true\n      }), this);\n    }\n  }, [(0, _component2.classNames)(\"user-card-metadata-outlet\", \"accepted-answers\"), (0, _component2.tagName)(\"div\")]);\n  var _default = _exports.default = AcceptedAnswers;\n});","define(\"discourse/plugins/discourse-solved/discourse/connectors/user-summary-stat/solved-count\", [\"exports\", \"@glimmer/component\", \"@ember/routing\", \"@ember/service\", \"discourse/components/user-stat\", \"discourse/truth-helpers\", \"@ember/component\", \"@ember/template-factory\"], function (_exports, _component, _routing, _service, _userStat, _truthHelpers, _component2, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  class SolvedCount extends _component.default {\n    static {\n      dt7948.g(this.prototype, \"siteSettings\", [_service.service]);\n    }\n    #siteSettings = (dt7948.i(this, \"siteSettings\"), void 0);\n    static {\n      (0, _component2.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n      /*\n        \n          {{#if\n            (and this.siteSettings.solved_enabled @outletArgs.model.solved_count)\n          }}\n            <li class=\"user-summary-stat-outlet solved-count linked-stat\">\n              <LinkTo @route=\"userActivity.solved\">\n                <UserStat\n                  @value={{@outletArgs.model.solved_count}}\n                  @label=\"solved.solution_summary\"\n                  @icon=\"square-check\"\n                />\n              </LinkTo>\n            </li>\n          {{/if}}\n        \n      */\n      {\n        \"id\": \"lOzzEwuZ\",\n        \"block\": \"[[[1,\\\"\\\\n\\\"],[41,[28,[32,0],[[30,0,[\\\"siteSettings\\\",\\\"solved_enabled\\\"]],[30,1,[\\\"model\\\",\\\"solved_count\\\"]]],null],[[[1,\\\"      \\\"],[10,\\\"li\\\"],[14,0,\\\"user-summary-stat-outlet solved-count linked-stat\\\"],[12],[1,\\\"\\\\n        \\\"],[8,[32,1],null,[[\\\"@route\\\"],[\\\"userActivity.solved\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n          \\\"],[8,[32,2],null,[[\\\"@value\\\",\\\"@label\\\",\\\"@icon\\\"],[[30,1,[\\\"model\\\",\\\"solved_count\\\"]],\\\"solved.solution_summary\\\",\\\"square-check\\\"]],null],[1,\\\"\\\\n        \\\"]],[]]]]],[1,\\\"\\\\n      \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"  \\\"]],[\\\"@outletArgs\\\"],[\\\"if\\\"]]\",\n        \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-solved/discourse/connectors/user-summary-stat/solved-count.js\",\n        \"scope\": () => [_truthHelpers.and, _routing.LinkTo, _userStat.default],\n        \"isStrictMode\": true\n      }), this);\n    }\n  }\n  _exports.default = SolvedCount;\n});","define(\"discourse/plugins/discourse-solved/discourse/initializers/add-topic-list-class\", [\"exports\", \"discourse/lib/plugin-api\"], function (_exports, _pluginApi) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _exports.default = {\n    name: \"add-topic-list-class\",\n    initialize() {\n      (0, _pluginApi.withPluginApi)(api => {\n        api.registerValueTransformer(\"topic-list-item-class\", ({\n          value,\n          context\n        }) => {\n          if (context.topic.has_accepted_answer) {\n            value.push(\"status-solved\");\n          }\n          return value;\n        });\n      });\n    }\n  };\n});","define(\"discourse/plugins/discourse-solved/discourse/initializers/extend-for-solved-button\", [\"exports\", \"@glimmer/component\", \"@glimmer/tracking\", \"discourse/lib/plugin-api\", \"discourse-i18n\", \"discourse/plugins/discourse-solved/discourse/components/solved-accept-answer-button\", \"discourse/plugins/discourse-solved/discourse/components/solved-accepted-answer\", \"discourse/plugins/discourse-solved/discourse/components/solved-unaccept-answer-button\", \"@ember/component\", \"@ember/template-factory\"], function (_exports, _component, _tracking, _pluginApi, _discourseI18n, _solvedAcceptAnswerButton, _solvedAcceptedAnswer, _solvedUnacceptAnswerButton, _component2, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  function initializeWithApi(api) {\n    customizePost(api);\n    customizePostMenu(api);\n    handleMessages(api);\n    if (api.addDiscoveryQueryParam) {\n      api.addDiscoveryQueryParam(\"solved\", {\n        replace: true,\n        refreshModel: true\n      });\n    }\n    api.modifyClass(\"model:topic\", Superclass => class extends Superclass {\n      static {\n        dt7948.g(this.prototype, \"accepted_answer\", [_tracking.tracked]);\n      }\n      #accepted_answer = (dt7948.i(this, \"accepted_answer\"), void 0);\n      static {\n        dt7948.g(this.prototype, \"has_accepted_answer\", [_tracking.tracked]);\n      }\n      #has_accepted_answer = (dt7948.i(this, \"has_accepted_answer\"), void 0);\n      setAcceptedSolution(acceptedAnswer) {\n        this.postStream?.posts?.forEach(post => {\n          if (!acceptedAnswer) {\n            post.setProperties({\n              accepted_answer: false,\n              topic_accepted_answer: false\n            });\n          } else if (post.post_number > 1) {\n            post.setProperties(acceptedAnswer.post_number === post.post_number ? {\n              accepted_answer: true,\n              topic_accepted_answer: true\n            } : {\n              accepted_answer: false,\n              topic_accepted_answer: true\n            });\n          }\n        });\n        this.accepted_answer = acceptedAnswer;\n        this.has_accepted_answer = !!acceptedAnswer;\n      }\n    });\n  }\n  function customizePost(api) {\n    api.addTrackedPostProperties(\"can_accept_answer\", \"accepted_answer\", \"topic_accepted_answer\");\n    api.renderAfterWrapperOutlet(\"post-content-cooked-html\", class extends _component.default {\n      static shouldRender(args) {\n        return args.post?.post_number === 1 && args.post?.topic?.accepted_answer;\n      }\n      static {\n        (0, _component2.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n        /*\n          \n                <SolvedAcceptedAnswer\n                  @post={{@post}}\n                  @decoratorState={{@decoratorState}}\n                />\n              \n        */\n        {\n          \"id\": \"8OSMBODH\",\n          \"block\": \"[[[1,\\\"\\\\n        \\\"],[8,[32,0],null,[[\\\"@post\\\",\\\"@decoratorState\\\"],[[30,1],[30,2]]],null],[1,\\\"\\\\n      \\\"]],[\\\"@post\\\",\\\"@decoratorState\\\"],[]]\",\n          \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-solved/discourse/initializers/extend-for-solved-button.js\",\n          \"scope\": () => [_solvedAcceptedAnswer.default],\n          \"isStrictMode\": true\n        }), this);\n      }\n    });\n  }\n  function customizePostMenu(api) {\n    api.registerValueTransformer(\"post-menu-buttons\", ({\n      value: dag,\n      context: {\n        post,\n        firstButtonKey,\n        secondLastHiddenButtonKey,\n        lastHiddenButtonKey\n      }\n    }) => {\n      let solvedButton;\n      if (post.accepted_answer) {\n        solvedButton = _solvedUnacceptAnswerButton.default;\n      } else if (post.can_accept_answer) {\n        solvedButton = _solvedAcceptAnswerButton.default;\n      }\n      solvedButton && dag.add(\"solved\", solvedButton, post.topic_accepted_answer && !post.accepted_answer ? {\n        before: lastHiddenButtonKey,\n        after: secondLastHiddenButtonKey\n      } : {\n        before: [\"assign\", firstButtonKey]\n      });\n    });\n  }\n  function handleMessages(api) {\n    const callback = async (controller, message) => {\n      const topic = controller.model;\n      if (topic) {\n        topic.setAcceptedSolution(message.accepted_answer);\n      }\n    };\n    api.registerCustomPostMessageCallback(\"accepted_solution\", callback);\n    api.registerCustomPostMessageCallback(\"unaccepted_solution\", callback);\n  }\n  var _default = _exports.default = {\n    name: \"extend-for-solved-button\",\n    initialize() {\n      (0, _pluginApi.withPluginApi)(initializeWithApi);\n      (0, _pluginApi.withPluginApi)(api => {\n        api.replaceIcon(\"notification.solved.accepted_notification\", \"square-check\");\n      });\n      (0, _pluginApi.withPluginApi)(api => {\n        api.addAdvancedSearchOptions({\n          statusOptions: [{\n            name: (0, _discourseI18n.i18n)(\"search.advanced.statuses.solved\"),\n            value: \"solved\"\n          }, {\n            name: (0, _discourseI18n.i18n)(\"search.advanced.statuses.unsolved\"),\n            value: \"unsolved\"\n          }]\n        });\n      });\n      (0, _pluginApi.withPluginApi)(api => {\n        api.addSearchSuggestion(\"status:solved\");\n        api.addSearchSuggestion(\"status:unsolved\");\n      });\n    }\n  };\n});","define(\"discourse/plugins/discourse-solved/discourse/initializers/solved-admin-plugin-configuration-nav\", [\"exports\", \"discourse/lib/plugin-api\"], function (_exports, _pluginApi) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  const PLUGIN_ID = \"discourse-solved\";\n  var _default = _exports.default = {\n    name: \"solved-admin-plugin-configuration-nav\",\n    initialize(container) {\n      const currentUser = container.lookup(\"service:current-user\");\n      if (!currentUser?.admin) {\n        return;\n      }\n      (0, _pluginApi.withPluginApi)(api => {\n        api.setAdminPluginIcon(PLUGIN_ID, \"far-square-check\");\n      });\n    }\n  };\n});","define(\"discourse/plugins/discourse-solved/discourse/pre-initializers/extend-category-for-solved\", [\"exports\", \"@ember/object\", \"discourse/models/category\"], function (_exports, _object, _category) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _exports.default = {\n    name: \"extend-category-for-solved\",\n    before: \"inject-discourse-objects\",\n    initialize() {\n      _category.default.reopen({\n        enable_accepted_answers: (0, _object.computed)(\"custom_fields.enable_accepted_answers\", {\n          get(fieldName) {\n            return (0, _object.get)(this.custom_fields, fieldName) === \"true\";\n          }\n        })\n      });\n    }\n  };\n});","define(\"discourse/plugins/discourse-solved/discourse/routes/user-activity/solved\", [\"exports\", \"@glimmer/tracking\", \"@ember/object\", \"@ember/service\", \"rsvp\", \"discourse/lib/ajax\", \"discourse/routes/discourse\", \"discourse-i18n\"], function (_exports, _tracking, _object, _service, _rsvp, _ajax, _discourse, _discourseI18n) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  class SolvedPostsStream {\n    static {\n      dt7948.g(this.prototype, \"content\", [_tracking.tracked], function () {\n        return [];\n      });\n    }\n    #content = (dt7948.i(this, \"content\"), void 0);\n    static {\n      dt7948.g(this.prototype, \"loading\", [_tracking.tracked], function () {\n        return false;\n      });\n    }\n    #loading = (dt7948.i(this, \"loading\"), void 0);\n    static {\n      dt7948.g(this.prototype, \"loaded\", [_tracking.tracked], function () {\n        return false;\n      });\n    }\n    #loaded = (dt7948.i(this, \"loaded\"), void 0);\n    static {\n      dt7948.g(this.prototype, \"itemsLoaded\", [_tracking.tracked], function () {\n        return 0;\n      });\n    }\n    #itemsLoaded = (dt7948.i(this, \"itemsLoaded\"), void 0);\n    static {\n      dt7948.g(this.prototype, \"canLoadMore\", [_tracking.tracked], function () {\n        return true;\n      });\n    }\n    #canLoadMore = (dt7948.i(this, \"canLoadMore\"), void 0);\n    constructor({\n      username,\n      siteCategories\n    }) {\n      this.username = username;\n      this.siteCategories = siteCategories;\n    }\n    get noContent() {\n      return this.loaded && this.content.length === 0;\n    }\n    findItems() {\n      if (this.loading || !this.canLoadMore) {\n        return _rsvp.Promise.resolve();\n      }\n      this.loading = true;\n      const limit = 20;\n      return (0, _ajax.ajax)(`/solution/by_user.json?username=${this.username}&offset=${this.itemsLoaded}&limit=${limit}`).then(result => {\n        const userSolvedPosts = result.user_solved_posts || [];\n        if (userSolvedPosts.length === 0) {\n          this.canLoadMore = false;\n          return;\n        }\n        const posts = userSolvedPosts.map(p => {\n          const post = _object.default.create(p);\n          post.set(\"titleHtml\", post.topic_title);\n          post.set(\"postUrl\", post.url);\n          if (post.category_id && this.siteCategories) {\n            post.set(\"category\", this.siteCategories.find(c => c.id === post.category_id));\n          }\n          return post;\n        });\n        this.content = [...this.content, ...posts];\n        this.itemsLoaded = this.itemsLoaded + userSolvedPosts.length;\n        if (userSolvedPosts.length < limit) {\n          this.canLoadMore = false;\n        }\n      }).finally(() => {\n        this.loaded = true;\n        this.loading = false;\n      });\n    }\n  }\n  class UserActivitySolved extends _discourse.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, \"currentUser\", [_service.service]);\n    }\n    #currentUser = (dt7948.i(this, \"currentUser\"), void 0);\n    model() {\n      const user = this.modelFor(\"user\");\n      const stream = new SolvedPostsStream({\n        username: user.username,\n        siteCategories: this.site.categories\n      });\n      return stream.findItems().then(() => {\n        return {\n          stream,\n          emptyState: this.emptyState()\n        };\n      });\n    }\n    setupController(controller, model) {\n      controller.setProperties({\n        model,\n        emptyState: this.emptyState()\n      });\n    }\n    renderTemplate() {\n      this.render(\"user-activity-solved\");\n    }\n    emptyState() {\n      const user = this.modelFor(\"user\");\n      let title, body;\n      if (this.currentUser && user.id === this.currentUser.id) {\n        title = (0, _discourseI18n.i18n)(\"solved.no_solved_topics_title\");\n        body = (0, _discourseI18n.i18n)(\"solved.no_solved_topics_body\");\n      } else {\n        title = (0, _discourseI18n.i18n)(\"solved.no_solved_topics_title_others\", {\n          username: user.username\n        });\n        body = \"\";\n      }\n      return {\n        title,\n        body\n      };\n    }\n  }\n  _exports.default = UserActivitySolved;\n});","define(\"discourse/plugins/discourse-solved/discourse/solved-route-map\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _exports.default = {\n    resource: \"user.userActivity\",\n    map() {\n      this.route(\"solved\");\n    }\n  };\n});","define(\"discourse/plugins/discourse-solved/discourse/templates/user-activity/solved\", [\"exports\", \"discourse/components/empty-state\", \"discourse/components/user-stream\", \"@ember/component\", \"@ember/template-factory\", \"@ember/component/template-only\"], function (_exports, _emptyState, _userStream, _component, _templateFactory, _templateOnly) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _exports.default = (0, _component.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n  /*\n    \n    {{#if @controller.model.stream.noContent}}\n      <EmptyState\n        @title={{@controller.model.emptyState.title}}\n        @body={{@controller.model.emptyState.body}}\n      />\n    {{else}}\n      <UserStream @stream={{@controller.model.stream}} />\n    {{/if}}\n  \n  */\n  {\n    \"id\": \"O3JRc9NF\",\n    \"block\": \"[[[1,\\\"\\\\n\\\"],[41,[30,1,[\\\"model\\\",\\\"stream\\\",\\\"noContent\\\"]],[[[1,\\\"    \\\"],[8,[32,0],null,[[\\\"@title\\\",\\\"@body\\\"],[[30,1,[\\\"model\\\",\\\"emptyState\\\",\\\"title\\\"]],[30,1,[\\\"model\\\",\\\"emptyState\\\",\\\"body\\\"]]]],null],[1,\\\"\\\\n\\\"]],[]],[[[1,\\\"    \\\"],[8,[32,1],null,[[\\\"@stream\\\"],[[30,1,[\\\"model\\\",\\\"stream\\\"]]]],null],[1,\\\"\\\\n\\\"]],[]]]],[\\\"@controller\\\"],[\\\"if\\\"]]\",\n    \"moduleName\": \"/var/www/discourse/frontend/discourse/discourse/plugins/discourse-solved/discourse/templates/user-activity/solved.js\",\n    \"scope\": () => [_emptyState.default, _userStream.default],\n    \"isStrictMode\": true\n  }), (0, _templateOnly.default)(undefined, \"solved\"));\n});"],"mappings":"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","ignoreList":[]}