chore: apply mix format to codebase
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -163,9 +163,17 @@ defmodule SimpleshopTheme.Mockups.Generator do
|
||||
hoodie: %{blueprint_id: nil, print_provider_id: nil, search_term: "Pullover Hoodie"},
|
||||
tote: %{blueprint_id: nil, print_provider_id: nil, search_term: "Cotton Tote Bag"},
|
||||
mug: %{blueprint_id: nil, print_provider_id: nil, search_term: "Mug 11oz"},
|
||||
cushion: %{blueprint_id: nil, print_provider_id: nil, search_term: "Spun Polyester Square Pillow"},
|
||||
cushion: %{
|
||||
blueprint_id: nil,
|
||||
print_provider_id: nil,
|
||||
search_term: "Spun Polyester Square Pillow"
|
||||
},
|
||||
blanket: %{blueprint_id: nil, print_provider_id: nil, search_term: "Sherpa Fleece Blanket"},
|
||||
notebook: %{blueprint_id: nil, print_provider_id: nil, search_term: "Hardcover Journal Matte"},
|
||||
notebook: %{
|
||||
blueprint_id: nil,
|
||||
print_provider_id: nil,
|
||||
search_term: "Hardcover Journal Matte"
|
||||
},
|
||||
phone_case: %{blueprint_id: nil, print_provider_id: nil, search_term: "Tough Phone Cases"},
|
||||
laptop_sleeve: %{blueprint_id: nil, print_provider_id: nil, search_term: "Laptop Sleeve"}
|
||||
}
|
||||
@@ -253,12 +261,12 @@ defmodule SimpleshopTheme.Mockups.Generator do
|
||||
"""
|
||||
def calculate_cover_scale(artwork_width, artwork_height, placeholder_width, placeholder_height)
|
||||
when is_number(artwork_width) and is_number(artwork_height) and
|
||||
is_number(placeholder_width) and is_number(placeholder_height) and
|
||||
artwork_width > 0 and artwork_height > 0 and
|
||||
placeholder_width > 0 and placeholder_height > 0 do
|
||||
is_number(placeholder_width) and is_number(placeholder_height) and
|
||||
artwork_width > 0 and artwork_height > 0 and
|
||||
placeholder_width > 0 and placeholder_height > 0 do
|
||||
# For cover: use the larger scale to ensure full coverage
|
||||
width_scale = 1.0
|
||||
height_scale = (placeholder_height * artwork_width) / (artwork_height * placeholder_width)
|
||||
height_scale = placeholder_height * artwork_width / (artwork_height * placeholder_width)
|
||||
max(width_scale, height_scale)
|
||||
end
|
||||
|
||||
@@ -267,21 +275,36 @@ defmodule SimpleshopTheme.Mockups.Generator do
|
||||
@doc """
|
||||
Create a product with the uploaded artwork.
|
||||
"""
|
||||
def create_product(shop_id, product_def, image_id, image_width, image_height, blueprint_id, print_provider_id, variants) do
|
||||
def create_product(
|
||||
shop_id,
|
||||
product_def,
|
||||
image_id,
|
||||
image_width,
|
||||
image_height,
|
||||
blueprint_id,
|
||||
print_provider_id,
|
||||
variants
|
||||
) do
|
||||
# Get the first variant for simplicity (typically a standard size/color)
|
||||
variant = hd(variants)
|
||||
variant_id = variant["id"]
|
||||
|
||||
# Get placeholder info
|
||||
placeholders = variant["placeholders"] || []
|
||||
front_placeholder = Enum.find(placeholders, fn p -> p["position"] == "front" end) || hd(placeholders)
|
||||
|
||||
front_placeholder =
|
||||
Enum.find(placeholders, fn p -> p["position"] == "front" end) || hd(placeholders)
|
||||
|
||||
# Extract placeholder dimensions and calculate cover scale
|
||||
placeholder_width = front_placeholder["width"]
|
||||
placeholder_height = front_placeholder["height"]
|
||||
scale = calculate_cover_scale(image_width, image_height, placeholder_width, placeholder_height)
|
||||
|
||||
IO.puts(" Scale calculation: artwork #{image_width}x#{image_height}, placeholder #{placeholder_width}x#{placeholder_height} -> scale #{Float.round(scale, 3)}")
|
||||
scale =
|
||||
calculate_cover_scale(image_width, image_height, placeholder_width, placeholder_height)
|
||||
|
||||
IO.puts(
|
||||
" Scale calculation: artwork #{image_width}x#{image_height}, placeholder #{placeholder_width}x#{placeholder_height} -> scale #{Float.round(scale, 3)}"
|
||||
)
|
||||
|
||||
product_data = %{
|
||||
title: product_def.name,
|
||||
@@ -439,7 +462,17 @@ defmodule SimpleshopTheme.Mockups.Generator do
|
||||
image_height = upload["height"],
|
||||
_ = IO.puts(" Artwork uploaded (ID: #{image_id}, #{image_width}x#{image_height})"),
|
||||
_ = IO.puts(" Creating product..."),
|
||||
{:ok, product} <- create_product(shop_id, product_def, image_id, image_width, image_height, blueprint_id, provider_id, variants),
|
||||
{:ok, product} <-
|
||||
create_product(
|
||||
shop_id,
|
||||
product_def,
|
||||
image_id,
|
||||
image_width,
|
||||
image_height,
|
||||
blueprint_id,
|
||||
provider_id,
|
||||
variants
|
||||
),
|
||||
product_id = product["id"],
|
||||
mockup_urls = extract_mockup_urls(product),
|
||||
_ = IO.puts(" Product created (ID: #{product_id})"),
|
||||
|
||||
Reference in New Issue
Block a user