# frozen_string_literal: true module Ariadne # The container wraps the majority, if not all, of the content on a page. class ContainerComponent < Ariadne::Component DEFAULT_CLASSES = "px-4 py-5 sm:px-6 lg:px-8" # @example Default # <%= render(Ariadne::ContainerComponent.new) do |container| %> # <%= render(Ariadne::ButtonComponent.new) { "Click me!" } %> # <% end %> # # @param classes [String] <%= link_to_classes_docs %> # @param attributes [Hash] <%= link_to_attributes_docs %> def initialize(classes: "", attributes: {}) @tag = :div @classes = class_names( DEFAULT_CLASSES, classes ) @attributes = attributes end end end