demarches-normaliennes/app/components/instructeurs/column_picker_component.rb
2024-10-07 21:46:59 +02:00

18 lines
665 B
Ruby

# frozen_string_literal: true
class Instructeurs::ColumnPickerComponent < ApplicationComponent
attr_reader :procedure, :procedure_presentation
def initialize(procedure:, procedure_presentation:)
@procedure = procedure
@procedure_presentation = procedure_presentation
@displayable_columns_for_select, @displayable_columns_selected = displayable_columns_for_select
end
def displayable_columns_for_select
[
procedure.columns.filter(&:displayable).map { |column| [column.label, column.id] },
procedure_presentation.displayed_fields.map { Column.new(**_1.deep_symbolize_keys.merge(procedure_id: procedure.id)).id }
]
end
end