Como configurar objetos de array em um plugin? Tentei usar json_schema, mas as propriedades do objeto não aceitam seletores como category, permitindo apenas entrada de texto. Já type: objects simplesmente não funciona nas configurações do plugin.
Configuração do json_schema
quectel_online_customer_category_customers:
default: "[]"
client: true
json_schema: QuectelOnlineCustomer::SiteSettings::CategoryCustomersJsonSchema
plugins/quectel-online-customer/lib/quectel_online_customer/site_settings/category_customers_json_schema.rb
# frozen_string_literal: true
module QuectelOnlineCustomer
module SiteSettings
class CategoryCustomersJsonSchema
def self.schema
@schema ||= begin
{
type: "array",
uniqueItems: true,
default: [],
items: {
type: "object",
title: "Configuração de Atendimento por Categoria",
additionalProperties: false, # Impede o envio de campos não definidos
required: %w[category customers], # Ambos os campos são obrigatórios
properties: {
category: {
type: "category",
description: "Categoria do fórum vinculada",
label: "Categoria"
},
customers: {
type: "usernames", # Seleção múltipla de usuários, substituindo o username único
description: "Contas de atendimento atribuídas a esta categoria, com suporte a seleção múltipla",
label: "Usuários de Atendimento"
}
}
}
}
end
end
end
end
end