diff --git a/js/dist/admin.js b/js/dist/admin.js index 5a0d693..2d36392 100644 --- a/js/dist/admin.js +++ b/js/dist/admin.js @@ -1,1029 +1,2 @@ -/******/ (() => { // webpackBootstrap -/******/ // runtime can't be in strict mode because a global variable is assign and maybe created. -/******/ var __webpack_modules__ = ({ - -/***/ "./src/admin/components/Settings.js": -/*!******************************************!*\ - !*** ./src/admin/components/Settings.js ***! - \******************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Settings) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js"); -/* harmony import */ var flarum_admin_app__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! flarum/admin/app */ "flarum/admin/app"); -/* harmony import */ var flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(flarum_admin_app__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var flarum_admin_components_ExtensionPage__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! flarum/admin/components/ExtensionPage */ "flarum/admin/components/ExtensionPage"); -/* harmony import */ var flarum_admin_components_ExtensionPage__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(flarum_admin_components_ExtensionPage__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var flarum_admin_components_UploadImageButton__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! flarum/admin/components/UploadImageButton */ "flarum/admin/components/UploadImageButton"); -/* harmony import */ var flarum_admin_components_UploadImageButton__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(flarum_admin_components_UploadImageButton__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _helpers_isExtensionInstalled__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../helpers/isExtensionInstalled */ "./src/admin/helpers/isExtensionInstalled.js"); -/* harmony import */ var _helpers_isExtensionActive__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../helpers/isExtensionActive */ "./src/admin/helpers/isExtensionActive.js"); -/* harmony import */ var flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! flarum/common/helpers/icon */ "flarum/common/helpers/icon"); -/* harmony import */ var flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6__); - - - - - - - -var Settings = /*#__PURE__*/function (_ExtensionPage) { - function Settings() { - return _ExtensionPage.apply(this, arguments) || this; - } - (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(Settings, _ExtensionPage); - var _proto = Settings.prototype; - _proto.content = function content() { - /* Supported third party extensions' info */ - var viewsExtension = { - id: 'flarumite-simple-discussion-views', - name: 'Flarumite Simple Discussion Views', - url: 'https://flarum.org/extension/flarumite/simple-discussion-views' - }; - var blogExtension = { - id: 'v17development-blog', - name: 'Flarum Blog', - url: 'https://flarum.org/extension/v17development/flarum-blog' - }; - var repostExtension = { - id: 'shebaoting-repost', - name: 'Repost', - url: 'https://flarum.org/extension/shebaoting/repost' - }; - var warningIcon = flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6___default()("fas fa-exclamation-triangle"); - return m("div", { - className: "DiscussionCardsSettings" - }, m("div", { - className: "container" - }, m("div", { - className: "DiscussionCardsSettings--content" - }, m("h3", null, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.where_title")), m("p", { - className: "helpText" - }, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.where_info")), m("div", { - className: "Section" - }, this.buildSettingComponent({ - type: "flarum-tags.select-tags", - setting: "walsgit_discussion_cards_allowedTags", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.allowedTags_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.allowedTags_help"), - options: { - requireParentTag: false - } - }), this.buildSettingComponent({ - type: "switch", - setting: "walsgit_discussion_cards_onIndexPage", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.onIndexPage_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.onIndexPage_help") - })), m("h3", null, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.primaryCardOptions_title")), m("p", { - className: "helpText" - }, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.primaryCardOptions_info")), m("div", { - className: "Section" - }, this.buildSettingComponent({ - type: "number", - className: 'DC-Number', - setting: "walsgit_discussion_cards_primaryCards", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.primaryCards_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.primaryCards_help"), - min: 0, - step: 1, - placeholder: 4 - }), this.buildSettingComponent({ - type: "number", - className: 'DC-Number', - setting: "walsgit_discussion_cards_desktopCardWidth", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.desktopCardWidth_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.desktopCardWidth_help"), - min: 10, - max: 100, - step: 1, - placeholder: 49 - }), this.buildSettingComponent({ - type: "number", - className: 'DC-Number', - setting: "walsgit_discussion_cards_tabletCardWidth", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.tabletCardWidth_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.tabletCardWidth_help"), - min: 10, - max: 100, - step: 1, - placeholder: 49 - })), m("h3", null, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.cardOptions_title")), m("p", { - className: "helpText" - }, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.cardOptions_info")), m("div", { - className: "Section" - }, m("div", { - className: "DC-DefaultImageSettings" - }, m("h4", null, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.defaultImage_title")), m("p", { - className: "helpText" - }, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.defaultImage_info")), flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().forum.attribute("walsgitDiscussionCardsDefaultImage") === null ? m("div", { - className: "imgStub" - }) : m("img", { - className: "DC-UserUploadedImage", - src: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().forum.attribute("baseUrl") + "/assets/" + flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().forum.attribute("walsgitDiscussionCardsDefaultImage") - }), m((flarum_admin_components_UploadImageButton__WEBPACK_IMPORTED_MODULE_3___default()), { - name: "walsgit_discussion_cards_default_image", - "class": "DC-UploadImageBtn" - })), this.buildSettingComponent({ - type: "switch", - setting: "walsgit_discussion_cards_previewText", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.previewText_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.previewText_help") - }), this.buildSettingComponent({ - type: "switch", - setting: "walsgit_discussion_cards_showAuthor", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showAuthor_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showAuthor_help") - }), this.buildSettingComponent({ - type: "switch", - setting: "walsgit_discussion_cards_showReplies", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showReplies_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showReplies_help") - }), this.buildSettingComponent({ - type: "switch", - setting: "walsgit_discussion_cards_showRepliesOnRight", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showRepliesOnRight_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showRepliesOnRight_help"), - disabled: (0,_helpers_isExtensionActive__WEBPACK_IMPORTED_MODULE_5__["default"])(viewsExtension.id) ? false : true - }), this.buildSettingComponent({ - type: "switch", - setting: "walsgit_discussion_cards_showLastPostInfo", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showLastPostInfo_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showLastPostInfo_help"), - disabled: (0,_helpers_isExtensionActive__WEBPACK_IMPORTED_MODULE_5__["default"])(viewsExtension.id) ? false : true - }), this.buildSettingComponent({ - type: "switch", - setting: "walsgit_discussion_cards_showBadges", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showBadges_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showBadges_help") - }), this.buildSettingComponent({ - type: "switch", - setting: "walsgit_discussion_cards_markReadCards", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.markReadCards_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.markReadCards_help") - })), m("h3", null, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.otherOptions_title")), m("p", { - className: "helpText" - }, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.otherOptions_info")), m("div", { - className: "Section" - }, m("h4", null, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showViews_title_start"), m("a", { - href: viewsExtension.url, - target: "_blank", - rel: "noopener noreferrer" - }, viewsExtension.name), flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showViews_title_end")), m("div", { - className: "helpText" - }, m("em", null, !(0,_helpers_isExtensionInstalled__WEBPACK_IMPORTED_MODULE_4__["default"])(viewsExtension.id) ? +flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.viewsExtension_notInstalled", { - icon: warningIcon - }) : !(0,_helpers_isExtensionActive__WEBPACK_IMPORTED_MODULE_5__["default"])(viewsExtension.id) ? flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.viewsExtension_notActivated", { - icon: warningIcon - }) : '')), this.buildSettingComponent({ - type: "switch", - setting: "walsgit_discussion_cards_showViews", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showViews_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.showViews_help"), - disabled: (0,_helpers_isExtensionActive__WEBPACK_IMPORTED_MODULE_5__["default"])(viewsExtension.id) ? false : true - }), m("hr", null), m("h4", null, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.blogExtension_title_start"), m("a", { - href: blogExtension.url, - target: "_blank", - rel: "noopener noreferrer" - }, blogExtension.name), flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.blogExtension_title_end")), m("div", { - className: "helpText" - }, m("em", null, !(0,_helpers_isExtensionInstalled__WEBPACK_IMPORTED_MODULE_4__["default"])(blogExtension.id) ? +flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.blogExtension_notInstalled", { - icon: warningIcon - }) : !(0,_helpers_isExtensionActive__WEBPACK_IMPORTED_MODULE_5__["default"])(blogExtension.id) ? flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.blogExtension_notActivated", { - icon: warningIcon - }) : '')), this.buildSettingComponent({ - type: "switch", - setting: "walsgit_discussion_cards_useBlogImages", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.useBlogImages_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.useBlogImages_help"), - disabled: (0,_helpers_isExtensionActive__WEBPACK_IMPORTED_MODULE_5__["default"])(blogExtension.id) ? false : true - }), this.buildSettingComponent({ - type: "switch", - setting: "walsgit_discussion_cards_useBlogSummary", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.useBlogSummary_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.useBlogSummary_help"), - disabled: (0,_helpers_isExtensionActive__WEBPACK_IMPORTED_MODULE_5__["default"])(blogExtension.id) ? false : true - }), m("hr", null), m("h4", null, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.repostExtension_title_start"), m("a", { - href: repostExtension.url, - target: "_blank", - rel: "noopener noreferrer" - }, repostExtension.name), flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.repostExtension_title_end")), m("div", { - className: "helpText" - }, m("em", null, !(0,_helpers_isExtensionInstalled__WEBPACK_IMPORTED_MODULE_4__["default"])(repostExtension.id) ? +flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.repostExtension_notInstalled", { - icon: warningIcon - }) : !(0,_helpers_isExtensionActive__WEBPACK_IMPORTED_MODULE_5__["default"])(repostExtension.id) ? flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.repostExtension_notActivated", { - icon: warningIcon - }) : '')), this.buildSettingComponent({ - type: "switch", - setting: "walsgit_discussion_cards_allowRepostLinks", - label: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.allowRepostLinks_label"), - help: flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans("walsgit_discussion_cards.admin.settings.general.allowRepostLinks_help"), - disabled: (0,_helpers_isExtensionActive__WEBPACK_IMPORTED_MODULE_5__["default"])(repostExtension.id) ? false : true - })), this.submitButton()))); - }; - _proto.onsubmit = function onsubmit() { - var primaryCards = Number(this.setting('walsgit_discussion_cards_primaryCards')()); - var desktopCardWidth = Number(this.setting('walsgit_discussion_cards_desktopCardWidth')()); - var tabletCardWidth = Number(this.setting('walsgit_discussion_cards_tabletCardWidth')()); - if (primaryCards < 0 || isNaN(primaryCards)) { - flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().alerts.show({ - type: 'error' - }, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans('walsgit_discussion_cards.admin.errors.primaryCards')); - return false; - } - if (desktopCardWidth < 10 || desktopCardWidth > 100 || isNaN(desktopCardWidth)) { - flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().alerts.show({ - type: 'error' - }, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans('walsgit_discussion_cards.admin.errors.desktopCardWidth')); - return false; - } - if (tabletCardWidth < 10 || tabletCardWidth > 100 || isNaN(tabletCardWidth)) { - flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().alerts.show({ - type: 'error' - }, flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().translator.trans('walsgit_discussion_cards.admin.errors.tabletCardWidth')); - return false; - } - return true; - }; - _proto.saveSettings = function saveSettings(e) { - if (!this.onsubmit()) { - return; - } - var settings = this.dirty(); - _ExtensionPage.prototype.saveSettings.call(this, e).then(function () { - var newSettings = {}; - for (var key in settings) { - var endOfKey = key.replace('walsgit_discussion_cards_', ''); - endOfKey = endOfKey.replace(/^./, endOfKey.charAt(0).toUpperCase()); - var newKey = 'walsgitDiscussionCards' + endOfKey; - newSettings[newKey] = settings[key]; - } - flarum_admin_app__WEBPACK_IMPORTED_MODULE_1___default().forum.pushAttributes(newSettings); - })["catch"](function (error) { - console.error(error); - }); - }; - return Settings; -}((flarum_admin_components_ExtensionPage__WEBPACK_IMPORTED_MODULE_2___default())); - - -/***/ }), - -/***/ "./src/admin/components/UploadTagImageButton.js": -/*!******************************************************!*\ - !*** ./src/admin/components/UploadTagImageButton.js ***! - \******************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ UploadTagImageButton) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "./node_modules/@babel/runtime/helpers/esm/extends.js"); -/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js"); -/* harmony import */ var flarum_admin_app__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! flarum/admin/app */ "flarum/admin/app"); -/* harmony import */ var flarum_admin_app__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(flarum_admin_app__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! flarum/common/components/Button */ "flarum/common/components/Button"); -/* harmony import */ var flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var flarum_common_utils_classList__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! flarum/common/utils/classList */ "flarum/common/utils/classList"); -/* harmony import */ var flarum_common_utils_classList__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(flarum_common_utils_classList__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var flarum_tags_components_EditTagModal__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! flarum/tags/components/EditTagModal */ "flarum/tags/components/EditTagModal"); -/* harmony import */ var flarum_tags_components_EditTagModal__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(flarum_tags_components_EditTagModal__WEBPACK_IMPORTED_MODULE_5__); - - - - - - -var UploadTagImageButton = /*#__PURE__*/function (_Button) { - function UploadTagImageButton(props) { - var _this; - _this = _Button.call(this, props) || this; - _this.loading = false; - _this.tagId = props.attrs.tagId; - return _this; - } - (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__["default"])(UploadTagImageButton, _Button); - var _proto = UploadTagImageButton.prototype; - _proto.view = function view(vnode) { - this.attrs.loading = this.loading; - this.attrs.className = flarum_common_utils_classList__WEBPACK_IMPORTED_MODULE_4___default()(this.attrs.className, "Button"); - if ((flarum_admin_app__WEBPACK_IMPORTED_MODULE_2___default().store).data.tags[this.tagId].data.attributes.walsgitDiscussionCardsTagDefaultImage) { - this.attrs.onclick = this.remove.bind(this); - return m("div", null, m("p", null, m("img", { - className: "DC-TagDefaultImage", - src: "assets/" + (flarum_admin_app__WEBPACK_IMPORTED_MODULE_2___default().store).data.tags[this.tagId].data.attributes.walsgitDiscussionCardsTagDefaultImage, - alt: "", - width: "200px" - })), m("p", null, _Button.prototype.view.call(this, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, vnode, { - children: flarum_admin_app__WEBPACK_IMPORTED_MODULE_2___default().translator.trans("core.admin.upload_image.remove_button") - })))); - } else { - this.attrs.onclick = this.upload.bind(this); - } - return _Button.prototype.view.call(this, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, vnode, { - children: flarum_admin_app__WEBPACK_IMPORTED_MODULE_2___default().translator.trans("core.admin.upload_image.upload_button") - })); - } - - /** - * Prompt the user to upload an image. - */; - _proto.upload = function upload() { - var _this2 = this; - if (this.loading) return; - var $input = $(''); - $input.appendTo("body").hide().trigger("click").on("change", function (e) { - var body = new FormData(); - body.append(_this2.attrs.name, $(e.target)[0].files[0]); - body.append('tagId', _this2.tagId); - _this2.loading = true; - m.redraw(); - flarum_admin_app__WEBPACK_IMPORTED_MODULE_2___default().request({ - method: "POST", - url: _this2.resourceUrl(), - serialize: function serialize(raw) { - return raw; - }, - body: body - }).then(_this2.success.bind(_this2), _this2.failure.bind(_this2)); - }); - } - - /** - * Remove the image. - */; - _proto.remove = function remove() { - this.loading = true; - m.redraw(); - var body = new FormData(); - body.append('tagId', this.tagId); - flarum_admin_app__WEBPACK_IMPORTED_MODULE_2___default().request({ - method: "DELETE", - url: this.resourceUrl(), - body: body - }).then(this.success.bind(this), this.failure.bind(this)); - }; - _proto.resourceUrl = function resourceUrl() { - return flarum_admin_app__WEBPACK_IMPORTED_MODULE_2___default().forum.attribute("apiUrl") + "/" + this.attrs.name; - } - - /** - * After a successful upload/removal, reload the page. - * - * @param {object} response - * @protected - */; - _proto.success = function success(response) { - window.location.reload(); - } - - /** - * If upload/removal fails, stop loading. - * - * @param {object} response - * @protected - */; - _proto.failure = function failure(response) { - this.loading = false; - m.redraw(); - }; - return UploadTagImageButton; -}((flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_3___default())); - - -/***/ }), - -/***/ "./src/admin/components/WdcTagSettingsModal.js": -/*!*****************************************************!*\ - !*** ./src/admin/components/WdcTagSettingsModal.js ***! - \*****************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ WdcTagSettingsModal) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js"); -/* harmony import */ var flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! flarum/common/components/Button */ "flarum/common/components/Button"); -/* harmony import */ var flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var flarum_common_components_Modal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! flarum/common/components/Modal */ "flarum/common/components/Modal"); -/* harmony import */ var flarum_common_components_Modal__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_Modal__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var flarum_common_utils_Stream__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! flarum/common/utils/Stream */ "flarum/common/utils/Stream"); -/* harmony import */ var flarum_common_utils_Stream__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(flarum_common_utils_Stream__WEBPACK_IMPORTED_MODULE_3__); - - - - -var defaultSettings = {}; -var WdcTagSettingsModal = /*#__PURE__*/function (_Modal) { - function WdcTagSettingsModal() { - return _Modal.apply(this, arguments) || this; - } - (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(WdcTagSettingsModal, _Modal); - var _proto = WdcTagSettingsModal.prototype; - _proto.oninit = function oninit(vnode) { - _Modal.prototype.oninit.call(this, vnode); - this.tagSettings = JSON.parse(this.attrs.model.data.attributes.walsgitDiscussionCardsTagSettings || null) || {}; - defaultSettings = { - primaryCards: app.forum.data.attributes.walsgitDiscussionCardsPrimaryCards, - desktopCardWidth: app.forum.data.attributes.walsgitDiscussionCardsDesktopCardWidth, - tabletCardWidth: app.forum.data.attributes.walsgitDiscussionCardsTabletCardWidth - }; - if (!this.tagSettings.hasOwnProperty('primaryCards') || this.tagSettings.primaryCards === null) { - this.tagSettings.primaryCards = defaultSettings.primaryCards; - } - if (!this.tagSettings.hasOwnProperty('desktopCardWidth') || this.tagSettings.desktopCardWidth === null) { - this.tagSettings.desktopCardWidth = defaultSettings.desktopCardWidth; - } - if (!this.tagSettings.hasOwnProperty('tabletCardWidth') || this.tagSettings.tabletCardWidth === null) { - this.tagSettings.tabletCardWidth = defaultSettings.tabletCardWidth; - } - this.tagSettings.primaryCards = flarum_common_utils_Stream__WEBPACK_IMPORTED_MODULE_3___default()(this.tagSettings.primaryCards); - this.tagSettings.desktopCardWidth = flarum_common_utils_Stream__WEBPACK_IMPORTED_MODULE_3___default()(this.tagSettings.desktopCardWidth); - this.tagSettings.tabletCardWidth = flarum_common_utils_Stream__WEBPACK_IMPORTED_MODULE_3___default()(this.tagSettings.tabletCardWidth); - }; - _proto.className = function className() { - return "WdcTagSettingsModal Modal--large"; - }; - _proto.title = function title() { - return [app.translator.trans("walsgit_discussion_cards.admin.tag_modal.title"), m("span", { - className: "TagLabel colored", - style: "--tag-bg: " + this.attrs.model.data.attributes.color + ";" - }, m("span", { - className: "TagLabel-text" - }, m("span", { - className: "TagLabel-name" - }, this.attrs.model.data.attributes.name)))]; - }; - _proto.content = function content() { - return [m("div", { - className: "Modal-body" - }, m("div", { - className: "Form" - }, m("p", null, app.translator.trans("walsgit_discussion_cards.admin.tag_modal.intro_text")), m("div", { - className: "Form-group" - }, m("label", { - htmlFor: "primaryCards" - }, app.translator.trans("walsgit_discussion_cards.admin.tag_modal.primaryCards_label")), m("div", { - className: "helpText" - }, app.translator.trans("walsgit_discussion_cards.admin.tag_modal.primaryCards_help", { - "default": defaultSettings.primaryCards - })), m("input", { - type: "number", - name: "primaryCards", - className: "FormControl DC-Number", - bidi: this.tagSettings.primaryCards - })), m("div", { - className: "Form-group" - }, m("label", { - htmlFor: "desktopCardWidth" - }, app.translator.trans("walsgit_discussion_cards.admin.tag_modal.desktopCardWidth_label")), m("div", { - className: "helpText" - }, app.translator.trans("walsgit_discussion_cards.admin.tag_modal.desktopCardWidth_help", { - "default": defaultSettings.desktopCardWidth - })), m("input", { - type: "number", - name: "desktopCardWidth", - className: "FormControl DC-Number", - bidi: this.tagSettings.desktopCardWidth - })), m("div", { - className: "Form-group" - }, m("label", { - htmlFor: "tabletCardWidth" - }, app.translator.trans("walsgit_discussion_cards.admin.tag_modal.tabletCardWidth_label")), m("div", { - className: "helpText" - }, app.translator.trans("walsgit_discussion_cards.admin.tag_modal.tabletCardWidth_help", { - "default": defaultSettings.tabletCardWidth - })), m("input", { - type: "number", - name: "tabletCardWidth", - className: "FormControl DC-Number", - bidi: this.tagSettings.tabletCardWidth - })), m((flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_1___default()), { - type: "submit", - className: "Button Button--primary", - loading: this.loading, - disabled: this.changed() - }, app.translator.trans("walsgit_discussion_cards.admin.tag_modal.submit_button"))))]; - }; - _proto.changed = function changed() { - var savedSettings = JSON.parse(this.attrs.model.data.attributes.walsgitDiscussionCardsTagSettings || 'null') || {}; - function isSameSettings(obj1, obj2) { - if (typeof obj1 !== 'object' || typeof obj2 !== 'object') { - return false; - } - if (Object.keys(obj1).length !== Object.keys(obj2).length) { - return false; - } - for (var key in obj1) { - if (obj1.hasOwnProperty(key)) { - if (typeof obj1[key] === 'object' && typeof obj2[key] === 'object') { - if (!compareObjects(obj1[key], obj2[key])) { - return false; - } - } else if (obj1[key] !== obj2[key]) { - return false; - } - } - } - return true; - } - return isSameSettings(JSON.parse(JSON.stringify(this.tagSettings)), savedSettings); - }; - _proto.onsubmit = function onsubmit(e) { - e.preventDefault(); - var primaryCards = parseInt(this.tagSettings.primaryCards()); - if (isNaN(primaryCards) || primaryCards < 0) { - app.alerts.show({ - type: 'error' - }, app.translator.trans('walsgit_discussion_cards.admin.errors.primaryCards')); - return; - } - var desktopWidth = parseInt(this.tagSettings.desktopCardWidth()); - if (isNaN(desktopWidth) || desktopWidth < 10 || desktopWidth > 100) { - app.alerts.show({ - type: 'error' - }, app.translator.trans('walsgit_discussion_cards.admin.errors.desktopCardWidth')); - return; - } - var tabletWidth = parseInt(this.tagSettings.tabletCardWidth()); - if (isNaN(tabletWidth) || tabletWidth < 10 || tabletWidth > 100) { - app.alerts.show({ - type: 'error' - }, app.translator.trans('walsgit_discussion_cards.admin.errors.tabletCardWidth')); - return; - } - var tag = this.attrs.model; - this.tagSettings.primaryCards(primaryCards); - this.tagSettings.desktopCardWidth(desktopWidth); - this.tagSettings.tabletCardWidth(tabletWidth); - var tagSettings = JSON.stringify(this.tagSettings); - this.loading = true; - app.request({ - method: "PATCH", - url: app.forum.attribute("apiUrl") + "/tags/" + tag.id() + "/tagSettings", - body: { - data: { - tagSettings: tagSettings - } - } - }).then(function () { - tag.data.attributes.walsgitDiscussionCardsTagSettings = tagSettings; - app.modal.close(); - }); - }; - return WdcTagSettingsModal; -}((flarum_common_components_Modal__WEBPACK_IMPORTED_MODULE_2___default())); - - -/***/ }), - -/***/ "./src/admin/helpers/isExtensionActive.js": -/*!************************************************!*\ - !*** ./src/admin/helpers/isExtensionActive.js ***! - \************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ isExtensionActive) -/* harmony export */ }); -function isExtensionActive(extensionName) { - if (app.data.settings.extensions_enabled.includes(extensionName)) { - return true; - } - return false; -} - -/***/ }), - -/***/ "./src/admin/helpers/isExtensionInstalled.js": -/*!***************************************************!*\ - !*** ./src/admin/helpers/isExtensionInstalled.js ***! - \***************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ isExtensionInstalled) -/* harmony export */ }); -function isExtensionInstalled(extensionName) { - if (app.data.extensions.hasOwnProperty(extensionName)) { - return true; - } - return false; -} - -/***/ }), - -/***/ "./src/admin/index.js": -/*!****************************!*\ - !*** ./src/admin/index.js ***! - \****************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var flarum_app__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! flarum/app */ "flarum/app"); -/* harmony import */ var flarum_app__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(flarum_app__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _components_Settings__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/Settings */ "./src/admin/components/Settings.js"); -/* harmony import */ var flarum_extend__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! flarum/extend */ "flarum/extend"); -/* harmony import */ var flarum_extend__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(flarum_extend__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var flarum_common_Model__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! flarum/common/Model */ "flarum/common/Model"); -/* harmony import */ var flarum_common_Model__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(flarum_common_Model__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! flarum/common/components/Button */ "flarum/common/components/Button"); -/* harmony import */ var flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! flarum/common/helpers/icon */ "flarum/common/helpers/icon"); -/* harmony import */ var flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var flarum_tags_models_Tag__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! flarum/tags/models/Tag */ "flarum/tags/models/Tag"); -/* harmony import */ var flarum_tags_models_Tag__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(flarum_tags_models_Tag__WEBPACK_IMPORTED_MODULE_6__); -/* harmony import */ var flarum_tags_components_EditTagModal__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! flarum/tags/components/EditTagModal */ "flarum/tags/components/EditTagModal"); -/* harmony import */ var flarum_tags_components_EditTagModal__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(flarum_tags_components_EditTagModal__WEBPACK_IMPORTED_MODULE_7__); -/* harmony import */ var _components_WdcTagSettingsModal__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./components/WdcTagSettingsModal */ "./src/admin/components/WdcTagSettingsModal.js"); -/* harmony import */ var _components_UploadTagImageButton__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./components/UploadTagImageButton */ "./src/admin/components/UploadTagImageButton.js"); - - - - - - - - - - -flarum_app__WEBPACK_IMPORTED_MODULE_0___default().initializers.add("walsgit/discussion-cards", function () { - (flarum_tags_models_Tag__WEBPACK_IMPORTED_MODULE_6___default().prototype).WdcDefaultImage = flarum_common_Model__WEBPACK_IMPORTED_MODULE_3___default().attribute("walsgit_discussion_cards_tag_default_image"); - (0,flarum_extend__WEBPACK_IMPORTED_MODULE_2__.extend)((flarum_tags_components_EditTagModal__WEBPACK_IMPORTED_MODULE_7___default().prototype), "fields", function (items) { - var _this = this; - if (this.tag.id()) { - var allowedTags = JSON.parse(flarum_app__WEBPACK_IMPORTED_MODULE_0___default().forum.attribute('walsgitDiscussionCardsAllowedTags')); - var isActivatedForTag = allowedTags.includes(this.tag.id()); - var activationBtnClasses = isActivatedForTag ? "DC-ActivationBtn Button activated" : "DC-ActivationBtn Button Button--primary"; - var DcTagSettingsClasses = isActivatedForTag ? "DC-TagSettings" : "DC-TagSettings DC-Hidden"; - var activationBtnText = isActivatedForTag ? flarum_app__WEBPACK_IMPORTED_MODULE_0___default().translator.trans("walsgit_discussion_cards.admin.tags.deactivation_button") : flarum_app__WEBPACK_IMPORTED_MODULE_0___default().translator.trans("walsgit_discussion_cards.admin.tags.activation_button"); - var toggleActivation = function toggleActivation() { - isActivatedForTag = !isActivatedForTag; - if (isActivatedForTag) { - allowedTags.push(_this.tag.id()); - } else { - allowedTags = allowedTags.filter(function (id) { - return id !== _this.tag.id(); - }); - } - flarum_app__WEBPACK_IMPORTED_MODULE_0___default().request({ - method: "POST", - url: flarum_app__WEBPACK_IMPORTED_MODULE_0___default().forum.attribute("apiUrl") + "/walsgit_discussion_cards_tag_update_allowedTags", - body: { - allowedTags: allowedTags - } - }).then(function () { - (flarum_app__WEBPACK_IMPORTED_MODULE_0___default().forum).data.attributes.walsgitDiscussionCardsAllowedTags = JSON.stringify(allowedTags); - (flarum_app__WEBPACK_IMPORTED_MODULE_0___default().data).settings.walsgit_discussion_cards_allowedTags = JSON.stringify(allowedTags); - isActivatedForTag = !isActivatedForTag; - activationBtnClasses = isActivatedForTag ? "DC-ActivationBtn Button activated" : "DC-ActivationBtn Button Button--primary"; - DcTagSettingsClasses = isActivatedForTag ? "DC-TagSettings" : "DC-TagSettings DC-Hidden"; - activationBtnText = isActivatedForTag ? flarum_app__WEBPACK_IMPORTED_MODULE_0___default().translator.trans("walsgit_discussion_cards.admin.tags.deactivation_button") : flarum_app__WEBPACK_IMPORTED_MODULE_0___default().translator.trans("walsgit_discussion_cards.admin.tags.activation_button"); - m.redraw(); - }); - }; - items.add("tag-discussion-cards-options", m("fieldset", { - className: "DC-Fieldset" - }, m("legend", null, flarum_app__WEBPACK_IMPORTED_MODULE_0___default().translator.trans("walsgit_discussion_cards.admin.tags.options_heading")), m((flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_4___default()), { - className: activationBtnClasses, - icon: "fas fa-border-all", - onclick: toggleActivation - }, activationBtnText), m("div", { - className: DcTagSettingsClasses - }, m("div", { - className: "DC-TagDefaultImageSettings" - }, m("h4", null, flarum_app__WEBPACK_IMPORTED_MODULE_0___default().translator.trans("walsgit_discussion_cards.admin.tags.defaultImage_title")), m("p", { - className: "helpText" - }, flarum_app__WEBPACK_IMPORTED_MODULE_0___default().translator.trans("walsgit_discussion_cards.admin.tags.defaultImage_info")), m(_components_UploadTagImageButton__WEBPACK_IMPORTED_MODULE_9__["default"], { - name: "walsgit_discussion_cards_tag_default_image", - className: "DC-UploadTagImageBtn", - ariaLabel: "Upload a default image for this tag", - tagId: this.tag.id() - })), m((flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_4___default()), { - className: "Button Button--primary", - icon: "fas fa-border-all", - onclick: function onclick() { - flarum_app__WEBPACK_IMPORTED_MODULE_0___default().modal.show(_components_WdcTagSettingsModal__WEBPACK_IMPORTED_MODULE_8__["default"], { - model: _this.tag - }); - } - }, flarum_app__WEBPACK_IMPORTED_MODULE_0___default().translator.trans("walsgit_discussion_cards.admin.tags.options_button")))), -20); - } - }); - flarum_app__WEBPACK_IMPORTED_MODULE_0___default().extensionData["for"]("walsgit-discussion-cards").registerPage(_components_Settings__WEBPACK_IMPORTED_MODULE_1__["default"]); -}); - -/***/ }), - -/***/ "flarum/admin/app": -/*!**************************************************!*\ - !*** external "flarum.core.compat['admin/app']" ***! - \**************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['admin/app']; - -/***/ }), - -/***/ "flarum/admin/components/ExtensionPage": -/*!***********************************************************************!*\ - !*** external "flarum.core.compat['admin/components/ExtensionPage']" ***! - \***********************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['admin/components/ExtensionPage']; - -/***/ }), - -/***/ "flarum/admin/components/UploadImageButton": -/*!***************************************************************************!*\ - !*** external "flarum.core.compat['admin/components/UploadImageButton']" ***! - \***************************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['admin/components/UploadImageButton']; - -/***/ }), - -/***/ "flarum/app": -/*!********************************************!*\ - !*** external "flarum.core.compat['app']" ***! - \********************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['app']; - -/***/ }), - -/***/ "flarum/common/Model": -/*!*****************************************************!*\ - !*** external "flarum.core.compat['common/Model']" ***! - \*****************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/Model']; - -/***/ }), - -/***/ "flarum/common/components/Button": -/*!*****************************************************************!*\ - !*** external "flarum.core.compat['common/components/Button']" ***! - \*****************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/components/Button']; - -/***/ }), - -/***/ "flarum/common/components/Modal": -/*!****************************************************************!*\ - !*** external "flarum.core.compat['common/components/Modal']" ***! - \****************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/components/Modal']; - -/***/ }), - -/***/ "flarum/common/helpers/icon": -/*!************************************************************!*\ - !*** external "flarum.core.compat['common/helpers/icon']" ***! - \************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/helpers/icon']; - -/***/ }), - -/***/ "flarum/common/utils/Stream": -/*!************************************************************!*\ - !*** external "flarum.core.compat['common/utils/Stream']" ***! - \************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/utils/Stream']; - -/***/ }), - -/***/ "flarum/common/utils/classList": -/*!***************************************************************!*\ - !*** external "flarum.core.compat['common/utils/classList']" ***! - \***************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/utils/classList']; - -/***/ }), - -/***/ "flarum/extend": -/*!***********************************************!*\ - !*** external "flarum.core.compat['extend']" ***! - \***********************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['extend']; - -/***/ }), - -/***/ "flarum/tags/components/EditTagModal": -/*!*********************************************************************!*\ - !*** external "flarum.core.compat['tags/components/EditTagModal']" ***! - \*********************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['tags/components/EditTagModal']; - -/***/ }), - -/***/ "flarum/tags/models/Tag": -/*!********************************************************!*\ - !*** external "flarum.core.compat['tags/models/Tag']" ***! - \********************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['tags/models/Tag']; - -/***/ }), - -/***/ "./node_modules/@babel/runtime/helpers/esm/extends.js": -/*!************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/extends.js ***! - \************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _extends) -/* harmony export */ }); -function _extends() { - return _extends = Object.assign ? Object.assign.bind() : function (n) { - for (var e = 1; e < arguments.length; e++) { - var t = arguments[e]; - for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); - } - return n; - }, _extends.apply(null, arguments); -} - - -/***/ }), - -/***/ "./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js": -/*!******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js ***! - \******************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _inheritsLoose) -/* harmony export */ }); -/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setPrototypeOf.js */ "./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js"); - -function _inheritsLoose(t, o) { - t.prototype = Object.create(o.prototype), t.prototype.constructor = t, (0,_setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__["default"])(t, o); -} - - -/***/ }), - -/***/ "./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js ***! - \*******************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _setPrototypeOf) -/* harmony export */ }); -function _setPrototypeOf(t, e) { - return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { - return t.__proto__ = e, t; - }, _setPrototypeOf(t, e); -} - - -/***/ }) - -/******/ }); -/************************************************************************/ -/******/ // The module cache -/******/ var __webpack_module_cache__ = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ // Check if module is in cache -/******/ var cachedModule = __webpack_module_cache__[moduleId]; -/******/ if (cachedModule !== undefined) { -/******/ return cachedModule.exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = __webpack_module_cache__[moduleId] = { -/******/ // no module.id needed -/******/ // no module.loaded needed -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/************************************************************************/ -/******/ /* webpack/runtime/compat get default export */ -/******/ (() => { -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = (module) => { -/******/ var getter = module && module.__esModule ? -/******/ () => (module['default']) : -/******/ () => (module); -/******/ __webpack_require__.d(getter, { a: getter }); -/******/ return getter; -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/define property getters */ -/******/ (() => { -/******/ // define getter functions for harmony exports -/******/ __webpack_require__.d = (exports, definition) => { -/******/ for(var key in definition) { -/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { -/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); -/******/ } -/******/ } -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/hasOwnProperty shorthand */ -/******/ (() => { -/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) -/******/ })(); -/******/ -/******/ /* webpack/runtime/make namespace object */ -/******/ (() => { -/******/ // define __esModule on exports -/******/ __webpack_require__.r = (exports) => { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ })(); -/******/ -/************************************************************************/ -var __webpack_exports__ = {}; -// This entry need to be wrapped in an IIFE because it need to be in strict mode. -(() => { -"use strict"; -/*!******************!*\ - !*** ./admin.js ***! - \******************/ -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _src_admin__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./src/admin */ "./src/admin/index.js"); -/* - * This file is part of Flarum. - * - * (c) Toby Zerner - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - - -})(); - -module.exports = __webpack_exports__; -/******/ })() -; +(()=>{var t={n:s=>{var a=s&&s.__esModule?()=>s.default:()=>s;return t.d(a,{a}),a},d:(s,a)=>{for(var i in a)t.o(a,i)&&!t.o(s,i)&&Object.defineProperty(s,i,{enumerable:!0,get:a[i]})},o:(t,s)=>Object.prototype.hasOwnProperty.call(t,s)};(()=>{"use strict";const s=flarum.core.compat.app;var a=t.n(s);function i(t,s){return i=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,s){return t.__proto__=s,t},i(t,s)}function e(t,s){t.prototype=Object.create(s.prototype),t.prototype.constructor=t,i(t,s)}const n=flarum.core.compat["admin/app"];var r=t.n(n);const l=flarum.core.compat["admin/components/ExtensionPage"];var o=t.n(l);const d=flarum.core.compat["admin/components/UploadImageButton"];var g=t.n(d);function c(t){return!!app.data.extensions.hasOwnProperty(t)}function u(t){return!!app.data.settings.extensions_enabled.includes(t)}const p=flarum.core.compat["common/helpers/icon"];var _=t.n(p),h=function(t){function s(){return t.apply(this,arguments)||this}e(s,t);var a=s.prototype;return a.content=function(){var t="flarumite-simple-discussion-views",s="v17development-blog",a="shebaoting-repost",i=_()("fas fa-exclamation-triangle");return m("div",{className:"DiscussionCardsSettings"},m("div",{className:"container"},m("div",{className:"DiscussionCardsSettings--content"},m("h3",null,r().translator.trans("walsgit_discussion_cards.admin.settings.general.where_title")),m("p",{className:"helpText"},r().translator.trans("walsgit_discussion_cards.admin.settings.general.where_info")),m("div",{className:"Section"},this.buildSettingComponent({type:"flarum-tags.select-tags",setting:"walsgit_discussion_cards_allowedTags",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.allowedTags_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.allowedTags_help"),options:{requireParentTag:!1}}),this.buildSettingComponent({type:"switch",setting:"walsgit_discussion_cards_onIndexPage",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.onIndexPage_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.onIndexPage_help")})),m("h3",null,r().translator.trans("walsgit_discussion_cards.admin.settings.general.primaryCardOptions_title")),m("p",{className:"helpText"},r().translator.trans("walsgit_discussion_cards.admin.settings.general.primaryCardOptions_info")),m("div",{className:"Section"},this.buildSettingComponent({type:"number",className:"DC-Number",setting:"walsgit_discussion_cards_primaryCards",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.primaryCards_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.primaryCards_help"),min:0,step:1,placeholder:4}),this.buildSettingComponent({type:"number",className:"DC-Number",setting:"walsgit_discussion_cards_desktopCardWidth",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.desktopCardWidth_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.desktopCardWidth_help"),min:10,max:100,step:1,placeholder:49}),this.buildSettingComponent({type:"number",className:"DC-Number",setting:"walsgit_discussion_cards_tabletCardWidth",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.tabletCardWidth_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.tabletCardWidth_help"),min:10,max:100,step:1,placeholder:49})),m("h3",null,r().translator.trans("walsgit_discussion_cards.admin.settings.general.cardOptions_title")),m("p",{className:"helpText"},r().translator.trans("walsgit_discussion_cards.admin.settings.general.cardOptions_info")),m("div",{className:"Section"},m("div",{className:"DC-DefaultImageSettings"},m("h4",null,r().translator.trans("walsgit_discussion_cards.admin.settings.general.defaultImage_title")),m("p",{className:"helpText"},r().translator.trans("walsgit_discussion_cards.admin.settings.general.defaultImage_info")),null===r().forum.attribute("walsgitDiscussionCardsDefaultImage")?m("div",{className:"imgStub"}):m("img",{className:"DC-UserUploadedImage",src:r().forum.attribute("baseUrl")+"/assets/"+r().forum.attribute("walsgitDiscussionCardsDefaultImage")}),m(g(),{name:"walsgit_discussion_cards_default_image",class:"DC-UploadImageBtn"})),this.buildSettingComponent({type:"switch",setting:"walsgit_discussion_cards_previewText",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.previewText_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.previewText_help")}),this.buildSettingComponent({type:"switch",setting:"walsgit_discussion_cards_showAuthor",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.showAuthor_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.showAuthor_help")}),this.buildSettingComponent({type:"switch",setting:"walsgit_discussion_cards_showReplies",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.showReplies_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.showReplies_help")}),this.buildSettingComponent({type:"switch",setting:"walsgit_discussion_cards_showRepliesOnRight",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.showRepliesOnRight_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.showRepliesOnRight_help")}),this.buildSettingComponent({type:"switch",setting:"walsgit_discussion_cards_showLastPostInfo",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.showLastPostInfo_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.showLastPostInfo_help")}),this.buildSettingComponent({type:"switch",setting:"walsgit_discussion_cards_showBadges",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.showBadges_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.showBadges_help")}),this.buildSettingComponent({type:"switch",setting:"walsgit_discussion_cards_markReadCards",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.markReadCards_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.markReadCards_help")})),m("h3",null,r().translator.trans("walsgit_discussion_cards.admin.settings.general.otherOptions_title")),m("p",{className:"helpText"},r().translator.trans("walsgit_discussion_cards.admin.settings.general.otherOptions_info")),m("div",{className:"Section"},m("h4",null,r().translator.trans("walsgit_discussion_cards.admin.settings.general.showViews_title_start"),m("a",{href:"https://flarum.org/extension/flarumite/simple-discussion-views",target:"_blank",rel:"noopener noreferrer"},"Flarumite Simple Discussion Views"),r().translator.trans("walsgit_discussion_cards.admin.settings.general.showViews_title_end")),m("div",{className:"helpText"},m("em",null,c(t)?u(t)?"":r().translator.trans("walsgit_discussion_cards.admin.settings.general.viewsExtension_notActivated",{icon:i}):r().translator.trans("walsgit_discussion_cards.admin.settings.general.viewsExtension_notInstalled",{icon:i}))),this.buildSettingComponent({type:"switch",setting:"walsgit_discussion_cards_showViews",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.showViews_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.showViews_help"),disabled:!u(t)}),m("hr",null),m("h4",null,r().translator.trans("walsgit_discussion_cards.admin.settings.general.blogExtension_title_start"),m("a",{href:"https://flarum.org/extension/v17development/flarum-blog",target:"_blank",rel:"noopener noreferrer"},"Flarum Blog"),r().translator.trans("walsgit_discussion_cards.admin.settings.general.blogExtension_title_end")),m("div",{className:"helpText"},m("em",null,c(s)?u(s)?"":r().translator.trans("walsgit_discussion_cards.admin.settings.general.blogExtension_notActivated",{icon:i}):r().translator.trans("walsgit_discussion_cards.admin.settings.general.blogExtension_notInstalled",{icon:i}))),this.buildSettingComponent({type:"switch",setting:"walsgit_discussion_cards_useBlogImages",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.useBlogImages_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.useBlogImages_help"),disabled:!u(s)}),this.buildSettingComponent({type:"switch",setting:"walsgit_discussion_cards_useBlogSummary",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.useBlogSummary_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.useBlogSummary_help"),disabled:!u(s)}),m("hr",null),m("h4",null,r().translator.trans("walsgit_discussion_cards.admin.settings.general.repostExtension_title_start"),m("a",{href:"https://flarum.org/extension/shebaoting/repost",target:"_blank",rel:"noopener noreferrer"},"Repost"),r().translator.trans("walsgit_discussion_cards.admin.settings.general.repostExtension_title_end")),m("div",{className:"helpText"},m("em",null,c(a)?u(a)?"":r().translator.trans("walsgit_discussion_cards.admin.settings.general.repostExtension_notActivated",{icon:i}):r().translator.trans("walsgit_discussion_cards.admin.settings.general.repostExtension_notInstalled",{icon:i}))),this.buildSettingComponent({type:"switch",setting:"walsgit_discussion_cards_allowRepostLinks",label:r().translator.trans("walsgit_discussion_cards.admin.settings.general.allowRepostLinks_label"),help:r().translator.trans("walsgit_discussion_cards.admin.settings.general.allowRepostLinks_help"),disabled:!u(a)})),this.submitButton())))},a.onsubmit=function(){var t=Number(this.setting("walsgit_discussion_cards_primaryCards")()),s=Number(this.setting("walsgit_discussion_cards_desktopCardWidth")()),a=Number(this.setting("walsgit_discussion_cards_tabletCardWidth")());return t<0||isNaN(t)?(r().alerts.show({type:"error"},r().translator.trans("walsgit_discussion_cards.admin.errors.primaryCards")),!1):s<10||s>100||isNaN(s)?(r().alerts.show({type:"error"},r().translator.trans("walsgit_discussion_cards.admin.errors.desktopCardWidth")),!1):!(a<10||a>100||isNaN(a))||(r().alerts.show({type:"error"},r().translator.trans("walsgit_discussion_cards.admin.errors.tabletCardWidth")),!1)},a.saveSettings=function(s){if(this.onsubmit()){var a=this.dirty();t.prototype.saveSettings.call(this,s).then((function(){var t={};for(var s in a){var i=s.replace("walsgit_discussion_cards_","");t["walsgitDiscussionCards"+(i=i.replace(/^./,i.charAt(0).toUpperCase()))]=a[s]}r().forum.pushAttributes(t)})).catch((function(t){console.error(t)}))}},s}(o());const w=flarum.core.compat.extend,b=flarum.core.compat["common/Model"];var f=t.n(b);const C=flarum.core.compat["common/components/Button"];var y=t.n(C);const v=flarum.core.compat["tags/models/Tag"];var S=t.n(v);const N=flarum.core.compat["tags/components/EditTagModal"];var D=t.n(N);const T=flarum.core.compat["common/components/Modal"];var W=t.n(T);const x=flarum.core.compat["common/utils/Stream"];var I=t.n(x),k={},O=function(t){function s(){return t.apply(this,arguments)||this}e(s,t);var a=s.prototype;return a.oninit=function(s){t.prototype.oninit.call(this,s),this.tagSettings=JSON.parse(this.attrs.model.data.attributes.walsgitDiscussionCardsTagSettings||null)||{},k={primaryCards:app.forum.data.attributes.walsgitDiscussionCardsPrimaryCards,desktopCardWidth:app.forum.data.attributes.walsgitDiscussionCardsDesktopCardWidth,tabletCardWidth:app.forum.data.attributes.walsgitDiscussionCardsTabletCardWidth},this.tagSettings.hasOwnProperty("primaryCards")&&null!==this.tagSettings.primaryCards||(this.tagSettings.primaryCards=k.primaryCards),this.tagSettings.hasOwnProperty("desktopCardWidth")&&null!==this.tagSettings.desktopCardWidth||(this.tagSettings.desktopCardWidth=k.desktopCardWidth),this.tagSettings.hasOwnProperty("tabletCardWidth")&&null!==this.tagSettings.tabletCardWidth||(this.tagSettings.tabletCardWidth=k.tabletCardWidth),this.tagSettings.primaryCards=I()(this.tagSettings.primaryCards),this.tagSettings.desktopCardWidth=I()(this.tagSettings.desktopCardWidth),this.tagSettings.tabletCardWidth=I()(this.tagSettings.tabletCardWidth)},a.className=function(){return"WdcTagSettingsModal Modal--large"},a.title=function(){return[app.translator.trans("walsgit_discussion_cards.admin.tag_modal.title"),m("span",{className:"TagLabel colored",style:"--tag-bg: "+this.attrs.model.data.attributes.color+";"},m("span",{className:"TagLabel-text"},m("span",{className:"TagLabel-name"},this.attrs.model.data.attributes.name)))]},a.content=function(){return[m("div",{className:"Modal-body"},m("div",{className:"Form"},m("p",null,app.translator.trans("walsgit_discussion_cards.admin.tag_modal.intro_text")),m("div",{className:"Form-group"},m("label",{htmlFor:"primaryCards"},app.translator.trans("walsgit_discussion_cards.admin.tag_modal.primaryCards_label")),m("div",{className:"helpText"},app.translator.trans("walsgit_discussion_cards.admin.tag_modal.primaryCards_help",{default:k.primaryCards})),m("input",{type:"number",name:"primaryCards",className:"FormControl DC-Number",bidi:this.tagSettings.primaryCards})),m("div",{className:"Form-group"},m("label",{htmlFor:"desktopCardWidth"},app.translator.trans("walsgit_discussion_cards.admin.tag_modal.desktopCardWidth_label")),m("div",{className:"helpText"},app.translator.trans("walsgit_discussion_cards.admin.tag_modal.desktopCardWidth_help",{default:k.desktopCardWidth})),m("input",{type:"number",name:"desktopCardWidth",className:"FormControl DC-Number",bidi:this.tagSettings.desktopCardWidth})),m("div",{className:"Form-group"},m("label",{htmlFor:"tabletCardWidth"},app.translator.trans("walsgit_discussion_cards.admin.tag_modal.tabletCardWidth_label")),m("div",{className:"helpText"},app.translator.trans("walsgit_discussion_cards.admin.tag_modal.tabletCardWidth_help",{default:k.tabletCardWidth})),m("input",{type:"number",name:"tabletCardWidth",className:"FormControl DC-Number",bidi:this.tagSettings.tabletCardWidth})),m(y(),{type:"submit",className:"Button Button--primary",loading:this.loading,disabled:this.changed()},app.translator.trans("walsgit_discussion_cards.admin.tag_modal.submit_button"))))]},a.changed=function(){var t=JSON.parse(this.attrs.model.data.attributes.walsgitDiscussionCardsTagSettings||"null")||{};return function(t,s){if("object"!=typeof t||"object"!=typeof s)return!1;if(Object.keys(t).length!==Object.keys(s).length)return!1;for(var a in t)if(t.hasOwnProperty(a))if("object"==typeof t[a]&&"object"==typeof s[a]){if(!compareObjects(t[a],s[a]))return!1}else if(t[a]!==s[a])return!1;return!0}(JSON.parse(JSON.stringify(this.tagSettings)),t)},a.onsubmit=function(t){t.preventDefault();var s=parseInt(this.tagSettings.primaryCards());if(isNaN(s)||s<0)app.alerts.show({type:"error"},app.translator.trans("walsgit_discussion_cards.admin.errors.primaryCards"));else{var a=parseInt(this.tagSettings.desktopCardWidth());if(isNaN(a)||a<10||a>100)app.alerts.show({type:"error"},app.translator.trans("walsgit_discussion_cards.admin.errors.desktopCardWidth"));else{var i=parseInt(this.tagSettings.tabletCardWidth());if(isNaN(i)||i<10||i>100)app.alerts.show({type:"error"},app.translator.trans("walsgit_discussion_cards.admin.errors.tabletCardWidth"));else{var e=this.attrs.model;this.tagSettings.primaryCards(s),this.tagSettings.desktopCardWidth(a),this.tagSettings.tabletCardWidth(i);var n=JSON.stringify(this.tagSettings);this.loading=!0,app.request({method:"PATCH",url:app.forum.attribute("apiUrl")+"/tags/"+e.id()+"/tagSettings",body:{data:{tagSettings:n}}}).then((function(){e.data.attributes.walsgitDiscussionCardsTagSettings=n,app.modal.close()}))}}}},s}(W());function B(){return B=Object.assign?Object.assign.bind():function(t){for(var s=1;s').appendTo("body").hide().trigger("click").on("change",(function(s){var a=new FormData;a.append(t.attrs.name,$(s.target)[0].files[0]),a.append("tagId",t.tagId),t.loading=!0,m.redraw(),r().request({method:"POST",url:t.resourceUrl(),serialize:function(t){return t},body:a}).then(t.success.bind(t),t.failure.bind(t))}))},a.remove=function(){this.loading=!0,m.redraw();var t=new FormData;t.append("tagId",this.tagId),r().request({method:"DELETE",url:this.resourceUrl(),body:t}).then(this.success.bind(this),this.failure.bind(this))},a.resourceUrl=function(){return r().forum.attribute("apiUrl")+"/"+this.attrs.name},a.success=function(t){window.location.reload()},a.failure=function(t){this.loading=!1,m.redraw()},s}(y());a().initializers.add("walsgit/discussion-cards",(function(){S().prototype.WdcDefaultImage=f().attribute("walsgit_discussion_cards_tag_default_image"),(0,w.extend)(D().prototype,"fields",(function(t){var s=this;if(this.tag.id()){var i=JSON.parse(a().forum.attribute("walsgitDiscussionCardsAllowedTags")),e=i.includes(this.tag.id()),n=e?"DC-ActivationBtn Button activated":"DC-ActivationBtn Button Button--primary",r=e?"DC-TagSettings":"DC-TagSettings DC-Hidden",l=e?a().translator.trans("walsgit_discussion_cards.admin.tags.deactivation_button"):a().translator.trans("walsgit_discussion_cards.admin.tags.activation_button");t.add("tag-discussion-cards-options",m("fieldset",{className:"DC-Fieldset"},m("legend",null,a().translator.trans("walsgit_discussion_cards.admin.tags.options_heading")),m(y(),{className:n,icon:"fas fa-border-all",onclick:function(){(e=!e)?i.push(s.tag.id()):i=i.filter((function(t){return t!==s.tag.id()})),a().request({method:"POST",url:a().forum.attribute("apiUrl")+"/walsgit_discussion_cards_tag_update_allowedTags",body:{allowedTags:i}}).then((function(){a().forum.data.attributes.walsgitDiscussionCardsAllowedTags=JSON.stringify(i),a().data.settings.walsgit_discussion_cards_allowedTags=JSON.stringify(i),n=(e=!e)?"DC-ActivationBtn Button activated":"DC-ActivationBtn Button Button--primary",r=e?"DC-TagSettings":"DC-TagSettings DC-Hidden",l=e?a().translator.trans("walsgit_discussion_cards.admin.tags.deactivation_button"):a().translator.trans("walsgit_discussion_cards.admin.tags.activation_button"),m.redraw()}))}},l),m("div",{className:r},m("div",{className:"DC-TagDefaultImageSettings"},m("h4",null,a().translator.trans("walsgit_discussion_cards.admin.tags.defaultImage_title")),m("p",{className:"helpText"},a().translator.trans("walsgit_discussion_cards.admin.tags.defaultImage_info")),m(A,{name:"walsgit_discussion_cards_tag_default_image",className:"DC-UploadTagImageBtn",ariaLabel:"Upload a default image for this tag",tagId:this.tag.id()})),m(y(),{className:"Button Button--primary",icon:"fas fa-border-all",onclick:function(){a().modal.show(O,{model:s.tag})}},a().translator.trans("walsgit_discussion_cards.admin.tags.options_button")))),-20)}})),a().extensionData.for("walsgit-discussion-cards").registerPage(h)}))})(),module.exports={}})(); //# sourceMappingURL=admin.js.map \ No newline at end of file diff --git a/js/dist/admin.js.map b/js/dist/admin.js.map index 96b6986..5b48fc8 100644 --- a/js/dist/admin.js.map +++ b/js/dist/admin.js.map @@ -1 +1 @@ -{"version":3,"file":"admin.js","mappings":"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","sources":["webpack://@walsgit/flarum-discussion-cards/./src/admin/components/Settings.js","webpack://@walsgit/flarum-discussion-cards/./src/admin/components/UploadTagImageButton.js","webpack://@walsgit/flarum-discussion-cards/./src/admin/components/WdcTagSettingsModal.js","webpack://@walsgit/flarum-discussion-cards/./src/admin/helpers/isExtensionActive.js","webpack://@walsgit/flarum-discussion-cards/./src/admin/helpers/isExtensionInstalled.js","webpack://@walsgit/flarum-discussion-cards/./src/admin/index.js","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['admin/app']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['admin/components/ExtensionPage']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['admin/components/UploadImageButton']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['app']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/Model']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/components/Button']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/components/Modal']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/helpers/icon']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/utils/Stream']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/utils/classList']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['extend']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['tags/components/EditTagModal']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['tags/models/Tag']\"","webpack://@walsgit/flarum-discussion-cards/./node_modules/@babel/runtime/helpers/esm/extends.js","webpack://@walsgit/flarum-discussion-cards/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://@walsgit/flarum-discussion-cards/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://@walsgit/flarum-discussion-cards/webpack/bootstrap","webpack://@walsgit/flarum-discussion-cards/webpack/runtime/compat get default export","webpack://@walsgit/flarum-discussion-cards/webpack/runtime/define property getters","webpack://@walsgit/flarum-discussion-cards/webpack/runtime/hasOwnProperty shorthand","webpack://@walsgit/flarum-discussion-cards/webpack/runtime/make namespace object","webpack://@walsgit/flarum-discussion-cards/./admin.js"],"sourcesContent":["import app from \"flarum/admin/app\";\r\nimport ExtensionPage from \"flarum/admin/components/ExtensionPage\";\r\nimport UploadImageButton from 'flarum/admin/components/UploadImageButton';\r\nimport isExtensionInstalled from \"../helpers/isExtensionInstalled\";\r\nimport isExtensionActive from \"../helpers/isExtensionActive\";\r\nimport icon from \"flarum/common/helpers/icon\";\r\n\r\nexport default class Settings extends ExtensionPage {\r\n\tcontent() {\r\n\t\t/* Supported third party extensions' info */\r\n\t\tconst viewsExtension = {\r\n\t\t\tid: 'flarumite-simple-discussion-views',\r\n\t\t\tname: 'Flarumite Simple Discussion Views',\r\n\t\t\turl: 'https://flarum.org/extension/flarumite/simple-discussion-views',\r\n\t\t};\r\n\t\tconst blogExtension = {\r\n\t\t\tid: 'v17development-blog',\r\n\t\t\tname: 'Flarum Blog',\r\n\t\t\turl: 'https://flarum.org/extension/v17development/flarum-blog',\r\n\t\t};\r\n\t\tconst repostExtension = {\r\n\t\t\tid: 'shebaoting-repost',\r\n\t\t\tname: 'Repost',\r\n\t\t\turl: 'https://flarum.org/extension/shebaoting/repost',\r\n\t\t}\r\n\r\n\t\tconst warningIcon = icon(\"fas fa-exclamation-triangle\");\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.where_title\")}

\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.where_info\")}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"flarum-tags.select-tags\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_allowedTags\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.allowedTags_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.allowedTags_help\"),\r\n\t\t\t\t\t\t\t\toptions: {\r\n\t\t\t\t\t\t\t\t\trequireParentTag: false,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_onIndexPage\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.onIndexPage_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.onIndexPage_help\"),\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t

{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.primaryCardOptions_title\")}

\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.primaryCardOptions_info\")}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"number\",\r\n\t\t\t\t\t\t\t\tclassName: 'DC-Number',\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_primaryCards\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.primaryCards_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.primaryCards_help\"),\r\n\t\t\t\t\t\t\t\tmin: 0,\r\n\t\t\t\t\t\t\t\tstep: 1,\r\n\t\t\t\t\t\t\t\tplaceholder: 4,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"number\",\r\n\t\t\t\t\t\t\t\tclassName: 'DC-Number',\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_desktopCardWidth\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.desktopCardWidth_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.desktopCardWidth_help\"),\r\n\t\t\t\t\t\t\t\tmin: 10,\r\n\t\t\t\t\t\t\t\tmax: 100,\r\n\t\t\t\t\t\t\t\tstep: 1,\r\n\t\t\t\t\t\t\t\tplaceholder: 49,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"number\",\r\n\t\t\t\t\t\t\t\tclassName: 'DC-Number',\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_tabletCardWidth\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.tabletCardWidth_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.tabletCardWidth_help\"),\r\n\t\t\t\t\t\t\t\tmin: 10,\r\n\t\t\t\t\t\t\t\tmax: 100,\r\n\t\t\t\t\t\t\t\tstep: 1,\r\n\t\t\t\t\t\t\t\tplaceholder: 49,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t

{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.cardOptions_title\")}

\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.cardOptions_info\")}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.defaultImage_title\")}

\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.defaultImage_info\")}\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{app.forum.attribute(\"walsgitDiscussionCardsDefaultImage\") === null \r\n\t\t\t\t\t\t\t\t\t?
\r\n\t\t\t\t\t\t\t\t\t: \r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{m(UploadImageButton, {name: \"walsgit_discussion_cards_default_image\", class: \"DC-UploadImageBtn\"})}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_previewText\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.previewText_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.previewText_help\"),\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_showAuthor\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showAuthor_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showAuthor_help\"),\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_showReplies\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showReplies_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showReplies_help\"),\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_showRepliesOnRight\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showRepliesOnRight_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showRepliesOnRight_help\"),\r\n\t\t\t\t\t\t\t\tdisabled: isExtensionActive(viewsExtension.id) ? false : true,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_showLastPostInfo\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showLastPostInfo_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showLastPostInfo_help\"),\r\n\t\t\t\t\t\t\t\tdisabled: isExtensionActive(viewsExtension.id) ? false : true,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_showBadges\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showBadges_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showBadges_help\"),\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_markReadCards\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.markReadCards_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.markReadCards_help\"),\r\n\t\t\t\t\t\t\t})}\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{/* 3rd party extensions options */}\r\n\t\t\t\t\t\t

{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.otherOptions_title\")}

\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.otherOptions_info\")}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t{/* flarumite/simple-discussion-views */}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showViews_title_start\")}\r\n\t\t\t\t\t\t\t\t{viewsExtension.name}\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showViews_title_end\")}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{!isExtensionInstalled(viewsExtension.id) \r\n\t\t\t\t\t\t\t\t\t? + app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.viewsExtension_notInstalled\", {icon: warningIcon}) : \r\n\t\t\t\t\t\t\t\t\t!isExtensionActive(viewsExtension.id) \r\n\t\t\t\t\t\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.viewsExtension_notActivated\", {icon: warningIcon}) :\r\n\t\t\t\t\t\t\t\t\t''}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_showViews\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showViews_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showViews_help\"),\r\n\t\t\t\t\t\t\t\tdisabled: isExtensionActive(viewsExtension.id) ? false : true,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{/* v17development/flarum-blog */}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.blogExtension_title_start\")}\r\n\t\t\t\t\t\t\t\t{blogExtension.name}\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.blogExtension_title_end\")}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{!isExtensionInstalled(blogExtension.id) \r\n\t\t\t\t\t\t\t\t\t? + app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.blogExtension_notInstalled\", {icon: warningIcon}) : \r\n\t\t\t\t\t\t\t\t\t!isExtensionActive(blogExtension.id) \r\n\t\t\t\t\t\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.blogExtension_notActivated\", {icon: warningIcon}) :\r\n\t\t\t\t\t\t\t\t\t''}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_useBlogImages\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.useBlogImages_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.useBlogImages_help\"),\r\n\t\t\t\t\t\t\t\tdisabled: isExtensionActive(blogExtension.id) ? false : true,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_useBlogSummary\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.useBlogSummary_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.useBlogSummary_help\"),\r\n\t\t\t\t\t\t\t\tdisabled: isExtensionActive(blogExtension.id) ? false : true,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{/* shebaoting/repost */}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.repostExtension_title_start\")}\r\n\t\t\t\t\t\t\t\t{repostExtension.name}\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.repostExtension_title_end\")}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{!isExtensionInstalled(repostExtension.id) \r\n\t\t\t\t\t\t\t\t\t? + app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.repostExtension_notInstalled\", {icon: warningIcon}) : \r\n\t\t\t\t\t\t\t\t\t!isExtensionActive(repostExtension.id) \r\n\t\t\t\t\t\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.repostExtension_notActivated\", {icon: warningIcon}) :\r\n\t\t\t\t\t\t\t\t\t''}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_allowRepostLinks\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.allowRepostLinks_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.allowRepostLinks_help\"),\r\n\t\t\t\t\t\t\t\tdisabled: isExtensionActive(repostExtension.id) ? false : true,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{this.submitButton()}\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n\r\n\tonsubmit() {\r\n\t\tconst primaryCards = Number(this.setting('walsgit_discussion_cards_primaryCards')());\r\n\t\tconst desktopCardWidth = Number(this.setting('walsgit_discussion_cards_desktopCardWidth')());\r\n\t\tconst tabletCardWidth = Number(this.setting('walsgit_discussion_cards_tabletCardWidth')());\r\n\r\n if (primaryCards < 0 || isNaN(primaryCards)) {\r\n app.alerts.show({ type: 'error' }, app.translator.trans('walsgit_discussion_cards.admin.errors.primaryCards'));\r\n return false;\r\n }\r\n if (desktopCardWidth < 10 || desktopCardWidth > 100 || isNaN(desktopCardWidth)) {\r\n app.alerts.show({ type: 'error' }, app.translator.trans('walsgit_discussion_cards.admin.errors.desktopCardWidth'));\r\n return false;\r\n }\r\n if (tabletCardWidth < 10 || tabletCardWidth > 100 || isNaN(tabletCardWidth)) {\r\n app.alerts.show({ type: 'error' }, app.translator.trans('walsgit_discussion_cards.admin.errors.tabletCardWidth'));\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n\tsaveSettings(e) {\r\n if (!this.onsubmit()) {\r\n return;\r\n }\r\n\t\tconst settings = this.dirty();\r\n\r\n super.saveSettings(e)\r\n\t\t.then(() => {\r\n\t\t\tconst newSettings = {};\r\n\t\t\tfor (const key in settings) {\r\n\t\t\t\tlet endOfKey = key.replace('walsgit_discussion_cards_', '');\r\n\t\t\t\tendOfKey = endOfKey.replace(/^./, endOfKey.charAt(0).toUpperCase());\r\n\t\t\t\tconst newKey = 'walsgitDiscussionCards' + endOfKey;\r\n\t\t\t\tnewSettings[newKey] = settings[key];\r\n\t\t\t}\r\n\t\t\tapp.forum.pushAttributes(newSettings);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.error(error);\r\n\t\t\t});\r\n }\r\n}\r\n","import app from \"flarum/admin/app\";\r\nimport Button from \"flarum/common/components/Button\";\r\nimport classList from \"flarum/common/utils/classList\";\r\nimport EditTagModal from \"flarum/tags/components/EditTagModal\";\r\n\r\n\r\nexport default class UploadTagImageButton extends Button {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.tagId = props.attrs.tagId;\r\n\t}\r\n\t\r\n\tloading = false;\r\n\r\n\tview(vnode) {\r\n\t\tthis.attrs.loading = this.loading;\r\n\t\tthis.attrs.className = classList(this.attrs.className, \"Button\");\r\n\r\n\t\tif (app.store.data.tags[this.tagId].data.attributes.walsgitDiscussionCardsTagDefaultImage) {\r\n\t\t\tthis.attrs.onclick = this.remove.bind(this);\r\n\r\n\t\t\treturn (\r\n\t\t\t\t
\r\n\t\t\t\t\t

\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t

\r\n\t\t\t\t\t

\r\n\t\t\t\t\t\t{super.view({\r\n\t\t\t\t\t\t\t...vnode,\r\n\t\t\t\t\t\t\tchildren: app.translator.trans(\r\n\t\t\t\t\t\t\t\t\"core.admin.upload_image.remove_button\"\r\n\t\t\t\t\t\t\t),\r\n\t\t\t\t\t\t})}\r\n\t\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t);\r\n\t\t} else {\r\n\t\t\tthis.attrs.onclick = this.upload.bind(this);\r\n\t\t}\r\n\r\n\t\treturn super.view({\r\n\t\t\t...vnode,\r\n\t\t\tchildren: app.translator.trans(\r\n\t\t\t\t\"core.admin.upload_image.upload_button\"\r\n\t\t\t),\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Prompt the user to upload an image.\r\n\t */\r\n\tupload() {\r\n\t\tif (this.loading) return;\r\n\r\n\t\tconst $input = $('');\r\n\r\n\t\t$input\r\n\t\t\t.appendTo(\"body\")\r\n\t\t\t.hide()\r\n\t\t\t.trigger(\"click\")\r\n\t\t\t.on(\"change\", (e) => {\r\n\t\t\t\tconst body = new FormData();\r\n\t\t\t\tbody.append(this.attrs.name, $(e.target)[0].files[0]);\r\n\t\t\t\tbody.append('tagId', this.tagId);\r\n\r\n\t\t\t\tthis.loading = true;\r\n\t\t\t\tm.redraw();\r\n\r\n\t\t\t\tapp.request({\r\n\t\t\t\t\tmethod: \"POST\",\r\n\t\t\t\t\turl: this.resourceUrl(),\r\n\t\t\t\t\tserialize: (raw) => raw,\r\n\t\t\t\t\tbody,\r\n\t\t\t\t}).then(this.success.bind(this), this.failure.bind(this));\r\n\t\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Remove the image.\r\n\t */\r\n\tremove() {\r\n\t\tthis.loading = true;\r\n\t\tm.redraw();\r\n\t\t\r\n\t\tconst body = new FormData();\r\n\t\tbody.append('tagId', this.tagId);\r\n\r\n\t\tapp.request({\r\n\t\t\tmethod: \"DELETE\",\r\n\t\t\turl: this.resourceUrl(),\r\n\t\t\tbody,\r\n\t\t}).then(this.success.bind(this), this.failure.bind(this));\r\n\t}\r\n\r\n\tresourceUrl() {\r\n\t\treturn app.forum.attribute(\"apiUrl\") + \"/\" + this.attrs.name;\r\n\t}\r\n\r\n\t/**\r\n\t * After a successful upload/removal, reload the page.\r\n\t *\r\n\t * @param {object} response\r\n\t * @protected\r\n\t */\r\n\tsuccess(response) {\r\n\t\twindow.location.reload();\r\n\t}\r\n\r\n\t/**\r\n\t * If upload/removal fails, stop loading.\r\n\t *\r\n\t * @param {object} response\r\n\t * @protected\r\n\t */\r\n\tfailure(response) {\r\n\t\tthis.loading = false;\r\n\t\tm.redraw();\r\n\t}\r\n}\r\n","import Button from \"flarum/common/components/Button\";\r\nimport Modal from \"flarum/common/components/Modal\";\r\nimport Stream from \"flarum/common/utils/Stream\";\r\n\r\nlet defaultSettings = {};\r\n\r\nexport default class WdcTagSettingsModal extends Modal {\r\n\toninit(vnode) {\r\n\t\tsuper.oninit(vnode);\r\n\r\n\t\tthis.tagSettings = JSON.parse(this.attrs.model.data.attributes.walsgitDiscussionCardsTagSettings || null) || {};\r\n\r\n\t\tdefaultSettings = {\r\n\t\t\tprimaryCards: app.forum.data.attributes.walsgitDiscussionCardsPrimaryCards,\r\n\t\t\tdesktopCardWidth: app.forum.data.attributes.walsgitDiscussionCardsDesktopCardWidth,\r\n\t\t\ttabletCardWidth: app.forum.data.attributes.walsgitDiscussionCardsTabletCardWidth,\r\n\t\t}\r\n\t\t\r\n\t\tif (!this.tagSettings.hasOwnProperty('primaryCards') || this.tagSettings.primaryCards === null) {\r\n\t\t\tthis.tagSettings.primaryCards = defaultSettings.primaryCards;\r\n\t\t}\r\n\t\tif (!this.tagSettings.hasOwnProperty('desktopCardWidth') || this.tagSettings.desktopCardWidth === null) {\r\n\t\t\tthis.tagSettings.desktopCardWidth = defaultSettings.desktopCardWidth;\r\n\t\t}\r\n\t\tif (!this.tagSettings.hasOwnProperty('tabletCardWidth') || this.tagSettings.tabletCardWidth === null) {\r\n\t\t\tthis.tagSettings.tabletCardWidth = defaultSettings.tabletCardWidth;\r\n\t\t}\r\n\r\n\t\tthis.tagSettings.primaryCards = Stream(this.tagSettings.primaryCards);\r\n\t\tthis.tagSettings.desktopCardWidth = Stream(this.tagSettings.desktopCardWidth);\r\n\t\tthis.tagSettings.tabletCardWidth = Stream(this.tagSettings.tabletCardWidth);\r\n\t\t\r\n\t}\r\n\tclassName() {\r\n\t\treturn \"WdcTagSettingsModal Modal--large\";\r\n\t}\r\n\r\n\ttitle() {\r\n\t\treturn [\r\n\t\t\tapp.translator.trans(\"walsgit_discussion_cards.admin.tag_modal.title\"),\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{this.attrs.model.data.attributes.name}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t]\r\n\t}\r\n\r\n\tcontent() {\r\n\t\treturn [\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

\r\n\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.tag_modal.intro_text\")}\r\n\t\t\t\t\t

\r\n \r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
{app.translator.trans(\"walsgit_discussion_cards.admin.tag_modal.primaryCards_help\", {default: defaultSettings.primaryCards})}
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
{app.translator.trans(\"walsgit_discussion_cards.admin.tag_modal.desktopCardWidth_help\", {default: defaultSettings.desktopCardWidth})}
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
{app.translator.trans(\"walsgit_discussion_cards.admin.tag_modal.tabletCardWidth_help\", {default: defaultSettings.tabletCardWidth})}
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.tag_modal.submit_button\")}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
,\r\n\t\t];\r\n\t}\r\n\tchanged() {\r\n\t\tlet savedSettings = JSON.parse(this.attrs.model.data.attributes.walsgitDiscussionCardsTagSettings || 'null') || {};\r\n\r\n\t\tfunction isSameSettings(obj1, obj2) {\r\n\t\t\tif(typeof obj1 !== 'object' ||typeof obj2 !== 'object') {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\r\n\t\t\tif (Object.keys(obj1).length !== Object.keys(obj2).length) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\r\n\t\t\tfor (const key in obj1) {\r\n\t\t\t\tif (obj1.hasOwnProperty(key)) {\r\n\t\t\t\t\tif (typeof obj1[key] === 'object' && typeof obj2[key] === 'object') {\r\n\t\t\t\t\t\tif (!compareObjects(obj1[key], obj2[key])) {\r\n\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else if (obj1[key] !== obj2[key]) {\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\r\n\t\t\treturn true;\r\n\t\t}\r\n\r\n\t\treturn isSameSettings(JSON.parse(JSON.stringify(this.tagSettings)), savedSettings);\r\n\t}\r\n\r\n\tonsubmit(e) {\r\n\t\te.preventDefault();\r\n\r\n\t\tconst primaryCards = parseInt(this.tagSettings.primaryCards());\r\n\t\tif (isNaN(primaryCards) || primaryCards < 0) {\r\n\t\t\tapp.alerts.show({ type: 'error' }, app.translator.trans('walsgit_discussion_cards.admin.errors.primaryCards'));\r\n\t\t\treturn;\r\n\t\t}\r\n\t\r\n\t\tconst desktopWidth = parseInt(this.tagSettings.desktopCardWidth());\r\n\t\tif (isNaN(desktopWidth) || desktopWidth < 10 || desktopWidth > 100) {\r\n\t\t\tapp.alerts.show({ type: 'error' }, app.translator.trans('walsgit_discussion_cards.admin.errors.desktopCardWidth'));\r\n\t\t\treturn;\r\n\t\t}\r\n\t\r\n\t\tconst tabletWidth = parseInt(this.tagSettings.tabletCardWidth());\r\n\t\tif (isNaN(tabletWidth) || tabletWidth < 10 || tabletWidth > 100) {\r\n\t\t\tapp.alerts.show({ type: 'error' }, app.translator.trans('walsgit_discussion_cards.admin.errors.tabletCardWidth'));\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst tag = this.attrs.model;\r\n\r\n\t\tthis.tagSettings.primaryCards(primaryCards);\r\n\t\tthis.tagSettings.desktopCardWidth(desktopWidth);\r\n\t\tthis.tagSettings.tabletCardWidth(tabletWidth);\r\n\r\n\t\tconst tagSettings = JSON.stringify(this.tagSettings);\r\n\r\n\t\tthis.loading = true;\r\n\r\n\t\tapp.request({\r\n\t\t\tmethod: \"PATCH\",\r\n\t\t\turl:\r\n\t\t\t\tapp.forum.attribute(\"apiUrl\") +\r\n\t\t\t\t\"/tags/\" +\r\n\t\t\t\ttag.id() +\r\n\t\t\t\t\"/tagSettings\",\r\n\t\t\tbody: { data: { tagSettings } },\r\n\t\t}).then(function () {\r\n\t\t\ttag.data.attributes.walsgitDiscussionCardsTagSettings = tagSettings;\r\n\t\t\tapp.modal.close();\r\n\t\t});\r\n\t}\r\n}\r\n","export default function isExtensionActive(extensionName) {\r\n if (app.data.settings.extensions_enabled.includes(extensionName)) {\r\n return true;\r\n }\r\n return false;\r\n}","export default function isExtensionInstalled(extensionName) {\r\n if (app.data.extensions.hasOwnProperty(extensionName)) {\r\n return true;\r\n }\r\n return false;\r\n}","import app from \"flarum/app\";\r\nimport Settings from \"./components/Settings\";\r\nimport { extend } from \"flarum/extend\";\r\nimport Model from \"flarum/common/Model\";\r\nimport Button from \"flarum/common/components/Button\";\r\nimport icon from 'flarum/common/helpers/icon';\r\nimport Tag from \"flarum/tags/models/Tag\";\r\nimport EditTagModal from \"flarum/tags/components/EditTagModal\";\r\nimport WdcTagSettingsModal from \"./components/WdcTagSettingsModal\";\r\nimport UploadTagImageButton from \"./components/UploadTagImageButton\";\r\n\r\napp.initializers.add(\"walsgit/discussion-cards\", () => {\r\n\tTag.prototype.WdcDefaultImage = Model.attribute(\r\n\t\t\"walsgit_discussion_cards_tag_default_image\"\r\n\t);\r\n\r\n\textend(EditTagModal.prototype, \"fields\", function (items) {\r\n\t\tif (this.tag.id()) {\r\n\t\t\tlet allowedTags = JSON.parse(app.forum.attribute('walsgitDiscussionCardsAllowedTags'));\r\n\t\t\tlet isActivatedForTag = allowedTags.includes(this.tag.id());\r\n\t\t\t\r\n\t\t\tlet activationBtnClasses = isActivatedForTag\r\n\t\t\t\t? \"DC-ActivationBtn Button activated\"\r\n\t\t\t\t: \"DC-ActivationBtn Button Button--primary\";\r\n\t\t\tlet DcTagSettingsClasses = isActivatedForTag ? \"DC-TagSettings\" : \"DC-TagSettings DC-Hidden\";\r\n\t\t\tlet activationBtnText = isActivatedForTag\r\n\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.tags.deactivation_button\")\r\n\t\t\t\t: app.translator.trans(\"walsgit_discussion_cards.admin.tags.activation_button\");\r\n\t\t\t\r\n\t\t\tconst toggleActivation = () => {\r\n\t\t\t\tisActivatedForTag = !isActivatedForTag;\r\n\t\t\t\tif (isActivatedForTag) {\r\n\t\t\t\t\tallowedTags.push(this.tag.id());\r\n\t\t\t\t} else {\r\n\t\t\t\t\tallowedTags = allowedTags.filter(id => id !== this.tag.id());\r\n\t\t\t\t}\r\n\r\n\t\t\t\tapp.request({\r\n\t\t\t\t\tmethod: \"POST\",\r\n\t\t\t\t\turl: app.forum.attribute(\"apiUrl\") + \"/walsgit_discussion_cards_tag_update_allowedTags\",\r\n\t\t\t\t\tbody: { allowedTags },\r\n\t\t\t\t}).then(() => {\r\n\t\t\t\t\tapp.forum.data.attributes.walsgitDiscussionCardsAllowedTags = JSON.stringify(allowedTags);\r\n\t\t\t\t\tapp.data.settings.walsgit_discussion_cards_allowedTags = JSON.stringify(allowedTags);\r\n\r\n\t\t\t\t\tisActivatedForTag = !isActivatedForTag;\r\n\t\t\t\t\tactivationBtnClasses = isActivatedForTag\r\n\t\t\t\t\t\t? \"DC-ActivationBtn Button activated\"\r\n\t\t\t\t\t\t: \"DC-ActivationBtn Button Button--primary\";\r\n\t\t\t\t\tDcTagSettingsClasses = isActivatedForTag ? \"DC-TagSettings\" : \"DC-TagSettings DC-Hidden\";\r\n\t\t\t\t\tactivationBtnText = isActivatedForTag\r\n\t\t\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.tags.deactivation_button\")\r\n\t\t\t\t\t\t: app.translator.trans(\"walsgit_discussion_cards.admin.tags.activation_button\");\r\n\t\t\t\t\tm.redraw();\r\n\t\t\t\t});\r\n\t\t\t};\r\n\t\t\t\r\n\t\t\titems.add(\r\n\t\t\t\t\"tag-discussion-cards-options\",\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.tags.options_heading\")}\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{activationBtnText}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.tags.defaultImage_title\")}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.tags.defaultImage_info\")}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{m(UploadTagImageButton, {\r\n\t\t\t\t\t\t\t\tname: \"walsgit_discussion_cards_tag_default_image\",\r\n\t\t\t\t\t\t\t\tclassName: \"DC-UploadTagImageBtn\",\r\n\t\t\t\t\t\t\t\tariaLabel: \"Upload a default image for this tag\",\r\n\t\t\t\t\t\t\t\ttagId: this.tag.id()\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\tapp.modal.show(WdcTagSettingsModal, { model: this.tag });\r\n\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.tags.options_button\")}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
,\r\n\t\t\t\t-20\r\n\t\t\t);\r\n\t\t}\r\n\t});\r\n\r\n\tapp.extensionData.for(\"walsgit-discussion-cards\").registerPage(Settings);\r\n});\r\n","module.exports = flarum.core.compat['admin/app'];","module.exports = flarum.core.compat['admin/components/ExtensionPage'];","module.exports = flarum.core.compat['admin/components/UploadImageButton'];","module.exports = flarum.core.compat['app'];","module.exports = flarum.core.compat['common/Model'];","module.exports = flarum.core.compat['common/components/Button'];","module.exports = flarum.core.compat['common/components/Modal'];","module.exports = flarum.core.compat['common/helpers/icon'];","module.exports = flarum.core.compat['common/utils/Stream'];","module.exports = flarum.core.compat['common/utils/classList'];","module.exports = flarum.core.compat['extend'];","module.exports = flarum.core.compat['tags/components/EditTagModal'];","module.exports = flarum.core.compat['tags/models/Tag'];","function _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nexport { _extends as default };","import setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _inheritsLoose(t, o) {\n t.prototype = Object.create(o.prototype), t.prototype.constructor = t, setPrototypeOf(t, o);\n}\nexport { _inheritsLoose as default };","function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nexport { _setPrototypeOf as default };","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/*\r\n * This file is part of Flarum.\r\n *\r\n * (c) Toby Zerner \r\n *\r\n * For the full copyright and license information, please view the LICENSE\r\n * file that was distributed with this source code.\r\n */\r\n\r\nexport * from './src/admin';\r\n"],"names":["app","ExtensionPage","UploadImageButton","isExtensionInstalled","isExtensionActive","icon","Settings","_ExtensionPage","apply","arguments","_inheritsLoose","_proto","prototype","content","viewsExtension","id","name","url","blogExtension","repostExtension","warningIcon","m","className","translator","trans","buildSettingComponent","type","setting","label","help","options","requireParentTag","min","step","placeholder","max","forum","attribute","src","disabled","href","target","rel","submitButton","onsubmit","primaryCards","Number","desktopCardWidth","tabletCardWidth","isNaN","alerts","show","saveSettings","e","settings","dirty","call","then","newSettings","key","endOfKey","replace","charAt","toUpperCase","newKey","pushAttributes","error","console","default","Button","classList","EditTagModal","UploadTagImageButton","_Button","props","_this","loading","tagId","attrs","view","vnode","store","data","tags","attributes","walsgitDiscussionCardsTagDefaultImage","onclick","remove","bind","alt","width","_extends","children","upload","_this2","$input","$","appendTo","hide","trigger","on","body","FormData","append","files","redraw","request","method","resourceUrl","serialize","raw","success","failure","response","window","location","reload","Modal","Stream","defaultSettings","WdcTagSettingsModal","_Modal","oninit","tagSettings","JSON","parse","model","walsgitDiscussionCardsTagSettings","walsgitDiscussionCardsPrimaryCards","walsgitDiscussionCardsDesktopCardWidth","walsgitDiscussionCardsTabletCardWidth","hasOwnProperty","title","style","color","htmlFor","bidi","changed","savedSettings","isSameSettings","obj1","obj2","Object","keys","length","compareObjects","stringify","preventDefault","parseInt","desktopWidth","tabletWidth","tag","modal","close","extensionName","extensions_enabled","includes","extensions","extend","Model","Tag","initializers","add","WdcDefaultImage","items","allowedTags","isActivatedForTag","activationBtnClasses","DcTagSettingsClasses","activationBtnText","toggleActivation","push","filter","walsgitDiscussionCardsAllowedTags","walsgit_discussion_cards_allowedTags","ariaLabel","extensionData","registerPage","assign","n","t","r","setPrototypeOf","o","create","constructor","_setPrototypeOf","__proto__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"admin.js","mappings":"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","sources":["webpack://@walsgit/flarum-discussion-cards/webpack/bootstrap","webpack://@walsgit/flarum-discussion-cards/webpack/runtime/compat get default export","webpack://@walsgit/flarum-discussion-cards/webpack/runtime/define property getters","webpack://@walsgit/flarum-discussion-cards/webpack/runtime/hasOwnProperty shorthand","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['app']\"","webpack://@walsgit/flarum-discussion-cards/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://@walsgit/flarum-discussion-cards/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['admin/app']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['admin/components/ExtensionPage']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['admin/components/UploadImageButton']\"","webpack://@walsgit/flarum-discussion-cards/./src/admin/helpers/isExtensionInstalled.js","webpack://@walsgit/flarum-discussion-cards/./src/admin/helpers/isExtensionActive.js","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/helpers/icon']\"","webpack://@walsgit/flarum-discussion-cards/./src/admin/components/Settings.js","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['extend']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/Model']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/components/Button']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['tags/models/Tag']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['tags/components/EditTagModal']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/components/Modal']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/utils/Stream']\"","webpack://@walsgit/flarum-discussion-cards/./src/admin/components/WdcTagSettingsModal.js","webpack://@walsgit/flarum-discussion-cards/./node_modules/@babel/runtime/helpers/esm/extends.js","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/utils/classList']\"","webpack://@walsgit/flarum-discussion-cards/./src/admin/components/UploadTagImageButton.js","webpack://@walsgit/flarum-discussion-cards/./src/admin/index.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['app'];","function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nexport { _setPrototypeOf as default };","import setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _inheritsLoose(t, o) {\n t.prototype = Object.create(o.prototype), t.prototype.constructor = t, setPrototypeOf(t, o);\n}\nexport { _inheritsLoose as default };","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['admin/app'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['admin/components/ExtensionPage'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['admin/components/UploadImageButton'];","export default function isExtensionInstalled(extensionName) {\r\n if (app.data.extensions.hasOwnProperty(extensionName)) {\r\n return true;\r\n }\r\n return false;\r\n}","export default function isExtensionActive(extensionName) {\r\n if (app.data.settings.extensions_enabled.includes(extensionName)) {\r\n return true;\r\n }\r\n return false;\r\n}","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/helpers/icon'];","import app from \"flarum/admin/app\";\r\nimport ExtensionPage from \"flarum/admin/components/ExtensionPage\";\r\nimport UploadImageButton from 'flarum/admin/components/UploadImageButton';\r\nimport isExtensionInstalled from \"../helpers/isExtensionInstalled\";\r\nimport isExtensionActive from \"../helpers/isExtensionActive\";\r\nimport icon from \"flarum/common/helpers/icon\";\r\n\r\nexport default class Settings extends ExtensionPage {\r\n\tcontent() {\r\n\t\t/* Supported third party extensions' info */\r\n\t\tconst viewsExtension = {\r\n\t\t\tid: 'flarumite-simple-discussion-views',\r\n\t\t\tname: 'Flarumite Simple Discussion Views',\r\n\t\t\turl: 'https://flarum.org/extension/flarumite/simple-discussion-views',\r\n\t\t};\r\n\t\tconst blogExtension = {\r\n\t\t\tid: 'v17development-blog',\r\n\t\t\tname: 'Flarum Blog',\r\n\t\t\turl: 'https://flarum.org/extension/v17development/flarum-blog',\r\n\t\t};\r\n\t\tconst repostExtension = {\r\n\t\t\tid: 'shebaoting-repost',\r\n\t\t\tname: 'Repost',\r\n\t\t\turl: 'https://flarum.org/extension/shebaoting/repost',\r\n\t\t}\r\n\r\n\t\tconst warningIcon = icon(\"fas fa-exclamation-triangle\");\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.where_title\")}

\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.where_info\")}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"flarum-tags.select-tags\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_allowedTags\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.allowedTags_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.allowedTags_help\"),\r\n\t\t\t\t\t\t\t\toptions: {\r\n\t\t\t\t\t\t\t\t\trequireParentTag: false,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_onIndexPage\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.onIndexPage_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.onIndexPage_help\"),\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t

{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.primaryCardOptions_title\")}

\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.primaryCardOptions_info\")}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"number\",\r\n\t\t\t\t\t\t\t\tclassName: 'DC-Number',\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_primaryCards\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.primaryCards_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.primaryCards_help\"),\r\n\t\t\t\t\t\t\t\tmin: 0,\r\n\t\t\t\t\t\t\t\tstep: 1,\r\n\t\t\t\t\t\t\t\tplaceholder: 4,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"number\",\r\n\t\t\t\t\t\t\t\tclassName: 'DC-Number',\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_desktopCardWidth\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.desktopCardWidth_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.desktopCardWidth_help\"),\r\n\t\t\t\t\t\t\t\tmin: 10,\r\n\t\t\t\t\t\t\t\tmax: 100,\r\n\t\t\t\t\t\t\t\tstep: 1,\r\n\t\t\t\t\t\t\t\tplaceholder: 49,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"number\",\r\n\t\t\t\t\t\t\t\tclassName: 'DC-Number',\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_tabletCardWidth\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.tabletCardWidth_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.tabletCardWidth_help\"),\r\n\t\t\t\t\t\t\t\tmin: 10,\r\n\t\t\t\t\t\t\t\tmax: 100,\r\n\t\t\t\t\t\t\t\tstep: 1,\r\n\t\t\t\t\t\t\t\tplaceholder: 49,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t

{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.cardOptions_title\")}

\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.cardOptions_info\")}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t

{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.defaultImage_title\")}

\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.defaultImage_info\")}\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{app.forum.attribute(\"walsgitDiscussionCardsDefaultImage\") === null \r\n\t\t\t\t\t\t\t\t\t?
\r\n\t\t\t\t\t\t\t\t\t: \r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{m(UploadImageButton, {name: \"walsgit_discussion_cards_default_image\", class: \"DC-UploadImageBtn\"})}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_previewText\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.previewText_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.previewText_help\"),\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_showAuthor\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showAuthor_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showAuthor_help\"),\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_showReplies\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showReplies_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showReplies_help\"),\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_showRepliesOnRight\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showRepliesOnRight_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showRepliesOnRight_help\"),\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_showLastPostInfo\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showLastPostInfo_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showLastPostInfo_help\"),\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_showBadges\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showBadges_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showBadges_help\"),\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_markReadCards\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.markReadCards_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.markReadCards_help\"),\r\n\t\t\t\t\t\t\t})}\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{/* 3rd party extensions options */}\r\n\t\t\t\t\t\t

{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.otherOptions_title\")}

\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.otherOptions_info\")}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t{/* flarumite/simple-discussion-views */}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showViews_title_start\")}\r\n\t\t\t\t\t\t\t\t{viewsExtension.name}\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showViews_title_end\")}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{!isExtensionInstalled(viewsExtension.id) \r\n\t\t\t\t\t\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.viewsExtension_notInstalled\", {icon: warningIcon}) : \r\n\t\t\t\t\t\t\t\t\t!isExtensionActive(viewsExtension.id) \r\n\t\t\t\t\t\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.viewsExtension_notActivated\", {icon: warningIcon}) :\r\n\t\t\t\t\t\t\t\t\t''}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_showViews\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showViews_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.showViews_help\"),\r\n\t\t\t\t\t\t\t\tdisabled: isExtensionActive(viewsExtension.id) ? false : true,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{/* v17development/flarum-blog */}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.blogExtension_title_start\")}\r\n\t\t\t\t\t\t\t\t{blogExtension.name}\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.blogExtension_title_end\")}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{!isExtensionInstalled(blogExtension.id) \r\n\t\t\t\t\t\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.blogExtension_notInstalled\", {icon: warningIcon}) : \r\n\t\t\t\t\t\t\t\t\t!isExtensionActive(blogExtension.id) \r\n\t\t\t\t\t\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.blogExtension_notActivated\", {icon: warningIcon}) :\r\n\t\t\t\t\t\t\t\t\t''}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_useBlogImages\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.useBlogImages_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.useBlogImages_help\"),\r\n\t\t\t\t\t\t\t\tdisabled: isExtensionActive(blogExtension.id) ? false : true,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_useBlogSummary\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.useBlogSummary_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.useBlogSummary_help\"),\r\n\t\t\t\t\t\t\t\tdisabled: isExtensionActive(blogExtension.id) ? false : true,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{/* shebaoting/repost */}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.repostExtension_title_start\")}\r\n\t\t\t\t\t\t\t\t{repostExtension.name}\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.repostExtension_title_end\")}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{!isExtensionInstalled(repostExtension.id) \r\n\t\t\t\t\t\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.repostExtension_notInstalled\", {icon: warningIcon}) : \r\n\t\t\t\t\t\t\t\t\t!isExtensionActive(repostExtension.id) \r\n\t\t\t\t\t\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.repostExtension_notActivated\", {icon: warningIcon}) :\r\n\t\t\t\t\t\t\t\t\t''}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.buildSettingComponent({\r\n\t\t\t\t\t\t\t\ttype: \"switch\",\r\n\t\t\t\t\t\t\t\tsetting: \"walsgit_discussion_cards_allowRepostLinks\",\r\n\t\t\t\t\t\t\t\tlabel: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.allowRepostLinks_label\"),\r\n\t\t\t\t\t\t\t\thelp: app.translator.trans(\"walsgit_discussion_cards.admin.settings.general.allowRepostLinks_help\"),\r\n\t\t\t\t\t\t\t\tdisabled: isExtensionActive(repostExtension.id) ? false : true,\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{this.submitButton()}\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n\r\n\tonsubmit() {\r\n\t\tconst primaryCards = Number(this.setting('walsgit_discussion_cards_primaryCards')());\r\n\t\tconst desktopCardWidth = Number(this.setting('walsgit_discussion_cards_desktopCardWidth')());\r\n\t\tconst tabletCardWidth = Number(this.setting('walsgit_discussion_cards_tabletCardWidth')());\r\n\r\n if (primaryCards < 0 || isNaN(primaryCards)) {\r\n app.alerts.show({ type: 'error' }, app.translator.trans('walsgit_discussion_cards.admin.errors.primaryCards'));\r\n return false;\r\n }\r\n if (desktopCardWidth < 10 || desktopCardWidth > 100 || isNaN(desktopCardWidth)) {\r\n app.alerts.show({ type: 'error' }, app.translator.trans('walsgit_discussion_cards.admin.errors.desktopCardWidth'));\r\n return false;\r\n }\r\n if (tabletCardWidth < 10 || tabletCardWidth > 100 || isNaN(tabletCardWidth)) {\r\n app.alerts.show({ type: 'error' }, app.translator.trans('walsgit_discussion_cards.admin.errors.tabletCardWidth'));\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n\tsaveSettings(e) {\r\n if (!this.onsubmit()) {\r\n return;\r\n }\r\n\t\tconst settings = this.dirty();\r\n\r\n super.saveSettings(e)\r\n\t\t.then(() => {\r\n\t\t\tconst newSettings = {};\r\n\t\t\tfor (const key in settings) {\r\n\t\t\t\tlet endOfKey = key.replace('walsgit_discussion_cards_', '');\r\n\t\t\t\tendOfKey = endOfKey.replace(/^./, endOfKey.charAt(0).toUpperCase());\r\n\t\t\t\tconst newKey = 'walsgitDiscussionCards' + endOfKey;\r\n\t\t\t\tnewSettings[newKey] = settings[key];\r\n\t\t\t}\r\n\t\t\tapp.forum.pushAttributes(newSettings);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.error(error);\r\n\t\t\t});\r\n }\r\n}\r\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['extend'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/Model'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Button'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['tags/models/Tag'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['tags/components/EditTagModal'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Modal'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/Stream'];","import Button from \"flarum/common/components/Button\";\r\nimport Modal from \"flarum/common/components/Modal\";\r\nimport Stream from \"flarum/common/utils/Stream\";\r\n\r\nlet defaultSettings = {};\r\n\r\nexport default class WdcTagSettingsModal extends Modal {\r\n\toninit(vnode) {\r\n\t\tsuper.oninit(vnode);\r\n\r\n\t\tthis.tagSettings = JSON.parse(this.attrs.model.data.attributes.walsgitDiscussionCardsTagSettings || null) || {};\r\n\r\n\t\tdefaultSettings = {\r\n\t\t\tprimaryCards: app.forum.data.attributes.walsgitDiscussionCardsPrimaryCards,\r\n\t\t\tdesktopCardWidth: app.forum.data.attributes.walsgitDiscussionCardsDesktopCardWidth,\r\n\t\t\ttabletCardWidth: app.forum.data.attributes.walsgitDiscussionCardsTabletCardWidth,\r\n\t\t}\r\n\t\t\r\n\t\tif (!this.tagSettings.hasOwnProperty('primaryCards') || this.tagSettings.primaryCards === null) {\r\n\t\t\tthis.tagSettings.primaryCards = defaultSettings.primaryCards;\r\n\t\t}\r\n\t\tif (!this.tagSettings.hasOwnProperty('desktopCardWidth') || this.tagSettings.desktopCardWidth === null) {\r\n\t\t\tthis.tagSettings.desktopCardWidth = defaultSettings.desktopCardWidth;\r\n\t\t}\r\n\t\tif (!this.tagSettings.hasOwnProperty('tabletCardWidth') || this.tagSettings.tabletCardWidth === null) {\r\n\t\t\tthis.tagSettings.tabletCardWidth = defaultSettings.tabletCardWidth;\r\n\t\t}\r\n\r\n\t\tthis.tagSettings.primaryCards = Stream(this.tagSettings.primaryCards);\r\n\t\tthis.tagSettings.desktopCardWidth = Stream(this.tagSettings.desktopCardWidth);\r\n\t\tthis.tagSettings.tabletCardWidth = Stream(this.tagSettings.tabletCardWidth);\r\n\t\t\r\n\t}\r\n\tclassName() {\r\n\t\treturn \"WdcTagSettingsModal Modal--large\";\r\n\t}\r\n\r\n\ttitle() {\r\n\t\treturn [\r\n\t\t\tapp.translator.trans(\"walsgit_discussion_cards.admin.tag_modal.title\"),\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{this.attrs.model.data.attributes.name}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t]\r\n\t}\r\n\r\n\tcontent() {\r\n\t\treturn [\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

\r\n\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.tag_modal.intro_text\")}\r\n\t\t\t\t\t

\r\n \r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
{app.translator.trans(\"walsgit_discussion_cards.admin.tag_modal.primaryCards_help\", {default: defaultSettings.primaryCards})}
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
{app.translator.trans(\"walsgit_discussion_cards.admin.tag_modal.desktopCardWidth_help\", {default: defaultSettings.desktopCardWidth})}
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
{app.translator.trans(\"walsgit_discussion_cards.admin.tag_modal.tabletCardWidth_help\", {default: defaultSettings.tabletCardWidth})}
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.tag_modal.submit_button\")}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
,\r\n\t\t];\r\n\t}\r\n\tchanged() {\r\n\t\tlet savedSettings = JSON.parse(this.attrs.model.data.attributes.walsgitDiscussionCardsTagSettings || 'null') || {};\r\n\r\n\t\tfunction isSameSettings(obj1, obj2) {\r\n\t\t\tif(typeof obj1 !== 'object' ||typeof obj2 !== 'object') {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\r\n\t\t\tif (Object.keys(obj1).length !== Object.keys(obj2).length) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\r\n\t\t\tfor (const key in obj1) {\r\n\t\t\t\tif (obj1.hasOwnProperty(key)) {\r\n\t\t\t\t\tif (typeof obj1[key] === 'object' && typeof obj2[key] === 'object') {\r\n\t\t\t\t\t\tif (!compareObjects(obj1[key], obj2[key])) {\r\n\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else if (obj1[key] !== obj2[key]) {\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\r\n\t\t\treturn true;\r\n\t\t}\r\n\r\n\t\treturn isSameSettings(JSON.parse(JSON.stringify(this.tagSettings)), savedSettings);\r\n\t}\r\n\r\n\tonsubmit(e) {\r\n\t\te.preventDefault();\r\n\r\n\t\tconst primaryCards = parseInt(this.tagSettings.primaryCards());\r\n\t\tif (isNaN(primaryCards) || primaryCards < 0) {\r\n\t\t\tapp.alerts.show({ type: 'error' }, app.translator.trans('walsgit_discussion_cards.admin.errors.primaryCards'));\r\n\t\t\treturn;\r\n\t\t}\r\n\t\r\n\t\tconst desktopWidth = parseInt(this.tagSettings.desktopCardWidth());\r\n\t\tif (isNaN(desktopWidth) || desktopWidth < 10 || desktopWidth > 100) {\r\n\t\t\tapp.alerts.show({ type: 'error' }, app.translator.trans('walsgit_discussion_cards.admin.errors.desktopCardWidth'));\r\n\t\t\treturn;\r\n\t\t}\r\n\t\r\n\t\tconst tabletWidth = parseInt(this.tagSettings.tabletCardWidth());\r\n\t\tif (isNaN(tabletWidth) || tabletWidth < 10 || tabletWidth > 100) {\r\n\t\t\tapp.alerts.show({ type: 'error' }, app.translator.trans('walsgit_discussion_cards.admin.errors.tabletCardWidth'));\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst tag = this.attrs.model;\r\n\r\n\t\tthis.tagSettings.primaryCards(primaryCards);\r\n\t\tthis.tagSettings.desktopCardWidth(desktopWidth);\r\n\t\tthis.tagSettings.tabletCardWidth(tabletWidth);\r\n\r\n\t\tconst tagSettings = JSON.stringify(this.tagSettings);\r\n\r\n\t\tthis.loading = true;\r\n\r\n\t\tapp.request({\r\n\t\t\tmethod: \"PATCH\",\r\n\t\t\turl:\r\n\t\t\t\tapp.forum.attribute(\"apiUrl\") +\r\n\t\t\t\t\"/tags/\" +\r\n\t\t\t\ttag.id() +\r\n\t\t\t\t\"/tagSettings\",\r\n\t\t\tbody: { data: { tagSettings } },\r\n\t\t}).then(function () {\r\n\t\t\ttag.data.attributes.walsgitDiscussionCardsTagSettings = tagSettings;\r\n\t\t\tapp.modal.close();\r\n\t\t});\r\n\t}\r\n}\r\n","function _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nexport { _extends as default };","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/classList'];","import app from \"flarum/admin/app\";\r\nimport Button from \"flarum/common/components/Button\";\r\nimport classList from \"flarum/common/utils/classList\";\r\nimport EditTagModal from \"flarum/tags/components/EditTagModal\";\r\n\r\n\r\nexport default class UploadTagImageButton extends Button {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.tagId = props.attrs.tagId;\r\n\t}\r\n\t\r\n\tloading = false;\r\n\r\n\tview(vnode) {\r\n\t\tthis.attrs.loading = this.loading;\r\n\t\tthis.attrs.className = classList(this.attrs.className, \"Button\");\r\n\r\n\t\tif (app.store.data.tags[this.tagId].data.attributes.walsgitDiscussionCardsTagDefaultImage) {\r\n\t\t\tthis.attrs.onclick = this.remove.bind(this);\r\n\r\n\t\t\treturn (\r\n\t\t\t\t
\r\n\t\t\t\t\t

\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t

\r\n\t\t\t\t\t

\r\n\t\t\t\t\t\t{super.view({\r\n\t\t\t\t\t\t\t...vnode,\r\n\t\t\t\t\t\t\tchildren: app.translator.trans(\r\n\t\t\t\t\t\t\t\t\"core.admin.upload_image.remove_button\"\r\n\t\t\t\t\t\t\t),\r\n\t\t\t\t\t\t})}\r\n\t\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t);\r\n\t\t} else {\r\n\t\t\tthis.attrs.onclick = this.upload.bind(this);\r\n\t\t}\r\n\r\n\t\treturn super.view({\r\n\t\t\t...vnode,\r\n\t\t\tchildren: app.translator.trans(\r\n\t\t\t\t\"core.admin.upload_image.upload_button\"\r\n\t\t\t),\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Prompt the user to upload an image.\r\n\t */\r\n\tupload() {\r\n\t\tif (this.loading) return;\r\n\r\n\t\tconst $input = $('');\r\n\r\n\t\t$input\r\n\t\t\t.appendTo(\"body\")\r\n\t\t\t.hide()\r\n\t\t\t.trigger(\"click\")\r\n\t\t\t.on(\"change\", (e) => {\r\n\t\t\t\tconst body = new FormData();\r\n\t\t\t\tbody.append(this.attrs.name, $(e.target)[0].files[0]);\r\n\t\t\t\tbody.append('tagId', this.tagId);\r\n\r\n\t\t\t\tthis.loading = true;\r\n\t\t\t\tm.redraw();\r\n\r\n\t\t\t\tapp.request({\r\n\t\t\t\t\tmethod: \"POST\",\r\n\t\t\t\t\turl: this.resourceUrl(),\r\n\t\t\t\t\tserialize: (raw) => raw,\r\n\t\t\t\t\tbody,\r\n\t\t\t\t}).then(this.success.bind(this), this.failure.bind(this));\r\n\t\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Remove the image.\r\n\t */\r\n\tremove() {\r\n\t\tthis.loading = true;\r\n\t\tm.redraw();\r\n\t\t\r\n\t\tconst body = new FormData();\r\n\t\tbody.append('tagId', this.tagId);\r\n\r\n\t\tapp.request({\r\n\t\t\tmethod: \"DELETE\",\r\n\t\t\turl: this.resourceUrl(),\r\n\t\t\tbody,\r\n\t\t}).then(this.success.bind(this), this.failure.bind(this));\r\n\t}\r\n\r\n\tresourceUrl() {\r\n\t\treturn app.forum.attribute(\"apiUrl\") + \"/\" + this.attrs.name;\r\n\t}\r\n\r\n\t/**\r\n\t * After a successful upload/removal, reload the page.\r\n\t *\r\n\t * @param {object} response\r\n\t * @protected\r\n\t */\r\n\tsuccess(response) {\r\n\t\twindow.location.reload();\r\n\t}\r\n\r\n\t/**\r\n\t * If upload/removal fails, stop loading.\r\n\t *\r\n\t * @param {object} response\r\n\t * @protected\r\n\t */\r\n\tfailure(response) {\r\n\t\tthis.loading = false;\r\n\t\tm.redraw();\r\n\t}\r\n}\r\n","import app from \"flarum/app\";\r\nimport Settings from \"./components/Settings\";\r\nimport { extend } from \"flarum/extend\";\r\nimport Model from \"flarum/common/Model\";\r\nimport Button from \"flarum/common/components/Button\";\r\nimport icon from 'flarum/common/helpers/icon';\r\nimport Tag from \"flarum/tags/models/Tag\";\r\nimport EditTagModal from \"flarum/tags/components/EditTagModal\";\r\nimport WdcTagSettingsModal from \"./components/WdcTagSettingsModal\";\r\nimport UploadTagImageButton from \"./components/UploadTagImageButton\";\r\n\r\napp.initializers.add(\"walsgit/discussion-cards\", () => {\r\n\tTag.prototype.WdcDefaultImage = Model.attribute(\r\n\t\t\"walsgit_discussion_cards_tag_default_image\"\r\n\t);\r\n\r\n\textend(EditTagModal.prototype, \"fields\", function (items) {\r\n\t\tif (this.tag.id()) {\r\n\t\t\tlet allowedTags = JSON.parse(app.forum.attribute('walsgitDiscussionCardsAllowedTags'));\r\n\t\t\tlet isActivatedForTag = allowedTags.includes(this.tag.id());\r\n\t\t\t\r\n\t\t\tlet activationBtnClasses = isActivatedForTag\r\n\t\t\t\t? \"DC-ActivationBtn Button activated\"\r\n\t\t\t\t: \"DC-ActivationBtn Button Button--primary\";\r\n\t\t\tlet DcTagSettingsClasses = isActivatedForTag ? \"DC-TagSettings\" : \"DC-TagSettings DC-Hidden\";\r\n\t\t\tlet activationBtnText = isActivatedForTag\r\n\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.tags.deactivation_button\")\r\n\t\t\t\t: app.translator.trans(\"walsgit_discussion_cards.admin.tags.activation_button\");\r\n\t\t\t\r\n\t\t\tconst toggleActivation = () => {\r\n\t\t\t\tisActivatedForTag = !isActivatedForTag;\r\n\t\t\t\tif (isActivatedForTag) {\r\n\t\t\t\t\tallowedTags.push(this.tag.id());\r\n\t\t\t\t} else {\r\n\t\t\t\t\tallowedTags = allowedTags.filter(id => id !== this.tag.id());\r\n\t\t\t\t}\r\n\r\n\t\t\t\tapp.request({\r\n\t\t\t\t\tmethod: \"POST\",\r\n\t\t\t\t\turl: app.forum.attribute(\"apiUrl\") + \"/walsgit_discussion_cards_tag_update_allowedTags\",\r\n\t\t\t\t\tbody: { allowedTags },\r\n\t\t\t\t}).then(() => {\r\n\t\t\t\t\tapp.forum.data.attributes.walsgitDiscussionCardsAllowedTags = JSON.stringify(allowedTags);\r\n\t\t\t\t\tapp.data.settings.walsgit_discussion_cards_allowedTags = JSON.stringify(allowedTags);\r\n\r\n\t\t\t\t\tisActivatedForTag = !isActivatedForTag;\r\n\t\t\t\t\tactivationBtnClasses = isActivatedForTag\r\n\t\t\t\t\t\t? \"DC-ActivationBtn Button activated\"\r\n\t\t\t\t\t\t: \"DC-ActivationBtn Button Button--primary\";\r\n\t\t\t\t\tDcTagSettingsClasses = isActivatedForTag ? \"DC-TagSettings\" : \"DC-TagSettings DC-Hidden\";\r\n\t\t\t\t\tactivationBtnText = isActivatedForTag\r\n\t\t\t\t\t\t? app.translator.trans(\"walsgit_discussion_cards.admin.tags.deactivation_button\")\r\n\t\t\t\t\t\t: app.translator.trans(\"walsgit_discussion_cards.admin.tags.activation_button\");\r\n\t\t\t\t\tm.redraw();\r\n\t\t\t\t});\r\n\t\t\t};\r\n\t\t\t\r\n\t\t\titems.add(\r\n\t\t\t\t\"tag-discussion-cards-options\",\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.tags.options_heading\")}\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{activationBtnText}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.tags.defaultImage_title\")}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.tags.defaultImage_info\")}\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{m(UploadTagImageButton, {\r\n\t\t\t\t\t\t\t\tname: \"walsgit_discussion_cards_tag_default_image\",\r\n\t\t\t\t\t\t\t\tclassName: \"DC-UploadTagImageBtn\",\r\n\t\t\t\t\t\t\t\tariaLabel: \"Upload a default image for this tag\",\r\n\t\t\t\t\t\t\t\ttagId: this.tag.id()\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\tapp.modal.show(WdcTagSettingsModal, { model: this.tag });\r\n\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t{app.translator.trans(\"walsgit_discussion_cards.admin.tags.options_button\")}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
,\r\n\t\t\t\t-20\r\n\t\t\t);\r\n\t\t}\r\n\t});\r\n\r\n\tapp.extensionData.for(\"walsgit-discussion-cards\").registerPage(Settings);\r\n});\r\n"],"names":["__webpack_require__","module","getter","__esModule","d","a","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","flarum","core","compat","_setPrototypeOf","t","e","setPrototypeOf","bind","__proto__","_inheritsLoose","create","constructor","isExtensionInstalled","extensionName","app","data","extensions","isExtensionActive","settings","extensions_enabled","includes","Settings","_ExtensionPage","apply","arguments","_proto","content","viewsExtension","blogExtension","repostExtension","warningIcon","icon","m","className","trans","this","buildSettingComponent","type","setting","label","help","options","requireParentTag","min","step","placeholder","max","attribute","src","UploadImageButton","name","class","href","target","rel","disabled","submitButton","onsubmit","primaryCards","Number","desktopCardWidth","tabletCardWidth","isNaN","show","saveSettings","dirty","then","newSettings","endOfKey","replace","charAt","toUpperCase","pushAttributes","error","console","ExtensionPage","defaultSettings","WdcTagSettingsModal","_Modal","oninit","vnode","tagSettings","JSON","parse","attrs","model","attributes","walsgitDiscussionCardsTagSettings","forum","walsgitDiscussionCardsPrimaryCards","walsgitDiscussionCardsDesktopCardWidth","walsgitDiscussionCardsTabletCardWidth","Stream","title","translator","style","color","htmlFor","default","bidi","Button","loading","changed","savedSettings","obj1","obj2","keys","length","compareObjects","isSameSettings","stringify","preventDefault","parseInt","alerts","desktopWidth","tabletWidth","tag","request","method","url","id","body","modal","close","Modal","_extends","assign","n","r","UploadTagImageButton","_Button","props","_this","tagId","view","classList","tags","walsgitDiscussionCardsTagDefaultImage","onclick","remove","alt","width","children","upload","_this2","$","appendTo","hide","trigger","on","FormData","append","files","redraw","resourceUrl","serialize","raw","success","failure","response","window","location","reload","add","Tag","WdcDefaultImage","Model","extend","EditTagModal","items","allowedTags","isActivatedForTag","activationBtnClasses","DcTagSettingsClasses","activationBtnText","push","filter","walsgitDiscussionCardsAllowedTags","walsgit_discussion_cards_allowedTags","ariaLabel","registerPage"],"sourceRoot":""} \ No newline at end of file diff --git a/js/dist/forum.js b/js/dist/forum.js index cc1b4b6..123dbb7 100644 --- a/js/dist/forum.js +++ b/js/dist/forum.js @@ -1,1263 +1,2 @@ -/******/ (() => { // webpackBootstrap -/******/ // runtime can't be in strict mode because a global variable is assign and maybe created. -/******/ var __webpack_modules__ = ({ - -/***/ "./src/forum/compat.js": -/*!*****************************!*\ - !*** ./src/forum/compat.js ***! - \*****************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _components_CardItem__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components/CardItem */ "./src/forum/components/CardItem.js"); -/* harmony import */ var _components_ListItem__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/ListItem */ "./src/forum/components/ListItem.js"); -/* harmony import */ var _components_LastReplies__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/LastReplies */ "./src/forum/components/LastReplies.js"); -/* harmony import */ var _utils_craftTags__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/craftTags */ "./src/forum/utils/craftTags.js"); -/* harmony import */ var _utils_craftBadges__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils/craftBadges */ "./src/forum/utils/craftBadges.js"); - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - 'walsgit/discussion/cards/components/CardItem': _components_CardItem__WEBPACK_IMPORTED_MODULE_0__["default"], - 'walsgit/discussion/cards/components/ListItem': _components_ListItem__WEBPACK_IMPORTED_MODULE_1__["default"], - 'walsgit/discussion/cards/components/LastReplies': _components_LastReplies__WEBPACK_IMPORTED_MODULE_2__["default"], - 'walsgit/discussion/cards/utils/craftTags': _utils_craftTags__WEBPACK_IMPORTED_MODULE_3__["default"], - 'walsgit/discussion/cards/utils/craftBadges': _utils_craftBadges__WEBPACK_IMPORTED_MODULE_4__["default"] -}); - -/***/ }), - -/***/ "./src/forum/components/CardItem.js": -/*!******************************************!*\ - !*** ./src/forum/components/CardItem.js ***! - \******************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ cardItem) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js"); -/* harmony import */ var flarum_common_Component__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! flarum/common/Component */ "flarum/common/Component"); -/* harmony import */ var flarum_common_Component__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(flarum_common_Component__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _utils_craftBadges__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/craftBadges */ "./src/forum/utils/craftBadges.js"); -/* harmony import */ var _helpers_getPostImage__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../helpers/getPostImage */ "./src/forum/helpers/getPostImage.js"); -/* harmony import */ var _utils_craftTags__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/craftTags */ "./src/forum/utils/craftTags.js"); -/* harmony import */ var flarum_common_utils_humanTime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! flarum/common/utils/humanTime */ "flarum/common/utils/humanTime"); -/* harmony import */ var flarum_common_utils_humanTime__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(flarum_common_utils_humanTime__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! flarum/common/helpers/icon */ "flarum/common/helpers/icon"); -/* harmony import */ var flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6__); -/* harmony import */ var flarum_common_helpers_username__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! flarum/common/helpers/username */ "flarum/common/helpers/username"); -/* harmony import */ var flarum_common_helpers_username__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(flarum_common_helpers_username__WEBPACK_IMPORTED_MODULE_7__); -/* harmony import */ var flarum_common_components_Dropdown__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! flarum/common/components/Dropdown */ "flarum/common/components/Dropdown"); -/* harmony import */ var flarum_common_components_Dropdown__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_Dropdown__WEBPACK_IMPORTED_MODULE_8__); -/* harmony import */ var flarum_forum_utils_DiscussionControls__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! flarum/forum/utils/DiscussionControls */ "flarum/forum/utils/DiscussionControls"); -/* harmony import */ var flarum_forum_utils_DiscussionControls__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(flarum_forum_utils_DiscussionControls__WEBPACK_IMPORTED_MODULE_9__); -/* harmony import */ var flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! flarum/common/components/Link */ "flarum/common/components/Link"); -/* harmony import */ var flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_10__); -/* harmony import */ var flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! flarum/common/utils/string */ "flarum/common/utils/string"); -/* harmony import */ var flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11__); -/* harmony import */ var _LastReplies__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./LastReplies */ "./src/forum/components/LastReplies.js"); -/* harmony import */ var _helpers_compareTags__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../helpers/compareTags */ "./src/forum/helpers/compareTags.js"); -/* harmony import */ var _helpers_isValideImageUrl__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../helpers/isValideImageUrl */ "./src/forum/helpers/isValideImageUrl.js"); -/* harmony import */ var flarum_components_TerminalPost__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! flarum/components/TerminalPost */ "flarum/components/TerminalPost"); -/* harmony import */ var flarum_components_TerminalPost__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(flarum_components_TerminalPost__WEBPACK_IMPORTED_MODULE_15__); - - - - - - - - - - - - - - - - -var cardItem = /*#__PURE__*/function (_Component) { - function cardItem() { - return _Component.apply(this, arguments) || this; - } - (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(cardItem, _Component); - var _proto = cardItem.prototype; - _proto.oninit = function oninit(vnode) { - _Component.prototype.oninit.call(this, vnode); - this.discussion = this.attrs.discussion; - }; - _proto.view = function view() { - var discussion = this.discussion; - var settings = {}; - for (var key in app.forum.data.attributes) { - if (key.startsWith('walsgitDiscussionCards')) { - var newKey = key.replace('walsgitDiscussionCards', ''); - newKey = newKey.replace(/^./, newKey.charAt(0).toLowerCase()); - settings[newKey] = app.forum.data.attributes[key]; - } - } - - /* Getting & setting relevant info for 3rd party Flarum Blog extension support */ - var blogActivated = app.forum.data.attributes.hasOwnProperty('blogTags'); - var blogSettings = {}; - var postIsBlogType = discussion.data.relationships.hasOwnProperty('blogMeta'); - var blogPost = {}; - if (blogActivated) { - blogSettings.tags = app.forum.attribute('blogTags'); - blogSettings.defaultImage = app.forum.attribute('blogDefaultImage'); - if (postIsBlogType) { - var blogPostsData = discussion.store.data.blogMeta[discussion.data.relationships.blogMeta.data.id]; - if ((0,_helpers_isValideImageUrl__WEBPACK_IMPORTED_MODULE_14__["default"])(blogPostsData.attribute('featuredImage'))) { - blogPost.featuredImage = blogPostsData.attribute('featuredImage'); - } - } - } - - /* Getting & setting relevant info for 3rd party Repost extension */ - var repostActivated = 'shebaoting-repost' in flarum.extensions; - var repostUrl = discussion.data.attributes.original_url || null; - var isTagPage = m.route.get().split('?')[0].startsWith('/t/'); - var tagId; - if (isTagPage) { - var _m$route$get$split$; - var slug = (_m$route$get$split$ = m.route.get().split('/t/')[1]) == null ? void 0 : _m$route$get$split$.split('?')[0]; - tagId = app.store.all('tags').find(function (t) { - return t.slug() === slug; - }).data.id; - var tag = app.store.all('tags').find(function (t) { - return t.id() === tagId; - }); - var tagSettings = tag ? JSON.parse(tag.data.attributes.walsgitDiscussionCardsTagSettings || '{}') : {}; - var tagImage = tag ? tag.data.attributes.walsgitDiscussionCardsTagDefaultImage : null; - tagSettings.defaultImage = tagImage; - /* In case Flarum Blog Extension and useBlogImage are activated */ - if (blogActivated && Number(settings.useBlogImages) === 1 && blogSettings.tags.includes(tagId)) { - tagSettings.defaultImage = postIsBlogType && blogPost.featuredImage && (0,_helpers_isValideImageUrl__WEBPACK_IMPORTED_MODULE_14__["default"])(blogPost.featuredImage) ? blogPost.featuredImage : blogSettings.defaultImage; - } - for (var _key in tagSettings) { - if (settings.hasOwnProperty(_key) && tagSettings[_key] !== settings[_key] && tagSettings[_key] !== null) { - settings[_key] = tagSettings[_key]; - } - } - } - - /* On the IndexPage (all discussions) checks which default image to show based on tag priority */ - var isIndexPage = m.route.get().split('?')[0] === '/'; - if (isIndexPage) { - var tags = discussion.tags(); - for (var _key2 in tags) { - var _tagId = tags[_key2].id(); - var isChild = tags[_key2].isChild(); - var parent = tags[_key2].data.hasOwnProperty('relationships') && tags[_key2].parent() ? tags[_key2].parent()['data'].id : null; - var position = tags[_key2].position(); - var tagCustomImg = tags[_key2].attribute('walsgitDiscussionCardsTagDefaultImage'); - /* In case Flarum Blog Extension and useBlogImage are activated */ - if (blogActivated && Number(settings.useBlogImages) === 1 && blogSettings.tags.includes(_tagId)) { - tagCustomImg = postIsBlogType && blogPost.featuredImage && (0,_helpers_isValideImageUrl__WEBPACK_IMPORTED_MODULE_14__["default"])(blogPost.featuredImage) ? blogPost.featuredImage : blogSettings.defaultImage; - } - var currentTag = { - id: _tagId, - isChild: isChild, - parent: parent, - position: position, - tagCustomImg: tagCustomImg - }; - var priorityTag = null; - if (!settings.allowedTags.includes(_tagId) || tagCustomImg === null) continue; - if (priorityTag === null || (0,_helpers_compareTags__WEBPACK_IMPORTED_MODULE_13__["default"])(currentTag, priorityTag) < 0) { - priorityTag = { - id: _tagId, - isChild: isChild, - parent: parent, - position: position, - tagCustomImg: tagCustomImg - }; - settings.defaultImage = tagCustomImg; - } - } - } - var isRead = Number(settings.markReadCards) === 1 && discussion.isRead() && app.session.user ? "read" : ""; - var attrs = {}; - attrs.className = "wrapImg" + (Number(settings.showAuthor) === 1 ? " After" : ""); - var image = (0,_helpers_getPostImage__WEBPACK_IMPORTED_MODULE_3__["default"])(discussion.firstPost(), settings.defaultImage, postIsBlogType); - var media = image ? m("img", { - src: image, - className: "previewCardImg", - alt: discussion.title(), - loading: "lazy" - }) : m("div", { - className: "imgStub" - }); - return m("div", { - key: discussion.id(), - "data-id": discussion.id(), - "data-tag-id": isTagPage ? tagId : null, - className: "CardsListItem Card " + isRead + (discussion.isHidden() ? " Hidden" : "") - }, flarum_forum_utils_DiscussionControls__WEBPACK_IMPORTED_MODULE_9___default().controls(discussion, this).toArray().length ? m((flarum_common_components_Dropdown__WEBPACK_IMPORTED_MODULE_8___default()), { - icon: "fas fa-ellipsis-v", - className: "DiscussionListItem-controls", - buttonClassName: "Button Button--icon Button--flat Slidable-underneath Slidable-underneath--right" - }, flarum_forum_utils_DiscussionControls__WEBPACK_IMPORTED_MODULE_9___default().controls(discussion, this).toArray()) : "", m((flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_10___default()), { - href: app.route.discussion(discussion, 0), - className: "cardLink" - }, Number(settings.showBadges) === 1 ? (0,_utils_craftBadges__WEBPACK_IMPORTED_MODULE_2__["default"])(discussion.badges().toArray()) : "", m("div", attrs, discussion.data.attributes.hasOwnProperty('views') && m('[', null, Number(settings.showViews) === 1 && !isNaN(discussion.views()) ? m("div", { - className: "imageLabel discussionViews" - }, flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6___default()("fas fa-eye", { - className: "labelIcon" - }), discussion.views()) : ""), media, Number(settings.showAuthor) === 1 ? m("div", { - className: "cardFoot" - }, m("div", { - className: "Author" - }, flarum_common_helpers_username__WEBPACK_IMPORTED_MODULE_7___default()(discussion.user())), m("div", { - className: "Date" - }, flarum_common_utils_humanTime__WEBPACK_IMPORTED_MODULE_5___default()(discussion.createdAt()))) : ""), m("div", { - className: "cardTags" - }, (0,_utils_craftTags__WEBPACK_IMPORTED_MODULE_4__["default"])(discussion.tags())), m("div", { - className: "cardTitle" - }, m("h2", { - title: discussion.title(), - className: "title" - }, Number(settings.allowRepostLinks) === 1 && repostActivated && repostUrl ? m("a", { - href: repostUrl, - onclick: function onclick(e) { - return e.stopPropagation(); - } - }, (0,flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11__.truncate)(discussion.title(), 80)) : (0,flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11__.truncate)(discussion.title(), 80))), Number(settings.previewText) === 1 && discussion.firstPost() ? m("div", { - className: "previewPost" - }, blogActivated && Number(settings.useBlogSummary) === 1 && discussion.data.relationships.hasOwnProperty('blogMeta') && discussion.blogMeta().summary() !== '' ? (0,flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11__.truncate)(discussion.blogMeta().summary(), 150) : (0,flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11__.truncate)(discussion.firstPost().contentPlain(), 150)) : "", Number(settings.showLastPostInfo) === 1 && discussion.firstPost() ? m("div", { - className: "terminalPost" - }, m((flarum_components_TerminalPost__WEBPACK_IMPORTED_MODULE_15___default()), { - discussion: discussion, - lastPost: discussion.lastPostNumber() - })) : '', Number(settings.showReplies) === 1 ? m("div", { - className: "cardSpacer" - }, m((flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_10___default()), { - className: "Replies", - href: app.route.discussion(discussion, discussion.lastPostNumber()) - }, m("div", { - className: "Left" - }, m("div", { - className: "Avatars" - }, m(_LastReplies__WEBPACK_IMPORTED_MODULE_12__["default"], { - discussion: discussion - })), m("div", { - className: "Repcount" - }, app.translator.trans("walsgit_discussion_cards.forum.replies", { - count: discussion.replyCount() || "0" - }))), m("div", { - className: "Arrow" - }, flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6___default()("fas fa-angle-right")))) : "")); - }; - return cardItem; -}((flarum_common_Component__WEBPACK_IMPORTED_MODULE_1___default())); - - -/***/ }), - -/***/ "./src/forum/components/LastReplies.js": -/*!*********************************************!*\ - !*** ./src/forum/components/LastReplies.js ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ LastReplies) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js"); -/* harmony import */ var flarum_common_Component__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! flarum/common/Component */ "flarum/common/Component"); -/* harmony import */ var flarum_common_Component__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(flarum_common_Component__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var flarum_common_helpers_avatar__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! flarum/common/helpers/avatar */ "flarum/common/helpers/avatar"); -/* harmony import */ var flarum_common_helpers_avatar__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(flarum_common_helpers_avatar__WEBPACK_IMPORTED_MODULE_2__); - - - -var LastReplies = /*#__PURE__*/function (_Component) { - function LastReplies() { - return _Component.apply(this, arguments) || this; - } - (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(LastReplies, _Component); - var _proto = LastReplies.prototype; - _proto.oninit = function oninit(vnode) { - _Component.prototype.oninit.call(this, vnode); - this.discussion = this.attrs.discussion; - }; - _proto.view = function view() { - var discussion = this.discussion; - - // let's assume that the last 10 posts will be enough for us to identify 3 unique users - var posts = discussion.posts().splice(-10); - var filteredPosts = posts.filter(function (post) { - return !post.isHidden() && post.number() !== 1 && post.contentType() === "comment"; - }).sort(function (a, b) { - return b.createdAt() - a.createdAt(); - }); - var groupedUsers = filteredPosts.map(function (post) { - return post.user(); - }).filter(function (user, i, self) { - return self.indexOf(user) === i; - }).reverse() - // last 3 users - .splice(-3); - return groupedUsers.map(function (user) { - return flarum_common_helpers_avatar__WEBPACK_IMPORTED_MODULE_2___default()(user, { - className: 'Avatar--mini' - }); - }); - }; - return LastReplies; -}((flarum_common_Component__WEBPACK_IMPORTED_MODULE_1___default())); - - -/***/ }), - -/***/ "./src/forum/components/ListItem.js": -/*!******************************************!*\ - !*** ./src/forum/components/ListItem.js ***! - \******************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ listItem) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js"); -/* harmony import */ var flarum_common_Component__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! flarum/common/Component */ "flarum/common/Component"); -/* harmony import */ var flarum_common_Component__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(flarum_common_Component__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _utils_craftBadges__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/craftBadges */ "./src/forum/utils/craftBadges.js"); -/* harmony import */ var _helpers_getPostImage__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../helpers/getPostImage */ "./src/forum/helpers/getPostImage.js"); -/* harmony import */ var _utils_craftTags__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/craftTags */ "./src/forum/utils/craftTags.js"); -/* harmony import */ var flarum_common_utils_humanTime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! flarum/common/utils/humanTime */ "flarum/common/utils/humanTime"); -/* harmony import */ var flarum_common_utils_humanTime__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(flarum_common_utils_humanTime__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! flarum/common/helpers/icon */ "flarum/common/helpers/icon"); -/* harmony import */ var flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6__); -/* harmony import */ var flarum_common_helpers_username__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! flarum/common/helpers/username */ "flarum/common/helpers/username"); -/* harmony import */ var flarum_common_helpers_username__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(flarum_common_helpers_username__WEBPACK_IMPORTED_MODULE_7__); -/* harmony import */ var flarum_common_components_Dropdown__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! flarum/common/components/Dropdown */ "flarum/common/components/Dropdown"); -/* harmony import */ var flarum_common_components_Dropdown__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_Dropdown__WEBPACK_IMPORTED_MODULE_8__); -/* harmony import */ var flarum_forum_utils_DiscussionControls__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! flarum/forum/utils/DiscussionControls */ "flarum/forum/utils/DiscussionControls"); -/* harmony import */ var flarum_forum_utils_DiscussionControls__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(flarum_forum_utils_DiscussionControls__WEBPACK_IMPORTED_MODULE_9__); -/* harmony import */ var flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! flarum/common/components/Link */ "flarum/common/components/Link"); -/* harmony import */ var flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_10__); -/* harmony import */ var flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! flarum/common/utils/string */ "flarum/common/utils/string"); -/* harmony import */ var flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11__); -/* harmony import */ var _LastReplies__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./LastReplies */ "./src/forum/components/LastReplies.js"); -/* harmony import */ var _helpers_compareTags__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../helpers/compareTags */ "./src/forum/helpers/compareTags.js"); -/* harmony import */ var _helpers_isValideImageUrl__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../helpers/isValideImageUrl */ "./src/forum/helpers/isValideImageUrl.js"); -/* harmony import */ var flarum_common_utils_abbreviateNumber__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! flarum/common/utils/abbreviateNumber */ "flarum/common/utils/abbreviateNumber"); -/* harmony import */ var flarum_common_utils_abbreviateNumber__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(flarum_common_utils_abbreviateNumber__WEBPACK_IMPORTED_MODULE_15__); -/* harmony import */ var flarum_components_TerminalPost__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! flarum/components/TerminalPost */ "flarum/components/TerminalPost"); -/* harmony import */ var flarum_components_TerminalPost__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(flarum_components_TerminalPost__WEBPACK_IMPORTED_MODULE_16__); - - - - - - - - - - - - - - - - - -var listItem = /*#__PURE__*/function (_Component) { - function listItem() { - return _Component.apply(this, arguments) || this; - } - (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(listItem, _Component); - var _proto = listItem.prototype; - _proto.oninit = function oninit(vnode) { - _Component.prototype.oninit.call(this, vnode); - }; - _proto.view = function view() { - var discussion = this.attrs.discussion; - var settings = {}; - for (var key in app.forum.data.attributes) { - if (key.startsWith('walsgitDiscussionCards')) { - var newKey = key.replace('walsgitDiscussionCards', ''); - newKey = newKey.replace(/^./, newKey.charAt(0).toLowerCase()); - settings[newKey] = app.forum.data.attributes[key]; - } - } - - /* Getting & setting relevant info for 3rd party Flarum Blog support */ - var blogActivated = app.forum.data.attributes.hasOwnProperty('blogTags'); - var blogSettings = {}; - var postIsBlogType = discussion.data.relationships.hasOwnProperty('blogMeta'); - var blogPost = {}; - if (blogActivated) { - blogSettings.tags = app.forum.attribute('blogTags'); - blogSettings.defaultImage = app.forum.attribute('blogDefaultImage'); - if (postIsBlogType) { - var blogPostsData = discussion.store.data.blogMeta[discussion.data.relationships.blogMeta.data.id]; - if ((0,_helpers_isValideImageUrl__WEBPACK_IMPORTED_MODULE_14__["default"])(blogPostsData.attribute('featuredImage'))) { - blogPost.featuredImage = blogPostsData.attribute('featuredImage'); - } - } - } - - /* Getting & setting relevant info for 3rd party Repost extension */ - var repostActivated = 'shebaoting-repost' in flarum.extensions; - var repostUrl = discussion.data.attributes.original_url || null; - var isTagPage = m.route.get().split('?')[0].startsWith('/t/'); - if (isTagPage) { - var _m$route$get$split$; - var slug = (_m$route$get$split$ = m.route.get().split('/t/')[1]) == null ? void 0 : _m$route$get$split$.split('?')[0]; - var tagId = app.store.all('tags').find(function (t) { - return t.slug() === slug; - }).data.id; - var tag = app.store.all('tags').find(function (t) { - return t.id() === tagId; - }); - var tagSettings = tag ? JSON.parse(tag.data.attributes.walsgitDiscussionCardsTagSettings || '{}') : {}; - var tagImage = tag ? tag.data.attributes.walsgitDiscussionCardsTagDefaultImage : null; - tagSettings.defaultImage = tagImage; - /* In case Flarum Blog Extension and useBlogImage are activated */ - if (blogActivated && Number(settings.useBlogImages) === 1 && blogSettings.tags.includes(tagId)) { - tagSettings.defaultImage = postIsBlogType && blogPost.featuredImage && (0,_helpers_isValideImageUrl__WEBPACK_IMPORTED_MODULE_14__["default"])(blogPost.featuredImage) ? blogPost.featuredImage : blogSettings.defaultImage; - } - for (var _key in tagSettings) { - if (settings.hasOwnProperty(_key) && tagSettings[_key] !== settings[_key] && tagSettings[_key] !== null) { - settings[_key] = tagSettings[_key]; - } - } - } - - /* On the IndexPage (all discussions) checks which default image to show based on tag priority */ - var isIndexPage = m.route.get().split('?')[0] === '/'; - if (isIndexPage) { - var tags = discussion.tags(); - for (var _key2 in tags) { - var _tagId = tags[_key2].id(); - var isChild = tags[_key2].isChild(); - var parent = tags[_key2].data.hasOwnProperty('relationships') && tags[_key2].parent() ? tags[_key2].parent()['data'].id : null; - var position = tags[_key2].position(); - var tagCustomImg = tags[_key2].attribute('walsgitDiscussionCardsTagDefaultImage'); - /* In case Flarum Blog Extension and useBlogImage are activated */ - if (blogActivated && Number(settings.useBlogImages) === 1 && blogSettings.tags.includes(_tagId)) { - tagCustomImg = postIsBlogType && blogPost.featuredImage && (0,_helpers_isValideImageUrl__WEBPACK_IMPORTED_MODULE_14__["default"])(blogPost.featuredImage) ? blogPost.featuredImage : blogSettings.defaultImage; - } - var currentTag = { - id: _tagId, - isChild: isChild, - parent: parent, - position: position, - tagCustomImg: tagCustomImg - }; - var priorityTag = null; - if (!settings.allowedTags.includes(_tagId) || tagCustomImg === null) continue; - if (priorityTag === null || (0,_helpers_compareTags__WEBPACK_IMPORTED_MODULE_13__["default"])(currentTag, priorityTag) < 0) { - priorityTag = { - id: _tagId, - isChild: isChild, - parent: parent, - position: position, - tagCustomImg: tagCustomImg - }; - settings.defaultImage = tagCustomImg; - } - } - } - var isRead = Number(settings.markReadCards) === 1 && discussion.isRead() && app.session.user ? 'read' : ''; - var attrs = {}; - attrs.className = "wrapImg" + (Number(settings.showAuthor) === 1 ? " After" : ''); - var image = (0,_helpers_getPostImage__WEBPACK_IMPORTED_MODULE_3__["default"])(discussion.firstPost(), settings.defaultImage, postIsBlogType); - var media = image ? m("img", { - src: image, - className: "previewCardImg", - alt: discussion.title(), - loading: "lazy" - }) : m("div", { - className: "imgStub" - }); - return m("div", { - key: discussion.id(), - "data-id": discussion.id(), - className: "CardsListItem List " + isRead + (discussion.isHidden() ? " Hidden" : "") - }, flarum_forum_utils_DiscussionControls__WEBPACK_IMPORTED_MODULE_9___default().controls(discussion, this).toArray().length ? m((flarum_common_components_Dropdown__WEBPACK_IMPORTED_MODULE_8___default()), { - icon: 'fas fa-ellipsis-v', - className: 'DiscussionListItem-controls', - buttonClassName: 'Button Button--icon Button--flat Slidable-underneath Slidable-underneath--right' - }, flarum_forum_utils_DiscussionControls__WEBPACK_IMPORTED_MODULE_9___default().controls(discussion, this).toArray()) : '', m((flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_10___default()), { - href: app.route.discussion(discussion, 0), - className: "cardLink" - }, Number(settings.showBadges) === 1 ? (0,_utils_craftBadges__WEBPACK_IMPORTED_MODULE_2__["default"])(discussion.badges().toArray()) : '', m("div", { - className: "cardGrid" - }, m("div", { - className: "rowSpan-3 colSpan" - }, m("div", attrs, discussion.data.attributes.hasOwnProperty('views') && m('[', null, Number(settings.showViews) === 1 && !isNaN(discussion.views()) ? m("div", { - className: "imageLabel discussionViews" - }, flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6___default()('fas fa-eye', { - className: 'labelIcon' - }), discussion.views()) : ''), media, Number(settings.showAuthor) === 1 ? m("div", { - className: "cardFoot" - }, m("div", { - className: "Author" - }, flarum_common_helpers_username__WEBPACK_IMPORTED_MODULE_7___default()(discussion.user())), m("div", { - className: "Date" - }, flarum_common_utils_humanTime__WEBPACK_IMPORTED_MODULE_5___default()(discussion.createdAt()))) : '')), m("div", { - className: "rowSpan-3 colSpan-2" - }, m("div", { - className: "flexBox" - }, m("div", { - className: "cardTitle" - }, m("h2", { - title: discussion.title(), - className: "title" - }, Number(settings.allowRepostLinks) === 1 && repostActivated && repostUrl ? m("a", { - href: repostUrl, - onclick: function onclick(e) { - return e.stopPropagation(); - } - }, (0,flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11__.truncate)(discussion.title(), 80)) : (0,flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11__.truncate)(discussion.title(), 80)), app.screen() !== 'phone' && Number(settings.showReplies) === 1 && Number(settings.showRepliesOnRight) === 1 ? m("div", { - className: "DiscussionListItem-count" - }, m("span", { - "aria-hidden": "true" - }, flarum_common_utils_abbreviateNumber__WEBPACK_IMPORTED_MODULE_15___default()(discussion.replyCount())), m("span", { - className: "visually-hidden" - }, app.translator.trans('core.forum.discussion_list.unread_replies_a11y_label', { - count: discussion.replyCount() - }))) : ''), m("div", { - className: "cardTags" - }, (0,_utils_craftTags__WEBPACK_IMPORTED_MODULE_4__["default"])(discussion.tags()))), Number(settings.previewText) === 1 && discussion.firstPost() ? m("div", { - className: "previewPost" - }, blogActivated && Number(settings.useBlogSummary) === 1 && discussion.data.relationships.hasOwnProperty('blogMeta') && discussion.blogMeta().summary() !== '' ? (0,flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11__.truncate)(discussion.blogMeta().summary(), 150) : (0,flarum_common_utils_string__WEBPACK_IMPORTED_MODULE_11__.truncate)(discussion.firstPost().contentPlain(), 150)) : '', Number(settings.showLastPostInfo) === 1 && discussion.firstPost() ? m("div", { - className: "terminalPost" - }, m((flarum_components_TerminalPost__WEBPACK_IMPORTED_MODULE_16___default()), { - discussion: discussion, - lastPost: discussion.lastPostNumber() - })) : '', app.screen() === 'phone' && Number(settings.showReplies) === 1 ? m("div", { - className: "cardSpacer" - }, m((flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_10___default()), { - className: "Replies", - href: app.route.discussion(discussion, discussion.lastPostNumber()) - }, m("div", { - className: "Left" - }, m("div", { - className: "Avatars" - }, m(_LastReplies__WEBPACK_IMPORTED_MODULE_12__["default"], { - discussion: discussion - })), m("div", { - className: "Repcount" - }, app.translator.trans('walsgit_discussion_cards.forum.replies', { - count: discussion.replyCount() || '0' - }))), m("div", { - className: "Arrow" - }, flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6___default()('fas fa-angle-right')))) : Number(settings.showReplies) === 1 && !Number(settings.showRepliesOnRight) ? m("div", { - className: "imageLabel discussionReplyCount" - }, flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_6___default()('fas fa-comment', { - className: 'labelIcon' - }), discussion.replyCount()) : '')))); - }; - return listItem; -}((flarum_common_Component__WEBPACK_IMPORTED_MODULE_1___default())); - - -/***/ }), - -/***/ "./src/forum/helpers/checkOverflowingTags.js": -/*!***************************************************!*\ - !*** ./src/forum/helpers/checkOverflowingTags.js ***! - \***************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ checkOverflowingTags) -/* harmony export */ }); -function checkOverflowingTags() { - var cardListItemsOnPrimary = document.querySelectorAll(".CardsListItem.Card .cardLink"); - var cardListItems = document.querySelectorAll(".cardGrid .colSpan-2"); - var toggleOverflowClass = function toggleOverflowClass(cardTags, cardListItem) { - if (!cardTags) return; - if (cardTags.scrollWidth > cardListItem.clientWidth - 30) { - // -30 to account for the 15px + 15px margins on .cardTags - cardTags.classList.add("overflowing"); - } else { - cardTags.classList.remove("overflowing"); - } - }; - cardListItemsOnPrimary.forEach(function (cardListItem) { - var cardTags = cardListItem.querySelector(".cardTags"); - toggleOverflowClass(cardTags, cardListItem); - }); - cardListItems.forEach(function (cardListItem) { - var cardTags = cardListItem.querySelector(".flexBox .cardTags"); - toggleOverflowClass(cardTags, cardListItem); - }); -} - -/***/ }), - -/***/ "./src/forum/helpers/compareTags.js": -/*!******************************************!*\ - !*** ./src/forum/helpers/compareTags.js ***! - \******************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ compareTags) -/* harmony export */ }); -function compareTags(currentTag, priorityTag) { - if (currentTag.isChild && !priorityTag.isChild) return -1; - if (!currentTag.isChild && priorityTag.isChild) return 1; - if (currentTag.isChild && priorityTag.isChild && currentTag.parent === priorityTag.parent) return currentTag.position - priorityTag.position; - if (currentTag.isChild && priorityTag.isChild && currentTag.parent !== priorityTag.parent) return currentTag.parent - priorityTag.parent; - if (!currentTag.position && priorityTag.position) return 1; - if (currentTag.position && !priorityTag.position) return -1; - if (currentTag.position && priorityTag.position) return currentTag.position - priorityTag.position; - return currentTag.id - priorityTag.id; -} - -/***/ }), - -/***/ "./src/forum/helpers/getPostImage.js": -/*!*******************************************!*\ - !*** ./src/forum/helpers/getPostImage.js ***! - \*******************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ getPostImage) -/* harmony export */ }); -/* harmony import */ var _isValideImageUrl__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isValideImageUrl */ "./src/forum/helpers/isValideImageUrl.js"); - -function getPostImage(post, image, isblogPost, key) { - if (isblogPost === void 0) { - isblogPost = false; - } - if (key === void 0) { - key = 1; - } - var regex = /|background(?:-image)?:\s*url\(['"]?(.*?)['"]?\)/i; - if (isblogPost && (0,_isValideImageUrl__WEBPACK_IMPORTED_MODULE_0__["default"])(image)) { - return image; - } - var assetImage = app.forum.attribute("baseUrl") + "/assets/" + image; - if (post) { - var src = regex.exec(post.contentHtml()); - if (typeof key === "number" && key > 0) { - return src ? src[1] || src[2] : image ? assetImage : null; - } else if (key === '~') { - return src; - } else { - return null; - } - } -} - -/***/ }), - -/***/ "./src/forum/helpers/isValideImageUrl.js": -/*!***********************************************!*\ - !*** ./src/forum/helpers/isValideImageUrl.js ***! - \***********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ isValideImageUrl) -/* harmony export */ }); -function isValideImageUrl(url) { - if (typeof url !== 'string') return false; - var imageExtensions = ['jpg', 'jpeg', 'png', 'gif', 'webp', 'bmp', 'svg']; - if (!url.startsWith('http://') && !url.startsWith('https://')) { - url = 'http://' + url; - } - var parsedUrl; - try { - parsedUrl = new URL(url); - } catch (_unused) { - return false; - } - var extension = parsedUrl.pathname.split('.').pop().toLowerCase(); - return imageExtensions.includes(extension); -} - -/***/ }), - -/***/ "./src/forum/index.js": -/*!****************************!*\ - !*** ./src/forum/index.js ***! - \****************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var flarum_app__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! flarum/app */ "flarum/app"); -/* harmony import */ var flarum_app__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(flarum_app__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var flarum_extend__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! flarum/extend */ "flarum/extend"); -/* harmony import */ var flarum_extend__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(flarum_extend__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var flarum_forum_components_DiscussionList__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! flarum/forum/components/DiscussionList */ "flarum/forum/components/DiscussionList"); -/* harmony import */ var flarum_forum_components_DiscussionList__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(flarum_forum_components_DiscussionList__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var flarum_forum_states_DiscussionListState__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! flarum/forum/states/DiscussionListState */ "flarum/forum/states/DiscussionListState"); -/* harmony import */ var flarum_forum_states_DiscussionListState__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(flarum_forum_states_DiscussionListState__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var flarum_forum_components_IndexPage__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! flarum/forum/components/IndexPage */ "flarum/forum/components/IndexPage"); -/* harmony import */ var flarum_forum_components_IndexPage__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(flarum_forum_components_IndexPage__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var flarum_common_components_LoadingIndicator__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! flarum/common/components/LoadingIndicator */ "flarum/common/components/LoadingIndicator"); -/* harmony import */ var flarum_common_components_LoadingIndicator__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_LoadingIndicator__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var flarum_common_components_Placeholder__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! flarum/common/components/Placeholder */ "flarum/common/components/Placeholder"); -/* harmony import */ var flarum_common_components_Placeholder__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_Placeholder__WEBPACK_IMPORTED_MODULE_6__); -/* harmony import */ var flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! flarum/common/components/Button */ "flarum/common/components/Button"); -/* harmony import */ var flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_7__); -/* harmony import */ var _components_CardItem__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./components/CardItem */ "./src/forum/components/CardItem.js"); -/* harmony import */ var _components_ListItem__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./components/ListItem */ "./src/forum/components/ListItem.js"); -/* harmony import */ var _helpers_checkOverflowingTags__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./helpers/checkOverflowingTags */ "./src/forum/helpers/checkOverflowingTags.js"); -/* harmony import */ var _compat__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./compat */ "./src/forum/compat.js"); -/* harmony import */ var _flarum_core_forum__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @flarum/core/forum */ "@flarum/core/forum"); -/* harmony import */ var _flarum_core_forum__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_flarum_core_forum__WEBPACK_IMPORTED_MODULE_12__); - - - - - - - - - - - -flarum_app__WEBPACK_IMPORTED_MODULE_0___default().initializers.add('walsgit/discussion/cards', function () { - (0,flarum_extend__WEBPACK_IMPORTED_MODULE_1__.extend)((flarum_forum_components_DiscussionList__WEBPACK_IMPORTED_MODULE_2___default().prototype), 'oncreate', _helpers_checkOverflowingTags__WEBPACK_IMPORTED_MODULE_10__["default"]); - (0,flarum_extend__WEBPACK_IMPORTED_MODULE_1__.extend)((flarum_forum_components_DiscussionList__WEBPACK_IMPORTED_MODULE_2___default().prototype), 'onupdate', _helpers_checkOverflowingTags__WEBPACK_IMPORTED_MODULE_10__["default"]); - (0,flarum_extend__WEBPACK_IMPORTED_MODULE_1__.extend)((flarum_forum_states_DiscussionListState__WEBPACK_IMPORTED_MODULE_3___default().prototype), 'requestParams', function (params) { - if (flarum_app__WEBPACK_IMPORTED_MODULE_0___default().current.matches((flarum_forum_components_IndexPage__WEBPACK_IMPORTED_MODULE_4___default()))) { - params.include.push(['firstPost', 'posts', 'posts.user']); - } - }); - (0,flarum_extend__WEBPACK_IMPORTED_MODULE_1__.override)((flarum_forum_components_DiscussionList__WEBPACK_IMPORTED_MODULE_2___default().prototype), 'view', function (original) { - var settings = {}; - for (var key in (flarum_app__WEBPACK_IMPORTED_MODULE_0___default().forum).data.attributes) { - if (key.startsWith('walsgitDiscussionCards')) { - var newKey = key.replace('walsgitDiscussionCards', ''); - newKey = newKey.replace(/^./, newKey.charAt(0).toLowerCase()); - settings[newKey] = (flarum_app__WEBPACK_IMPORTED_MODULE_0___default().forum).data.attributes[key]; - } - } - var state = this.attrs.state; - var params = state.getParams(); - var loading; - if (state.isInitialLoading() || state.isLoadingNext()) { - loading = m((flarum_common_components_LoadingIndicator__WEBPACK_IMPORTED_MODULE_5___default()), null); - } else if (state.hasNext()) { - loading = flarum_common_components_Button__WEBPACK_IMPORTED_MODULE_7___default().component({ - className: 'Button', - onclick: state.loadNext.bind(state) - }, flarum_app__WEBPACK_IMPORTED_MODULE_0___default().translator.trans('core.forum.discussion_list.load_more_button')); - } - if (state.isEmpty()) { - var text = flarum_app__WEBPACK_IMPORTED_MODULE_0___default().translator.trans('core.forum.discussion_list.empty_text'); - return m("div", { - className: "DiscussionList" - }, m((flarum_common_components_Placeholder__WEBPACK_IMPORTED_MODULE_6___default()), { - text: text - })); - } - var isTagPage = m.route.get().split('?')[0].startsWith('/t/'); - var tag = null; - if (isTagPage) { - tag = flarum_app__WEBPACK_IMPORTED_MODULE_0___default().store.all('tags').find(function (t) { - return t.slug() === params.tags; - }).data.id; - var tagSettings = JSON.parse(flarum_app__WEBPACK_IMPORTED_MODULE_0___default().store.all('tags').find(function (t) { - return t.slug() === params.tags; - }).data.attributes.walsgitDiscussionCardsTagSettings); - for (var _key in tagSettings) { - if (settings.hasOwnProperty(_key) && tagSettings[_key] !== settings[_key]) { - settings[_key] = tagSettings[_key]; - } - } - } - if (flarum_app__WEBPACK_IMPORTED_MODULE_0___default().current.matches((flarum_forum_components_IndexPage__WEBPACK_IMPORTED_MODULE_4___default())) && (settings.allowedTags.length && settings.allowedTags.includes(tag) || !params.tags && Number(settings.onIndexPage) === 1)) { - return m("div", { - className: 'DiscussionList' + (state.isSearchResults() ? ' DiscussionList--searchResults' : '') - }, m("div", { - "class": "DiscussionList-discussions flexCard" - }, state.getPages().map(function (pg, o) { - return pg.items.map(function (discussion, i) { - return i < Number(settings.primaryCards) && o === 0 ? m(_components_CardItem__WEBPACK_IMPORTED_MODULE_8__["default"], { - discussion: discussion - }) : m(_components_ListItem__WEBPACK_IMPORTED_MODULE_9__["default"], { - discussion: discussion - }); - }); - })), m("div", { - className: "DiscussionList-loadMore" - }, loading)); - } else { - return original(); - } - }); -}, -1); - -// Expose compat API - - -Object.assign(_flarum_core_forum__WEBPACK_IMPORTED_MODULE_12__.compat, _compat__WEBPACK_IMPORTED_MODULE_11__["default"]); - -/***/ }), - -/***/ "./src/forum/utils/craftBadges.js": -/*!****************************************!*\ - !*** ./src/forum/utils/craftBadges.js ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ craftBadges) -/* harmony export */ }); -/* harmony import */ var flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! flarum/common/helpers/icon */ "flarum/common/helpers/icon"); -/* harmony import */ var flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var flarum_common_components_Tooltip__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! flarum/common/components/Tooltip */ "flarum/common/components/Tooltip"); -/* harmony import */ var flarum_common_components_Tooltip__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_Tooltip__WEBPACK_IMPORTED_MODULE_1__); - - -function craftBadges(badges) { - if (badges.length) { - return [m('.cardBadges', [badges.map(function (badge) { - return [m((flarum_common_components_Tooltip__WEBPACK_IMPORTED_MODULE_1___default()), { - text: badge.attrs.label[0], - position: 'right' - }, m('span.cardBadge.Badge.Badge--' + badge.attrs.type, [flarum_common_helpers_icon__WEBPACK_IMPORTED_MODULE_0___default()(badge.attrs.icon)]))]; - })])]; - } -} -; - -/***/ }), - -/***/ "./src/forum/utils/craftTags.js": -/*!**************************************!*\ - !*** ./src/forum/utils/craftTags.js ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ craftTags) -/* harmony export */ }); -/* harmony import */ var flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! flarum/common/components/Link */ "flarum/common/components/Link"); -/* harmony import */ var flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var flarum_tags_utils_sortTags__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! flarum/tags/utils/sortTags */ "flarum/tags/utils/sortTags"); -/* harmony import */ var flarum_tags_utils_sortTags__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(flarum_tags_utils_sortTags__WEBPACK_IMPORTED_MODULE_1__); - - -function craftTags(tags) { - if (tags) { - return [flarum_tags_utils_sortTags__WEBPACK_IMPORTED_MODULE_1___default()(tags).map(function (tag) { - return [m((flarum_common_components_Link__WEBPACK_IMPORTED_MODULE_0___default()), { - className: "cardTag", - style: { - backgroundColor: tag.color() - }, - href: app.route('tag', { - tags: tag.slug() - }) - }, tag.name())]; - })]; - } -} -; - -/***/ }), - -/***/ "@flarum/core/forum": -/*!******************************!*\ - !*** external "flarum.core" ***! - \******************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core; - -/***/ }), - -/***/ "flarum/app": -/*!********************************************!*\ - !*** external "flarum.core.compat['app']" ***! - \********************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['app']; - -/***/ }), - -/***/ "flarum/common/Component": -/*!*********************************************************!*\ - !*** external "flarum.core.compat['common/Component']" ***! - \*********************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/Component']; - -/***/ }), - -/***/ "flarum/common/components/Button": -/*!*****************************************************************!*\ - !*** external "flarum.core.compat['common/components/Button']" ***! - \*****************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/components/Button']; - -/***/ }), - -/***/ "flarum/common/components/Dropdown": -/*!*******************************************************************!*\ - !*** external "flarum.core.compat['common/components/Dropdown']" ***! - \*******************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/components/Dropdown']; - -/***/ }), - -/***/ "flarum/common/components/Link": -/*!***************************************************************!*\ - !*** external "flarum.core.compat['common/components/Link']" ***! - \***************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/components/Link']; - -/***/ }), - -/***/ "flarum/common/components/LoadingIndicator": -/*!***************************************************************************!*\ - !*** external "flarum.core.compat['common/components/LoadingIndicator']" ***! - \***************************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/components/LoadingIndicator']; - -/***/ }), - -/***/ "flarum/common/components/Placeholder": -/*!**********************************************************************!*\ - !*** external "flarum.core.compat['common/components/Placeholder']" ***! - \**********************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/components/Placeholder']; - -/***/ }), - -/***/ "flarum/common/components/Tooltip": -/*!******************************************************************!*\ - !*** external "flarum.core.compat['common/components/Tooltip']" ***! - \******************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/components/Tooltip']; - -/***/ }), - -/***/ "flarum/common/helpers/avatar": -/*!**************************************************************!*\ - !*** external "flarum.core.compat['common/helpers/avatar']" ***! - \**************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/helpers/avatar']; - -/***/ }), - -/***/ "flarum/common/helpers/icon": -/*!************************************************************!*\ - !*** external "flarum.core.compat['common/helpers/icon']" ***! - \************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/helpers/icon']; - -/***/ }), - -/***/ "flarum/common/helpers/username": -/*!****************************************************************!*\ - !*** external "flarum.core.compat['common/helpers/username']" ***! - \****************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/helpers/username']; - -/***/ }), - -/***/ "flarum/common/utils/abbreviateNumber": -/*!**********************************************************************!*\ - !*** external "flarum.core.compat['common/utils/abbreviateNumber']" ***! - \**********************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/utils/abbreviateNumber']; - -/***/ }), - -/***/ "flarum/common/utils/humanTime": -/*!***************************************************************!*\ - !*** external "flarum.core.compat['common/utils/humanTime']" ***! - \***************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/utils/humanTime']; - -/***/ }), - -/***/ "flarum/common/utils/string": -/*!************************************************************!*\ - !*** external "flarum.core.compat['common/utils/string']" ***! - \************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['common/utils/string']; - -/***/ }), - -/***/ "flarum/components/TerminalPost": -/*!****************************************************************!*\ - !*** external "flarum.core.compat['components/TerminalPost']" ***! - \****************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['components/TerminalPost']; - -/***/ }), - -/***/ "flarum/extend": -/*!***********************************************!*\ - !*** external "flarum.core.compat['extend']" ***! - \***********************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['extend']; - -/***/ }), - -/***/ "flarum/forum/components/DiscussionList": -/*!************************************************************************!*\ - !*** external "flarum.core.compat['forum/components/DiscussionList']" ***! - \************************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['forum/components/DiscussionList']; - -/***/ }), - -/***/ "flarum/forum/components/IndexPage": -/*!*******************************************************************!*\ - !*** external "flarum.core.compat['forum/components/IndexPage']" ***! - \*******************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['forum/components/IndexPage']; - -/***/ }), - -/***/ "flarum/forum/states/DiscussionListState": -/*!*************************************************************************!*\ - !*** external "flarum.core.compat['forum/states/DiscussionListState']" ***! - \*************************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['forum/states/DiscussionListState']; - -/***/ }), - -/***/ "flarum/forum/utils/DiscussionControls": -/*!***********************************************************************!*\ - !*** external "flarum.core.compat['forum/utils/DiscussionControls']" ***! - \***********************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['forum/utils/DiscussionControls']; - -/***/ }), - -/***/ "flarum/tags/utils/sortTags": -/*!************************************************************!*\ - !*** external "flarum.core.compat['tags/utils/sortTags']" ***! - \************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = flarum.core.compat['tags/utils/sortTags']; - -/***/ }), - -/***/ "./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js": -/*!******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js ***! - \******************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _inheritsLoose) -/* harmony export */ }); -/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setPrototypeOf.js */ "./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js"); - -function _inheritsLoose(t, o) { - t.prototype = Object.create(o.prototype), t.prototype.constructor = t, (0,_setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__["default"])(t, o); -} - - -/***/ }), - -/***/ "./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js ***! - \*******************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _setPrototypeOf) -/* harmony export */ }); -function _setPrototypeOf(t, e) { - return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { - return t.__proto__ = e, t; - }, _setPrototypeOf(t, e); -} - - -/***/ }) - -/******/ }); -/************************************************************************/ -/******/ // The module cache -/******/ var __webpack_module_cache__ = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ // Check if module is in cache -/******/ var cachedModule = __webpack_module_cache__[moduleId]; -/******/ if (cachedModule !== undefined) { -/******/ return cachedModule.exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = __webpack_module_cache__[moduleId] = { -/******/ // no module.id needed -/******/ // no module.loaded needed -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/************************************************************************/ -/******/ /* webpack/runtime/compat get default export */ -/******/ (() => { -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = (module) => { -/******/ var getter = module && module.__esModule ? -/******/ () => (module['default']) : -/******/ () => (module); -/******/ __webpack_require__.d(getter, { a: getter }); -/******/ return getter; -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/define property getters */ -/******/ (() => { -/******/ // define getter functions for harmony exports -/******/ __webpack_require__.d = (exports, definition) => { -/******/ for(var key in definition) { -/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { -/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); -/******/ } -/******/ } -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/hasOwnProperty shorthand */ -/******/ (() => { -/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) -/******/ })(); -/******/ -/******/ /* webpack/runtime/make namespace object */ -/******/ (() => { -/******/ // define __esModule on exports -/******/ __webpack_require__.r = (exports) => { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ })(); -/******/ -/************************************************************************/ -var __webpack_exports__ = {}; -// This entry need to be wrapped in an IIFE because it need to be in strict mode. -(() => { -"use strict"; -/*!******************!*\ - !*** ./forum.js ***! - \******************/ -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _src_forum__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./src/forum */ "./src/forum/index.js"); -/* - * This file is part of Flarum. - * - * (c) Toby Zerner - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - - -})(); - -module.exports = __webpack_exports__; -/******/ })() -; +(()=>{var t={n:a=>{var s=a&&a.__esModule?()=>a.default:()=>a;return t.d(s,{a:s}),s},d:(a,s)=>{for(var e in s)t.o(s,e)&&!t.o(a,e)&&Object.defineProperty(a,e,{enumerable:!0,get:s[e]})},o:(t,a)=>Object.prototype.hasOwnProperty.call(t,a)};(()=>{"use strict";const a=flarum.core.compat.app;var s=t.n(a);const e=flarum.core.compat.extend,r=flarum.core.compat["forum/components/DiscussionList"];var i=t.n(r);const o=flarum.core.compat["forum/states/DiscussionListState"];var n=t.n(o);const l=flarum.core.compat["forum/components/IndexPage"];var u=t.n(l);const c=flarum.core.compat["common/components/LoadingIndicator"];var d=t.n(c);const p=flarum.core.compat["common/components/Placeholder"];var g=t.n(p);const f=flarum.core.compat["common/components/Button"];var v=t.n(f);function h(t,a){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,a){return t.__proto__=a,t},h(t,a)}function b(t,a){t.prototype=Object.create(a.prototype),t.prototype.constructor=t,h(t,a)}const N=flarum.core.compat["common/Component"];var w=t.n(N);const y=flarum.core.compat["common/helpers/icon"];var I=t.n(y);const C=flarum.core.compat["common/components/Tooltip"];var P=t.n(C);function L(t){if(t.length)return[m(".cardBadges",[t.map((function(t){return[m(P(),{text:t.attrs.label[0],position:"right"},m("span.cardBadge.Badge.Badge--"+t.attrs.type,[I()(t.attrs.icon)]))]}))])]}function D(t){if("string"!=typeof t)return!1;var a;t.startsWith("http://")||t.startsWith("https://")||(t="http://"+t);try{a=new URL(t)}catch(t){return!1}var s=a.pathname.split(".").pop().toLowerCase();return["jpg","jpeg","png","gif","webp","bmp","svg"].includes(s)}function T(t,a,s,e){if(void 0===s&&(s=!1),void 0===e&&(e=1),s&&D(a))return a;var r=app.forum.attribute("baseUrl")+"/assets/"+a;if(t){var i=/|background(?:-image)?:\s*url\(['"]?(.*?)['"]?\)/i.exec(t.contentHtml());return"number"==typeof e&&e>0?i?i[1]||i[2]:a?r:null:"~"===e?i:null}}const A=flarum.core.compat["common/components/Link"];var O=t.n(A);const S=flarum.core.compat["tags/utils/sortTags"];var x=t.n(S);function B(t){if(t)return[x()(t).map((function(t){return[m(O(),{className:"cardTag",style:{backgroundColor:t.color()},href:app.route("tag",{tags:t.slug()})},t.name())]}))]}const R=flarum.core.compat["common/utils/humanTime"];var _=t.n(R);const k=flarum.core.compat["common/helpers/username"];var M=t.n(k);const W=flarum.core.compat["common/components/Dropdown"];var j=t.n(W);const H=flarum.core.compat["forum/utils/DiscussionControls"];var q=t.n(H);const V=flarum.core.compat["common/utils/string"],z=flarum.core.compat["common/helpers/avatar"];var E=t.n(z),J=function(t){function a(){return t.apply(this,arguments)||this}b(a,t);var s=a.prototype;return s.oninit=function(a){t.prototype.oninit.call(this,a),this.discussion=this.attrs.discussion},s.view=function(){return this.discussion.posts().splice(-10).filter((function(t){return!t.isHidden()&&1!==t.number()&&"comment"===t.contentType()})).sort((function(t,a){return a.createdAt()-t.createdAt()})).map((function(t){return t.user()})).filter((function(t,a,s){return s.indexOf(t)===a})).reverse().splice(-3).map((function(t){return E()(t,{className:"Avatar--mini"})}))},a}(w());function F(t,a){return t.isChild&&!a.isChild?-1:!t.isChild&&a.isChild?1:t.isChild&&a.isChild&&t.parent===a.parent?t.position-a.position:t.isChild&&a.isChild&&t.parent!==a.parent?t.parent-a.parent:!t.position&&a.position?1:t.position&&!a.position?-1:t.position&&a.position?t.position-a.position:t.id-a.id}const G=flarum.core.compat["components/TerminalPost"];var U=t.n(G),K=function(t){function a(){return t.apply(this,arguments)||this}b(a,t);var s=a.prototype;return s.oninit=function(a){t.prototype.oninit.call(this,a),this.discussion=this.attrs.discussion},s.view=function(){var t=this.discussion,a={};for(var s in app.forum.data.attributes)if(s.startsWith("walsgitDiscussionCards")){var e=s.replace("walsgitDiscussionCards","");a[e=e.replace(/^./,e.charAt(0).toLowerCase())]=app.forum.data.attributes[s]}var r=app.forum.data.attributes.hasOwnProperty("blogTags"),i={},o=t.data.relationships.hasOwnProperty("blogMeta"),n={};if(r&&(i.tags=app.forum.attribute("blogTags"),i.defaultImage=app.forum.attribute("blogDefaultImage"),o)){var l=t.store.data.blogMeta[t.data.relationships.blogMeta.data.id];D(l.attribute("featuredImage"))&&(n.featuredImage=l.attribute("featuredImage"))}var u,c="shebaoting-repost"in flarum.extensions,d=t.data.attributes.original_url||null,p=m.route.get().split("?")[0].startsWith("/t/");if(p){var g,f=null==(g=m.route.get().split("/t/")[1])?void 0:g.split("?")[0];u=app.store.all("tags").find((function(t){return t.slug()===f})).data.id;var v=app.store.all("tags").find((function(t){return t.id()===u})),h=v?JSON.parse(v.data.attributes.walsgitDiscussionCardsTagSettings||"{}"):{},b=v?v.data.attributes.walsgitDiscussionCardsTagDefaultImage:null;for(var N in h.defaultImage=b,r&&1===Number(a.useBlogImages)&&i.tags.includes(u)&&(h.defaultImage=o&&n.featuredImage&&D(n.featuredImage)?n.featuredImage:i.defaultImage),h)a.hasOwnProperty(N)&&h[N]!==a[N]&&null!==h[N]&&(a[N]=h[N])}if("/"===m.route.get().split("?")[0]){var w=t.tags();for(var y in w){var C=w[y].id(),P=w[y].isChild(),A=w[y].data.hasOwnProperty("relationships")&&w[y].parent()?w[y].parent().data.id:null,S=w[y].position(),x=w[y].attribute("walsgitDiscussionCardsTagDefaultImage");r&&1===Number(a.useBlogImages)&&i.tags.includes(C)&&(x=o&&n.featuredImage&&D(n.featuredImage)?n.featuredImage:i.defaultImage);var R={id:C,isChild:P,parent:A,position:S,tagCustomImg:x},k=null;a.allowedTags.includes(C)&&null!==x&&(null===k||F(R,k)<0)&&(k={id:C,isChild:P,parent:A,position:S,tagCustomImg:x},a.defaultImage=x)}}var W=1===Number(a.markReadCards)&&t.isRead()&&app.session.user?"read":"",H={};H.className="wrapImg"+(1===Number(a.showAuthor)?" After":"");var z=T(t.firstPost(),a.defaultImage,o),E=z?m("img",{src:z,className:"previewCardImg",alt:t.title(),loading:"lazy"}):m("div",{className:"imgStub"});return m("div",{key:t.id(),"data-id":t.id(),"data-tag-id":p?u:null,className:"CardsListItem Card "+W+(t.isHidden()?" Hidden":"")},q().controls(t,this).toArray().length?m(j(),{icon:"fas fa-ellipsis-v",className:"DiscussionListItem-controls",buttonClassName:"Button Button--icon Button--flat Slidable-underneath Slidable-underneath--right"},q().controls(t,this).toArray()):"",m(O(),{href:app.route.discussion(t,0),className:"cardLink"},1===Number(a.showBadges)?L(t.badges().toArray()):"",m("div",H,t.data.attributes.hasOwnProperty("views")&&m("[",null,1!==Number(a.showViews)||isNaN(t.views())?"":m("div",{className:"imageLabel discussionViews"},I()("fas fa-eye",{className:"labelIcon"}),t.views())),E,1===Number(a.showAuthor)?m("div",{className:"cardFoot"},m("div",{className:"Author"},M()(t.user())),m("div",{className:"Date"},_()(t.createdAt()))):""),m("div",{className:"cardTags"},B(t.tags())),m("div",{className:"cardTitle"},m("h2",{title:t.title(),className:"title"},1===Number(a.allowRepostLinks)&&c&&d?m("a",{href:d,onclick:function(t){return t.stopPropagation()}},(0,V.truncate)(t.title(),80)):(0,V.truncate)(t.title(),80))),1===Number(a.previewText)&&t.firstPost()?m("div",{className:"previewPost"},r&&1===Number(a.useBlogSummary)&&t.data.relationships.hasOwnProperty("blogMeta")&&""!==t.blogMeta().summary()?(0,V.truncate)(t.blogMeta().summary(),150):(0,V.truncate)(t.firstPost().contentPlain(),150)):"",1===Number(a.showLastPostInfo)&&t.firstPost()?m("div",{className:"terminalPost"},m(U(),{discussion:t,lastPost:t.lastPostNumber()})):"",1===Number(a.showReplies)?m("div",{className:"cardSpacer"},m(O(),{className:"Replies",href:app.route.discussion(t,t.lastPostNumber())},m("div",{className:"Left"},m("div",{className:"Avatars"},m(J,{discussion:t})),m("div",{className:"Repcount"},app.translator.trans("walsgit_discussion_cards.forum.replies",{count:t.replyCount()||"0"}))),m("div",{className:"Arrow"},I()("fas fa-angle-right")))):""))},a}(w());const Q=flarum.core.compat["common/utils/abbreviateNumber"];var X=t.n(Q),Y=function(t){function a(){return t.apply(this,arguments)||this}b(a,t);var s=a.prototype;return s.oninit=function(a){t.prototype.oninit.call(this,a)},s.view=function(){var t=this.attrs.discussion,a={};for(var s in app.forum.data.attributes)if(s.startsWith("walsgitDiscussionCards")){var e=s.replace("walsgitDiscussionCards","");a[e=e.replace(/^./,e.charAt(0).toLowerCase())]=app.forum.data.attributes[s]}var r=app.forum.data.attributes.hasOwnProperty("blogTags"),i={},o=t.data.relationships.hasOwnProperty("blogMeta"),n={};if(r&&(i.tags=app.forum.attribute("blogTags"),i.defaultImage=app.forum.attribute("blogDefaultImage"),o)){var l=t.store.data.blogMeta[t.data.relationships.blogMeta.data.id];D(l.attribute("featuredImage"))&&(n.featuredImage=l.attribute("featuredImage"))}var u="shebaoting-repost"in flarum.extensions,c=t.data.attributes.original_url||null;if(m.route.get().split("?")[0].startsWith("/t/")){var d,p=null==(d=m.route.get().split("/t/")[1])?void 0:d.split("?")[0],g=app.store.all("tags").find((function(t){return t.slug()===p})).data.id,f=app.store.all("tags").find((function(t){return t.id()===g})),v=f?JSON.parse(f.data.attributes.walsgitDiscussionCardsTagSettings||"{}"):{},h=f?f.data.attributes.walsgitDiscussionCardsTagDefaultImage:null;for(var b in v.defaultImage=h,r&&1===Number(a.useBlogImages)&&i.tags.includes(g)&&(v.defaultImage=o&&n.featuredImage&&D(n.featuredImage)?n.featuredImage:i.defaultImage),v)a.hasOwnProperty(b)&&v[b]!==a[b]&&null!==v[b]&&(a[b]=v[b])}if("/"===m.route.get().split("?")[0]){var N=t.tags();for(var w in N){var y=N[w].id(),C=N[w].isChild(),P=N[w].data.hasOwnProperty("relationships")&&N[w].parent()?N[w].parent().data.id:null,A=N[w].position(),S=N[w].attribute("walsgitDiscussionCardsTagDefaultImage");r&&1===Number(a.useBlogImages)&&i.tags.includes(y)&&(S=o&&n.featuredImage&&D(n.featuredImage)?n.featuredImage:i.defaultImage);var x={id:y,isChild:C,parent:P,position:A,tagCustomImg:S},R=null;a.allowedTags.includes(y)&&null!==S&&(null===R||F(x,R)<0)&&(R={id:y,isChild:C,parent:P,position:A,tagCustomImg:S},a.defaultImage=S)}}var k=1===Number(a.markReadCards)&&t.isRead()&&app.session.user?"read":"",W={};W.className="wrapImg"+(1===Number(a.showAuthor)?" After":"");var H=T(t.firstPost(),a.defaultImage,o),z=H?m("img",{src:H,className:"previewCardImg",alt:t.title(),loading:"lazy"}):m("div",{className:"imgStub"});return m("div",{key:t.id(),"data-id":t.id(),className:"CardsListItem List "+k+(t.isHidden()?" Hidden":"")},q().controls(t,this).toArray().length?m(j(),{icon:"fas fa-ellipsis-v",className:"DiscussionListItem-controls",buttonClassName:"Button Button--icon Button--flat Slidable-underneath Slidable-underneath--right"},q().controls(t,this).toArray()):"",m(O(),{href:app.route.discussion(t,0),className:"cardLink"},1===Number(a.showBadges)?L(t.badges().toArray()):"",m("div",{className:"cardGrid"},m("div",{className:"rowSpan-3 colSpan"},m("div",W,t.data.attributes.hasOwnProperty("views")&&m("[",null,1!==Number(a.showViews)||isNaN(t.views())?"":m("div",{className:"imageLabel discussionViews"},I()("fas fa-eye",{className:"labelIcon"}),t.views())),z,1===Number(a.showAuthor)?m("div",{className:"cardFoot"},m("div",{className:"Author"},M()(t.user())),m("div",{className:"Date"},_()(t.createdAt()))):"")),m("div",{className:"rowSpan-3 colSpan-2"},m("div",{className:"flexBox"},m("div",{className:"cardTitle"},m("h2",{title:t.title(),className:"title"},1===Number(a.allowRepostLinks)&&u&&c?m("a",{href:c,onclick:function(t){return t.stopPropagation()}},(0,V.truncate)(t.title(),80)):(0,V.truncate)(t.title(),80)),"phone"!==app.screen()&&1===Number(a.showReplies)&&1===Number(a.showRepliesOnRight)?m("div",{className:"DiscussionListItem-count"},m("span",{"aria-hidden":"true"},X()(t.replyCount())),m("span",{className:"visually-hidden"},app.translator.trans("core.forum.discussion_list.unread_replies_a11y_label",{count:t.replyCount()}))):""),m("div",{className:"cardTags"},B(t.tags()))),1===Number(a.previewText)&&t.firstPost()?m("div",{className:"previewPost"},r&&1===Number(a.useBlogSummary)&&t.data.relationships.hasOwnProperty("blogMeta")&&""!==t.blogMeta().summary()?(0,V.truncate)(t.blogMeta().summary(),150):(0,V.truncate)(t.firstPost().contentPlain(),150)):"",1===Number(a.showLastPostInfo)&&t.firstPost()?m("div",{className:"terminalPost"},m(U(),{discussion:t,lastPost:t.lastPostNumber()})):"","phone"===app.screen()&&1===Number(a.showReplies)?m("div",{className:"cardSpacer"},m(O(),{className:"Replies",href:app.route.discussion(t,t.lastPostNumber())},m("div",{className:"Left"},m("div",{className:"Avatars"},m(J,{discussion:t})),m("div",{className:"Repcount"},app.translator.trans("walsgit_discussion_cards.forum.replies",{count:t.replyCount()||"0"}))),m("div",{className:"Arrow"},I()("fas fa-angle-right")))):1!==Number(a.showReplies)||Number(a.showRepliesOnRight)?"":m("div",{className:"imageLabel discussionReplyCount"},I()("fas fa-comment",{className:"labelIcon"}),t.replyCount())))))},a}(w());function Z(){var t=document.querySelectorAll(".CardsListItem.Card .cardLink"),a=document.querySelectorAll(".cardGrid .colSpan-2"),s=function(t,a){t&&(t.scrollWidth>a.clientWidth-30?t.classList.add("overflowing"):t.classList.remove("overflowing"))};t.forEach((function(t){var a=t.querySelector(".cardTags");s(a,t)})),a.forEach((function(t){var a=t.querySelector(".flexBox .cardTags");s(a,t)}))}const $={"walsgit/discussion/cards/components/CardItem":K,"walsgit/discussion/cards/components/ListItem":Y,"walsgit/discussion/cards/components/LastReplies":J,"walsgit/discussion/cards/utils/craftTags":B,"walsgit/discussion/cards/utils/craftBadges":L},tt=flarum.core;s().initializers.add("walsgit/discussion/cards",(function(){(0,e.extend)(i().prototype,"oncreate",Z),(0,e.extend)(i().prototype,"onupdate",Z),(0,e.extend)(n().prototype,"requestParams",(function(t){s().current.matches(u())&&t.include.push(["firstPost","posts","posts.user"])})),(0,e.override)(i().prototype,"view",(function(t){var a={};for(var e in s().forum.data.attributes)if(e.startsWith("walsgitDiscussionCards")){var r=e.replace("walsgitDiscussionCards","");r=r.replace(/^./,r.charAt(0).toLowerCase()),a[r]=s().forum.data.attributes[e]}var i,o=this.attrs.state,n=o.getParams();if(o.isInitialLoading()||o.isLoadingNext()?i=m(d(),null):o.hasNext()&&(i=v().component({className:"Button",onclick:o.loadNext.bind(o)},s().translator.trans("core.forum.discussion_list.load_more_button"))),o.isEmpty()){var l=s().translator.trans("core.forum.discussion_list.empty_text");return m("div",{className:"DiscussionList"},m(g(),{text:l}))}var c=null;if(m.route.get().split("?")[0].startsWith("/t/")){c=s().store.all("tags").find((function(t){return t.slug()===n.tags})).data.id;var p=JSON.parse(s().store.all("tags").find((function(t){return t.slug()===n.tags})).data.attributes.walsgitDiscussionCardsTagSettings);for(var f in p)a.hasOwnProperty(f)&&p[f]!==a[f]&&(a[f]=p[f])}return s().current.matches(u())&&(a.allowedTags.length&&a.allowedTags.includes(c)||!n.tags&&1===Number(a.onIndexPage))?m("div",{className:"DiscussionList"+(o.isSearchResults()?" DiscussionList--searchResults":"")},m("div",{class:"DiscussionList-discussions flexCard"},o.getPages().map((function(t,s){return t.items.map((function(t,e){return e t.slug() === slug).data.id;\r\n\t\t\tconst tag = app.store.all('tags').find(t => t.id() === tagId);\r\n\t\t\tconst tagSettings = tag ? JSON.parse(tag.data.attributes.walsgitDiscussionCardsTagSettings || '{}') : {};\r\n\t\t\tconst tagImage = tag ? tag.data.attributes.walsgitDiscussionCardsTagDefaultImage : null;\r\n\t\t\t\r\n\t\t\ttagSettings.defaultImage = tagImage;\r\n\t\t\t/* In case Flarum Blog Extension and useBlogImage are activated */\r\n\t\t\tif(blogActivated && Number(settings.useBlogImages) === 1 && blogSettings.tags.includes(tagId)) {\r\n\t\t\t\ttagSettings.defaultImage = postIsBlogType && blogPost.featuredImage && isValideImageUrl(blogPost.featuredImage) ? blogPost.featuredImage : blogSettings.defaultImage;\r\n\t\t\t}\r\n\r\n\t\t\tfor (const key in tagSettings) {\r\n\t\t\t\tif (settings.hasOwnProperty(key) && tagSettings[key] !== settings[key] && tagSettings[key] !== null) {\r\n\t\t\t\t\tsettings[key] = tagSettings[key];\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/* On the IndexPage (all discussions) checks which default image to show based on tag priority */\r\n\t\tconst isIndexPage = m.route.get().split('?')[0] === '/';\r\n\t\tif (isIndexPage) {\r\n\t\t\tconst tags = discussion.tags();\r\n\t\t\tfor (const key in tags) {\r\n\t\t\t\tconst tagId = tags[key].id();\r\n\t\t\t\tconst isChild = tags[key].isChild();\r\n\t\t\t\tconst parent = tags[key].data.hasOwnProperty('relationships') && tags[key].parent() ? tags[key].parent()['data'].id : null;\r\n\t\t\t\tconst position = tags[key].position();\r\n\r\n\t\t\t\tlet tagCustomImg = tags[key].attribute('walsgitDiscussionCardsTagDefaultImage');\r\n\t\t\t\t/* In case Flarum Blog Extension and useBlogImage are activated */\r\n\t\t\t\tif(blogActivated && Number(settings.useBlogImages) === 1 && blogSettings.tags.includes(tagId)) {\r\n\t\t\t\t\ttagCustomImg = postIsBlogType && blogPost.featuredImage && isValideImageUrl(blogPost.featuredImage) ? blogPost.featuredImage : blogSettings.defaultImage;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst currentTag = { id: tagId, isChild, parent, position, tagCustomImg }\r\n\t\t\t\tlet priorityTag = null;\r\n\t\t\t\tif (!settings.allowedTags.includes(tagId) || tagCustomImg === null) continue;\t\t\t\t\t\r\n\r\n\t\t\t\tif (priorityTag === null || compareTags(currentTag, priorityTag) < 0) {\r\n\t\t\t\t\tpriorityTag = { id: tagId, isChild, parent, position, tagCustomImg };\r\n\t\t\t\t\tsettings.defaultImage = tagCustomImg;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tconst isRead = Number(settings.markReadCards) === 1 && discussion.isRead() && app.session.user ? \"read\" : \"\";\r\n\t\tconst attrs = {};\r\n\t\tattrs.className =\r\n\t\t\t\"wrapImg\" + (Number(settings.showAuthor) === 1 ? \" After\" : \"\");\r\n\t\tconst image = getPostImage(discussion.firstPost(), settings.defaultImage, postIsBlogType);\r\n\t\tconst media = image ? (\r\n\t\t\t\r\n\t\t) : (\r\n\t\t\t
\r\n\t\t);\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{DiscussionControls.controls(discussion, this).toArray().length\r\n\t\t\t\t\t? m(\r\n\t\t\t\t\t\t\tDropdown,\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\ticon: \"fas fa-ellipsis-v\",\r\n\t\t\t\t\t\t\t\tclassName: \"DiscussionListItem-controls\",\r\n\t\t\t\t\t\t\t\tbuttonClassName:\r\n\t\t\t\t\t\t\t\t\t\"Button Button--icon Button--flat Slidable-underneath Slidable-underneath--right\",\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tDiscussionControls.controls(\r\n\t\t\t\t\t\t\t\tdiscussion,\r\n\t\t\t\t\t\t\t\tthis\r\n\t\t\t\t\t\t\t).toArray()\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t: \"\"}\r\n\t\t\t\t\r\n\t\t\t\t\t{Number(settings.showBadges) === 1\r\n\t\t\t\t\t\t? craftBadges(discussion.badges().toArray())\r\n\t\t\t\t\t\t: \"\"}\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{discussion.data.attributes.hasOwnProperty('views') && (\r\n\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t{Number(settings.showViews) === 1 &&\r\n\t\t\t\t\t\t\t\t!isNaN(discussion.views()) ? (\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{icon(\"fas fa-eye\", { className: \"labelIcon\" })}\r\n\t\t\t\t\t\t\t\t\t\t{discussion.views()}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\r\n\t\t\t\t\t\t{media}\r\n\r\n\t\t\t\t\t\t{Number(settings.showAuthor) === 1 ? (\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{username(discussion.user())}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{humanTime(discussion.createdAt())}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{craftTags(discussion.tags())}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{Number(settings.allowRepostLinks) === 1 && repostActivated && repostUrl ? e.stopPropagation()}>{truncate(discussion.title(), 80)} : truncate(discussion.title(), 80)}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{Number(settings.previewText) === 1 && discussion.firstPost() ? (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{blogActivated && Number(settings.useBlogSummary) === 1 && discussion.data.relationships.hasOwnProperty('blogMeta') && discussion.blogMeta().summary() !== ''\r\n\t\t\t\t\t\t\t\t? truncate(discussion.blogMeta().summary(), 150)\r\n\t\t\t\t\t\t\t\t: truncate(discussion.firstPost().contentPlain(), 150)\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t)}\r\n\r\n\t\t\t\t\t{Number(settings.showLastPostInfo) === 1 && discussion.firstPost() ? (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t''\r\n\t\t\t\t\t)}\r\n\r\n\t\t\t\t\t{Number(settings.showReplies) === 1 ? (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{m(LastReplies, {\r\n\t\t\t\t\t\t\t\t\t\t\tdiscussion: discussion,\r\n\t\t\t\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{app.translator.trans(\r\n\t\t\t\t\t\t\t\t\t\t\t\"walsgit_discussion_cards.forum.replies\",\r\n\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\tcount:\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tdiscussion.replyCount() ||\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"0\",\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{icon(\"fas fa-angle-right\")}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t)}\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n","import Component from 'flarum/common/Component';\r\nimport avatar from 'flarum/common/helpers/avatar';\r\n\r\n\r\nexport default class LastReplies extends Component {\r\n\r\n oninit(vnode) {\r\n super.oninit(vnode);\r\n this.discussion = this.attrs.discussion;\r\n }\r\n\r\n view() {\r\n const discussion = this.discussion;\r\n\r\n // let's assume that the last 10 posts will be enough for us to identify 3 unique users\r\n const posts = discussion.posts().splice(-10);\r\n\r\n const filteredPosts = posts\r\n .filter((post) => {\r\n return !post.isHidden() && post.number() !== 1 && post.contentType() === \"comment\";\r\n })\r\n .sort((a, b) => b.createdAt() - a.createdAt());\r\n\r\n const groupedUsers = filteredPosts\r\n .map(post => post.user())\r\n .filter((user, i, self) => {\r\n return self.indexOf(user) === i\r\n })\r\n .reverse()\r\n // last 3 users\r\n .splice(-3);\r\n\r\n\r\n return groupedUsers.map(user => {\r\n return avatar(user, {className: 'Avatar--mini'})\r\n })\r\n\r\n }\r\n\r\n}\r\n","import Component from \"flarum/common/Component\";\r\nimport craftBadges from \"../utils/craftBadges\";\r\nimport getPostImage from \"../helpers/getPostImage\";\r\nimport craftTags from \"../utils/craftTags\";\r\nimport humanTime from 'flarum/common/utils/humanTime';\r\nimport icon from 'flarum/common/helpers/icon';\r\nimport username from 'flarum/common/helpers/username';\r\nimport Dropdown from 'flarum/common/components/Dropdown';\r\nimport DiscussionControls from 'flarum/forum/utils/DiscussionControls';\r\nimport Link from 'flarum/common/components/Link';\r\nimport {truncate} from 'flarum/common/utils/string';\r\nimport LastReplies from './LastReplies';\r\nimport compareTags from \"../helpers/compareTags\";\r\nimport isValideImageUrl from \"../helpers/isValideImageUrl\";\r\nimport abbreviateNumber from 'flarum/common/utils/abbreviateNumber';\r\nimport TerminalPost from 'flarum/components/TerminalPost';\r\n\r\n\r\nexport default class listItem extends Component {\r\n\r\n oninit(vnode) {\r\n super.oninit(vnode);\r\n }\r\n\r\n view() {\r\n const discussion = this.attrs.discussion;\r\n const settings = {};\r\n for (const key in app.forum.data.attributes) {\r\n\t\t\tif (key.startsWith('walsgitDiscussionCards')) {\r\n\t\t\t\tlet newKey = key.replace('walsgitDiscussionCards', '');\r\n\t\t\t\tnewKey = newKey.replace(/^./, newKey.charAt(0).toLowerCase());\r\n\t\t\t\tsettings[newKey] = app.forum.data.attributes[key];\r\n\t\t\t}\r\n\t\t}\r\n\r\n /* Getting & setting relevant info for 3rd party Flarum Blog support */\r\n\t\tconst blogActivated = app.forum.data.attributes.hasOwnProperty('blogTags');\r\n\t\tconst blogSettings = {};\r\n\t\tconst postIsBlogType = discussion.data.relationships.hasOwnProperty('blogMeta');\r\n\t\tconst blogPost = {}\r\n\t\tif(blogActivated) {\r\n\t\t\tblogSettings.tags = app.forum.attribute('blogTags');\r\n\t\t\tblogSettings.defaultImage = app.forum.attribute('blogDefaultImage');\r\n\r\n\t\t\tif(postIsBlogType) {\r\n\t\t\t\tconst blogPostsData = discussion.store.data.blogMeta[discussion.data.relationships.blogMeta.data.id];\r\n\t\t\t\tif(isValideImageUrl(blogPostsData.attribute('featuredImage'))) {\r\n\t\t\t\t\tblogPost.featuredImage = blogPostsData.attribute('featuredImage');\t\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n /* Getting & setting relevant info for 3rd party Repost extension */\r\n const repostActivated = 'shebaoting-repost' in flarum.extensions;\r\n const repostUrl = discussion.data.attributes.original_url || null;\r\n\r\n const isTagPage = m.route.get().split('?')[0].startsWith('/t/');\r\n\t\tif (isTagPage) {\r\n const slug = m.route.get().split('/t/')[1]?.split('?')[0];\r\n const tagId = app.store.all('tags').find(t => t.slug() === slug).data.id;\r\n const tag = app.store.all('tags').find(t => t.id() === tagId);\r\n const tagSettings = tag ? JSON.parse(tag.data.attributes.walsgitDiscussionCardsTagSettings || '{}') : {};\r\n const tagImage = tag ? tag.data.attributes.walsgitDiscussionCardsTagDefaultImage : null;\r\n \r\n tagSettings.defaultImage = tagImage;\r\n /* In case Flarum Blog Extension and useBlogImage are activated */\r\n if(blogActivated && Number(settings.useBlogImages) === 1 && blogSettings.tags.includes(tagId)) {\r\n\t\t\t\ttagSettings.defaultImage = postIsBlogType && blogPost.featuredImage && isValideImageUrl(blogPost.featuredImage) ? blogPost.featuredImage : blogSettings.defaultImage;\r\n\t\t\t}\r\n\r\n for (const key in tagSettings) {\r\n if (settings.hasOwnProperty(key) && tagSettings[key] !== settings[key] && tagSettings[key] !== null) {\r\n settings[key] = tagSettings[key];\r\n }\r\n }\r\n }\r\n\r\n /* On the IndexPage (all discussions) checks which default image to show based on tag priority */\r\n\t\tconst isIndexPage = m.route.get().split('?')[0] === '/';\r\n\t\tif (isIndexPage) {\r\n\t\t\tconst tags = discussion.tags();\r\n\t\t\tfor (const key in tags) {\r\n\t\t\t\tconst tagId = tags[key].id();\r\n\t\t\t\tconst isChild = tags[key].isChild();\r\n\t\t\t\tconst parent = tags[key].data.hasOwnProperty('relationships') && tags[key].parent() ? tags[key].parent()['data'].id : null;\r\n\t\t\t\tconst position = tags[key].position();\r\n\r\n\t\t\t\tlet tagCustomImg = tags[key].attribute('walsgitDiscussionCardsTagDefaultImage');\r\n /* In case Flarum Blog Extension and useBlogImage are activated */\r\n\t\t\t\tif(blogActivated && Number(settings.useBlogImages) === 1 && blogSettings.tags.includes(tagId)) {\r\n\t\t\t\t\ttagCustomImg = postIsBlogType && blogPost.featuredImage && isValideImageUrl(blogPost.featuredImage) ? blogPost.featuredImage : blogSettings.defaultImage;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst currentTag = { id: tagId, isChild, parent, position, tagCustomImg }\r\n\t\t\t\tlet priorityTag = null;\r\n\t\t\t\tif (!settings.allowedTags.includes(tagId) || tagCustomImg === null)\tcontinue;\r\n\r\n\t\t\t\tif (priorityTag === null || compareTags(currentTag, priorityTag) < 0) {\r\n\t\t\t\t\tpriorityTag = { id: tagId, isChild, parent, position, tagCustomImg };\r\n\t\t\t\t\tsettings.defaultImage = tagCustomImg;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n const isRead = Number(settings.markReadCards) === 1 && (discussion.isRead() && app.session.user) ? 'read' : '';\r\n const attrs = {};\r\n attrs.className = \"wrapImg\" + (Number(settings.showAuthor) === 1 ? \" After\" : '');\r\n const image = getPostImage(discussion.firstPost(), settings.defaultImage, postIsBlogType);\r\n const media = image\r\n ? {discussion.title()}\r\n\r\n :
\r\n\r\n return (\r\n
\r\n {DiscussionControls.controls(discussion, this).toArray().length\r\n ? m(Dropdown, {\r\n icon: 'fas fa-ellipsis-v',\r\n className: 'DiscussionListItem-controls',\r\n buttonClassName: 'Button Button--icon Button--flat Slidable-underneath Slidable-underneath--right',\r\n }, DiscussionControls.controls(discussion, this).toArray())\r\n : ''}\r\n \r\n\r\n {Number(settings.showBadges) === 1\r\n ? craftBadges(discussion.badges().toArray())\r\n : ''}\r\n\r\n
\r\n\r\n
\r\n
\r\n {discussion.data.attributes.hasOwnProperty('views') && (\r\n <>\r\n {Number(settings.showViews) === 1 && !isNaN(discussion.views())\r\n ?
\r\n {icon('fas fa-eye', {className: 'labelIcon'})}\r\n {discussion.views()}\r\n
\r\n : ''}\r\n \r\n )}\r\n \r\n {media}\r\n\r\n {Number(settings.showAuthor) === 1\r\n ?
\r\n
\r\n {username(discussion.user())}\r\n
\r\n
\r\n {humanTime(discussion.createdAt())}\r\n
\r\n
\r\n : ''}\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n

\r\n {Number(settings.allowRepostLinks) === 1 && repostActivated && repostUrl ? e.stopPropagation()}>{truncate(discussion.title(), 80)} : truncate(discussion.title(), 80)}\r\n

\r\n {app.screen() !== 'phone' && Number(settings.showReplies) === 1 && Number(settings.showRepliesOnRight) === 1 ?\r\n
\r\n {abbreviateNumber(discussion.replyCount())}\r\n\r\n \r\n {app.translator.trans('core.forum.discussion_list.unread_replies_a11y_label', { count: discussion.replyCount() })}\r\n \r\n
\r\n : ''}\r\n
\r\n
{craftTags(discussion.tags())}
\r\n
\r\n\r\n {Number(settings.previewText) === 1 && discussion.firstPost() ? (\r\n
\r\n {blogActivated && Number(settings.useBlogSummary) === 1 && discussion.data.relationships.hasOwnProperty('blogMeta') && discussion.blogMeta().summary() !== ''\r\n ? truncate(discussion.blogMeta().summary(), 150)\r\n : truncate(discussion.firstPost().contentPlain(), 150)\r\n }\r\n
\r\n ) : (\r\n ''\r\n )}\r\n \r\n {Number(settings.showLastPostInfo) === 1 && discussion.firstPost() ? (\r\n
\r\n \r\n
\r\n ) : (\r\n ''\r\n )}\r\n\r\n {app.screen() === 'phone' && Number(settings.showReplies) === 1\r\n ?
\r\n \r\n
\r\n
\r\n {m(LastReplies, {discussion: discussion})}\r\n
\r\n
\r\n {app.translator.trans('walsgit_discussion_cards.forum.replies', {count: discussion.replyCount() || '0'})}\r\n
\r\n
\r\n
\r\n {icon('fas fa-angle-right')}\r\n
\r\n \r\n
\r\n : Number(settings.showReplies) === 1 && !Number(settings.showRepliesOnRight) ?\r\n
\r\n {icon('fas fa-comment', {className: 'labelIcon'})}\r\n {discussion.replyCount()}\r\n
: ''\r\n }\r\n
\r\n
\r\n \r\n
\r\n );\r\n\r\n }\r\n\r\n}\r\n","export default function checkOverflowingTags() {\r\n const cardListItemsOnPrimary = document.querySelectorAll(\".CardsListItem.Card .cardLink\");\r\n const cardListItems = document.querySelectorAll(\".cardGrid .colSpan-2\");\r\n\r\n const toggleOverflowClass = function(cardTags, cardListItem) {\r\n if (!cardTags) return;\r\n\r\n if (cardTags.scrollWidth > cardListItem.clientWidth - 30) { // -30 to account for the 15px + 15px margins on .cardTags\r\n cardTags.classList.add(\"overflowing\");\r\n } else {\r\n cardTags.classList.remove(\"overflowing\");\r\n }\r\n }\r\n\r\n cardListItemsOnPrimary.forEach(cardListItem => {\r\n const cardTags = cardListItem.querySelector(\".cardTags\");\r\n\r\n toggleOverflowClass(cardTags, cardListItem);\r\n });\r\n\r\n cardListItems.forEach(cardListItem => {\r\n const cardTags = cardListItem.querySelector(\".flexBox .cardTags\");\r\n\r\n toggleOverflowClass(cardTags, cardListItem);\r\n });\r\n}","export default function compareTags(currentTag, priorityTag) {\r\n if (currentTag.isChild && !priorityTag.isChild) return -1;\r\n if (!currentTag.isChild && priorityTag.isChild) return 1;\r\n if (currentTag.isChild && priorityTag.isChild && currentTag.parent === priorityTag.parent) return currentTag.position - priorityTag.position;\r\n if (currentTag.isChild && priorityTag.isChild && currentTag.parent !== priorityTag.parent) return currentTag.parent - priorityTag.parent;\r\n\r\n if (!currentTag.position && priorityTag.position) return 1;\r\n if (currentTag.position && !priorityTag.position) return -1;\r\n if (currentTag.position && priorityTag.position) return currentTag.position - priorityTag.position;\r\n return currentTag.id - priorityTag.id;\r\n}","import isValideImageUrl from \"./isValideImageUrl\";\r\n\r\nexport default function getPostImage(post, image, isblogPost = false, key = 1) {\r\n\r\n const regex = /|background(?:-image)?:\\s*url\\(['\"]?(.*?)['\"]?\\)/i;\r\n\r\n if(isblogPost && isValideImageUrl(image)) {\r\n return image;\r\n }\r\n\r\n const assetImage = app.forum.attribute(\"baseUrl\") + \"/assets/\" + image;\r\n\r\n if (post) {\r\n const src = regex.exec(post.contentHtml());\r\n if (typeof key === \"number\" && key > 0) {\r\n return (src) ? (src[1] || src[2]) : (image ? assetImage : null);\r\n } else if (key === '~') {\r\n return src;\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n}\r\n","export default function isValideImageUrl (url) {\r\n if(typeof url !== 'string') return false;\r\n \r\n const imageExtensions = ['jpg', 'jpeg', 'png', 'gif', 'webp', 'bmp', 'svg'];\r\n\r\n if (!url.startsWith('http://') && !url.startsWith('https://')) {\r\n url = 'http://' + url;\r\n }\r\n\r\n let parsedUrl;\r\n try {\r\n parsedUrl = new URL(url);\r\n } catch {\r\n return false;\r\n }\r\n\r\n const extension = parsedUrl.pathname.split('.').pop().toLowerCase();\r\n return imageExtensions.includes(extension);\r\n}","import app from 'flarum/app';\r\nimport {extend, override} from 'flarum/extend';\r\nimport DiscussionList from 'flarum/forum/components/DiscussionList';\r\nimport DiscussionListState from 'flarum/forum/states/DiscussionListState';\r\nimport IndexPage from 'flarum/forum/components/IndexPage';\r\nimport LoadingIndicator from 'flarum/common/components/LoadingIndicator';\r\nimport Placeholder from 'flarum/common/components/Placeholder';\r\nimport Button from 'flarum/common/components/Button';\r\nimport CardItem from './components/CardItem';\r\nimport ListItem from './components/ListItem';\r\nimport checkOverflowingTags from './helpers/checkOverflowingTags';\r\n\r\napp.initializers.add('walsgit/discussion/cards', () => {\r\n\r\n extend(DiscussionList.prototype, 'oncreate', checkOverflowingTags);\r\n extend(DiscussionList.prototype, 'onupdate', checkOverflowingTags);\r\n\r\n extend(DiscussionListState.prototype, 'requestParams', function (params) {\r\n if (app.current.matches(IndexPage)) {\r\n params.include.push(['firstPost', 'posts', 'posts.user']);\r\n }\r\n });\r\n\r\n override(DiscussionList.prototype, 'view', function (original) {\r\n const settings = {};\r\n for (const key in app.forum.data.attributes) {\r\n if (key.startsWith('walsgitDiscussionCards')) {\r\n let newKey = key.replace('walsgitDiscussionCards', '');\r\n newKey = newKey.replace(/^./, newKey.charAt(0).toLowerCase());\r\n settings[newKey] = app.forum.data.attributes[key];\r\n }\r\n }\r\n const state = this.attrs.state;\r\n const params = state.getParams();\r\n let loading;\r\n if (state.isInitialLoading() || state.isLoadingNext()) {\r\n loading = ;\r\n } else if (state.hasNext()) {\r\n loading = Button.component(\r\n {\r\n className: 'Button',\r\n onclick: state.loadNext.bind(state),\r\n },\r\n app.translator.trans('core.forum.discussion_list.load_more_button')\r\n );\r\n }\r\n if (state.isEmpty()) {\r\n const text = app.translator.trans('core.forum.discussion_list.empty_text');\r\n return
{m(Placeholder, {text})}
;\r\n }\r\n const isTagPage = m.route.get().split('?')[0].startsWith('/t/');\r\n let tag = null;\r\n if (isTagPage) {\r\n tag = app.store.all('tags').find(t => t.slug() === params.tags).data.id;\r\n const tagSettings = JSON.parse(app.store.all('tags').find(t => t.slug() === params.tags).data.attributes.walsgitDiscussionCardsTagSettings);\r\n for (const key in tagSettings) {\r\n if (settings.hasOwnProperty(key) && tagSettings[key] !== settings[key]) {\r\n settings[key] = tagSettings[key];\r\n }\r\n }\r\n }\r\n if (app.current.matches(IndexPage) && ((settings.allowedTags.length && settings.allowedTags.includes(tag)) || (!params.tags && Number(settings.onIndexPage) === 1))) {\r\n return (\r\n
\r\n
\r\n {state.getPages().map((pg, o) => {\r\n return pg.items.map((discussion, i) => {\r\n return (i < Number(settings.primaryCards) && o === 0)\r\n ? m(CardItem, {discussion: discussion})\r\n : m(ListItem, {discussion: discussion})\r\n });\r\n })}\r\n
\r\n
{loading}
\r\n
\r\n );\r\n\r\n } else {\r\n return original();\r\n }\r\n })\r\n}, -1);\r\n\r\n\r\n// Expose compat API\r\nimport extCompat from './compat';\r\nimport {compat} from '@flarum/core/forum';\r\n\r\nObject.assign(compat, extCompat);\r\n","import icon from 'flarum/common/helpers/icon';\r\nimport Tooltip from 'flarum/common/components/Tooltip';\r\n\r\nexport default function craftBadges(badges) {\r\n if (badges.length) {\r\n return [m('.cardBadges', [badges.map((badge) => {\r\n return [\r\n m(Tooltip, {\r\n text: badge.attrs.label[0],\r\n position: 'right'\r\n },\r\n m('span.cardBadge.Badge.Badge--' + badge.attrs.type, [icon(badge.attrs.icon)]))]\r\n })])];\r\n }\r\n};\r\n","import Link from 'flarum/common/components/Link';\r\nimport sortTags from 'flarum/tags/utils/sortTags';\r\n\r\nexport default function craftTags(tags) {\r\n if (tags) {\r\n return [sortTags(tags).map(function (tag) {\r\n return [\r\n \r\n {tag.name()}\r\n \r\n ]\r\n })];\r\n }\r\n};\r\n","module.exports = flarum.core;","module.exports = flarum.core.compat['app'];","module.exports = flarum.core.compat['common/Component'];","module.exports = flarum.core.compat['common/components/Button'];","module.exports = flarum.core.compat['common/components/Dropdown'];","module.exports = flarum.core.compat['common/components/Link'];","module.exports = flarum.core.compat['common/components/LoadingIndicator'];","module.exports = flarum.core.compat['common/components/Placeholder'];","module.exports = flarum.core.compat['common/components/Tooltip'];","module.exports = flarum.core.compat['common/helpers/avatar'];","module.exports = flarum.core.compat['common/helpers/icon'];","module.exports = flarum.core.compat['common/helpers/username'];","module.exports = flarum.core.compat['common/utils/abbreviateNumber'];","module.exports = flarum.core.compat['common/utils/humanTime'];","module.exports = flarum.core.compat['common/utils/string'];","module.exports = flarum.core.compat['components/TerminalPost'];","module.exports = flarum.core.compat['extend'];","module.exports = flarum.core.compat['forum/components/DiscussionList'];","module.exports = flarum.core.compat['forum/components/IndexPage'];","module.exports = flarum.core.compat['forum/states/DiscussionListState'];","module.exports = flarum.core.compat['forum/utils/DiscussionControls'];","module.exports = flarum.core.compat['tags/utils/sortTags'];","import setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _inheritsLoose(t, o) {\n t.prototype = Object.create(o.prototype), t.prototype.constructor = t, setPrototypeOf(t, o);\n}\nexport { _inheritsLoose as default };","function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nexport { _setPrototypeOf as default };","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/*\r\n * This file is part of Flarum.\r\n *\r\n * (c) Toby Zerner \r\n *\r\n * For the full copyright and license information, please view the LICENSE\r\n * file that was distributed with this source code.\r\n */\r\n\r\nexport * from './src/forum';\r\n"],"names":["CardItem","ListItem","LastReplies","craftTags","craftBadges","Component","getPostImage","humanTime","icon","username","Dropdown","DiscussionControls","Link","truncate","compareTags","isValideImageUrl","TerminalPost","cardItem","_Component","apply","arguments","_inheritsLoose","_proto","prototype","oninit","vnode","call","discussion","attrs","view","settings","key","app","forum","data","attributes","startsWith","newKey","replace","charAt","toLowerCase","blogActivated","hasOwnProperty","blogSettings","postIsBlogType","relationships","blogPost","tags","attribute","defaultImage","blogPostsData","store","blogMeta","id","featuredImage","repostActivated","flarum","extensions","repostUrl","original_url","isTagPage","m","route","get","split","tagId","_m$route$get$split$","slug","all","find","t","tag","tagSettings","JSON","parse","walsgitDiscussionCardsTagSettings","tagImage","walsgitDiscussionCardsTagDefaultImage","Number","useBlogImages","includes","isIndexPage","isChild","parent","position","tagCustomImg","currentTag","priorityTag","allowedTags","isRead","markReadCards","session","user","className","showAuthor","image","firstPost","media","src","alt","title","loading","isHidden","controls","toArray","length","buttonClassName","href","showBadges","badges","'['","showViews","isNaN","views","createdAt","allowRepostLinks","onclick","e","stopPropagation","previewText","useBlogSummary","summary","contentPlain","showLastPostInfo","lastPost","lastPostNumber","showReplies","translator","trans","count","replyCount","default","avatar","posts","splice","filteredPosts","filter","post","number","contentType","sort","a","b","groupedUsers","map","i","self","indexOf","reverse","abbreviateNumber","listItem","screen","showRepliesOnRight","checkOverflowingTags","cardListItemsOnPrimary","document","querySelectorAll","cardListItems","toggleOverflowClass","cardTags","cardListItem","scrollWidth","clientWidth","classList","add","remove","forEach","querySelector","isblogPost","regex","assetImage","exec","contentHtml","url","imageExtensions","parsedUrl","URL","_unused","extension","pathname","pop","extend","override","DiscussionList","DiscussionListState","IndexPage","LoadingIndicator","Placeholder","Button","initializers","params","current","matches","include","push","original","state","getParams","isInitialLoading","isLoadingNext","hasNext","component","loadNext","bind","isEmpty","text","onIndexPage","isSearchResults","getPages","pg","o","items","primaryCards","extCompat","compat","Object","assign","Tooltip","badge","label","type","sortTags","style","backgroundColor","color","name","setPrototypeOf","create","constructor","_setPrototypeOf","__proto__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"forum.js","mappings":"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","sources":["webpack://@walsgit/flarum-discussion-cards/webpack/bootstrap","webpack://@walsgit/flarum-discussion-cards/webpack/runtime/compat get default export","webpack://@walsgit/flarum-discussion-cards/webpack/runtime/define property getters","webpack://@walsgit/flarum-discussion-cards/webpack/runtime/hasOwnProperty shorthand","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['app']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['extend']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['forum/components/DiscussionList']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['forum/states/DiscussionListState']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['forum/components/IndexPage']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/components/LoadingIndicator']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/components/Placeholder']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/components/Button']\"","webpack://@walsgit/flarum-discussion-cards/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://@walsgit/flarum-discussion-cards/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/Component']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/helpers/icon']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/components/Tooltip']\"","webpack://@walsgit/flarum-discussion-cards/./src/forum/utils/craftBadges.js","webpack://@walsgit/flarum-discussion-cards/./src/forum/helpers/isValideImageUrl.js","webpack://@walsgit/flarum-discussion-cards/./src/forum/helpers/getPostImage.js","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/components/Link']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['tags/utils/sortTags']\"","webpack://@walsgit/flarum-discussion-cards/./src/forum/utils/craftTags.js","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/utils/humanTime']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/helpers/username']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/components/Dropdown']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['forum/utils/DiscussionControls']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/utils/string']\"","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/helpers/avatar']\"","webpack://@walsgit/flarum-discussion-cards/./src/forum/components/LastReplies.js","webpack://@walsgit/flarum-discussion-cards/./src/forum/helpers/compareTags.js","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['components/TerminalPost']\"","webpack://@walsgit/flarum-discussion-cards/./src/forum/components/CardItem.js","webpack://@walsgit/flarum-discussion-cards/external root \"flarum.core.compat['common/utils/abbreviateNumber']\"","webpack://@walsgit/flarum-discussion-cards/./src/forum/components/ListItem.js","webpack://@walsgit/flarum-discussion-cards/./src/forum/helpers/checkOverflowingTags.js","webpack://@walsgit/flarum-discussion-cards/./src/forum/compat.js","webpack://@walsgit/flarum-discussion-cards/external assign \"flarum.core\"","webpack://@walsgit/flarum-discussion-cards/./src/forum/index.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['app'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['extend'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['forum/components/DiscussionList'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['forum/states/DiscussionListState'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['forum/components/IndexPage'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/LoadingIndicator'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Placeholder'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Button'];","function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nexport { _setPrototypeOf as default };","import setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _inheritsLoose(t, o) {\n t.prototype = Object.create(o.prototype), t.prototype.constructor = t, setPrototypeOf(t, o);\n}\nexport { _inheritsLoose as default };","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/Component'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/helpers/icon'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Tooltip'];","import icon from 'flarum/common/helpers/icon';\r\nimport Tooltip from 'flarum/common/components/Tooltip';\r\n\r\nexport default function craftBadges(badges) {\r\n if (badges.length) {\r\n return [m('.cardBadges', [badges.map((badge) => {\r\n return [\r\n m(Tooltip, {\r\n text: badge.attrs.label[0],\r\n position: 'right'\r\n },\r\n m('span.cardBadge.Badge.Badge--' + badge.attrs.type, [icon(badge.attrs.icon)]))]\r\n })])];\r\n }\r\n};\r\n","export default function isValideImageUrl (url) {\r\n if(typeof url !== 'string') return false;\r\n \r\n const imageExtensions = ['jpg', 'jpeg', 'png', 'gif', 'webp', 'bmp', 'svg'];\r\n\r\n if (!url.startsWith('http://') && !url.startsWith('https://')) {\r\n url = 'http://' + url;\r\n }\r\n\r\n let parsedUrl;\r\n try {\r\n parsedUrl = new URL(url);\r\n } catch {\r\n return false;\r\n }\r\n\r\n const extension = parsedUrl.pathname.split('.').pop().toLowerCase();\r\n return imageExtensions.includes(extension);\r\n}","import isValideImageUrl from \"./isValideImageUrl\";\r\n\r\nexport default function getPostImage(post, image, isblogPost = false, key = 1) {\r\n\r\n const regex = /|background(?:-image)?:\\s*url\\(['\"]?(.*?)['\"]?\\)/i;\r\n\r\n if(isblogPost && isValideImageUrl(image)) {\r\n return image;\r\n }\r\n\r\n const assetImage = app.forum.attribute(\"baseUrl\") + \"/assets/\" + image;\r\n\r\n if (post) {\r\n const src = regex.exec(post.contentHtml());\r\n if (typeof key === \"number\" && key > 0) {\r\n return (src) ? (src[1] || src[2]) : (image ? assetImage : null);\r\n } else if (key === '~') {\r\n return src;\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n}\r\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Link'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['tags/utils/sortTags'];","import Link from 'flarum/common/components/Link';\r\nimport sortTags from 'flarum/tags/utils/sortTags';\r\n\r\nexport default function craftTags(tags) {\r\n if (tags) {\r\n return [sortTags(tags).map(function (tag) {\r\n return [\r\n \r\n {tag.name()}\r\n \r\n ]\r\n })];\r\n }\r\n};\r\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/humanTime'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/helpers/username'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/components/Dropdown'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['forum/utils/DiscussionControls'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/string'];","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/helpers/avatar'];","import Component from 'flarum/common/Component';\r\nimport avatar from 'flarum/common/helpers/avatar';\r\n\r\n\r\nexport default class LastReplies extends Component {\r\n\r\n oninit(vnode) {\r\n super.oninit(vnode);\r\n this.discussion = this.attrs.discussion;\r\n }\r\n\r\n view() {\r\n const discussion = this.discussion;\r\n\r\n // let's assume that the last 10 posts will be enough for us to identify 3 unique users\r\n const posts = discussion.posts().splice(-10);\r\n\r\n const filteredPosts = posts\r\n .filter((post) => {\r\n return !post.isHidden() && post.number() !== 1 && post.contentType() === \"comment\";\r\n })\r\n .sort((a, b) => b.createdAt() - a.createdAt());\r\n\r\n const groupedUsers = filteredPosts\r\n .map(post => post.user())\r\n .filter((user, i, self) => {\r\n return self.indexOf(user) === i\r\n })\r\n .reverse()\r\n // last 3 users\r\n .splice(-3);\r\n\r\n\r\n return groupedUsers.map(user => {\r\n return avatar(user, {className: 'Avatar--mini'})\r\n })\r\n\r\n }\r\n\r\n}\r\n","export default function compareTags(currentTag, priorityTag) {\r\n if (currentTag.isChild && !priorityTag.isChild) return -1;\r\n if (!currentTag.isChild && priorityTag.isChild) return 1;\r\n if (currentTag.isChild && priorityTag.isChild && currentTag.parent === priorityTag.parent) return currentTag.position - priorityTag.position;\r\n if (currentTag.isChild && priorityTag.isChild && currentTag.parent !== priorityTag.parent) return currentTag.parent - priorityTag.parent;\r\n\r\n if (!currentTag.position && priorityTag.position) return 1;\r\n if (currentTag.position && !priorityTag.position) return -1;\r\n if (currentTag.position && priorityTag.position) return currentTag.position - priorityTag.position;\r\n return currentTag.id - priorityTag.id;\r\n}","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['components/TerminalPost'];","import Component from \"flarum/common/Component\";\r\nimport craftBadges from \"../utils/craftBadges\";\r\nimport getPostImage from \"../helpers/getPostImage\";\r\nimport craftTags from \"../utils/craftTags\";\r\nimport humanTime from \"flarum/common/utils/humanTime\";\r\nimport icon from \"flarum/common/helpers/icon\";\r\nimport username from \"flarum/common/helpers/username\";\r\nimport Dropdown from \"flarum/common/components/Dropdown\";\r\nimport DiscussionControls from \"flarum/forum/utils/DiscussionControls\";\r\nimport Link from \"flarum/common/components/Link\";\r\nimport { truncate } from \"flarum/common/utils/string\";\r\nimport LastReplies from \"./LastReplies\";\r\nimport compareTags from \"../helpers/compareTags\";\r\nimport isValideImageUrl from \"../helpers/isValideImageUrl\";\r\nimport TerminalPost from 'flarum/components/TerminalPost';\r\n\r\nexport default class cardItem extends Component {\r\n\toninit(vnode) {\r\n\t\tsuper.oninit(vnode);\r\n\t\tthis.discussion = this.attrs.discussion;\r\n\t}\r\n\r\n\tview() {\r\n\t\tconst discussion = this.discussion;\r\n\t\tconst settings = {};\r\n\t\tfor (const key in app.forum.data.attributes) {\r\n\t\t\tif (key.startsWith('walsgitDiscussionCards')) {\r\n\t\t\t\tlet newKey = key.replace('walsgitDiscussionCards', '');\r\n\t\t\t\tnewKey = newKey.replace(/^./, newKey.charAt(0).toLowerCase());\r\n\t\t\t\tsettings[newKey] = app.forum.data.attributes[key];\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/* Getting & setting relevant info for 3rd party Flarum Blog extension support */\r\n\t\tconst blogActivated = app.forum.data.attributes.hasOwnProperty('blogTags');\r\n\t\tconst blogSettings = {};\r\n\t\tconst postIsBlogType = discussion.data.relationships.hasOwnProperty('blogMeta');\r\n\t\tconst blogPost = {}\r\n\t\tif(blogActivated) {\r\n\t\t\tblogSettings.tags = app.forum.attribute('blogTags');\r\n\t\t\tblogSettings.defaultImage = app.forum.attribute('blogDefaultImage');\r\n\r\n\t\t\tif(postIsBlogType) {\r\n\t\t\t\tconst blogPostsData = discussion.store.data.blogMeta[discussion.data.relationships.blogMeta.data.id];\r\n\t\t\t\tif(isValideImageUrl(blogPostsData.attribute('featuredImage'))) {\r\n\t\t\t\t\tblogPost.featuredImage = blogPostsData.attribute('featuredImage');\t\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/* Getting & setting relevant info for 3rd party Repost extension */\r\n\t\tconst repostActivated = 'shebaoting-repost' in flarum.extensions;\r\n\t\tconst repostUrl = discussion.data.attributes.original_url || null;\r\n\r\n\t\tconst isTagPage = m.route.get().split('?')[0].startsWith('/t/');\r\n\t\tlet tagId;\r\n\t\tif (isTagPage) {\r\n\t\t\tconst slug = m.route.get().split('/t/')[1]?.split('?')[0];\r\n\t\t\ttagId = app.store.all('tags').find(t => t.slug() === slug).data.id;\r\n\t\t\tconst tag = app.store.all('tags').find(t => t.id() === tagId);\r\n\t\t\tconst tagSettings = tag ? JSON.parse(tag.data.attributes.walsgitDiscussionCardsTagSettings || '{}') : {};\r\n\t\t\tconst tagImage = tag ? tag.data.attributes.walsgitDiscussionCardsTagDefaultImage : null;\r\n\t\t\t\r\n\t\t\ttagSettings.defaultImage = tagImage;\r\n\t\t\t/* In case Flarum Blog Extension and useBlogImage are activated */\r\n\t\t\tif(blogActivated && Number(settings.useBlogImages) === 1 && blogSettings.tags.includes(tagId)) {\r\n\t\t\t\ttagSettings.defaultImage = postIsBlogType && blogPost.featuredImage && isValideImageUrl(blogPost.featuredImage) ? blogPost.featuredImage : blogSettings.defaultImage;\r\n\t\t\t}\r\n\r\n\t\t\tfor (const key in tagSettings) {\r\n\t\t\t\tif (settings.hasOwnProperty(key) && tagSettings[key] !== settings[key] && tagSettings[key] !== null) {\r\n\t\t\t\t\tsettings[key] = tagSettings[key];\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/* On the IndexPage (all discussions) checks which default image to show based on tag priority */\r\n\t\tconst isIndexPage = m.route.get().split('?')[0] === '/';\r\n\t\tif (isIndexPage) {\r\n\t\t\tconst tags = discussion.tags();\r\n\t\t\tfor (const key in tags) {\r\n\t\t\t\tconst tagId = tags[key].id();\r\n\t\t\t\tconst isChild = tags[key].isChild();\r\n\t\t\t\tconst parent = tags[key].data.hasOwnProperty('relationships') && tags[key].parent() ? tags[key].parent()['data'].id : null;\r\n\t\t\t\tconst position = tags[key].position();\r\n\r\n\t\t\t\tlet tagCustomImg = tags[key].attribute('walsgitDiscussionCardsTagDefaultImage');\r\n\t\t\t\t/* In case Flarum Blog Extension and useBlogImage are activated */\r\n\t\t\t\tif(blogActivated && Number(settings.useBlogImages) === 1 && blogSettings.tags.includes(tagId)) {\r\n\t\t\t\t\ttagCustomImg = postIsBlogType && blogPost.featuredImage && isValideImageUrl(blogPost.featuredImage) ? blogPost.featuredImage : blogSettings.defaultImage;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst currentTag = { id: tagId, isChild, parent, position, tagCustomImg }\r\n\t\t\t\tlet priorityTag = null;\r\n\t\t\t\tif (!settings.allowedTags.includes(tagId) || tagCustomImg === null) continue;\t\t\t\t\t\r\n\r\n\t\t\t\tif (priorityTag === null || compareTags(currentTag, priorityTag) < 0) {\r\n\t\t\t\t\tpriorityTag = { id: tagId, isChild, parent, position, tagCustomImg };\r\n\t\t\t\t\tsettings.defaultImage = tagCustomImg;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tconst isRead = Number(settings.markReadCards) === 1 && discussion.isRead() && app.session.user ? \"read\" : \"\";\r\n\t\tconst attrs = {};\r\n\t\tattrs.className =\r\n\t\t\t\"wrapImg\" + (Number(settings.showAuthor) === 1 ? \" After\" : \"\");\r\n\t\tconst image = getPostImage(discussion.firstPost(), settings.defaultImage, postIsBlogType);\r\n\t\tconst media = image ? (\r\n\t\t\t\r\n\t\t) : (\r\n\t\t\t
\r\n\t\t);\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{DiscussionControls.controls(discussion, this).toArray().length\r\n\t\t\t\t\t? m(\r\n\t\t\t\t\t\t\tDropdown,\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\ticon: \"fas fa-ellipsis-v\",\r\n\t\t\t\t\t\t\t\tclassName: \"DiscussionListItem-controls\",\r\n\t\t\t\t\t\t\t\tbuttonClassName:\r\n\t\t\t\t\t\t\t\t\t\"Button Button--icon Button--flat Slidable-underneath Slidable-underneath--right\",\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tDiscussionControls.controls(\r\n\t\t\t\t\t\t\t\tdiscussion,\r\n\t\t\t\t\t\t\t\tthis\r\n\t\t\t\t\t\t\t).toArray()\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t: \"\"}\r\n\t\t\t\t\r\n\t\t\t\t\t{Number(settings.showBadges) === 1\r\n\t\t\t\t\t\t? craftBadges(discussion.badges().toArray())\r\n\t\t\t\t\t\t: \"\"}\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{discussion.data.attributes.hasOwnProperty('views') && (\r\n\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t{Number(settings.showViews) === 1 &&\r\n\t\t\t\t\t\t\t\t!isNaN(discussion.views()) ? (\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{icon(\"fas fa-eye\", { className: \"labelIcon\" })}\r\n\t\t\t\t\t\t\t\t\t\t{discussion.views()}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\r\n\t\t\t\t\t\t{media}\r\n\r\n\t\t\t\t\t\t{Number(settings.showAuthor) === 1 ? (\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{username(discussion.user())}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{humanTime(discussion.createdAt())}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{craftTags(discussion.tags())}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{Number(settings.allowRepostLinks) === 1 && repostActivated && repostUrl ? e.stopPropagation()}>{truncate(discussion.title(), 80)} : truncate(discussion.title(), 80)}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{Number(settings.previewText) === 1 && discussion.firstPost() ? (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{blogActivated && Number(settings.useBlogSummary) === 1 && discussion.data.relationships.hasOwnProperty('blogMeta') && discussion.blogMeta().summary() !== ''\r\n\t\t\t\t\t\t\t\t? truncate(discussion.blogMeta().summary(), 150)\r\n\t\t\t\t\t\t\t\t: truncate(discussion.firstPost().contentPlain(), 150)\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t)}\r\n\r\n\t\t\t\t\t{Number(settings.showLastPostInfo) === 1 && discussion.firstPost() ? (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t''\r\n\t\t\t\t\t)}\r\n\r\n\t\t\t\t\t{Number(settings.showReplies) === 1 ? (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{m(LastReplies, {\r\n\t\t\t\t\t\t\t\t\t\t\tdiscussion: discussion,\r\n\t\t\t\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{app.translator.trans(\r\n\t\t\t\t\t\t\t\t\t\t\t\"walsgit_discussion_cards.forum.replies\",\r\n\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\tcount:\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tdiscussion.replyCount() ||\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"0\",\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{icon(\"fas fa-angle-right\")}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t)}\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core.compat['common/utils/abbreviateNumber'];","import Component from \"flarum/common/Component\";\r\nimport craftBadges from \"../utils/craftBadges\";\r\nimport getPostImage from \"../helpers/getPostImage\";\r\nimport craftTags from \"../utils/craftTags\";\r\nimport humanTime from 'flarum/common/utils/humanTime';\r\nimport icon from 'flarum/common/helpers/icon';\r\nimport username from 'flarum/common/helpers/username';\r\nimport Dropdown from 'flarum/common/components/Dropdown';\r\nimport DiscussionControls from 'flarum/forum/utils/DiscussionControls';\r\nimport Link from 'flarum/common/components/Link';\r\nimport {truncate} from 'flarum/common/utils/string';\r\nimport LastReplies from './LastReplies';\r\nimport compareTags from \"../helpers/compareTags\";\r\nimport isValideImageUrl from \"../helpers/isValideImageUrl\";\r\nimport abbreviateNumber from 'flarum/common/utils/abbreviateNumber';\r\nimport TerminalPost from 'flarum/components/TerminalPost';\r\n\r\n\r\nexport default class listItem extends Component {\r\n\r\n oninit(vnode) {\r\n super.oninit(vnode);\r\n }\r\n\r\n view() {\r\n const discussion = this.attrs.discussion;\r\n const settings = {};\r\n for (const key in app.forum.data.attributes) {\r\n\t\t\tif (key.startsWith('walsgitDiscussionCards')) {\r\n\t\t\t\tlet newKey = key.replace('walsgitDiscussionCards', '');\r\n\t\t\t\tnewKey = newKey.replace(/^./, newKey.charAt(0).toLowerCase());\r\n\t\t\t\tsettings[newKey] = app.forum.data.attributes[key];\r\n\t\t\t}\r\n\t\t}\r\n\r\n /* Getting & setting relevant info for 3rd party Flarum Blog support */\r\n\t\tconst blogActivated = app.forum.data.attributes.hasOwnProperty('blogTags');\r\n\t\tconst blogSettings = {};\r\n\t\tconst postIsBlogType = discussion.data.relationships.hasOwnProperty('blogMeta');\r\n\t\tconst blogPost = {}\r\n\t\tif(blogActivated) {\r\n\t\t\tblogSettings.tags = app.forum.attribute('blogTags');\r\n\t\t\tblogSettings.defaultImage = app.forum.attribute('blogDefaultImage');\r\n\r\n\t\t\tif(postIsBlogType) {\r\n\t\t\t\tconst blogPostsData = discussion.store.data.blogMeta[discussion.data.relationships.blogMeta.data.id];\r\n\t\t\t\tif(isValideImageUrl(blogPostsData.attribute('featuredImage'))) {\r\n\t\t\t\t\tblogPost.featuredImage = blogPostsData.attribute('featuredImage');\t\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n /* Getting & setting relevant info for 3rd party Repost extension */\r\n const repostActivated = 'shebaoting-repost' in flarum.extensions;\r\n const repostUrl = discussion.data.attributes.original_url || null;\r\n\r\n const isTagPage = m.route.get().split('?')[0].startsWith('/t/');\r\n\t\tif (isTagPage) {\r\n const slug = m.route.get().split('/t/')[1]?.split('?')[0];\r\n const tagId = app.store.all('tags').find(t => t.slug() === slug).data.id;\r\n const tag = app.store.all('tags').find(t => t.id() === tagId);\r\n const tagSettings = tag ? JSON.parse(tag.data.attributes.walsgitDiscussionCardsTagSettings || '{}') : {};\r\n const tagImage = tag ? tag.data.attributes.walsgitDiscussionCardsTagDefaultImage : null;\r\n \r\n tagSettings.defaultImage = tagImage;\r\n /* In case Flarum Blog Extension and useBlogImage are activated */\r\n if(blogActivated && Number(settings.useBlogImages) === 1 && blogSettings.tags.includes(tagId)) {\r\n\t\t\t\ttagSettings.defaultImage = postIsBlogType && blogPost.featuredImage && isValideImageUrl(blogPost.featuredImage) ? blogPost.featuredImage : blogSettings.defaultImage;\r\n\t\t\t}\r\n\r\n for (const key in tagSettings) {\r\n if (settings.hasOwnProperty(key) && tagSettings[key] !== settings[key] && tagSettings[key] !== null) {\r\n settings[key] = tagSettings[key];\r\n }\r\n }\r\n }\r\n\r\n /* On the IndexPage (all discussions) checks which default image to show based on tag priority */\r\n\t\tconst isIndexPage = m.route.get().split('?')[0] === '/';\r\n\t\tif (isIndexPage) {\r\n\t\t\tconst tags = discussion.tags();\r\n\t\t\tfor (const key in tags) {\r\n\t\t\t\tconst tagId = tags[key].id();\r\n\t\t\t\tconst isChild = tags[key].isChild();\r\n\t\t\t\tconst parent = tags[key].data.hasOwnProperty('relationships') && tags[key].parent() ? tags[key].parent()['data'].id : null;\r\n\t\t\t\tconst position = tags[key].position();\r\n\r\n\t\t\t\tlet tagCustomImg = tags[key].attribute('walsgitDiscussionCardsTagDefaultImage');\r\n /* In case Flarum Blog Extension and useBlogImage are activated */\r\n\t\t\t\tif(blogActivated && Number(settings.useBlogImages) === 1 && blogSettings.tags.includes(tagId)) {\r\n\t\t\t\t\ttagCustomImg = postIsBlogType && blogPost.featuredImage && isValideImageUrl(blogPost.featuredImage) ? blogPost.featuredImage : blogSettings.defaultImage;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst currentTag = { id: tagId, isChild, parent, position, tagCustomImg }\r\n\t\t\t\tlet priorityTag = null;\r\n\t\t\t\tif (!settings.allowedTags.includes(tagId) || tagCustomImg === null)\tcontinue;\r\n\r\n\t\t\t\tif (priorityTag === null || compareTags(currentTag, priorityTag) < 0) {\r\n\t\t\t\t\tpriorityTag = { id: tagId, isChild, parent, position, tagCustomImg };\r\n\t\t\t\t\tsettings.defaultImage = tagCustomImg;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n const isRead = Number(settings.markReadCards) === 1 && (discussion.isRead() && app.session.user) ? 'read' : '';\r\n const attrs = {};\r\n attrs.className = \"wrapImg\" + (Number(settings.showAuthor) === 1 ? \" After\" : '');\r\n const image = getPostImage(discussion.firstPost(), settings.defaultImage, postIsBlogType);\r\n const media = image\r\n ? {discussion.title()}\r\n\r\n :
\r\n\r\n return (\r\n
\r\n {DiscussionControls.controls(discussion, this).toArray().length\r\n ? m(Dropdown, {\r\n icon: 'fas fa-ellipsis-v',\r\n className: 'DiscussionListItem-controls',\r\n buttonClassName: 'Button Button--icon Button--flat Slidable-underneath Slidable-underneath--right',\r\n }, DiscussionControls.controls(discussion, this).toArray())\r\n : ''}\r\n \r\n\r\n {Number(settings.showBadges) === 1\r\n ? craftBadges(discussion.badges().toArray())\r\n : ''}\r\n\r\n
\r\n\r\n
\r\n
\r\n {discussion.data.attributes.hasOwnProperty('views') && (\r\n <>\r\n {Number(settings.showViews) === 1 && !isNaN(discussion.views())\r\n ?
\r\n {icon('fas fa-eye', {className: 'labelIcon'})}\r\n {discussion.views()}\r\n
\r\n : ''}\r\n \r\n )}\r\n \r\n {media}\r\n\r\n {Number(settings.showAuthor) === 1\r\n ?
\r\n
\r\n {username(discussion.user())}\r\n
\r\n
\r\n {humanTime(discussion.createdAt())}\r\n
\r\n
\r\n : ''}\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n

\r\n {Number(settings.allowRepostLinks) === 1 && repostActivated && repostUrl ? e.stopPropagation()}>{truncate(discussion.title(), 80)} : truncate(discussion.title(), 80)}\r\n

\r\n {app.screen() !== 'phone' && Number(settings.showReplies) === 1 && Number(settings.showRepliesOnRight) === 1 ?\r\n
\r\n {abbreviateNumber(discussion.replyCount())}\r\n\r\n \r\n {app.translator.trans('core.forum.discussion_list.unread_replies_a11y_label', { count: discussion.replyCount() })}\r\n \r\n
\r\n : ''}\r\n
\r\n
{craftTags(discussion.tags())}
\r\n
\r\n\r\n {Number(settings.previewText) === 1 && discussion.firstPost() ? (\r\n
\r\n {blogActivated && Number(settings.useBlogSummary) === 1 && discussion.data.relationships.hasOwnProperty('blogMeta') && discussion.blogMeta().summary() !== ''\r\n ? truncate(discussion.blogMeta().summary(), 150)\r\n : truncate(discussion.firstPost().contentPlain(), 150)\r\n }\r\n
\r\n ) : (\r\n ''\r\n )}\r\n \r\n {Number(settings.showLastPostInfo) === 1 && discussion.firstPost() ? (\r\n
\r\n \r\n
\r\n ) : (\r\n ''\r\n )}\r\n\r\n {app.screen() === 'phone' && Number(settings.showReplies) === 1\r\n ?
\r\n \r\n
\r\n
\r\n {m(LastReplies, {discussion: discussion})}\r\n
\r\n
\r\n {app.translator.trans('walsgit_discussion_cards.forum.replies', {count: discussion.replyCount() || '0'})}\r\n
\r\n
\r\n
\r\n {icon('fas fa-angle-right')}\r\n
\r\n \r\n
\r\n : Number(settings.showReplies) === 1 && !Number(settings.showRepliesOnRight) ?\r\n
\r\n {icon('fas fa-comment', {className: 'labelIcon'})}\r\n {discussion.replyCount()}\r\n
: ''\r\n }\r\n
\r\n
\r\n \r\n
\r\n );\r\n\r\n }\r\n\r\n}\r\n","export default function checkOverflowingTags() {\r\n const cardListItemsOnPrimary = document.querySelectorAll(\".CardsListItem.Card .cardLink\");\r\n const cardListItems = document.querySelectorAll(\".cardGrid .colSpan-2\");\r\n\r\n const toggleOverflowClass = function(cardTags, cardListItem) {\r\n if (!cardTags) return;\r\n\r\n if (cardTags.scrollWidth > cardListItem.clientWidth - 30) { // -30 to account for the 15px + 15px margins on .cardTags\r\n cardTags.classList.add(\"overflowing\");\r\n } else {\r\n cardTags.classList.remove(\"overflowing\");\r\n }\r\n }\r\n\r\n cardListItemsOnPrimary.forEach(cardListItem => {\r\n const cardTags = cardListItem.querySelector(\".cardTags\");\r\n\r\n toggleOverflowClass(cardTags, cardListItem);\r\n });\r\n\r\n cardListItems.forEach(cardListItem => {\r\n const cardTags = cardListItem.querySelector(\".flexBox .cardTags\");\r\n\r\n toggleOverflowClass(cardTags, cardListItem);\r\n });\r\n}","import CardItem from './components/CardItem';\r\nimport ListItem from './components/ListItem';\r\nimport LastReplies from './components/LastReplies';\r\nimport craftTags from \"./utils/craftTags\";\r\nimport craftBadges from \"./utils/craftBadges\";\r\n\r\nexport default {\r\n 'walsgit/discussion/cards/components/CardItem': CardItem,\r\n 'walsgit/discussion/cards/components/ListItem': ListItem,\r\n 'walsgit/discussion/cards/components/LastReplies': LastReplies,\r\n 'walsgit/discussion/cards/utils/craftTags': craftTags,\r\n 'walsgit/discussion/cards/utils/craftBadges': craftBadges,\r\n};\r\n","const __WEBPACK_NAMESPACE_OBJECT__ = flarum.core;","import app from 'flarum/app';\r\nimport {extend, override} from 'flarum/extend';\r\nimport DiscussionList from 'flarum/forum/components/DiscussionList';\r\nimport DiscussionListState from 'flarum/forum/states/DiscussionListState';\r\nimport IndexPage from 'flarum/forum/components/IndexPage';\r\nimport LoadingIndicator from 'flarum/common/components/LoadingIndicator';\r\nimport Placeholder from 'flarum/common/components/Placeholder';\r\nimport Button from 'flarum/common/components/Button';\r\nimport CardItem from './components/CardItem';\r\nimport ListItem from './components/ListItem';\r\nimport checkOverflowingTags from './helpers/checkOverflowingTags';\r\n\r\napp.initializers.add('walsgit/discussion/cards', () => {\r\n\r\n extend(DiscussionList.prototype, 'oncreate', checkOverflowingTags);\r\n extend(DiscussionList.prototype, 'onupdate', checkOverflowingTags);\r\n\r\n extend(DiscussionListState.prototype, 'requestParams', function (params) {\r\n if (app.current.matches(IndexPage)) {\r\n params.include.push(['firstPost', 'posts', 'posts.user']);\r\n }\r\n });\r\n\r\n override(DiscussionList.prototype, 'view', function (original) {\r\n const settings = {};\r\n for (const key in app.forum.data.attributes) {\r\n if (key.startsWith('walsgitDiscussionCards')) {\r\n let newKey = key.replace('walsgitDiscussionCards', '');\r\n newKey = newKey.replace(/^./, newKey.charAt(0).toLowerCase());\r\n settings[newKey] = app.forum.data.attributes[key];\r\n }\r\n }\r\n const state = this.attrs.state;\r\n const params = state.getParams();\r\n let loading;\r\n if (state.isInitialLoading() || state.isLoadingNext()) {\r\n loading = ;\r\n } else if (state.hasNext()) {\r\n loading = Button.component(\r\n {\r\n className: 'Button',\r\n onclick: state.loadNext.bind(state),\r\n },\r\n app.translator.trans('core.forum.discussion_list.load_more_button')\r\n );\r\n }\r\n if (state.isEmpty()) {\r\n const text = app.translator.trans('core.forum.discussion_list.empty_text');\r\n return
{m(Placeholder, {text})}
;\r\n }\r\n const isTagPage = m.route.get().split('?')[0].startsWith('/t/');\r\n let tag = null;\r\n if (isTagPage) {\r\n tag = app.store.all('tags').find(t => t.slug() === params.tags).data.id;\r\n const tagSettings = JSON.parse(app.store.all('tags').find(t => t.slug() === params.tags).data.attributes.walsgitDiscussionCardsTagSettings);\r\n for (const key in tagSettings) {\r\n if (settings.hasOwnProperty(key) && tagSettings[key] !== settings[key]) {\r\n settings[key] = tagSettings[key];\r\n }\r\n }\r\n }\r\n if (app.current.matches(IndexPage) && ((settings.allowedTags.length && settings.allowedTags.includes(tag)) || (!params.tags && Number(settings.onIndexPage) === 1))) {\r\n return (\r\n
\r\n
\r\n {state.getPages().map((pg, o) => {\r\n return pg.items.map((discussion, i) => {\r\n return (i < Number(settings.primaryCards) && o === 0)\r\n ? m(CardItem, {discussion: discussion})\r\n : m(ListItem, {discussion: discussion})\r\n });\r\n })}\r\n
\r\n
{loading}
\r\n
\r\n );\r\n\r\n } else {\r\n return original();\r\n }\r\n })\r\n}, -1);\r\n\r\n\r\n// Expose compat API\r\nimport extCompat from './compat';\r\nimport {compat} from '@flarum/core/forum';\r\n\r\nObject.assign(compat, extCompat);\r\n"],"names":["__webpack_require__","module","getter","__esModule","d","a","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","flarum","core","compat","_setPrototypeOf","t","e","setPrototypeOf","bind","__proto__","_inheritsLoose","create","constructor","craftBadges","badges","length","m","map","badge","Tooltip","text","attrs","label","position","type","icon","isValideImageUrl","url","parsedUrl","startsWith","URL","_unused","extension","pathname","split","pop","toLowerCase","includes","getPostImage","post","image","isblogPost","assetImage","app","forum","attribute","src","exec","contentHtml","craftTags","tags","sortTags","tag","Link","className","style","backgroundColor","color","href","route","slug","name","LastReplies","_Component","apply","arguments","_proto","oninit","vnode","this","discussion","view","posts","splice","filter","isHidden","number","contentType","sort","b","createdAt","user","i","self","indexOf","reverse","avatar","Component","compareTags","currentTag","priorityTag","isChild","parent","id","cardItem","settings","data","attributes","newKey","replace","charAt","blogActivated","blogSettings","postIsBlogType","relationships","blogPost","defaultImage","blogPostsData","store","blogMeta","featuredImage","tagId","repostActivated","extensions","repostUrl","original_url","isTagPage","_m$route$get$split$","all","find","tagSettings","JSON","parse","walsgitDiscussionCardsTagSettings","tagImage","walsgitDiscussionCardsTagDefaultImage","Number","useBlogImages","tagCustomImg","allowedTags","isRead","markReadCards","session","showAuthor","firstPost","media","alt","title","loading","DiscussionControls","toArray","Dropdown","buttonClassName","showBadges","'['","showViews","isNaN","views","username","humanTime","allowRepostLinks","onclick","stopPropagation","truncate","previewText","useBlogSummary","summary","contentPlain","showLastPostInfo","TerminalPost","lastPost","lastPostNumber","showReplies","translator","trans","count","replyCount","listItem","screen","showRepliesOnRight","abbreviateNumber","checkOverflowingTags","cardListItemsOnPrimary","document","querySelectorAll","cardListItems","toggleOverflowClass","cardTags","cardListItem","scrollWidth","clientWidth","classList","add","remove","forEach","querySelector","CardItem","ListItem","extend","DiscussionList","DiscussionListState","params","matches","IndexPage","include","push","override","original","state","getParams","isInitialLoading","isLoadingNext","LoadingIndicator","hasNext","Button","loadNext","isEmpty","Placeholder","onIndexPage","isSearchResults","class","getPages","pg","items","primaryCards","assign","extCompat"],"sourceRoot":""} \ No newline at end of file diff --git a/js/src/admin/components/Settings.js b/js/src/admin/components/Settings.js index 4bf8611..d2518bd 100644 --- a/js/src/admin/components/Settings.js +++ b/js/src/admin/components/Settings.js @@ -128,14 +128,12 @@ export default class Settings extends ExtensionPage { setting: "walsgit_discussion_cards_showRepliesOnRight", label: app.translator.trans("walsgit_discussion_cards.admin.settings.general.showRepliesOnRight_label"), help: app.translator.trans("walsgit_discussion_cards.admin.settings.general.showRepliesOnRight_help"), - disabled: isExtensionActive(viewsExtension.id) ? false : true, })} {this.buildSettingComponent({ type: "switch", setting: "walsgit_discussion_cards_showLastPostInfo", label: app.translator.trans("walsgit_discussion_cards.admin.settings.general.showLastPostInfo_label"), help: app.translator.trans("walsgit_discussion_cards.admin.settings.general.showLastPostInfo_help"), - disabled: isExtensionActive(viewsExtension.id) ? false : true, })} {this.buildSettingComponent({ type: "switch", @@ -165,7 +163,7 @@ export default class Settings extends ExtensionPage {
{!isExtensionInstalled(viewsExtension.id) - ? + app.translator.trans("walsgit_discussion_cards.admin.settings.general.viewsExtension_notInstalled", {icon: warningIcon}) : + ? app.translator.trans("walsgit_discussion_cards.admin.settings.general.viewsExtension_notInstalled", {icon: warningIcon}) : !isExtensionActive(viewsExtension.id) ? app.translator.trans("walsgit_discussion_cards.admin.settings.general.viewsExtension_notActivated", {icon: warningIcon}) : ''} @@ -188,7 +186,7 @@ export default class Settings extends ExtensionPage {
{!isExtensionInstalled(blogExtension.id) - ? + app.translator.trans("walsgit_discussion_cards.admin.settings.general.blogExtension_notInstalled", {icon: warningIcon}) : + ? app.translator.trans("walsgit_discussion_cards.admin.settings.general.blogExtension_notInstalled", {icon: warningIcon}) : !isExtensionActive(blogExtension.id) ? app.translator.trans("walsgit_discussion_cards.admin.settings.general.blogExtension_notActivated", {icon: warningIcon}) : ''} @@ -218,7 +216,7 @@ export default class Settings extends ExtensionPage {
{!isExtensionInstalled(repostExtension.id) - ? + app.translator.trans("walsgit_discussion_cards.admin.settings.general.repostExtension_notInstalled", {icon: warningIcon}) : + ? app.translator.trans("walsgit_discussion_cards.admin.settings.general.repostExtension_notInstalled", {icon: warningIcon}) : !isExtensionActive(repostExtension.id) ? app.translator.trans("walsgit_discussion_cards.admin.settings.general.repostExtension_notActivated", {icon: warningIcon}) : ''}