class Lookbook::EmbedCodeDropdown::Component

def alpine_component

def alpine_component
  "embedCodeDropdownComponent"
end

def app_path

def app_path
  helpers.lookbook_home_url
end

def embed_code

def embed_code
  embed_tag = content_tag("lookbook-embed",
    app: app_path,
    preview: preview_name,
    scenario: target.name,
    **external_embed_params) { "" }
  escape_once embed_tag
end

def external_embed_params

def external_embed_params
  permitted = params.select { |key, val| key.to_s != "_display" }
  permitted.transform_keys! { |key| "param-#{key}" }
end

def initialize(preview:, target:, pages:, params:, policy:, **html_attrs)

def initialize(preview:, target:, pages:, params:, policy:, **html_attrs)
  @preview = preview
  @target = target
  @pages = pages
  @policy = policy
  @params = params.deep_symbolize_keys
  super(**html_attrs)
end

def preview_name

def preview_name
  preview.preview_class_name
end