Icon rebuilt as a full-bleed 1200x1200 square (Shopify rounds corners itself). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
37 lines
1.2 KiB
Plaintext
37 lines
1.2 KiB
Plaintext
{%- comment -%}
|
|
App embed (§12): loads the CSS/JS once on every page, exposes the running offers to bundle-offers.js
|
|
(window.BundleOffers), applies the design tokens, refreshes cart hints after cart changes and drives
|
|
"Add bundle to cart" on the bundle pages served by the app proxy.
|
|
{%- endcomment -%}
|
|
{%- assign data = app.metafields.bundle_offers.storefront.value -%}
|
|
{%- if data -%}
|
|
<script type="application/json" id="bundle-offers-data">
|
|
{
|
|
"after": {{ data.after | json }},
|
|
"currency": {{ shop.currency | json }},
|
|
"moneyFormat": {{ shop.money_format | json }},
|
|
"strings": {
|
|
"adding": {{ 'bundle_offers.embed.adding' | t | json }},
|
|
"added": {{ 'bundle_offers.embed.added' | t | json }},
|
|
"error": {{ 'bundle_offers.embed.error' | t | json }}
|
|
}
|
|
}
|
|
</script>
|
|
<style>
|
|
:root {
|
|
{%- if data.accent != blank %}--bo-accent: {{ data.accent }};{% endif %}
|
|
--bo-radius: {{ data.radius | default: 8 }}px;
|
|
}
|
|
</style>
|
|
{%- endif -%}
|
|
|
|
{% schema %}
|
|
{
|
|
"name": "Offerlyst",
|
|
"target": "body",
|
|
"javascript": "bundle-offers.js",
|
|
"stylesheet": "bundle-offers.css",
|
|
"settings": []
|
|
}
|
|
{% endschema %}
|