Skip to content

Feat/services animated tabs#79

Open
msoler18 wants to merge 5 commits intoShopify:mainfrom
msoler18:feat/services-animated-tabs
Open

Feat/services animated tabs#79
msoler18 wants to merge 5 commits intoShopify:mainfrom
msoler18:feat/services-animated-tabs

Conversation

@msoler18
Copy link
Copy Markdown

No description provided.

msoler18 and others added 5 commits April 24, 2026 15:12
…o carousel section

- Migrate Horizon color schemes to Ornevo palette (7 schemes: Light, Cream, Brand, Deep, Medium, TransparentDark, TransparentLight)
- Switch typography to Sora (headings) + DM Sans (body) via Horizon font picker
- Add ornevo-buttons.css with primary / secondary / tertiary pill button system
- Add orn-hero section: Alpine.js carousel with YouTube background video, image fallback, gradient overlay, dots nav, play/pause, 2 CTAs per slide, anchor ID with header offset
- Add page.landing.json template pre-wired with orn-hero section
- Self-host Alpine.js v3.14.1; register window.ornHero before Alpine boots
- Document design system decisions in docs/adr/0001-ornevo-design-system.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
feat(design-system+hero): Ornevo brand tokens, button system, and hero carousel
Committed from shop: ornevo-fr
…tent)

Phase 1 of ADR-0002: navigation-focused implementation. Tabs render with
sliding pill indicator and radial flash burst; panels cross-fade between
states. Block schema kept minimal; panel content is hardcoded dummy until
Phase 2 wires up real settings.

- sections/orn-services.liquid: tablist + panels rendered from a single
  section.blocks scope (twin forloops) so forloop.index0 stays consistent
  for both buttons and panels — avoids the content_for/forloop scope
  mismatch that was breaking Alpine bindings.
- blocks/_orn-services-tab.liquid: schema-only block (no markup).
- assets/orn-services.js: Alpine component with direct DOM manipulation
  for the indicator and flash, init-time snap (skip transition on first
  paint and resize), reflow-based animation restart, keyboard nav
  (←/→/Home/End), touch swipe, prefers-reduced-motion respect.
- assets/orn-services.css: shared content max-width for nav+panels,
  capped circle image, big tab numbers (matches wireframe), opacity-only
  panel cross-fade.
- snippets/scripts.liquid + stylesheets.liquid: register orn-services
  assets following the orn-hero pattern.
- templates/page.landing.json: 4 preset blocks on the landing page.
- docs/adr/0002 + landing/: ADR and design references.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…render

The `_orn-services-tab` was a Theme Block (in /blocks/), so its settings were
scoped to the block's own Liquid file and unreachable from the parent
section's `for block in section.blocks` loop. `block.settings.X` always
resolved to `{}` at render time, regardless of customizer values. Symptom:
panel titles/descriptions/items never updated when edited in the editor.

- Move the block schema inline into sections/orn-services.liquid as a static
  section block (type: "tab"); delete blocks/_orn-services-tab.liquid.
- Drop all dummy fallback arrays (dummy_tab_labels, dummy_titles, dummy_descs)
  and the dummy_items_* logic; render only what the settings provide.
- Refactor the 8 duplicated item if-blocks into a single (1..8) loop reading
  block.settings dynamically.
- Render SVG icons as a plain <img> with explicit 24x24 attrs and CSS
  max-width/height to avoid SVG natural-size overflow.
- CSS: replace the hard `filter: brightness(0) invert(1)` (which forced any
  icon to a white silhouette) with a soft `currentColor`-based bullet
  background and a dedicated --orn-services-item-icon-color variable.
- Update templates/page.landing.json block types from `_orn-services-tab` to
  `tab` to match the new static block schema.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant