mirror of
https://github.com/discourse/discourse.git
synced 2025-02-26 06:03:10 +08:00

This removes the custom_modal implementation for the reviewable items and uses the new modal patterns defined at https://meta.discourse.org/t/converting-modals-from-legacy-controllers-to-new-dmodal-component-api/268057 Only one plugin (discourse category experts) was using this API, that has been fixed up here https://github.com/discourse/discourse-category-experts/pull/117 Also adds `registerReviewableActionModal` to allow for plugins and core to map a reviewable action ID to an actual JS class for the modal and improves docs for plugin API functions used by reviewable-item.
41 lines
769 B
Ruby
41 lines
769 B
Ruby
# frozen_string_literal: true
|
|
|
|
class ReviewableActionSerializer < ApplicationSerializer
|
|
attributes :id,
|
|
:icon,
|
|
:button_class,
|
|
:label,
|
|
:confirm_message,
|
|
:description,
|
|
:client_action,
|
|
:require_reject_reason
|
|
|
|
def label
|
|
I18n.t(object.label)
|
|
end
|
|
|
|
def confirm_message
|
|
I18n.t(object.confirm_message)
|
|
end
|
|
|
|
def description
|
|
I18n.t(object.description, default: nil)
|
|
end
|
|
|
|
def include_description?
|
|
description.present?
|
|
end
|
|
|
|
def include_confirm_message?
|
|
object.confirm_message.present?
|
|
end
|
|
|
|
def include_client_action?
|
|
object.client_action.present?
|
|
end
|
|
|
|
def include_require_reject_reason?
|
|
object.require_reject_reason.present?
|
|
end
|
|
end
|