Examples:
<%= render Yattho::Beta::Blankslate.new do |component| %>
<% component.with_heading(tag: :h2).with_content("Title") %>
<% component.with_description { "Description"} %>
<% end %>
@description
Add an `icon` to give additional context. Refer to the [Octicons](https://yattho.com/octicons/) documentation to choose an icon.
@code
<%= render Yattho::Beta::Blankslate.new do |component| %>
<% component.with_visual_icon(icon: :globe) %>
<% component.with_heading(tag: :h2).with_content("Title") %>
<% component.with_description { "Description"} %>
<% end %>
@description
Add a [SpinnerComponent](https://yattho.com/view-components/components/spinner) to the blankslate in place of an icon.
@code
<%= render Yattho::Beta::Blankslate.new do |component| %>
<% component.with_visual_spinner(size: :large) %>
<% component.with_heading(tag: :h2).with_content("Title") %>
<% component.with_description { "Description"} %>
<% end %>
@description
Add an `image` to give context that an Octicon couldn't.
@code
<%= render Yattho::Beta::Blankslate.new do |component| %>
<% component.with_visual_image(src: Yattho::ExampleImage::BASE64_SRC, alt: "Security - secure vault") %>
<% component.with_heading(tag: :h2).with_content("Title") %>
<% component.with_description { "Description"} %>
<% end %>
@description
Pass custom content to `description`.
@code
<%= render Yattho::Beta::Blankslate.new do |component| %>
<% component.with_heading(tag: :h2).with_content("Title") %>
<% component.with_description do %>
<em>Your custom content here</em>
<% end %>
<% end %>
@description
Provide a `primary_action` to guide users to take action from the blankslate. The `primary_action` appears below the description and custom content.
@code
<%= render Yattho::Beta::Blankslate.new do |component| %>
<% component.with_visual_icon(icon: :book) %>
<% component.with_heading(tag: :h2).with_content("Welcome to the mona wiki!") %>
<% component.with_description { "Wikis provide a place in your repository to lay out the roadmap of your project, show the current status, and document software better, together."} %>
<% component.with_primary_action(href: "https://github.com/monalisa/mona/wiki/_new").with_content("Create the first page") %>
<% end %>
@description
Add an additional `secondary_action` to help users learn more about a feature. See <%= link_to_accessibility %>. `secondary_action` will be shown at the very bottom:
@code
<%= render Yattho::Beta::Blankslate.new do |component| %>
<% component.with_visual_icon(icon: :book) %>
<% component.with_heading(tag: :h2).with_content("Welcome to the mona wiki!") %>
<% component.with_description { "Wikis provide a place in your repository to lay out the roadmap of your project, show the current status, and document software better, together."} %>
<% component.with_secondary_action(href: "https://docs.github.com/en/github/building-a-strong-community/about-wikis").with_content("Learn more about wikis") %>
<% end %>
Primary and secondary actions
@description
`primary_action` and `secondary_action` can also be used together. The `primary_action` will always be rendered before the `secondary_action`:
@code
<%= render Yattho::Beta::Blankslate.new do |component| %>
<% component.with_visual_icon(icon: :book) %>
<% component.with_heading(tag: :h2).with_content("Welcome to the mona wiki!") %>
<% component.with_description { "Wikis provide a place in your repository to lay out the roadmap of your project, show the current status, and document software better, together."} %>
<% component.with_primary_action(href: "https://github.com/monalisa/mona/wiki/_new").with_content("Create the first page") %>
<% component.with_secondary_action(href: "https://docs.github.com/en/github/building-a-strong-community/about-wikis").with_content("Learn more about wikis") %>
<% end %>
@description
There are a few variations of how the Blankslate appears: `narrow` adds a maximum width of `485px`, and `spacious` increases the padding from `32px` to `80px 40px`.
@code
<%= render Yattho::Beta::Blankslate.new(
narrow: true,
spacious: true,
) do |component| %>
<% component.with_visual_icon(icon: :book) %>
<% component.with_heading(tag: :h2).with_content("Welcome to the mona wiki!") %>
<% component.with_description { "Wikis provide a place in your repository to lay out the roadmap of your project, show the current status, and document software better, together."} %>
<% end %>
@description
It's possible to add a border around the Blankslate. This will wrap the Blankslate in a BorderBox.
@code
<%= render Yattho::Beta::Blankslate.new(border: true) do |component| %>
<% component.with_visual_icon(icon: :book) %>
<% component.with_heading(tag: :h2).with_content("Welcome to the mona wiki!") %>
<% component.with_description { "Wikis provide a place in your repository to lay out the roadmap of your project, show the current status, and document software better, together."} %>
<% end %>