Module: Lookbook::PageHelper

Includes:
Utils
Defined in:
app/helpers/lookbook/page_helper.rb

Constant Summary

Constants included from Utils

Utils::FRONTMATTER_REGEX, Utils::POSITION_PREFIX_REGEX

Instance Method Summary collapse

Instance Method Details

#embed(*args, params: {}, type: :preview, **opts) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'app/helpers/lookbook/page_helper.rb', line 10

def embed(*args, params: {}, type: :preview, **opts)
  return unless args.any?

  @embed_counter ||= 0

  preview_lookup = args.first.is_a?(Symbol) ? args.first : preview_class_name(args.first)
  preview = Lookbook.previews.find(preview_lookup)

  example = args[1] ? preview&.example(args[1]) : preview&.default_example

  if example
    @embed_counter += 1
    render_component "embed",
      id: generate_id("embed", url_for, example.lookup_path, @embed_counter - 1),
      example: example,
      params: params,
      opts: opts
  else
    embed_not_found
  end
end

#page_path(id) ⇒ Object



5
6
7
8
# File 'app/helpers/lookbook/page_helper.rb', line 5

def page_path(id)
  page = id.is_a?(Page) ? id : Lookbook.pages.find(id)
  lookbook.page_path page.lookup_path
end