# frozen_string_literal: true # Renders a GlToggle root element # To actually initialize the component, make sure to call the initToggle helper from ~/toggles. class Pajamas::ToggleComponent < Pajamas::Component LABEL_POSITION_OPTIONS = [:top, :left, :hidden].freeze # @param [String] classes # @param [String] label # @param [Symbol] label_position :top, :left or :hidden # @param [String] id # @param [String] name # @param [String] help # @param [Hash] data # @param [Boolean] is_disabled # @param [Boolean] is_checked # @param [Boolean] is_loading def initialize( classes:, label: nil, label_position: nil, id: nil, name: nil, help: nil, data: {}, is_disabled: false, is_checked: false, is_loading: false) @id = id @name = name @classes = classes @label = label @label_position = filter_attribute(label_position, LABEL_POSITION_OPTIONS) @help = help @data = data @is_disabled = is_disabled @is_checked = is_checked @is_loading = is_loading end end