Class: Playbook::KitBase
- Inherits:
-
ViewComponent::Base
- Object
- ViewComponent::Base
- Playbook::KitBase
- Includes:
- AlignContent, AlignItems, AlignSelf, BorderRadius, Bottom, Classnames, Cursor, Display, Flex, FlexDirection, FlexGrow, FlexShrink, FlexWrap, Hover, JustifyContent, JustifySelf, Left, LineHeight, NumberSpacing, Order, Overflow, PbKitHelper, Position, Props, Right, Shadow, Spacing, TextAlign, Top, Truncate, VerticalAlign, ZIndex
- Defined in:
- lib/playbook/kit_base.rb
Direct Known Subclasses
PbAdvancedTable::AdvancedTable, PbAdvancedTable::TableBody, PbAdvancedTable::TableHeader, PbAdvancedTable::TableRow, PbAdvancedTable::TableSubrowHeader, PbAvatar::Avatar, PbAvatarActionButton::AvatarActionButton, PbBackground::Background, PbBadge::Badge, PbBarGraph::BarGraph, PbBody::Body, PbBreadCrumbs::BreadCrumbItem, PbBreadCrumbs::BreadCrumbs, PbButton::Button, PbButtonToolbar::ButtonToolbar, PbCaption::Caption, PbCard::Card, PbCard::CardBody, PbCard::CardHeader, PbCheckbox::Checkbox, PbCircleChart::CircleChart, PbCircleIconButton::CircleIconButton, PbCollapsible::Collapsible, PbCollapsible::CollapsibleContent, PbCollapsible::CollapsibleIcon, PbCollapsible::CollapsibleMain, PbContact::Contact, PbCurrency::Currency, PbDashboardValue::DashboardValue, PbDate::Date, PbDatePicker::DatePicker, PbDateRangeInline::DateRangeInline, PbDateRangeStacked::DateRangeStacked, PbDateStacked::DateStacked, PbDateTime::DateTime, PbDateTimeStacked::DateTimeStacked, PbDateYearStacked::DateYearStacked, PbDetail::Detail, PbDialog::Dialog, PbDialog::DialogBody, PbDialog::DialogFooter, PbDialog::DialogHeader, PbDistributionBar::DistributionBar, PbDocs::KitExample, PbDraggable::Draggable, PbDraggable::DraggableContainer, PbDraggable::DraggableItem, PbDrawer::Drawer, PbDropdown::Dropdown, PbDropdown::DropdownContainer, PbDropdown::DropdownOption, PbDropdown::DropdownTrigger, PbFileUpload::FileUpload, PbFilter::Filter, PbFixedConfirmationToast::FixedConfirmationToast, PbFlex::Flex, PbFlex::FlexItem, PbForm::Form, PbFormGroup::FormGroup, PbFormPill::FormPill, PbGauge::Gauge, PbHashtag::Hashtag, PbHighlight::Highlight, PbHomeAddressStreet::CityEmphasis, PbHomeAddressStreet::HomeAddressStreet, PbHomeAddressStreet::StreetEmphasis, PbIcon::Icon, PbIconCircle::IconCircle, PbIconStatValue::IconStatValue, PbIconValue::IconValue, PbImage::Image, PbLabelPill::LabelPill, PbLabelValue::LabelValue, PbLayout::Body, PbLayout::Footer, PbLayout::Header, PbLayout::Item, PbLayout::Layout, PbLayout::Sidebar, PbLegend::Legend, PbLineGraph::LineGraph, PbLink::Link, PbList::Item, PbList::List, PbLoadingInline::LoadingInline, PbMessage::Message, PbMessage::MessageMention, PbMultiLevelSelect::MultiLevelSelect, PbMultipleUsers::MultipleUsers, PbMultipleUsersStacked::MultipleUsersStacked, PbNav::Item, PbNav::Nav, PbOnlineStatus::OnlineStatus, PbOverlay::Overlay, PbPagination::Pagination, PbPassphrase::Passphrase, PbPerson::Person, PbPersonContact::PersonContact, PbPhoneNumberInput::PhoneNumberInput, PbPill::Pill, PbPopover::Popover, PbProgressPills::ProgressPills, PbProgressSimple::ProgressSimple, PbProgressStep::ProgressStep, PbProgressStep::ProgressStepItem, PbRadio::Radio, PbRichTextEditor::RichTextEditor, PbSectionSeparator::SectionSeparator, PbSelect::Select, PbSelectableCard::SelectableCard, PbSelectableCardIcon::SelectableCardIcon, PbSelectableIcon::SelectableIcon, PbSelectableList::SelectableList, PbSelectableList::SelectableListItem, PbSkeletonLoading::SkeletonLoading, PbSource::Source, PbStarRating::StarRating, PbStatChange::StatChange, PbStatValue::StatValue, PbTable::Table, PbTable::TableBody, PbTable::TableCell, PbTable::TableHead, PbTable::TableHeader, PbTable::TableRow, PbTextInput::AddOn, PbTextInput::TextInput, PbTextarea::Textarea, PbTime::Time, PbTimeRangeInline::TimeRangeInline, PbTimeStacked::TimeStacked, PbTimeline::Detail, PbTimeline::Item, PbTimeline::Label, PbTimeline::Step, PbTimeline::Timeline, PbTimestamp::Timestamp, PbTitle::Title, PbTitleCount::TitleCount, PbTitleDetail::TitleDetail, PbToggle::Toggle, PbTooltip::Tooltip, PbTreemapChart::TreemapChart, PbTypeahead::Typeahead, PbUser::User, PbUserBadge::UserBadge, PbWeekdayStacked::WeekdayStacked
Constant Summary
Constants included from PositionPropsCss
PositionPropsCss::POSITION_VALUES
Instance Attribute Summary
Attributes included from Props
Instance Method Summary collapse
-
#combined_html_options ⇒ Object
rubocop:enable Style/OptionalBooleanParameter.
- #global_inline_props ⇒ Object
- #object ⇒ Object
-
#pb_content_tag(name = :div, content_or_options_with_block = {}, options = {}, escape = true, &block) ⇒ Object
rubocop:disable Style/OptionalBooleanParameter.
Methods included from VerticalAlign
included, #vertical_align_options, #vertical_align_props, #vertical_align_values
Methods included from Bottom
#bottom_options, #bottom_values, included
Methods included from PositionPropsCss
Methods included from Right
included, #right_options, #right_values
Methods included from Top
included, #top_options, #top_values
Methods included from Left
included, #left_options, #left_values
Methods included from Truncate
included, #truncate_options, #truncate_props, #truncate_values
Methods included from Overflow
included, #overflow_options, #overflow_props, #overflow_values
Methods included from TextAlign
included, #text_align_options, #text_align_props, #text_align_values
Methods included from BorderRadius
#border_radius_options, #border_radius_props, #border_radius_values, included
Methods included from Hover
#hover_attributes, #hover_background_values, #hover_color_values, #hover_options, #hover_props, #hover_scale_values, #hover_shadow_values, #hover_values, included
Methods included from Position
included, #position_options, #position_values
Methods included from Order
included, #order_options, #order_props, #order_values
Methods included from FlexShrink
#flex_shrink_options, #flex_shrink_props, #flex_shrink_values, included
Methods included from FlexGrow
#flex_grow_options, #flex_grow_props, #flex_grow_values, included
Methods included from Flex
#flex_options, #flex_props, #flex_values, included
Methods included from AlignSelf
#align_self_options, #align_self_props, #align_self_values, included
Methods included from AlignContent
#align_content_options, #align_content_props, #align_content_values, included
Methods included from AlignItems
#align_items_options, #align_items_props, #align_items_values, included
Methods included from JustifySelf
included, #justify_self_options, #justify_self_props, #justify_self_values
Methods included from JustifyContent
included, #justify_content_options, #justify_content_props, #justify_content_values
Methods included from FlexWrap
#flex_wrap_options, #flex_wrap_props, #flex_wrap_values, included
Methods included from FlexDirection
#flex_direction_options, #flex_direction_props, #flex_direction_values, included
Methods included from Cursor
#cursor_options, #cursor_props, #cursor_values, included
Methods included from Display
#display_options, #display_props, #display_size_values, #display_values, included
Methods included from LineHeight
included, #line_height_options, #line_height_props, #line_height_values
Methods included from Shadow
included, #shadow_options, #shadow_props, #shadow_values
Methods included from NumberSpacing
included, #number_spacing_options, #number_spacing_values
Methods included from ZIndex
included, #screen_size_values, #z_index_options, #z_index_props, #z_index_values
Methods included from Spacing
#break_method_values, #filter_classname, included, #max_width_options, #max_width_props, #max_width_values, #min_width_options, #min_width_props, #min_width_values, #screen_size_values, #spacing_options, #spacing_props, #spacing_values
Methods included from Classnames
#generate_classname, #generate_classname_without_spacing, included
Methods included from Props
Methods included from PbKitHelper
Methods included from PbFormsHelper
Instance Method Details
#combined_html_options ⇒ Object
rubocop:enable Style/OptionalBooleanParameter
113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 |
# File 'lib/playbook/kit_base.rb', line 113 def merged = .dup .each do |key, value| if key == :style && value.is_a?(Hash) # Convert style hash to CSS string merged[:style] = value.map { |k, v| "#{k.to_s.gsub('_', '-')}: #{v}" }.join("; ") else merged[key] = value end end inline_styles = dynamic_inline_props merged[:style] = if inline_styles.present? merged[:style].present? ? "#{merged[:style]}; #{inline_styles}" : inline_styles end merged.deep_merge(data_attributes) end |
#global_inline_props ⇒ Object
133 134 135 136 137 138 139 |
# File 'lib/playbook/kit_base.rb', line 133 def global_inline_props { height: height, min_height: min_height, max_height: max_height, }.compact end |
#object ⇒ Object
81 82 83 |
# File 'lib/playbook/kit_base.rb', line 81 def object self end |
#pb_content_tag(name = :div, content_or_options_with_block = {}, options = {}, escape = true, &block) ⇒ Object
rubocop:disable Style/OptionalBooleanParameter
105 106 107 108 109 110 |
# File 'lib/playbook/kit_base.rb', line 105 def pb_content_tag(name = :div, = {}, = {}, escape = true, &block) = .merge() .merge(.merge()) content_tag(name, , , escape, &block) end |