berrypod/lib/simpleshop_theme_web/components
jamey 5c2f70ce44 add shipping costs with live exchange rates and country detection
Shipping rates fetched from Printify during product sync, converted to
GBP at sync time using frankfurter.app ECB exchange rates with 5%
buffer. Cached in shipping_rates table per blueprint/provider/country.

Cart page shows shipping estimate with country selector (detected from
Accept-Language header, persisted in cookie). Stripe Checkout includes
shipping_options for UK domestic and international delivery. Order
shipping_cost extracted from Stripe on payment.

ScheduledSyncWorker runs every 6 hours via Oban cron to keep rates
and exchange rates fresh. REST_OF_THE_WORLD fallback covers unlisted
countries. 780 tests, 0 failures.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 10:48:00 +00:00
..
layouts fix search modal closing on keypress and add admin header icon 2026-02-13 16:02:25 +00:00
page_templates add shipping costs with live exchange rates and country detection 2026-02-14 10:48:00 +00:00
shop_components add shipping costs with live exchange rates and country detection 2026-02-14 10:48:00 +00:00
core_components.ex feat: add admin provider setup UI with improved product sync 2026-01-31 22:08:34 +00:00
layouts.ex add admin dashboard with setup checklist and stats 2026-02-12 14:17:38 +00:00
page_templates.ex refactor: split shop_components.ex into 5 focused sub-modules 2026-02-08 14:30:25 +00:00
shop_components.ex refactor: split shop_components.ex into 5 focused sub-modules 2026-02-08 14:30:25 +00:00