Class: Primer::Beta::Popover
- Defined in:
- app/components/primer/beta/popover.rb
Overview
Use ‘Popover` to bring attention to specific user interface elements, typically to suggest an action or to guide users through a new experience.
By default, the popover renders with absolute positioning, meaning it should usually be wrapped in an element with a relative position in order to be positioned properly. To render the popover with relative positioning, use the relative property.
Constant Summary collapse
- CARET_DEFAULT =
:top
- CARET_MAPPINGS =
{ CARET_DEFAULT => "", :bottom => "Popover-message--bottom", :bottom_right => "Popover-message--bottom-right", :bottom_left => "Popover-message--bottom-left", :left => "Popover-message--left", :left_bottom => "Popover-message--left-bottom", :left_top => "Popover-message--left-top", :right => "Popover-message--right", :right_bottom => "Popover-message--right-bottom", :right_top => "Popover-message--right-top", :top_left => "Popover-message--top-left", :top_right => "Popover-message--top-right" }.freeze
- DEFAULT_HEADING_TAG =
:h4
Constants inherited from Component
Component::INVALID_ARIA_LABEL_TAGS
Constants included from Status::Dsl
Constants included from ViewHelper
Constants included from TestSelectorHelper
TestSelectorHelper::TEST_SELECTOR_TAG
Constants included from FetchOrFallbackHelper
FetchOrFallbackHelper::InvalidValueError
Constants included from AttributesHelper
AttributesHelper::PLURAL_ARIA_ATTRIBUTES, AttributesHelper::PLURAL_DATA_ATTRIBUTES
Instance Method Summary collapse
- #body_component ⇒ Object
-
#initialize(**system_arguments) ⇒ Popover
constructor
A new instance of Popover.
- #render? ⇒ Boolean
Methods inherited from Component
Methods included from JoinStyleArgumentsHelper
Methods included from TestSelectorHelper
Methods included from FetchOrFallbackHelper
#fetch_or_fallback, #fetch_or_fallback_boolean, #silence_deprecations?
Methods included from ClassNameHelper
Methods included from AttributesHelper
#aria, #data, #extract_data, #merge_aria, #merge_data, #merge_prefixed_attribute_hashes
Methods included from ExperimentalSlotHelpers
Methods included from ExperimentalRenderHelpers
Constructor Details
#initialize(**system_arguments) ⇒ Popover
Returns a new instance of Popover.
62 63 64 65 66 67 68 69 70 71 72 |
# File 'app/components/primer/beta/popover.rb', line 62 def initialize(**system_arguments) @system_arguments = deny_tag_argument(**system_arguments) @system_arguments[:tag] = :div @system_arguments[:classes] = class_names( system_arguments[:classes], "Popover" ) @system_arguments[:position] ||= :relative @system_arguments[:right] = false unless @system_arguments.delete(:right) @system_arguments[:left] = false unless @system_arguments.delete(:left) end |