From 385f210f8ace1fd0225e9e032d36ac60d8f67671 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sat, 5 Sep 2026 22:25:39 +0000 Subject: [PATCH 01/26] docs: spec Pixi v8 pour stage for cocktail mixer Replace the GSAP-on-SVG pour picture with a painted 2D Pixi stage. GSAP stays the clock. Recipes, unlock, and XP stay. No 3D. Co-authored-by: Travis Jones --- ...2026-09-05-cocktail-mixer-motion-design.md | 4 + ...6-09-05-cocktail-mixer-pixi-pour-design.md | 401 ++++++++++++++++++ 2 files changed, 405 insertions(+) create mode 100644 docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md diff --git a/docs/superpowers/specs/2026-09-05-cocktail-mixer-motion-design.md b/docs/superpowers/specs/2026-09-05-cocktail-mixer-motion-design.md index fb11a01..7a6ddb3 100644 --- a/docs/superpowers/specs/2026-09-05-cocktail-mixer-motion-design.md +++ b/docs/superpowers/specs/2026-09-05-cocktail-mixer-motion-design.md @@ -1,5 +1,9 @@ # Cocktail Mixer Motion Design +**Superseded by** +`docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md`. +This document shipped GSAP on the existing SVG. Do not implement from it. + Raise The Cosmonaut’s Bar from a working SVG illustration to award-site 2D motion: one GSAP clock, Flip between grid and recipe, light physics on pour. Keep the current art, recipes, and unlock. Do not go 3D. diff --git a/docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md b/docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md new file mode 100644 index 0000000..d27920e --- /dev/null +++ b/docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md @@ -0,0 +1,401 @@ +# Cocktail Mixer Pixi Pour Design + +Supersedes `docs/superpowers/specs/2026-09-05-cocktail-mixer-motion-design.md`. +That spec shipped GSAP on the existing 1.5px SVG. The pour looked lousy: +ice drifted out of the glass, liquid was stacked rects, the stream never +hit the meniscus. The ceiling was the art, not the clock. + +This spec replaces the **picture**. Keep the recipes, unlock, XP, and GSAP +as the conductor. Do not go 3D. + +## Decisions (locked) + +- Bar: tenth-pass 2D cabinet illustration. Stripe / Linear discipline on a + bar card. The paused end frame must look like a finished cocktail painting, + not an animation that only works in motion. +- Engine: PixiJS v8 owns every pixel of the pour stage. GSAP + `@gsap/react` + owns the clock. Motion stays on the rest of the site. +- Art: full redraw. Painted glassware, ice, garnish, bottle, bar surface. + Liquid color still comes from `data.ts`. Do not polish the current SVG + glasses, bottles, or garnishes as the pour picture. +- Scope: the pour stage on `/work/cocktail-mixer`. The selection grid + stays Motion `AnimatePresence` plus SVG card icons. Not a site-wide + Pixi or GSAP rewrite. +- Pour feel: choreographed 2D craft with light physics. Stream lands on the + rising surface. Ice stays inside the bowl. Splash at contact. Method + (shake / stir / build) is visible in the liquid, not a glass rotation + gimmick. Not a Navier–Stokes sim. Not a Three.js spirits microsite. +- Architecture: a pour **script** (pure timing) drives a Pixi **rig**. + GSAP tweens rig properties. React mounts one Application and destroys it. + +## Why this, not the last spike + +GSAP DrawSVG / MorphSVG / Physics2D on line-art cannot look expensive. +Pixi v8 can: `MeshPlane` meniscus, `MeshRope` stream, `DisplacementFilter` +wet wobble, `ParticleContainer` splash/foam, clip the ice to the bowl. + +`three` is already in the repo for other work. It is the wrong lead here. +The product bar is craft, not a transmission-material gin ad. Rive needs a +`.riv` from an editor we do not have. + +This is an explicit exception to `docs/anti-goals.md` (“no new deps for +one-off effects”), scoped to this demo, adding **only** `pixi.js` (v8). +GSAP is already a mixer dependency. + +## Out of scope + +- Three.js, React Three Fiber, MeshTransmissionMaterial, Rive, Lottie +- Site-wide Pixi or removing Motion elsewhere +- Recipe / unlock / XP / localStorage / Cosmonaut gate changes +- Audio +- Global nav, typography, theme +- Auth, middleware, database +- Rewriting the selection-grid card icons into Pixi +- A second pour engine for Cosmonaut + +## Wow bar (falsifiable) + +A demanding visitor who saw the SVG spike and said it was lousy should, +on the first pour, believe this is a commercial interactive. Pause at the +end. If the still looks like wireframe SVG, the work failed. + +Must be true: + +1. Ice never leaves the glass interior. Local coordinates, clipped to the + bowl. No GSAP `y` on a world-space SVG group. +2. The stream contacts the **rising meniscus**, not a fixed glass-top + coordinate. Each ingredient’s stream shortens as the fill rises. +3. Liquid is one volume with a curved surface, not stacked HTML/SVG rects. + Ingredient colors still layer (bottom to top) but the silhouette is a + glass of liquid, not a bar chart. +4. Splash particles emit at the stream–surface hit, then die. They do not + spawn in empty air beside the glass. +5. Garnish lands last, after ice. Salt rims are already on the glass, not + thrown in at the end. +6. `shaken` settles (quick residual swirl, then still). `stirred` shows a + brief vortex. `built` stays still. The glass itself does not cartoon-tilt. +7. Cosmonaut gets one extra beat (frost bloom + a few star motes), then + the same still-frame discipline. Not a shader demo. +8. Recipe text stays readable during the pour. Motion rewards the pour; it + does not hide the recipe (`docs/taste-bar.md`). +9. At `320px` width the glass, garnish, and recipe still read. +10. `prefers-reduced-motion: reduce` shows the painted finished drink on + the first frame. No tween, no particles, no displacement. + +## Visual craft (the picture) + +One key light, camera-left. Warm bar top. Cool rim on the glass. No +second competing light. No rainbow bloom. No UI chrome inside the canvas. + +Layer order, back to front: + +1. Bar surface (contact shadow + a short caustic strip under the bowl) +2. Glass body (painted PNG, four silhouettes) +3. Liquid volume, clipped to the interior +4. Meniscus (`MeshPlane`) +5. Ice (rocks and highball only), clipped, slow bob +6. Condensation (static or near-static dots on the bowl) +7. Stream (`MeshRope`) — pour only +8. Splash / foam particles — pour only +9. Inner rim highlight +10. Garnish +11. Bottle — pour only, above the glass, camera-right of the rim + +The canvas is a pour stage, not a scene graph of the whole bar. No +bartender, no bottles on shelves, no neon sign. + +### Glassware + +Four painted silhouettes, matching `GlassType`: + +| Type | Ice | Notes | +|-----------|-----|--------------------------------------------| +| rocks | yes | Thick bowl, short. Ice must read. | +| highball | yes | Tall column. Condensation on the lower 2/3 | +| coupe | no | Stem + wide bowl. Liquid stays in the cup | +| margarita | no | Wide rim. Salt is part of the glass plate | + +Each glass is a **precomposed PNG plate** (body + inner wall + rim) plus a +separate **interior mask** used as a Pixi mask. Do not reconstruct the +bowl from the old SVG `outline` / `clip` paths as the hero art. Those +paths may inform mask proportions only. + +### Liquid + +- Tint from `cocktail.ingredients[i].color` and `cocktail.color`. +- Fill height is equal layers, bottom to top. Store extents in + `GLASS_BOUNDS` in `pixi/rig.ts`: `{ liquidTop, liquidBottom, hasIce, + bowlCenterX }` per `GlassType`. Measure `liquidTop` / `liquidBottom` + from the interior mask alpha bbox after the plates exist (first opaque + row inside the bowl → last opaque row). `hasIce` stays rocks/highball + `true`, coupe/margarita `false`. Do not reuse the old SVG path strings + as the hero silhouette. +- Surface is a `MeshPlane` (not a MorphSVG wave). Vertex Y follows a + shallow sine; amplitude dies after each pour. +- `DisplacementFilter` on the liquid (tiny, wet). Always off under + reduced motion. Drop it (and the highlight blur) if the ticker stays + under 50fps for 30 frames. Skip it at `devicePixelRatio < 1.5` to save + fill rate. + +### Stream + +- `MeshRope` from bottle neck to current surface Y. +- Width ~3–5px CSS, tinted to the active ingredient. +- Slight gravity sag (quadratic points), not a straight line. +- Appears as the bottle tips, disappears as the bottle rights. + +### Ice + +- 3–5 cubes, painted PNG, only when `hasIce` for that glass. +- Parent container is the masked interior. Bob is local (`±2px`). +- Drop in after the last pour, before garnish. They settle; they do not + bounce out. + +### Particles + +- Splash: ≤40 sprites, emit at contact, gravity down, life < 400ms. +- Foam: Paloma only, during the grapefruit-soda pour; ≤20 sprites that + then sit on the surface. +- Cosmonaut extra: ≤12 star motes + a short frost bloom on the coupe, + 400ms, then gone. No soda foam on the Cosmonaut. +- Use Pixi v8 particles from `pixi.js` (`Particle` / `ParticleContainer`). + No `@pixi/particle-emitter`. No DOM particles. No GSAP Physics2D on + SVG dots. + +### Bottle + +- One painted bottle silhouette, recolored per ingredient fill. +- Tips from upright to ~−50° around the neck, holds, rights, hides. +- It is a prop, not a product shot. No label typography. + +### Garnish + +Keep `GarnishType`. New painted plates, not the current SVG garnishes. +Salt rims live on the glass plate (`salt_rim`, `salt_lime`, +`salt_grapefruit`). Wheels, wedges, cherry, rocket drop in last. + +## Motion clock + +GSAP is the only clock for the pour. One timeline per cocktail mount. +`useGSAP` from `@gsap/react` with `revertOnUpdate: true`. Kill the +timeline and destroy the Pixi Application on unmount. + +Keep the existing slot math so recipe highlighting still works: + +```text +POUR_INTRO = 0.2s +POUR_SLOT = 0.85s per ingredient +POUR_FINISH = 0.45s ice + garnish + method + secret extra +``` + +`pourDuration(n) = POUR_INTRO + n * POUR_SLOT + POUR_FINISH` + +Per ingredient, inside the slot (relative): + +| t | beat | +|--------|-------------------------------------------| +| 0.00 | bottle appears, starts tip | +| 0.18 | stream on; snapshot `activePour = i` | +| 0.20 | liquid height eases to layer top | +| 0.25 | meniscus amplitude up | +| 0.38 | splash at current surface | +| 0.58 | stream off | +| 0.62 | bottle hidden; snapshot `activePour = null` | + +Finish: + +| t | beat | +|---------------------------|-------------------------------------------| +| last slot end | ice drop (if `hasIce`) | +| +0.12 | garnish | +| +0.20 | method (settle / vortex / none) | +| +0.35 (secret only) | frost + star motes | +| + POUR_FINISH | snapshot `allDone` | + +`PourSnapshot` stays `{ pouredCount, activePour, allDone }`. +`RecipeView` keeps highlighting ingredients from that snapshot. +`onPourComplete` still fires once when `allDone` becomes true. + +Reduced motion: apply the finished rig state immediately, emit +`allDone: true`, return an empty timeline. Same as the current contract. + +Do **not** use DrawSVG, MorphSVG, or Physics2D against SVG pour targets. +When `glass-scene.tsx` dies, slim `gsap-setup.ts` to `gsap` + `useGSAP` +(+ `CustomEase` only if a named ease is still used). Drop DrawSVG, +MorphSVG, Physics2D, Flip, and CustomWiggle unless a mixer file still +imports them. The selection grid keeps Motion `AnimatePresence`; do not +add GSAP Flip as part of this pour rewrite. + +## File layout + +Pixi owns the picture. The script is testable without WebGL. + +```text +src/components/demos/cocktail-mixer/ + index.tsx unchanged behavior (select / unlock / XP) + data.ts recipes, colors, garnish, method (keep). + Delete SVG-only exports with the old stage: + WAVE_PATH, ICE_POSITIONS, BUBBLE_SETS, + CONDENSATION_DROPS, GLASS_CONFIGS. Keep + cosmonaut-glow in a small CSS snippet. + types.ts Cocktail, MixMethod, GarnishType (keep) + hooks.ts localStorage progress (keep) + pour-script.ts NEW: pure timing + snapshot schedule + pixi/ + bar-stage.tsx NEW: React wrapper, replaces glass-scene.tsx + application.ts NEW: create / resize / destroy Application + rig.ts NEW: display list for one cocktail + pour-director.ts NEW: GSAP timeline → rig setters + liquid.ts NEW: MeshPlane + fill + stream.ts NEW: MeshRope + particles.ts NEW: splash / foam / motes + assets.ts NEW: texture keys + load + assets/ NEW: PNG plates (see Asset pack) + components/recipe-view.tsx GlassScene → BarStage + components/recipe-details.tsx keep + components/selection-grid.tsx keep (SVG card icons OK) + svg/ retire from the pour stage; card icons may stay + glass-scene.tsx delete after BarStage lands + pour-timeline.ts delete after pour-script + director land + components/glass-visualization.tsx unused; delete with the SVG stage + svg/decorations.tsx delete with the SVG stage (wave/condensation) +``` + +`demo-loader.tsx` stays `next/dynamic(..., { ssr: false })`. Pixi loads +only on `/work/cocktail-mixer`. + +Keep `cosmonaut-glow` on the Cosmonaut grid card. Delete `wave-drift` and +`condensation-drip` from `WAVE_STYLES` with the SVG stage. Condensation +on the Pixi glass is static dots, not a CSS keyframe. + +## Asset pack + +All pour-stage art lives under +`src/components/demos/cocktail-mixer/assets/` as 2x PNG (WebP allowed if +the loader is one line). Approximate CSS stage: **280×420**. Texture +resolution: 560×840 for the glass plates. + +Required files: + +```text +bar-top.png +glass-rocks.png +glass-rocks-mask.png +glass-highball.png +glass-highball-mask.png +glass-coupe.png +glass-coupe-mask.png +glass-margarita.png +glass-margarita-mask.png +ice-cube.png (one cube; instanced) +bottle.png +garnish-lime-wheel.png +garnish-cherry.png +garnish-orange-slice.png +garnish-grapefruit-wedge.png +garnish-cherry-orange.png +garnish-rocket.png +splash-dot.png (soft disc, tinted in code) +star-mote.png (Cosmonaut only) +rim-salt.png (overlay when garnishType starts with salt_) +``` + +Salt rims are baked into `glass-margarita.png` / Paloma highball as +needed via a thin overlay plate `rim-salt.png` shown when +`garnishType` starts with `salt_`. + +Palette: warm wood bar, cool glass, liquid tints from data. No emoji on +the stage (`cocktail.emoji` stays on cards only). + +If generated images need a pass, composite them to this list. Do not +ship raw mismatched lighting across plates. One key light, camera-left, +on every plate. + +## Performance + +- One `Application` per `BarStage` mount. `destroy(true, { children: true })` + on unmount. No leaked tickers. +- Resolution `Math.min(2, devicePixelRatio)`. +- Canvas CSS size ≤ 280×420. Do not fill the viewport. +- Particle caps above. No displacement when reduced motion. +- If the ticker reports `< 50fps` for 30 consecutive frames, drop + displacement and bloom-blur. Keep the pour. +- Do not add `@pixi/filter-*` packages. Core Pixi `BlurFilter` + + `DisplacementFilter` only. Bloom is a blurred highlight sprite, not a + filter stack. +- Bundle: `pixi.js` is mixer-only via the existing dynamic import of the + demo. Do not import Pixi from the root layout. + +## Reduced motion and a11y + +- `useReducedMotion()` from `motion/react` (already used in `RecipeView`). +- Finished painted still. Recipe list shows every ingredient as poured. +- Canvas has `role="img"` and `aria-label` with the cocktail name. +- Keyboard: Back to drinks unchanged. No canvas key traps. +- 320px: stage stacks above recipe, same grid as today. + +## Tests + +jsdom cannot prove the wow bar. Split what tests can prove. + +Pure (jsdom, no Pixi): + +- `pour-script.ts`: duration, snapshot times, reduced-motion emits + `allDone` immediately, Cosmonaut extra beat exists, ice skipped when + `hasIce` is false. +- Existing `cocktail-data`, `cosmonaut-unlock`, mixer behavior tests stay. + +React: + +- `RecipeView` still calls `onPourComplete` once when the snapshot + completes (mock `BarStage` if Pixi cannot init). +- `data-testid="glass-scene"` moves to the canvas wrapper so existing + queries keep working, or tests update to `data-testid="bar-stage"`. + +Do not add WebGL screenshot tests in Vitest. Visual proof is a browser +pass on `/work/cocktail-mixer` for: + +- Margarita (shaken, salt rim, no ice) +- Old Fashioned (stirred, rocks, ice must stay in the bowl) +- Paloma (built, highball, soda foam) +- Whiskey Sour (shaken, coupe, no ice) +- Cosmonaut after unlock (frost + star motes, then still) +- 320px width +- `prefers-reduced-motion: reduce` (finished still, first frame) + +## Dependencies + +Add: + +```text +pixi.js ^8 +``` + +Keep: + +```text +gsap +@gsap/react +``` + +Do not add `pixi-filters`, `@pixi/particle-emitter`, Rive, or extra +Three wrappers for this demo. + +## Implementation order (after this spec is approved) + +1. `pour-script.ts` + tests (TDD). No Pixi yet. +2. Asset plates for one glass (rocks) + `BarStage` hello (static still). +3. Liquid mesh + stream + ice clip on rocks. +4. Remaining three glasses + garnishes + bottle. +5. `pour-director.ts` GSAP wired to the rig. Delete SVG `glass-scene`. +6. Method beats + Cosmonaut extra + fps fallback. +7. `npm test` + `npm run build` + browser pass on the drinks listed + under Tests. + +Do not start this list until the spec file is approved. + +## Success + +The Cosmonaut’s Bar pour looks like someone iterated a 2D cabinet piece +until it was done. Elon-level here means: pause it, and it still looks +expensive. Not a 3D gin ad. Not another SVG tween. From 319a24d452fff1045643b2809e0a0c1b6c677a47 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sun, 6 Sep 2026 00:20:56 +0000 Subject: [PATCH 02/26] docs: lock Pixi pour spec after second-agent review Fix compositing sandwich, pouredCount contract, v8 init/load, missing textures, story-clock vs ticker, and POUR_FINISH so the Cosmonaut extra finishes before allDone. Co-authored-by: Travis Jones --- ...6-09-05-cocktail-mixer-pixi-pour-design.md | 500 ++++++++++++------ 1 file changed, 333 insertions(+), 167 deletions(-) diff --git a/docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md b/docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md index d27920e..72d3dde 100644 --- a/docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md +++ b/docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md @@ -14,39 +14,45 @@ as the conductor. Do not go 3D. bar card. The paused end frame must look like a finished cocktail painting, not an animation that only works in motion. - Engine: PixiJS v8 owns every pixel of the pour stage. GSAP + `@gsap/react` - owns the clock. Motion stays on the rest of the site. + owns the **story clock** (slot times, snapshots, bottle angle, fill + height). The Pixi ticker only applies those uniforms to meshes and + particles. Motion stays on the rest of the site. - Art: full redraw. Painted glassware, ice, garnish, bottle, bar surface. - Liquid color still comes from `data.ts`. Do not polish the current SVG - glasses, bottles, or garnishes as the pour picture. + Finished liquid is `cocktail.color` as **one volume**. Stream and a brief + surface flash use the active `ingredient.color`. Do not polish the + current SVG glasses as the pour picture. Do not ship stacked ingredient + bands (that is a bar chart, which was the last failure). - Scope: the pour stage on `/work/cocktail-mixer`. The selection grid stays Motion `AnimatePresence` plus SVG card icons. Not a site-wide Pixi or GSAP rewrite. - Pour feel: choreographed 2D craft with light physics. Stream lands on the rising surface. Ice stays inside the bowl. Splash at contact. Method - (shake / stir / build) is visible in the liquid, not a glass rotation - gimmick. Not a Navier–Stokes sim. Not a Three.js spirits microsite. + (shake / stir / build) is a liquid uniform, not a glass rotation. + Not a Navier–Stokes sim. Not a Three.js spirits microsite. - Architecture: a pour **script** (pure timing) drives a Pixi **rig**. - GSAP tweens rig properties. React mounts one Application and destroys it. + GSAP tweens rig uniforms. React mounts one Application, loads assets, + then starts the timeline. Destroy on unmount with an abort token. ## Why this, not the last spike GSAP DrawSVG / MorphSVG / Physics2D on line-art cannot look expensive. Pixi v8 can: `MeshPlane` meniscus, `MeshRope` stream, `DisplacementFilter` -wet wobble, `ParticleContainer` splash/foam, clip the ice to the bowl. +wet wobble, particles for splash/foam, clip the ice to the bowl. `three` is already in the repo for other work. It is the wrong lead here. The product bar is craft, not a transmission-material gin ad. Rive needs a `.riv` from an editor we do not have. This is an explicit exception to `docs/anti-goals.md` (“no new deps for -one-off effects”), scoped to this demo, adding **only** `pixi.js` (v8). -GSAP is already a mixer dependency. +one-off effects”), scoped to this demo, adding **only** `pixi.js` (pin +**8.8 or newer** in the 8.x line). GSAP is already a mixer dependency. ## Out of scope - Three.js, React Three Fiber, MeshTransmissionMaterial, Rive, Lottie - Site-wide Pixi or removing Motion elsewhere - Recipe / unlock / XP / localStorage / Cosmonaut gate changes +- Oz-weighted fill or Tequila Sunrise grenadine-sink special case - Audio - Global nav, typography, theme - Auth, middleware, database @@ -62,162 +68,272 @@ end. If the still looks like wireframe SVG, the work failed. Must be true: 1. Ice never leaves the glass interior. Local coordinates, clipped to the - bowl. No GSAP `y` on a world-space SVG group. + bowl after settle. No GSAP `y` on a world-space group. 2. The stream contacts the **rising meniscus**, not a fixed glass-top coordinate. Each ingredient’s stream shortens as the fill rises. -3. Liquid is one volume with a curved surface, not stacked HTML/SVG rects. - Ingredient colors still layer (bottom to top) but the silhouette is a - glass of liquid, not a bar chart. + Stream start is the bottle neck’s world point each ticker frame. +3. Liquid is one volume with a curved surface, tinted `cocktail.color`. + Not stacked HTML/SVG rects. Not equal bands of sugar / bitters / spirit. 4. Splash particles emit at the stream–surface hit, then die. They do not spawn in empty air beside the glass. -5. Garnish lands last, after ice. Salt rims are already on the glass, not - thrown in at the end. -6. `shaken` settles (quick residual swirl, then still). `stirred` shows a - brief vortex. `built` stays still. The glass itself does not cartoon-tilt. -7. Cosmonaut gets one extra beat (frost bloom + a few star motes), then - the same still-frame discipline. Not a shader demo. -8. Recipe text stays readable during the pour. Motion rewards the pour; it - does not hide the recipe (`docs/taste-bar.md`). -9. At `320px` width the glass, garnish, and recipe still read. +5. Garnish lands last, after ice. Salt is a rim overlay, already on the + glass, not thrown in at the end. +6. `shaken` settles (quick residual swirl on the **liquid**, then still). + `stirred` shows a brief vortex on the liquid. `built` stays still. + The glass itself does not cartoon-tilt. +7. Cosmonaut gets one extra beat (frost + a few star motes), then the + same still-frame discipline. `allDone` fires **after** that beat. + Not a shader demo. +8. Recipe text stays readable during the pour. `pouredCount` increments + as each slot starts so `RecipeDetails` can reveal rows (`i < pouredCount`). + Motion rewards the pour; it does not hide the recipe (`docs/taste-bar.md`). +9. At `320px` width the glass, garnish, and recipe still read. Canvas is + `width: 100%; max-width: 280px; height: auto`. 10. `prefers-reduced-motion: reduce` shows the painted finished drink on - the first frame. No tween, no particles, no displacement. + the first painted frame after assets load. No tween, no particles, + no displacement. ## Visual craft (the picture) One key light, camera-left. Warm bar top. Cool rim on the glass. No -second competing light. No rainbow bloom. No UI chrome inside the canvas. +second competing light. No rainbow filter bloom. No UI chrome inside +the canvas. + +The glass is a **sandwich**. A single precomposed bowl with liquid +painted in front of it looks like stickers on glass. Do not do that. Layer order, back to front: 1. Bar surface (contact shadow + a short caustic strip under the bowl) -2. Glass body (painted PNG, four silhouettes) -3. Liquid volume, clipped to the interior -4. Meniscus (`MeshPlane`) -5. Ice (rocks and highball only), clipped, slow bob -6. Condensation (static or near-static dots on the bowl) -7. Stream (`MeshRope`) — pour only -8. Splash / foam particles — pour only -9. Inner rim highlight -10. Garnish -11. Bottle — pour only, above the glass, camera-right of the rim +2. Back glass (stem, base, back wall — interior of the bowl is transparent) +3. Liquid volume + meniscus, masked to the interior hole +4. Ice, masked to the interior after settle +5. Condensation (static dots on the front wall) +6. Front glass (near wall, rim). Salt overlay on top when `garnishType` + starts with `salt_` +7. Stream: unclipped from neck to rim, masked only while inside the bowl +8. Splash around the rim (unclipped, short life) +9. Foam on the surface (Paloma only; **remains** on the finished still) +10. Garnish (wheels, wedges, cherry, rocket) +11. Bottle — pour only, in reserved headroom above the glass, + camera-right of the rim The canvas is a pour stage, not a scene graph of the whole bar. No bartender, no bottles on shelves, no neon sign. +Composed frame (CSS pixels): **280×420**. Glass content sits in a 200×300 +rect, centered horizontally, sitting on the bar. Headroom above the rim +is for the bottle. Pixi clips to the canvas; do not rely on overflow. + ### Glassware -Four painted silhouettes, matching `GlassType`: +Four painted silhouettes, matching `GlassType`. Each type is **two** +plates plus a mask: -| Type | Ice | Notes | -|-----------|-----|--------------------------------------------| -| rocks | yes | Thick bowl, short. Ice must read. | -| highball | yes | Tall column. Condensation on the lower 2/3 | -| coupe | no | Stem + wide bowl. Liquid stays in the cup | -| margarita | no | Wide rim. Salt is part of the glass plate | +| Type | Ice | Notes | +|-----------|-----------------------------|--------------------------------------------| +| rocks | 1 large + 1 small | Thick bowl. Ice must read. | +| highball | 3 cubes | Tall column. Condensation on the lower 2/3 | +| coupe | none | Stem + wide bowl. Liquid stays in the cup | +| margarita | none | Wide rim. Salt is the overlay plate | -Each glass is a **precomposed PNG plate** (body + inner wall + rim) plus a -separate **interior mask** used as a Pixi mask. Do not reconstruct the -bowl from the old SVG `outline` / `clip` paths as the hero art. Those -paths may inform mask proportions only. +Files per type: `glass-{type}-back.png`, `glass-{type}-front.png`, +`glass-{type}-mask.png`. The mask is the interior hole, pixel-aligned +to the painted bowl. Do not reconstruct the bowl from the old SVG +`outline` / `clip` paths as the hero art. ### Liquid -- Tint from `cocktail.ingredients[i].color` and `cocktail.color`. -- Fill height is equal layers, bottom to top. Store extents in - `GLASS_BOUNDS` in `pixi/rig.ts`: `{ liquidTop, liquidBottom, hasIce, - bowlCenterX }` per `GlassType`. Measure `liquidTop` / `liquidBottom` - from the interior mask alpha bbox after the plates exist (first opaque - row inside the bowl → last opaque row). `hasIce` stays rocks/highball - `true`, coupe/margarita `false`. Do not reuse the old SVG path strings - as the hero silhouette. -- Surface is a `MeshPlane` (not a MorphSVG wave). Vertex Y follows a - shallow sine; amplitude dies after each pour. -- `DisplacementFilter` on the liquid (tiny, wet). Always off under - reduced motion. Drop it (and the highlight blur) if the ticker stays - under 50fps for 30 frames. Skip it at `devicePixelRatio < 1.5` to save - fill rate. +- Finished fill: `cocktail.color`, one mesh, one `MeshPlane` surface. +- During pour `i`: stream tint and a ~200ms surface flash use + `ingredients[i].color`, then ease back to `cocktail.color`. +- Fill height is equal slots (`(i + 1) / n` of the bowl), not oz-weighted. +- Extents live in `glass-bounds.ts` (pure module, CSS pixels on the + 200×300 glass rect). Seed from the current SVG numbers, then remeasure + from mask alpha bbox once plates exist and **commit the numbers**. + Runtime bbox is a debug assert, not a load blocker. + +```ts +export type GlassBounds = { + liquidTop: number; + liquidBottom: number; + hasIce: boolean; + bowlCenterX: number; +}; + +// seed (CSS px inside the 200×300 glass rect); replace after plates +export const GLASS_BOUNDS: Record = { + rocks: { liquidTop: 100, liquidBottom: 254, hasIce: true, bowlCenterX: 100 }, + highball: { liquidTop: 50, liquidBottom: 255, hasIce: true, bowlCenterX: 100 }, + coupe: { liquidTop: 70, liquidBottom: 180, hasIce: false, bowlCenterX: 100 }, + margarita: { liquidTop: 60, liquidBottom: 175, hasIce: false, bowlCenterX: 100 }, +}; +``` + +- Surface is a `MeshPlane`. Texture: codegen a 64×32 vertical gradient + from the current fill color (no extra PNG). Vertex Y follows a shallow + sine; amplitude is a GSAP-tweened uniform; the ticker writes vertices. +- `DisplacementFilter` on the liquid (tiny, wet). Map: `displace-noise.png`, + a sprite on the stage (required by v8). Always off under reduced motion. + Skip at `devicePixelRatio < 1.5`. Drop it if the ticker stays under + 50fps for 30 frames. ### Stream - `MeshRope` from bottle neck to current surface Y. -- Width ~3–5px CSS, tinted to the active ingredient. +- Texture: `stream.png`, a 8×64 px (2×) vertical highlight. Rope + thickness is `texture.height`, not a CSS stroke. Keep it ~3–5px CSS. - Slight gravity sag (quadratic points), not a straight line. +- Points are a Pixi array the ticker updates from uniforms + (`neckX`, `neckY`, `surfaceY`, `streamOn`). - Appears as the bottle tips, disappears as the bottle rights. ### Ice -- 3–5 cubes, painted PNG, only when `hasIce` for that glass. -- Parent container is the masked interior. Bob is local (`±2px`). -- Drop in after the last pour, before garnish. They settle; they do not - bounce out. +- Painted `ice-cube.png`, scaled. Counts from the glass table above. + Local positions committed in `glass-bounds.ts` (`ICE_LAYOUT`). +- Spawn **already inside** the bowl (opacity 0 → 1, short settle). + Do not drop from world-space above the mask — that was the SVG bug + (cubes vanish until they enter, or they escape). +- After settle, parent/mask is the interior. Idle bob `±2px` via ticker + after the pour. Reduced motion: static, no bob. +- Local layout (CSS px, relative to bowl center; seed, remeasure with plates): + +```ts +export const ICE_LAYOUT: Record<"rocks" | "highball", IceCube[]> = { + rocks: [ + { dx: -8, dy: 6, angle: 12, scale: 1.35 }, + { dx: 18, dy: 14, angle: -8, scale: 0.85 }, + ], + highball: [ + { dx: -16, dy: 8, angle: 10, scale: 1 }, + { dx: 14, dy: 18, angle: -12, scale: 0.9 }, + { dx: 0, dy: 28, angle: 18, scale: 0.8 }, + ], +}; +``` ### Particles -- Splash: ≤40 sprites, emit at contact, gravity down, life < 400ms. +- Splash: ≤40, emit at contact, gravity down, life < 400ms, then gone + from the finished still. `boundsArea` = the stage rect (v8 default + particle bounds are empty). Tint from the active ingredient + (`dynamicProperties.color: true`). - Foam: Paloma only, during the grapefruit-soda pour; ≤20 sprites that - then sit on the surface. -- Cosmonaut extra: ≤12 star motes + a short frost bloom on the coupe, - 400ms, then gone. No soda foam on the Cosmonaut. -- Use Pixi v8 particles from `pixi.js` (`Particle` / `ParticleContainer`). - No `@pixi/particle-emitter`. No DOM particles. No GSAP Physics2D on - SVG dots. + **stay on the finished still**. +- Cosmonaut extra: ≤12 star motes + `frost.png` on the coupe, 400ms, + then gone from the still. No soda foam on the Cosmonaut. +- Use Pixi v8 `Particle` / `ParticleContainer` from `pixi.js`. + No `@pixi/particle-emitter`. No DOM particles. No GSAP Physics2D. ### Bottle -- One painted bottle silhouette, recolored per ingredient fill. +- `bottle.png` is near-white (so `tint` from `ingredient.color` works). - Tips from upright to ~−50° around the neck, holds, rights, hides. - It is a prop, not a product shot. No label typography. +- Neck world position is a rig getter the ticker uses for the stream. ### Garnish -Keep `GarnishType`. New painted plates, not the current SVG garnishes. -Salt rims live on the glass plate (`salt_rim`, `salt_lime`, -`salt_grapefruit`). Wheels, wedges, cherry, rocket drop in last. +Keep `GarnishType`. Map to plates (no current SVG garnishes): + +| garnishType | plates | +|-------------------|---------------------------------------------| +| lime_wheel | garnish-lime-wheel.png | +| cherry | garnish-cherry.png | +| orange_slice | garnish-orange-slice.png | +| grapefruit_wedge | garnish-grapefruit-wedge.png | +| salt_rim | rim-salt.png | +| cherry_orange | garnish-cherry-orange.png | +| salt_grapefruit | rim-salt.png + garnish-grapefruit-wedge.png | +| salt_lime | rim-salt.png + garnish-lime-wheel.png | +| rocket | garnish-rocket.png | + +Salt (`rim-salt.png`) sits on the front-glass layer from the first +frame. Wheels / wedges / cherry / rocket drop in last. + +Unused types (`orange_slice`, `grapefruit_wedge`, `salt_rim` as +standalone) still get plates so the switch stays exhaustive. ## Motion clock -GSAP is the only clock for the pour. One timeline per cocktail mount. -`useGSAP` from `@gsap/react` with `revertOnUpdate: true`. Kill the -timeline and destroy the Pixi Application on unmount. +GSAP is the only **story** clock. One timeline per cocktail mount, +started only after `app.init` and `Assets.load` succeed. + +`useGSAP` from `@gsap/react` with `revertOnUpdate: true`. On unmount: +abort in-flight `init`/`load`, `timeline.kill()`, `app.destroy(true)`. +Keep the `Assets` cache across drink remounts (`RecipeView` keys on +cocktail name). Destroy the display list, not the texture cache. -Keep the existing slot math so recipe highlighting still works: +Pixi ticker (not a second story clock): write mesh vertices, rope +points, particle physics, ice bob, and displacement-map scroll from +rig uniforms GSAP is already tweening. + +### Timing ```text -POUR_INTRO = 0.2s -POUR_SLOT = 0.85s per ingredient -POUR_FINISH = 0.45s ice + garnish + method + secret extra +POUR_INTRO = 0.2s +POUR_SLOT = 0.85s per ingredient +POUR_FINISH = 0.65s ice + garnish + method (stirred vortex needs ~0.4s) +SECRET_EXTRA = 0.40s Cosmonaut frost + motes, after POUR_FINISH +``` + +```ts +pourDuration(n, isSecret) = + POUR_INTRO + n * POUR_SLOT + POUR_FINISH + (isSecret ? SECRET_EXTRA : 0) ``` -`pourDuration(n) = POUR_INTRO + n * POUR_SLOT + POUR_FINISH` +A three-ingredient drink is **3.4s**. Cosmonaut (4 ingredients, secret) +is **4.65s**. Do not keep the old “under 3.5s for three ingredients” +assertion if FINISH grows; update the test to the formula. Per ingredient, inside the slot (relative): -| t | beat | -|--------|-------------------------------------------| -| 0.00 | bottle appears, starts tip | -| 0.18 | stream on; snapshot `activePour = i` | -| 0.20 | liquid height eases to layer top | -| 0.25 | meniscus amplitude up | -| 0.38 | splash at current surface | -| 0.58 | stream off | -| 0.62 | bottle hidden; snapshot `activePour = null` | +| t | beat | +|------|--------------------------------------------------------------| +| 0.00 | bottle appears, starts tip; snapshot `{ pouredCount: i + 1, activePour: i, allDone: false }` | +| 0.18 | stream on | +| 0.20 | fillHeight eases to `(i + 1) / n` | +| 0.25 | meniscusAmp up; surface flash of `ingredient.color` | +| 0.38 | splash at current surface | +| 0.58 | stream off | +| 0.62 | bottle hidden; snapshot `{ pouredCount: i + 1, activePour: null, allDone: false }` | -Finish: +`onSnapshot` is fired from `pour-director.ts` via GSAP `call`, not from +the React wrapper. Opening snapshot before slot 0: +`{ pouredCount: 0, activePour: null, allDone: false }`. + +Finish (from last slot end): | t | beat | |---------------------------|-------------------------------------------| -| last slot end | ice drop (if `hasIce`) | +| 0.00 | ice settle (if `hasIce`) | | +0.12 | garnish | -| +0.20 | method (settle / vortex / none) | -| +0.35 (secret only) | frost + star motes | -| + POUR_FINISH | snapshot `allDone` | +| +0.20 | method uniforms (see below) | +| + POUR_FINISH | snapshot `allDone` if not secret | +| + POUR_FINISH (secret) | frost + star motes | +| + POUR_FINISH + SECRET_EXTRA | snapshot `allDone` for Cosmonaut | + +Method uniforms (liquid, not glass rotation): + +| method | uniform | duration | ease | +|---------|----------------------|----------|-------------| +| shaken | swirl 0.4 → 0 | 0.28s | power2.out | +| stirred | vortex 1.0 → 0 | 0.40s | sine.inOut | +| built | none | 0 | — | `PourSnapshot` stays `{ pouredCount, activePour, allDone }`. -`RecipeView` keeps highlighting ingredients from that snapshot. +`RecipeView` keeps highlighting ingredients from `pouredCount`. `onPourComplete` still fires once when `allDone` becomes true. -Reduced motion: apply the finished rig state immediately, emit -`allDone: true`, return an empty timeline. Same as the current contract. +Reduced motion: after assets load, `rig.applyFinished(cocktail)`, emit +`{ pouredCount: n, activePour: null, allDone: true }`, empty timeline, +then append the canvas. Same contract as today, but never on an empty +WebGL view. + +If `app.init` or `Assets.load` fails, or WebGL is unavailable: show a +CSS still (glass PNG + `cocktail.color` fill) and emit `allDone`. Do +not leave a blank canvas. Do **not** use DrawSVG, MorphSVG, or Physics2D against SVG pour targets. When `glass-scene.tsx` dies, slim `gsap-setup.ts` to `gsap` + `useGSAP` @@ -232,20 +348,21 @@ Pixi owns the picture. The script is testable without WebGL. ```text src/components/demos/cocktail-mixer/ - index.tsx unchanged behavior (select / unlock / XP) - data.ts recipes, colors, garnish, method (keep). - Delete SVG-only exports with the old stage: - WAVE_PATH, ICE_POSITIONS, BUBBLE_SETS, - CONDENSATION_DROPS, GLASS_CONFIGS. Keep - cosmonaut-glow in a small CSS snippet. + index.tsx select / unlock / XP. Keep cosmonaut-glow CSS. + data.ts recipes, colors, garnish, method. + Delete SVG-only exports: WAVE_PATH, + ICE_POSITIONS, BUBBLE_SETS, + CONDENSATION_DROPS, GLASS_CONFIGS. types.ts Cocktail, MixMethod, GarnishType (keep) - hooks.ts localStorage progress (keep) + hooks.ts keep useCocktailProgress only. + Delete usePourSequence. + glass-bounds.ts NEW: GLASS_BOUNDS + ICE_LAYOUT (pure) pour-script.ts NEW: pure timing + snapshot schedule pixi/ - bar-stage.tsx NEW: React wrapper, replaces glass-scene.tsx - application.ts NEW: create / resize / destroy Application - rig.ts NEW: display list for one cocktail - pour-director.ts NEW: GSAP timeline → rig setters + bar-stage.tsx NEW: React wrapper + application.ts NEW: init / load / destroy + abort + rig.ts NEW: display list + uniform setters + pour-director.ts NEW: GSAP timeline → rig uniforms liquid.ts NEW: MeshPlane + fill stream.ts NEW: MeshRope particles.ts NEW: splash / foam / motes @@ -254,83 +371,122 @@ src/components/demos/cocktail-mixer/ components/recipe-view.tsx GlassScene → BarStage components/recipe-details.tsx keep components/selection-grid.tsx keep (SVG card icons OK) - svg/ retire from the pour stage; card icons may stay + svg/card-icons.tsx keep for the grid + svg/glasses.tsx delete with the SVG stage + svg/bottles.tsx delete + svg/garnishes.tsx delete + svg/decorations.tsx delete glass-scene.tsx delete after BarStage lands pour-timeline.ts delete after pour-script + director land - components/glass-visualization.tsx unused; delete with the SVG stage - svg/decorations.tsx delete with the SVG stage (wave/condensation) + components/glass-visualization.tsx unused; delete + components/cosmonaut-reveal.tsx unused; delete + __tests__/pour-timeline.test.ts replace with pour-script.test.ts + __tests__/pour-sequence.test.ts delete with usePourSequence +``` + +`BarStage` props (same contract as `GlassScene`): + +```ts +{ + cocktail: Cocktail; + reducedMotion: boolean; + onSnapshot: (snapshot: PourSnapshot) => void; +} ``` +Wrapper: `data-testid="bar-stage"`, `role="img"`, +`aria-label="{cocktail.name}"`. Update mixer tests off `glass-scene`. + `demo-loader.tsx` stays `next/dynamic(..., { ssr: false })`. Pixi loads only on `/work/cocktail-mixer`. -Keep `cosmonaut-glow` on the Cosmonaut grid card. Delete `wave-drift` and -`condensation-drip` from `WAVE_STYLES` with the SVG stage. Condensation -on the Pixi glass is static dots, not a CSS keyframe. +Keep `cosmonaut-glow` on the Cosmonaut grid card. Delete `wave-drift` +and `condensation-drip` from `WAVE_STYLES`. Condensation on the Pixi +glass is static dots, not a CSS keyframe. If `WAVE_STYLES` shrinks to +only `cosmonaut-glow`, keep injecting it from `index.tsx`. ## Asset pack All pour-stage art lives under -`src/components/demos/cocktail-mixer/assets/` as 2x PNG (WebP allowed if -the loader is one line). Approximate CSS stage: **280×420**. Texture -resolution: 560×840 for the glass plates. +`src/components/demos/cocktail-mixer/assets/` as 2x PNG. Stage CSS: +**280×420**. Glass plates: 400×600 (2× the 200×300 content rect). Required files: ```text bar-top.png -glass-rocks.png +glass-rocks-back.png +glass-rocks-front.png glass-rocks-mask.png -glass-highball.png +glass-highball-back.png +glass-highball-front.png glass-highball-mask.png -glass-coupe.png +glass-coupe-back.png +glass-coupe-front.png glass-coupe-mask.png -glass-margarita.png +glass-margarita-back.png +glass-margarita-front.png glass-margarita-mask.png -ice-cube.png (one cube; instanced) -bottle.png +ice-cube.png +bottle.png (near-white, tinted in code) +stream.png (8×64 highlight strip) +displace-noise.png (DisplacementFilter map) +frost.png (Cosmonaut coupe overlay) +condensation-dot.png +rim-highlight.png (blurred highlight sprite; not a bloom filter) garnish-lime-wheel.png garnish-cherry.png garnish-orange-slice.png garnish-grapefruit-wedge.png garnish-cherry-orange.png garnish-rocket.png -splash-dot.png (soft disc, tinted in code) -star-mote.png (Cosmonaut only) -rim-salt.png (overlay when garnishType starts with salt_) +rim-salt.png +splash-dot.png +star-mote.png ``` -Salt rims are baked into `glass-margarita.png` / Paloma highball as -needed via a thin overlay plate `rim-salt.png` shown when -`garnishType` starts with `salt_`. +Meniscus texture is codegen from fill color. Do not add a meniscus PNG. Palette: warm wood bar, cool glass, liquid tints from data. No emoji on the stage (`cocktail.emoji` stays on cards only). -If generated images need a pass, composite them to this list. Do not -ship raw mismatched lighting across plates. One key light, camera-left, -on every plate. +One key light, camera-left, on every plate. Do not ship mismatched +lighting. + +## Pixi bootstrap (v8) + +Constructor options are deprecated. Required sequence in `BarStage`: + +1. `const app = new Application()` +2. `await app.init({ width: 280, height: 420, resolution: Math.min(2, devicePixelRatio), backgroundAlpha: 0, antialias: true, autoDensity: true })` + — do **not** `resizeTo` the window +3. `await Assets.load(...)` (cache hits on remount) +4. Build rig. If `reducedMotion`, `rig.applyFinished(cocktail)` and emit + `allDone` **before** appending the canvas +5. Append `app.canvas`. Start GSAP only if motion is allowed +6. Unmount: abort if still on step 2–3; else kill timeline and + `app.destroy(true)` + +React Strict Mode will mount/unmount/mount. The abort token must ignore +the first `init` resolving after unmount so it cannot leak a ticker. ## Performance -- One `Application` per `BarStage` mount. `destroy(true, { children: true })` - on unmount. No leaked tickers. -- Resolution `Math.min(2, devicePixelRatio)`. -- Canvas CSS size ≤ 280×420. Do not fill the viewport. +- One `Application` per `BarStage` mount. +- Canvas CSS size ≤ 280×420, fluid down to 320px pages. - Particle caps above. No displacement when reduced motion. - If the ticker reports `< 50fps` for 30 consecutive frames, drop - displacement and bloom-blur. Keep the pour. -- Do not add `@pixi/filter-*` packages. Core Pixi `BlurFilter` + - `DisplacementFilter` only. Bloom is a blurred highlight sprite, not a - filter stack. -- Bundle: `pixi.js` is mixer-only via the existing dynamic import of the - demo. Do not import Pixi from the root layout. + displacement and hide `rim-highlight.png`. Keep the pour. +- Do not add `@pixi/filter-*`. Core `BlurFilter` is unused; the highlight + is a sprite. Core `DisplacementFilter` only. +- Do not import Pixi from the root layout. ## Reduced motion and a11y - `useReducedMotion()` from `motion/react` (already used in `RecipeView`). -- Finished painted still. Recipe list shows every ingredient as poured. -- Canvas has `role="img"` and `aria-label` with the cocktail name. +- Finished painted still after load. Recipe list shows every ingredient + as poured (`pouredCount === n`). +- Canvas `role="img"` and `aria-label` with the cocktail name. - Keyboard: Back to drinks unchanged. No canvas key traps. - 320px: stage stacks above recipe, same grid as today. @@ -340,35 +496,42 @@ jsdom cannot prove the wow bar. Split what tests can prove. Pure (jsdom, no Pixi): -- `pour-script.ts`: duration, snapshot times, reduced-motion emits - `allDone` immediately, Cosmonaut extra beat exists, ice skipped when - `hasIce` is false. -- Existing `cocktail-data`, `cosmonaut-unlock`, mixer behavior tests stay. +- `pour-script.ts`: `pourDuration(n, isSecret)` matches the formula; + snapshot times include `pouredCount: i + 1` at slot start; reduced + motion emits `allDone` immediately; Cosmonaut extra beat exists and + `allDone` is after it; ice skipped when `hasIce` is false. +- `glass-bounds.ts`: every `GlassType` has `liquidTop < liquidBottom`; + rocks/highball `hasIce`, coupe/margarita not. +- `cocktail-data.test.ts`: drop `GLASS_CONFIGS`; assert `cocktail.glass` + against `GlassType` / `GLASS_BOUNDS` keys. Keep recipe integrity tests. React: - `RecipeView` still calls `onPourComplete` once when the snapshot completes (mock `BarStage` if Pixi cannot init). -- `data-testid="glass-scene"` moves to the canvas wrapper so existing - queries keep working, or tests update to `data-testid="bar-stage"`. +- `data-testid="bar-stage"` (not `glass-scene`). +- Delete `pour-timeline.test.ts` and `pour-sequence.test.ts`. Do not + assert GSAP tweens on `[data-pour="glass"]` — that was the cartoon + tilt this spec forbids. Method tests, if any, assert shaken/stirred + set liquid uniforms and built does not. Do not add WebGL screenshot tests in Vitest. Visual proof is a browser pass on `/work/cocktail-mixer` for: -- Margarita (shaken, salt rim, no ice) -- Old Fashioned (stirred, rocks, ice must stay in the bowl) -- Paloma (built, highball, soda foam) +- Margarita (shaken, salt rim from frame one, no ice) +- Old Fashioned (stirred vortex on liquid, rocks, ice stays in the bowl) +- Paloma (built, highball, soda foam **still there** when paused) - Whiskey Sour (shaken, coupe, no ice) -- Cosmonaut after unlock (frost + star motes, then still) +- Cosmonaut after unlock (frost + star motes, then still; XP after) - 320px width -- `prefers-reduced-motion: reduce` (finished still, first frame) +- `prefers-reduced-motion: reduce` (finished still, first painted frame) ## Dependencies Add: ```text -pixi.js ^8 +pixi.js ^8.8.0 ``` Keep: @@ -383,12 +546,15 @@ Three wrappers for this demo. ## Implementation order (after this spec is approved) -1. `pour-script.ts` + tests (TDD). No Pixi yet. -2. Asset plates for one glass (rocks) + `BarStage` hello (static still). -3. Liquid mesh + stream + ice clip on rocks. -4. Remaining three glasses + garnishes + bottle. -5. `pour-director.ts` GSAP wired to the rig. Delete SVG `glass-scene`. -6. Method beats + Cosmonaut extra + fps fallback. +1. `glass-bounds.ts` + `pour-script.ts` + tests (TDD). No Pixi yet. +2. Asset plates for rocks (back, front, mask) + `BarStage` hello + (v8 `init` / load / destroy, static still). +3. Liquid mesh + stream + ice spawn-inside on rocks. +4. Remaining three glasses + garnishes + bottle + salt overlay. +5. `pour-director.ts` GSAP wired to rig uniforms. Delete SVG + `glass-scene` / `pour-timeline` / `usePourSequence`. +6. Method uniforms + Cosmonaut extra + fps fallback + WebGL failure + still. 7. `npm test` + `npm run build` + browser pass on the drinks listed under Tests. @@ -397,5 +563,5 @@ Do not start this list until the spec file is approved. ## Success The Cosmonaut’s Bar pour looks like someone iterated a 2D cabinet piece -until it was done. Elon-level here means: pause it, and it still looks -expensive. Not a 3D gin ad. Not another SVG tween. +until it was done. Pause it: it still looks like a painted cocktail, not +a tween. Not a 3D gin ad. Not another SVG spike. From 41d3477ad7c3d17173bc870ce45c5ebd22353ea9 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sun, 6 Sep 2026 04:13:36 +0000 Subject: [PATCH 03/26] docs: lock remaining Pixi pour spec holes from pair-read Two MeshRopes, horizontal stream texture, swirl vs vortex draw, PourDirector after async init, applyFinished still, Paloma foam. Co-authored-by: Travis Jones --- ...6-09-05-cocktail-mixer-pixi-pour-design.md | 326 ++++++++++++------ 1 file changed, 225 insertions(+), 101 deletions(-) diff --git a/docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md b/docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md index 72d3dde..0aaf5e0 100644 --- a/docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md +++ b/docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md @@ -104,26 +104,32 @@ painted in front of it looks like stickers on glass. Do not do that. Layer order, back to front: -1. Bar surface (contact shadow + a short caustic strip under the bowl) +1. Bar surface. Caustic strip is **baked into** `bar-top.png`. No extra plate. 2. Back glass (stem, base, back wall — interior of the bowl is transparent) -3. Liquid volume + meniscus, masked to the interior hole -4. Ice, masked to the interior after settle -5. Condensation (static dots on the front wall) -6. Front glass (near wall, rim). Salt overlay on top when `garnishType` - starts with `salt_` -7. Stream: unclipped from neck to rim, masked only while inside the bowl -8. Splash around the rim (unclipped, short life) -9. Foam on the surface (Paloma only; **remains** on the finished still) -10. Garnish (wheels, wedges, cherry, rocket) -11. Bottle — pour only, in reserved headroom above the glass, +3. Interior group (one mask): liquid MeshPlane, ice, inner stream + (rim → surface), Paloma foam (pinned to surface Y) +4. Condensation (static dots on the front wall) +5. Front glass (near wall, rim) +6. `rim-highlight.png` on the front glass, camera-left, under salt +7. Salt overlay when `garnishType` starts with `salt_` +8. Air stream (neck → rim), unmasked, in front of the glass +9. Splash around the rim (unclipped, short life) +10. Frost overlay (Cosmonaut extra only, then gone) +11. Garnish (wheels, wedges, cherry, rocket) +12. Bottle — pour only, in the 48px headroom above `GLASS_RECT`, camera-right of the rim The canvas is a pour stage, not a scene graph of the whole bar. No bartender, no bottles on shelves, no neon sign. -Composed frame (CSS pixels): **280×420**. Glass content sits in a 200×300 -rect, centered horizontally, sitting on the bar. Headroom above the rim -is for the bottle. Pixi clips to the canvas; do not rely on overflow. +Composed frame (CSS pixels). Pixi clips to the canvas; do not rely on +overflow. + +```ts +export const STAGE = { width: 280, height: 420 }; +export const GLASS_RECT = { x: 40, y: 48, width: 200, height: 300 }; +// 48px headroom for the bottle; remaining 72px is the bar. +``` ### Glassware @@ -144,10 +150,16 @@ to the painted bowl. Do not reconstruct the bowl from the old SVG ### Liquid -- Finished fill: `cocktail.color`, one mesh, one `MeshPlane` surface. -- During pour `i`: stream tint and a ~200ms surface flash use +- Finished fill: `cocktail.color`. +- The liquid **is** one `MeshPlane` covering the bowl bbox from + `liquidBottom` to the current surface (`verticesX: 12`, `verticesY: 8`). + Only the **top vertex row** takes the sine / method offsets. That is + the volume and the meniscus. Do not draw a separate surface strip over + a hole (sticker look). +- During pour `i`: stream tint and a 200ms surface flash use `ingredients[i].color`, then ease back to `cocktail.color`. - Fill height is equal slots (`(i + 1) / n` of the bowl), not oz-weighted. + `fillHeight` eases over **0.45s** (`power2.out`) starting at slot 0.20. - Extents live in `glass-bounds.ts` (pure module, CSS pixels on the 200×300 glass rect). Seed from the current SVG numbers, then remeasure from mask alpha bbox once plates exist and **commit the numbers**. @@ -157,36 +169,88 @@ to the painted bowl. Do not reconstruct the bowl from the old SVG export type GlassBounds = { liquidTop: number; liquidBottom: number; - hasIce: boolean; + rimY: number; // air stream ends here; inner stream starts bowlCenterX: number; + bowlWidth: number; // interior width at mid-bowl + hasIce: boolean; + garnishX: number; + garnishY: number; + bottle: { x: number; y: number; neckX: number; neckY: number }; }; -// seed (CSS px inside the 200×300 glass rect); replace after plates +// seed (CSS px inside GLASS_RECT); replace after plates export const GLASS_BOUNDS: Record = { - rocks: { liquidTop: 100, liquidBottom: 254, hasIce: true, bowlCenterX: 100 }, - highball: { liquidTop: 50, liquidBottom: 255, hasIce: true, bowlCenterX: 100 }, - coupe: { liquidTop: 70, liquidBottom: 180, hasIce: false, bowlCenterX: 100 }, - margarita: { liquidTop: 60, liquidBottom: 175, hasIce: false, bowlCenterX: 100 }, + rocks: { + liquidTop: 100, liquidBottom: 254, rimY: 95, + bowlCenterX: 100, bowlWidth: 130, hasIce: true, + garnishX: 140, garnishY: 90, + bottle: { x: 168, y: -8, neckX: 24, neckY: 8 }, + }, + highball: { + liquidTop: 50, liquidBottom: 255, rimY: 45, + bowlCenterX: 100, bowlWidth: 82, hasIce: true, + garnishX: 132, garnishY: 42, + bottle: { x: 168, y: -8, neckX: 24, neckY: 8 }, + }, + coupe: { + liquidTop: 70, liquidBottom: 180, rimY: 65, + bowlCenterX: 100, bowlWidth: 150, hasIce: false, + garnishX: 148, garnishY: 62, + bottle: { x: 168, y: -8, neckX: 24, neckY: 8 }, + }, + margarita: { + liquidTop: 60, liquidBottom: 175, rimY: 55, + bowlCenterX: 100, bowlWidth: 170, hasIce: false, + garnishX: 150, garnishY: 52, + bottle: { x: 168, y: -8, neckX: 24, neckY: 8 }, + }, }; ``` -- Surface is a `MeshPlane`. Texture: codegen a 64×32 vertical gradient - from the current fill color (no extra PNG). Vertex Y follows a shallow - sine; amplitude is a GSAP-tweened uniform; the ticker writes vertices. -- `DisplacementFilter` on the liquid (tiny, wet). Map: `displace-noise.png`, - a sprite on the stage (required by v8). Always off under reduced motion. - Skip at `devicePixelRatio < 1.5`. Drop it if the ticker stays under - 50fps for 30 frames. +`bottle.neckX/Y` are local to the bottle sprite (pivot = neck). The +ticker converts them to stage space as the bottle tips. + +One Pixi mask sprite, one target: a single interior `Container` holding +liquid, ice, and the inner stream. Do not reuse one mask on two +containers. + +- MeshPlane texture: codegen a 64×32 vertical gradient from the current + fill color (no extra PNG). Rest pose: top-row sine amplitude **2px**. + `meniscusAmp` is a GSAP uniform; the ticker writes vertices. +- Method offsets (also ticker, from GSAP uniforms). Rest / `allDone` = + 0. Displacement is **not** the method. + + | method | uniform | draw (top vertex row only) | duration | ease | + |---------|-----------------|----------------------------------------------------|----------|------------| + | shaken | `swirl` 0.4 → 0 | chaotic X jitter, max **3px** at 0.4 | 0.28s | power2.out | + | stirred | `vortex` 1 → 0 | angular spin around `bowlCenterX`, max **8px** at 1 | 0.40s | sine.inOut | + | built | none | rest pose only | 0 | — | + +- `DisplacementFilter` on the liquid (tiny, wet). Map: `displace-noise.png` + with `addressMode: 'repeat'`. `addChild` the sprite so + `worldTransform` updates; do **not** set `visible = false` (scroll + dies). Leave `renderable` to the filter (v8 sets it false). Filter + `scale` = `{ x: 4, y: 4 }` — not the default 20. Always off under + reduced motion and after `allDone`. Skip at `devicePixelRatio < 1.5`. + Drop it if the ticker stays under 50fps for 30 frames. ### Stream -- `MeshRope` from bottle neck to current surface Y. -- Texture: `stream.png`, a 8×64 px (2×) vertical highlight. Rope - thickness is `texture.height`, not a CSS stroke. Keep it ~3–5px CSS. -- Slight gravity sag (quadratic points), not a straight line. -- Points are a Pixi array the ticker updates from uniforms - (`neckX`, `neckY`, `surfaceY`, `streamOn`). -- Appears as the bottle tips, disappears as the bottle rights. +Two `MeshRope`s. One rope cannot be half-masked. + +- **Air rope:** neck → `rimY`. Unmasked. In front of the glass. +- **Inner rope:** `rimY` → current `surfaceY`. Child of the interior + mask group, behind the front glass. +- Texture: `stream.png` is a **horizontal** strip, along × across: + **128×8** pixels at `resolution: 2` so CSS thickness is **4px**. + Pixi v8 maps texture X along the path and texture Y as thickness + (`texture.height`). Do **not** ship an 8×64 vertical strip (that is a + 64px-thick ribbon). Do not depend on a `MeshRope` `width` override + (not in 8.8). Keep ~3–5px CSS by sizing the texture. +- Point count **20**. Sag: midpoint control **6px** toward gravity + (stage +Y). Rebuild points each ticker frame from + `neckX/Y`, `rimY`, `surfaceY`, `streamOn`. +- Tinted to the active ingredient. On at slot 0.18, off at 0.58. ### Ice @@ -195,43 +259,62 @@ export const GLASS_BOUNDS: Record = { - Spawn **already inside** the bowl (opacity 0 → 1, short settle). Do not drop from world-space above the mask — that was the SVG bug (cubes vanish until they enter, or they escape). -- After settle, parent/mask is the interior. Idle bob `±2px` via ticker - after the pour. Reduced motion: static, no bob. -- Local layout (CSS px, relative to bowl center; seed, remeasure with plates): +- After settle, parent/mask is the interior. No idle bob after + `allDone` (the paused frame is a painting). Reduced motion: static. +- Local layout (CSS px, relative to `bowlCenterX` and mid-bowl + ` (liquidTop + liquidBottom) / 2 `; seed, remeasure with plates). + Highball cubes stack down the column, not in a mid-bowl cluster: ```ts export const ICE_LAYOUT: Record<"rocks" | "highball", IceCube[]> = { rocks: [ - { dx: -8, dy: 6, angle: 12, scale: 1.35 }, - { dx: 18, dy: 14, angle: -8, scale: 0.85 }, + { dx: -8, dy: 10, angle: 12, scale: 1.35 }, + { dx: 18, dy: 22, angle: -8, scale: 0.85 }, ], highball: [ - { dx: -16, dy: 8, angle: 10, scale: 1 }, - { dx: 14, dy: 18, angle: -12, scale: 0.9 }, - { dx: 0, dy: 28, angle: 18, scale: 0.8 }, + { dx: -10, dy: -36, angle: 10, scale: 1 }, + { dx: 12, dy: -8, angle: -12, scale: 0.9 }, + { dx: -4, dy: 28, angle: 18, scale: 0.8 }, ], }; ``` +They do not bounce out. + ### Particles -- Splash: ≤40, emit at contact, gravity down, life < 400ms, then gone - from the finished still. `boundsArea` = the stage rect (v8 default - particle bounds are empty). Tint from the active ingredient - (`dynamicProperties.color: true`). -- Foam: Paloma only, during the grapefruit-soda pour; ≤20 sprites that - **stay on the finished still**. +- Splash: `splash-dot.png`, ≤40, emit at contact, gravity down, life + < 400ms, then gone from the finished still. `boundsArea` = the stage + rect. Tint from the active ingredient (`dynamicProperties.color: true`). +- Foam: Paloma only. Emit in the slot where + `ingredient.name === "Grapefruit Soda"`. Texture: `foam-dot.png`. + ≤20 sprites **pinned to surface Y** (no gravity). They rise with the + meniscus through the lime pour and **stay on the finished still**. + Salty Dog is salt-highball with juice, not soda: salt, no foam. - Cosmonaut extra: ≤12 star motes + `frost.png` on the coupe, 400ms, then gone from the still. No soda foam on the Cosmonaut. - Use Pixi v8 `Particle` / `ParticleContainer` from `pixi.js`. No `@pixi/particle-emitter`. No DOM particles. No GSAP Physics2D. +Condensation: static `condensation-dot.png`. Positions in +`glass-bounds.ts` (CSS px, relative to `bowlCenterX` / `liquidTop`): + +```ts +export const CONDENSATION_LAYOUT: Record = { + rocks: [{ dx: -28, dy: 36 }, { dx: 26, dy: 54 }, { dx: -12, dy: 72 }, { dx: 18, dy: 90 }], + highball: [{ dx: -22, dy: 40 }, { dx: 20, dy: 70 }, { dx: -16, dy: 100 }, { dx: 14, dy: 130 }, { dx: -8, dy: 160 }, { dx: 10, dy: 190 }], + coupe: [{ dx: -40, dy: 18 }, { dx: 36, dy: 28 }, { dx: -12, dy: 40 }], + margarita: [{ dx: -48, dy: 16 }, { dx: 44, dy: 26 }, { dx: -10, dy: 36 }], +}; +``` + ### Bottle - `bottle.png` is near-white (so `tint` from `ingredient.color` works). -- Tips from upright to ~−50° around the neck, holds, rights, hides. + Sprite size **48×96** CSS. Pivot = neck (`bottle.neckX/Y`). +- Tips from upright to **−50°** over **0.28s** (`power3.inOut`), holds + while the stream is on, rights over **0.16s**, hides. - It is a prop, not a product shot. No label typography. -- Neck world position is a rig getter the ticker uses for the stream. ### Garnish @@ -243,31 +326,50 @@ Keep `GarnishType`. Map to plates (no current SVG garnishes): | cherry | garnish-cherry.png | | orange_slice | garnish-orange-slice.png | | grapefruit_wedge | garnish-grapefruit-wedge.png | -| salt_rim | rim-salt.png | +| salt_rim | rim-salt-{glass}.png | | cherry_orange | garnish-cherry-orange.png | -| salt_grapefruit | rim-salt.png + garnish-grapefruit-wedge.png | -| salt_lime | rim-salt.png + garnish-lime-wheel.png | +| salt_grapefruit | rim-salt-{glass}.png + garnish-grapefruit-wedge.png | +| salt_lime | rim-salt-{glass}.png + garnish-lime-wheel.png | | rocket | garnish-rocket.png | -Salt (`rim-salt.png`) sits on the front-glass layer from the first -frame. Wheels / wedges / cherry / rocket drop in last. +Salt (`rim-salt-margarita.png` or `rim-salt-highball.png`) sits on the +front-glass layer from the first frame. Wheels / wedges / cherry / +rocket drop in last at `garnishX/Y`. Unused types (`orange_slice`, `grapefruit_wedge`, `salt_rim` as standalone) still get plates so the switch stays exhaustive. ## Motion clock -GSAP is the only **story** clock. One timeline per cocktail mount, -started only after `app.init` and `Assets.load` succeed. +GSAP is the only **story** clock. Pixi ticker only applies uniforms. + +`BarStage` owns async init/load/abort in `useEffect`. It mounts a child +`PourDirector` **only when `ready`**. That child is the only `useGSAP` +caller. Its callback is synchronous and builds the timeline against a +live rig. Reduced motion never mounts `PourDirector`. + +Do not create the timeline inside `BarStage` after `await` and expect +`useGSAP` / `revertOnUpdate` to see it. Tweens recorded outside the +`useGSAP` callback are not in that context. + +On unmount of `BarStage`: abort in-flight `init`/`load`. If the first +`init` resolves after abort, do not append or start a ticker. +`PourDirector` unmount kills the timeline via `useGSAP`. Then: + +```ts +app.destroy( + { removeView: true }, + { children: true, texture: false, textureSource: false } +); +``` -`useGSAP` from `@gsap/react` with `revertOnUpdate: true`. On unmount: -abort in-flight `init`/`load`, `timeline.kill()`, `app.destroy(true)`. Keep the `Assets` cache across drink remounts (`RecipeView` keys on -cocktail name). Destroy the display list, not the texture cache. +cocktail name). Do not pass `releaseGlobalResources: true`. Pixi ticker (not a second story clock): write mesh vertices, rope -points, particle physics, ice bob, and displacement-map scroll from -rig uniforms GSAP is already tweening. +points, and particle physics from rig uniforms GSAP is already tweening. +Displacement map may scroll **during** the pour only. After `allDone`, +the ticker does not bob ice or scroll the map. ### Timing @@ -291,15 +393,15 @@ Per ingredient, inside the slot (relative): | t | beat | |------|--------------------------------------------------------------| -| 0.00 | bottle appears, starts tip; snapshot `{ pouredCount: i + 1, activePour: i, allDone: false }` | +| 0.00 | bottle appears; tip −50° over 0.28s; snapshot `{ pouredCount: i + 1, activePour: i, allDone: false }` | | 0.18 | stream on | -| 0.20 | fillHeight eases to `(i + 1) / n` | -| 0.25 | meniscusAmp up; surface flash of `ingredient.color` | +| 0.20 | `fillHeight` eases over 0.45s to `(i + 1) / n` | +| 0.25 | meniscusAmp up; 200ms surface flash of `ingredient.color` | | 0.38 | splash at current surface | | 0.58 | stream off | -| 0.62 | bottle hidden; snapshot `{ pouredCount: i + 1, activePour: null, allDone: false }` | +| 0.62 | bottle rights (0.16s) and hides; snapshot `{ pouredCount: i + 1, activePour: null, allDone: false }` | -`onSnapshot` is fired from `pour-director.ts` via GSAP `call`, not from +`onSnapshot` is fired from `pour-director.tsx` via GSAP `call`, not from the React wrapper. Opening snapshot before slot 0: `{ pouredCount: 0, activePour: null, allDone: false }`. @@ -309,31 +411,48 @@ Finish (from last slot end): |---------------------------|-------------------------------------------| | 0.00 | ice settle (if `hasIce`) | | +0.12 | garnish | -| +0.20 | method uniforms (see below) | +| +0.20 | method uniforms (liquid table) | | + POUR_FINISH | snapshot `allDone` if not secret | | + POUR_FINISH (secret) | frost + star motes | | + POUR_FINISH + SECRET_EXTRA | snapshot `allDone` for Cosmonaut | -Method uniforms (liquid, not glass rotation): +Method uniforms: see the liquid table. `pour-director.tsx` tweens +`swirl` / `vortex` at finish `+0.20` with those durations. Built is a +no-op. + +`PourSnapshot` lives in `pour-script.ts` (not `pour-timeline.ts`). +Shape stays `{ pouredCount, activePour, allDone }`. `RecipeView` +imports the type from `pour-script.ts`. + +### `applyFinished` checklist + +Same still for reduced motion, WebGL fallback, and paused `allDone`. +`rig.applyFinished(cocktail)` sets: -| method | uniform | duration | ease | -|---------|----------------------|----------|-------------| -| shaken | swirl 0.4 → 0 | 0.28s | power2.out | -| stirred | vortex 1.0 → 0 | 0.40s | sine.inOut | -| built | none | 0 | — | +- `fillHeight = 1`, tint `cocktail.color` +- stream off, bottle hidden +- splash / motes / frost dead (alpha 0, not ticking) +- `swirl = 0`, `vortex = 0`, `meniscusAmp` at rest (2px sine) +- displacement filter off (not scrolling) +- ice visible if `hasIce`, **no bob** +- Paloma foam on; every other drink foam off +- salt on if `garnishType` starts with `salt_` +- garnish on -`PourSnapshot` stays `{ pouredCount, activePour, allDone }`. -`RecipeView` keeps highlighting ingredients from `pouredCount`. -`onPourComplete` still fires once when `allDone` becomes true. +After `allDone` with motion allowed: freeze/remove displacement, kill +splash/motes/frost. Paloma foam stays. The paused frame is a painting. -Reduced motion: after assets load, `rig.applyFinished(cocktail)`, emit -`{ pouredCount: n, activePour: null, allDone: true }`, empty timeline, -then append the canvas. Same contract as today, but never on an empty -WebGL view. +Reduced motion: after load, `applyFinished`, emit +`{ pouredCount: n, activePour: null, allDone: true }`, append canvas. +Never on an empty WebGL view. -If `app.init` or `Assets.load` fails, or WebGL is unavailable: show a -CSS still (glass PNG + `cocktail.color` fill) and emit `allDone`. Do -not leave a blank canvas. +If `app.init` or `Assets.load` fails, or WebGL is unavailable: CSS +still, then emit `allDone`. Stack: `cocktail.color` fill with +`glass-{type}-mask.png` as a CSS `mask-image`, then +`glass-{type}-front.png`, salt/garnish/foam as needed. Same +finished-state rules (Paloma foam on, Cosmonaut frost off). Do not +leave a blank canvas. Do not put a color rect behind an opaque back +plate (sticker sandwich). Do **not** use DrawSVG, MorphSVG, or Physics2D against SVG pour targets. When `glass-scene.tsx` dies, slim `gsap-setup.ts` to `gsap` + `useGSAP` @@ -356,13 +475,14 @@ src/components/demos/cocktail-mixer/ types.ts Cocktail, MixMethod, GarnishType (keep) hooks.ts keep useCocktailProgress only. Delete usePourSequence. - glass-bounds.ts NEW: GLASS_BOUNDS + ICE_LAYOUT (pure) - pour-script.ts NEW: pure timing + snapshot schedule + glass-bounds.ts NEW: GLASS_BOUNDS + ICE_LAYOUT + + CONDENSATION_LAYOUT (pure) + pour-script.ts NEW: PourSnapshot type + timing + snapshots pixi/ - bar-stage.tsx NEW: React wrapper - application.ts NEW: init / load / destroy + abort - rig.ts NEW: display list + uniform setters - pour-director.ts NEW: GSAP timeline → rig uniforms + bar-stage.tsx NEW: async init/load; mounts PourDirector when ready + application.ts NEW: init / destroy helpers + abort + rig.ts NEW: display list + uniform setters + applyFinished + pour-director.tsx NEW: useGSAP child; timeline → rig uniforms liquid.ts NEW: MeshPlane + fill stream.ts NEW: MeshRope particles.ts NEW: splash / foam / motes @@ -429,19 +549,21 @@ glass-margarita-front.png glass-margarita-mask.png ice-cube.png bottle.png (near-white, tinted in code) -stream.png (8×64 highlight strip) -displace-noise.png (DisplacementFilter map) +stream.png (128×8 horizontal strip, resolution 2) +displace-noise.png (DisplacementFilter map, repeat) frost.png (Cosmonaut coupe overlay) condensation-dot.png -rim-highlight.png (blurred highlight sprite; not a bloom filter) +rim-highlight.png (on front glass, camera-left) garnish-lime-wheel.png garnish-cherry.png garnish-orange-slice.png garnish-grapefruit-wedge.png garnish-cherry-orange.png garnish-rocket.png -rim-salt.png +rim-salt-margarita.png +rim-salt-highball.png splash-dot.png +foam-dot.png (Paloma surface foam) star-mote.png ``` @@ -462,10 +584,11 @@ Constructor options are deprecated. Required sequence in `BarStage`: — do **not** `resizeTo` the window 3. `await Assets.load(...)` (cache hits on remount) 4. Build rig. If `reducedMotion`, `rig.applyFinished(cocktail)` and emit - `allDone` **before** appending the canvas -5. Append `app.canvas`. Start GSAP only if motion is allowed -6. Unmount: abort if still on step 2–3; else kill timeline and - `app.destroy(true)` + `allDone` **before** appending the canvas. Do not mount `PourDirector`. +5. Append `app.canvas`. If motion is allowed, mount `PourDirector` (the + only `useGSAP` caller). +6. Unmount: abort if still on step 2–3. `PourDirector` unmount kills the + timeline. Then `app.destroy({ removeView: true }, { children: true, texture: false, textureSource: false })`. React Strict Mode will mount/unmount/mount. The abort token must ignore the first `init` resolving after unmount so it cannot leak a ticker. @@ -521,6 +644,7 @@ pass on `/work/cocktail-mixer` for: - Margarita (shaken, salt rim from frame one, no ice) - Old Fashioned (stirred vortex on liquid, rocks, ice stays in the bowl) - Paloma (built, highball, soda foam **still there** when paused) +- Salty Dog (salt-highball, **no** foam) - Whiskey Sour (shaken, coupe, no ice) - Cosmonaut after unlock (frost + star motes, then still; XP after) - 320px width @@ -551,7 +675,7 @@ Three wrappers for this demo. (v8 `init` / load / destroy, static still). 3. Liquid mesh + stream + ice spawn-inside on rocks. 4. Remaining three glasses + garnishes + bottle + salt overlay. -5. `pour-director.ts` GSAP wired to rig uniforms. Delete SVG +5. `pour-director.tsx` GSAP wired to rig uniforms. Delete SVG `glass-scene` / `pour-timeline` / `usePourSequence`. 6. Method uniforms + Cosmonaut extra + fps fallback + WebGL failure still. From c03e8de5c8f80d6d855958e7731a2ec91914debf Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sun, 6 Sep 2026 04:20:33 +0000 Subject: [PATCH 04/26] docs: plan Pixi pour implementation for cocktail mixer TDD clock and bounds first, then plates, rig, GSAP director, and delete the SVG stage. Co-authored-by: Travis Jones --- .../2026-09-06-cocktail-mixer-pixi-pour.md | 1250 +++++++++++++++++ 1 file changed, 1250 insertions(+) create mode 100644 docs/superpowers/plans/2026-09-06-cocktail-mixer-pixi-pour.md diff --git a/docs/superpowers/plans/2026-09-06-cocktail-mixer-pixi-pour.md b/docs/superpowers/plans/2026-09-06-cocktail-mixer-pixi-pour.md new file mode 100644 index 0000000..9c93c78 --- /dev/null +++ b/docs/superpowers/plans/2026-09-06-cocktail-mixer-pixi-pour.md @@ -0,0 +1,1250 @@ +# Cocktail Mixer Pixi Pour Implementation Plan + +> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking. + +**Goal:** Replace the SVG GSAP pour on `/work/cocktail-mixer` with a painted PixiJS v8 stage conducted by a GSAP story clock, without changing recipes, unlock, or XP. + +**Architecture:** Pure `pour-script.ts` emits timed cues and `PourSnapshot`s. `BarStage` `await`s Pixi `Application.init` + `Assets.load`, then mounts `PourDirector` (the only `useGSAP` caller). A Pixi `rig` applies uniforms on the ticker. WebGL failure and reduced motion share `applyFinished` / a CSS still. Selection-grid SVG card icons stay. + +**Tech Stack:** Next.js 15 App Router, React 19, PixiJS `^8.8.0`, `gsap` + `@gsap/react` (already in the mixer), Vitest + Testing Library, `sharp` (devDep) to rasterize plates. + +**Spec:** `docs/superpowers/specs/2026-09-05-cocktail-mixer-pixi-pour-design.md` + +## Global Constraints + +- Add **only** `pixi.js ^8.8.0`. Do not add `pixi-filters`, `@pixi/particle-emitter`, Rive, or Three wrappers. +- Do not import Pixi from the root layout. The demo stays `next/dynamic(..., { ssr: false })` in `src/components/demos/demo-loader.tsx`. +- Do not go 3D. Do not polish the current SVG glasses as the pour picture. +- Recipes, Cosmonaut unlock, XP, localStorage (`useCocktailProgress`) stay. +- GSAP is the story clock. Pixi ticker only applies uniforms (vertices, ropes, particles). +- Finished liquid is `cocktail.color` (one volume). No stacked ingredient bands. +- Two `MeshRope`s: air neck→rim (unmasked), inner rim→surface (interior mask group). +- `stream.png` is **128×8** at resolution 2 (4px CSS thick). Never 8×64. +- `PourDirector` mounts only when Pixi is `ready`. Reduced motion never mounts it. +- `app.destroy({ removeView: true }, { children: true, texture: false, textureSource: false })`. +- Canvas CSS: `width: 100%; max-width: 280px; height: auto`. Stage 280×420. +- Exhaustive `switch` on `GarnishType` / `MixMethod` with a `never` default. +- Path alias `@/*` → `./src/*`. Commands: `npx vitest run `, `npm test`, `npm run build`. +- Commit on this branch (`cursor/cocktail-mixer-pixi-pour-5c83`). Do not commit to main until the pour is done. + +## File map + +```text +src/components/demos/cocktail-mixer/ + glass-bounds.ts Task 1 + pour-script.ts Task 2 + garnish-map.ts Task 3 + pixi/application.ts Task 5 + pixi/assets.ts Task 5 + pixi/bar-stage.tsx Task 5, extended 6–10 + pixi/css-still.tsx Task 5 + pixi/liquid.ts Task 6 + pixi/stream.ts Task 6 + pixi/particles.ts Task 7 + pixi/rig.ts Task 6–7 + pixi/pour-director.tsx Task 8 + assets/*.png Task 4 +scripts/generate-mixer-plates.ts Task 4 +``` + +Delete after Task 9: `glass-scene.tsx`, `pour-timeline.ts`, `svg/glasses.tsx`, `svg/bottles.tsx`, `svg/garnishes.tsx`, `svg/decorations.tsx`, `components/glass-visualization.tsx`, `components/cosmonaut-reveal.tsx`, `__tests__/pour-timeline.test.ts`, `__tests__/pour-sequence.test.ts`, `usePourSequence` in `hooks.ts`. + +Keep: `svg/card-icons.tsx`, `index.tsx` behavior, `data.ts` recipes, `components/selection-grid.tsx`, `components/recipe-details.tsx`. + +--- + +### Task 1: Glass bounds (pure) + +**Files:** +- Create: `src/components/demos/cocktail-mixer/glass-bounds.ts` +- Create: `src/components/demos/cocktail-mixer/__tests__/glass-bounds.test.ts` + +**Interfaces:** +- Consumes: `GlassType` from `./types` +- Produces: `STAGE`, `GLASS_RECT`, `GlassBounds`, `IceCube`, `GLASS_BOUNDS`, `ICE_LAYOUT`, `CONDENSATION_LAYOUT` + +- [ ] **Step 1: Write the failing test** + +```ts +/** @vitest-environment node */ +import { describe, it, expect } from "vitest"; +import { + GLASS_BOUNDS, + ICE_LAYOUT, + CONDENSATION_LAYOUT, + STAGE, + GLASS_RECT, +} from "../glass-bounds"; +import type { GlassType } from "../types"; + +const TYPES: GlassType[] = ["rocks", "highball", "coupe", "margarita"]; + +describe("glass-bounds", () => { + it("defines a 280×420 stage and a 200×300 glass rect", () => { + expect(STAGE).toEqual({ width: 280, height: 420 }); + expect(GLASS_RECT).toEqual({ x: 40, y: 48, width: 200, height: 300 }); + }); + + it.each(TYPES)("%s has liquidTop < liquidBottom and rimY ≤ liquidTop", (type) => { + const b = GLASS_BOUNDS[type]; + expect(b.liquidTop).toBeLessThan(b.liquidBottom); + expect(b.rimY).toBeLessThanOrEqual(b.liquidTop); + expect(b.bowlWidth).toBeGreaterThan(0); + }); + + it("gives ice only to rocks and highball", () => { + expect(GLASS_BOUNDS.rocks.hasIce).toBe(true); + expect(GLASS_BOUNDS.highball.hasIce).toBe(true); + expect(GLASS_BOUNDS.coupe.hasIce).toBe(false); + expect(GLASS_BOUNDS.margarita.hasIce).toBe(false); + expect(ICE_LAYOUT.rocks).toHaveLength(2); + expect(ICE_LAYOUT.highball).toHaveLength(3); + }); + + it("places bottle neck in local sprite space, not stage 100,40", () => { + for (const type of TYPES) { + expect(GLASS_BOUNDS[type].bottle.neckX).toBeLessThan(48); + expect(GLASS_BOUNDS[type].bottle.neckY).toBeLessThan(48); + } + }); + + it("has condensation dots for every glass", () => { + for (const type of TYPES) { + expect(CONDENSATION_LAYOUT[type].length).toBeGreaterThan(0); + } + }); +}); +``` + +- [ ] **Step 2: Run the test and verify it fails** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/glass-bounds.test.ts` + +Expected: FAIL — `glass-bounds` is not defined. + +- [ ] **Step 3: Implement `glass-bounds.ts`** + +Copy the seed tables verbatim from the spec (`STAGE`, `GLASS_RECT`, `GLASS_BOUNDS`, `ICE_LAYOUT`, `CONDENSATION_LAYOUT`). Export: + +```ts +import type { GlassType } from "./types"; + +export const STAGE = { width: 280, height: 420 } as const; +export const GLASS_RECT = { x: 40, y: 48, width: 200, height: 300 } as const; + +export type IceCube = { + dx: number; + dy: number; + angle: number; + scale: number; +}; + +export type GlassBounds = { + liquidTop: number; + liquidBottom: number; + rimY: number; + bowlCenterX: number; + bowlWidth: number; + hasIce: boolean; + garnishX: number; + garnishY: number; + bottle: { x: number; y: number; neckX: number; neckY: number }; +}; +``` + +Fill `GLASS_BOUNDS`, `ICE_LAYOUT`, `CONDENSATION_LAYOUT` with the spec numbers. `ICE_LAYOUT` is `Record<"rocks" | "highball", IceCube[]>`. + +- [ ] **Step 4: Run the test and verify it passes** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/glass-bounds.test.ts` + +Expected: PASS. + +- [ ] **Step 5: Commit** + +```bash +git add src/components/demos/cocktail-mixer/glass-bounds.ts src/components/demos/cocktail-mixer/__tests__/glass-bounds.test.ts +git commit -m "feat: add cocktail mixer glass bounds" +``` + +--- + +### Task 2: Pour script (pure clock) + +**Files:** +- Create: `src/components/demos/cocktail-mixer/pour-script.ts` +- Create: `src/components/demos/cocktail-mixer/__tests__/pour-script.test.ts` + +**Interfaces:** +- Consumes: nothing from Pixi. `hasIce` / `isSecret` / `ingredientCount` are arguments. +- Produces: `POUR_INTRO`, `POUR_SLOT`, `POUR_FINISH`, `SECRET_EXTRA`, `PourSnapshot`, `PourCue`, `pourDuration`, `buildPourCues` + +- [ ] **Step 1: Write the failing test** + +```ts +/** @vitest-environment node */ +import { describe, it, expect } from "vitest"; +import { + POUR_FINISH, + POUR_INTRO, + POUR_SLOT, + SECRET_EXTRA, + buildPourCues, + pourDuration, +} from "../pour-script"; + +describe("pour-script", () => { + it("matches the duration formula", () => { + expect(pourDuration(3, false)).toBeCloseTo( + POUR_INTRO + 3 * POUR_SLOT + POUR_FINISH + ); + expect(pourDuration(3, false)).toBeCloseTo(3.4); + expect(pourDuration(4, true)).toBeCloseTo( + POUR_INTRO + 4 * POUR_SLOT + POUR_FINISH + SECRET_EXTRA + ); + expect(pourDuration(4, true)).toBeCloseTo(4.65); + }); + + it("increments pouredCount at each slot start", () => { + const cues = buildPourCues({ + ingredientCount: 3, + hasIce: false, + isSecret: false, + reducedMotion: false, + }); + const snaps = cues.filter((c) => c.kind === "snapshot").map((c) => c.snapshot); + expect(snaps[0]).toEqual({ + pouredCount: 0, + activePour: null, + allDone: false, + }); + expect(snaps.some((s) => s?.pouredCount === 1 && s.activePour === 0)).toBe( + true + ); + expect(snaps.at(-1)).toEqual({ + pouredCount: 3, + activePour: null, + allDone: true, + }); + }); + + it("emits allDone immediately for reduced motion", () => { + const cues = buildPourCues({ + ingredientCount: 3, + hasIce: true, + isSecret: true, + reducedMotion: true, + }); + expect(cues).toEqual([ + { + at: 0, + kind: "snapshot", + snapshot: { pouredCount: 3, activePour: null, allDone: true }, + }, + ]); + }); + + it("skips ice cues when hasIce is false", () => { + const noIce = buildPourCues({ + ingredientCount: 2, + hasIce: false, + isSecret: false, + reducedMotion: false, + }); + const iced = buildPourCues({ + ingredientCount: 2, + hasIce: true, + isSecret: false, + reducedMotion: false, + }); + expect(noIce.some((c) => c.kind === "ice")).toBe(false); + expect(iced.some((c) => c.kind === "ice")).toBe(true); + }); + + it("places Cosmonaut allDone after SECRET_EXTRA", () => { + const cues = buildPourCues({ + ingredientCount: 4, + hasIce: false, + isSecret: true, + reducedMotion: false, + }); + const secret = cues.find((c) => c.kind === "secret"); + const done = cues.find((c) => c.kind === "done"); + expect(secret).toBeTruthy(); + expect(done?.at).toBeCloseTo(pourDuration(4, true)); + expect(done?.at).toBeGreaterThan(secret!.at); + expect(done?.snapshot?.allDone).toBe(true); + }); +}); +``` + +- [ ] **Step 2: Run the test and verify it fails** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/pour-script.test.ts` + +Expected: FAIL — module missing. + +- [ ] **Step 3: Implement `pour-script.ts`** + +```ts +export const POUR_INTRO = 0.2; +export const POUR_SLOT = 0.85; +export const POUR_FINISH = 0.65; +export const SECRET_EXTRA = 0.4; + +export interface PourSnapshot { + pouredCount: number; + activePour: number | null; + allDone: boolean; +} + +export type PourCueKind = + | "snapshot" + | "bottleTip" + | "streamOn" + | "fill" + | "meniscus" + | "splash" + | "streamOff" + | "bottleHide" + | "ice" + | "garnish" + | "method" + | "secret" + | "done"; + +export interface PourCue { + at: number; + kind: PourCueKind; + ingredientIndex?: number; + snapshot?: PourSnapshot; +} + +export function pourDuration( + ingredientCount: number, + isSecret = false +): number { + return ( + POUR_INTRO + + ingredientCount * POUR_SLOT + + POUR_FINISH + + (isSecret ? SECRET_EXTRA : 0) + ); +} + +export function buildPourCues({ + ingredientCount, + hasIce, + isSecret, + reducedMotion, +}: { + ingredientCount: number; + hasIce: boolean; + isSecret: boolean; + reducedMotion: boolean; +}): PourCue[] { + const n = ingredientCount; + const doneSnap: PourSnapshot = { + pouredCount: n, + activePour: null, + allDone: true, + }; + if (reducedMotion) { + return [{ at: 0, kind: "snapshot", snapshot: doneSnap }]; + } + + const cues: PourCue[] = [ + { + at: 0, + kind: "snapshot", + snapshot: { pouredCount: 0, activePour: null, allDone: false }, + }, + ]; + + for (let i = 0; i < n; i++) { + const at = POUR_INTRO + i * POUR_SLOT; + cues.push( + { + at, + kind: "snapshot", + ingredientIndex: i, + snapshot: { pouredCount: i + 1, activePour: i, allDone: false }, + }, + { at, kind: "bottleTip", ingredientIndex: i }, + { at: at + 0.18, kind: "streamOn", ingredientIndex: i }, + { at: at + 0.2, kind: "fill", ingredientIndex: i }, + { at: at + 0.25, kind: "meniscus", ingredientIndex: i }, + { at: at + 0.38, kind: "splash", ingredientIndex: i }, + { at: at + 0.58, kind: "streamOff", ingredientIndex: i }, + { + at: at + 0.62, + kind: "bottleHide", + ingredientIndex: i, + snapshot: { pouredCount: i + 1, activePour: null, allDone: false }, + } + ); + } + + const finishAt = POUR_INTRO + n * POUR_SLOT; + if (hasIce) cues.push({ at: finishAt, kind: "ice" }); + cues.push({ at: finishAt + 0.12, kind: "garnish" }); + cues.push({ at: finishAt + 0.2, kind: "method" }); + if (isSecret) { + cues.push({ at: finishAt + POUR_FINISH, kind: "secret" }); + cues.push({ + at: finishAt + POUR_FINISH + SECRET_EXTRA, + kind: "done", + snapshot: doneSnap, + }); + } else { + cues.push({ + at: finishAt + POUR_FINISH, + kind: "done", + snapshot: doneSnap, + }); + } + return cues; +} +``` + +Slot relative times must match the spec table (0.00 / 0.18 / 0.20 / 0.25 / 0.38 / 0.58 / 0.62). `bottleHide` also carries the `activePour: null` snapshot. + +- [ ] **Step 4: Run the test and verify it passes** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/pour-script.test.ts` + +Expected: PASS. + +- [ ] **Step 5: Commit** + +```bash +git add src/components/demos/cocktail-mixer/pour-script.ts src/components/demos/cocktail-mixer/__tests__/pour-script.test.ts +git commit -m "feat: add mixer pour cue script" +``` + +--- + +### Task 3: Garnish map, foam rule, data tests + +**Files:** +- Create: `src/components/demos/cocktail-mixer/garnish-map.ts` +- Create: `src/components/demos/cocktail-mixer/__tests__/garnish-map.test.ts` +- Modify: `src/components/demos/cocktail-mixer/__tests__/cocktail-data.test.ts` + +**Interfaces:** +- Consumes: `GarnishType`, `GlassType` from `./types` +- Produces: `garnishPlates(type, glass)`, `SODA_INGREDIENT_NAME`, `isFoamIngredient(name)` + +- [ ] **Step 1: Write failing garnish/foam tests** + +```ts +/** @vitest-environment node */ +import { describe, it, expect } from "vitest"; +import { + garnishPlates, + isFoamIngredient, + SODA_INGREDIENT_NAME, +} from "../garnish-map"; +import { COCKTAILS, THE_COSMONAUT } from "../data"; + +describe("garnish-map", () => { + it("puts salt on from the first frame for salt_* types", () => { + expect(garnishPlates("salt_lime", "margarita")).toEqual([ + "rim-salt-margarita.png", + "garnish-lime-wheel.png", + ]); + expect(garnishPlates("salt_grapefruit", "highball")).toEqual([ + "rim-salt-highball.png", + "garnish-grapefruit-wedge.png", + ]); + }); + + it("maps rocket for the Cosmonaut", () => { + expect(garnishPlates("rocket", "coupe")).toEqual(["garnish-rocket.png"]); + }); + + it("foams only Grapefruit Soda, not Salty Dog juice", () => { + expect(SODA_INGREDIENT_NAME).toBe("Grapefruit Soda"); + const paloma = COCKTAILS.find((c) => c.name === "Paloma")!; + const dog = COCKTAILS.find((c) => c.name === "Salty Dog")!; + expect(paloma.ingredients.some((i) => isFoamIngredient(i.name))).toBe(true); + expect(dog.ingredients.some((i) => isFoamIngredient(i.name))).toBe(false); + expect(THE_COSMONAUT.ingredients.some((i) => isFoamIngredient(i.name))).toBe( + false + ); + }); +}); +``` + +In `cocktail-data.test.ts` replace `GLASS_CONFIGS` with `GLASS_BOUNDS`: + +```ts +import { GLASS_BOUNDS } from "../glass-bounds"; +const VALID_GLASSES = Object.keys(GLASS_BOUNDS); +``` + +Replace the “glass configs have valid liquid ranges” test with: + +```ts +it("every cocktail glass exists in GLASS_BOUNDS", () => { + for (const c of ALL_COCKTAILS) { + expect(GLASS_BOUNDS[c.glass]).toBeDefined(); + } +}); +``` + +- [ ] **Step 2: Run tests and verify RED** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/garnish-map.test.ts src/components/demos/cocktail-mixer/__tests__/cocktail-data.test.ts` + +Expected: garnish-map FAIL (missing module). cocktail-data FAIL if you already swapped the import; otherwise do the swap in Step 3. + +- [ ] **Step 3: Implement `garnish-map.ts`** + +```ts +import type { GarnishType, GlassType } from "./types"; + +export const SODA_INGREDIENT_NAME = "Grapefruit Soda"; + +export function isFoamIngredient(name: string): boolean { + return name === SODA_INGREDIENT_NAME; +} + +function saltPlate(glass: GlassType): string { + switch (glass) { + case "margarita": + return "rim-salt-margarita.png"; + case "highball": + return "rim-salt-highball.png"; + case "rocks": + case "coupe": + return "rim-salt-highball.png"; + default: { + const _exhaustive: never = glass; + return _exhaustive; + } + } +} + +export function garnishPlates( + type: GarnishType, + glass: GlassType +): string[] { + switch (type) { + case "lime_wheel": + return ["garnish-lime-wheel.png"]; + case "cherry": + return ["garnish-cherry.png"]; + case "orange_slice": + return ["garnish-orange-slice.png"]; + case "grapefruit_wedge": + return ["garnish-grapefruit-wedge.png"]; + case "salt_rim": + return [saltPlate(glass)]; + case "cherry_orange": + return ["garnish-cherry-orange.png"]; + case "salt_grapefruit": + return [saltPlate(glass), "garnish-grapefruit-wedge.png"]; + case "salt_lime": + return [saltPlate(glass), "garnish-lime-wheel.png"]; + case "rocket": + return ["garnish-rocket.png"]; + default: { + const _exhaustive: never = type; + return _exhaustive; + } + } +} +``` + +Then apply the `cocktail-data.test.ts` import swap. + +- [ ] **Step 4: Run tests and verify GREEN** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/garnish-map.test.ts src/components/demos/cocktail-mixer/__tests__/cocktail-data.test.ts` + +Expected: PASS. `GLASS_CONFIGS` may still exist in `data.ts` until Task 9; tests must not import it. + +- [ ] **Step 5: Commit** + +```bash +git add src/components/demos/cocktail-mixer/garnish-map.ts src/components/demos/cocktail-mixer/__tests__/garnish-map.test.ts src/components/demos/cocktail-mixer/__tests__/cocktail-data.test.ts +git commit -m "feat: map mixer garnishes and Paloma foam" +``` + +--- + +### Task 4: `pixi.js` + painted plates + +**Files:** +- Modify: `package.json` (add `pixi.js`) +- Create: `scripts/generate-mixer-plates.ts` +- Create: `src/components/demos/cocktail-mixer/assets/` (PNG output) +- Modify: `package.json` scripts — `"plates:mixer": "npx tsx scripts/generate-mixer-plates.ts"` + +**Interfaces:** +- Produces: every file listed in the spec Asset pack, plus `ASSETS` keys in Task 5. + +- [ ] **Step 1: Install Pixi** + +```bash +npm install pixi.js@^8.8.0 +``` + +Confirm `package.json` has `"pixi.js": "^8.8.0"` (or a resolved 8.8.x / 8.9.x). Do not add other Pixi packages. + +- [ ] **Step 2: Write `scripts/generate-mixer-plates.ts`** + +Use `sharp` (already a devDependency) to rasterize inline SVGs. Requirements the script must meet: + +- Glass plates **400×600**. Interior of the bowl is **fully transparent** on back and front. Mask PNG: opaque white = interior hole, transparent = glass/stem/outside. Align the hole to the painted bowl. +- One key light, camera-left. Warm `#3a2418` bar, cool glass `#cfe8f4` rims, no emoji. +- `bar-top.png` 560×840 (or 280×420 @2x) with a baked caustic strip under the bowl — no extra caustic file. +- `stream.png` **128×8** (not 8×64). Soft white-to-transparent highlight. +- `bottle.png` near-white 96×192 (2× of 48×96). +- `displace-noise.png` 128×128 grayscale noise. +- `rim-salt-margarita.png` wide arc; `rim-salt-highball.png` tall thin arc. +- Dots: `splash-dot.png`, `foam-dot.png` (softer), `star-mote.png`, `condensation-dot.png`, `ice-cube.png`, `frost.png`, `rim-highlight.png`, garnish plates named exactly as the spec. + +Put output in `src/components/demos/cocktail-mixer/assets/`. Do not commit 1.5px line-art glasses. + +Include a `main()` that writes every spec filename and `console.log`s the list. + +- [ ] **Step 3: Run the generator** + +```bash +npx tsx scripts/generate-mixer-plates.ts +ls src/components/demos/cocktail-mixer/assets | wc -l +``` + +Expected: all spec files present (29 names in the spec asset list). `stream.png` identified via `file` / sharp metadata as width > height. + +- [ ] **Step 4: Smoke-check stream orientation** + +```bash +npx tsx -e "import sharp from 'sharp'; const i = await sharp('src/components/demos/cocktail-mixer/assets/stream.png').metadata(); if (!i.width || !i.height || i.width < i.height * 4) { console.error(i); process.exit(1); } console.log(i.width, i.height);" +``` + +Expected: prints `128 8` (or 256 16). Exit 0. + +- [ ] **Step 5: Commit** + +```bash +git add package.json package-lock.json scripts/generate-mixer-plates.ts src/components/demos/cocktail-mixer/assets +git commit -m "feat: add pixi.js and mixer pour plates" +``` + +--- + +### Task 5: Application, asset loader, BarStage shell, CSS still + +**Files:** +- Create: `src/components/demos/cocktail-mixer/pixi/assets.ts` +- Create: `src/components/demos/cocktail-mixer/pixi/application.ts` +- Create: `src/components/demos/cocktail-mixer/pixi/css-still.tsx` +- Create: `src/components/demos/cocktail-mixer/pixi/bar-stage.tsx` +- Create: `src/components/demos/cocktail-mixer/__tests__/bar-stage.test.tsx` +- Modify: `src/components/demos/cocktail-mixer/components/recipe-view.tsx` (swap import; keep working if tests need a stage) + +**Interfaces:** +- Consumes: `Cocktail`, `PourSnapshot`, `STAGE`, plates from `assets/` +- Produces: `createMixerApp()`, `destroyMixerApp(app)`, `loadMixerAssets()`, `BarStage` props `{ cocktail, reducedMotion, onSnapshot }` + +Pixi constructors live behind **dynamic import inside `useEffect`**. Top-level `import "pixi.js"` in `bar-stage.tsx` will crash jsdom mixer tests. + +- [ ] **Step 1: Write failing BarStage tests** + +```tsx +/** @vitest-environment jsdom */ +import { describe, it, expect, vi } from "vitest"; +import { render, screen, waitFor } from "@testing-library/react"; +import { BarStage } from "../pixi/bar-stage"; +import { COCKTAILS } from "../data"; + +describe("BarStage", () => { + it("exposes bar-stage test id and cocktail name", async () => { + const onSnapshot = vi.fn(); + render( + + ); + const root = await screen.findByTestId("bar-stage"); + expect(root).toHaveAttribute("aria-label", "Margarita"); + expect(root).toHaveAttribute("role", "img"); + await waitFor(() => { + expect(onSnapshot).toHaveBeenCalledWith({ + pouredCount: 3, + activePour: null, + allDone: true, + }); + }); + }); +}); +``` + +jsdom has no WebGL: this test must pass via the **CSS still** path (`data-testid="bar-stage-css"` inside the wrapper is OK as long as the wrapper is `bar-stage`). + +- [ ] **Step 2: Run and verify RED** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/bar-stage.test.tsx` + +Expected: FAIL — `BarStage` missing. + +- [ ] **Step 3: Implement loader + app + CSS still + BarStage shell** + +`pixi/assets.ts` — list every PNG as a `Record` of `new URL("../assets/", import.meta.url).href` (or static imports). Export `MIXER_ASSET_URLS` and `async function loadMixerAssets(Assets: typeof import("pixi.js").Assets)`. + +`pixi/application.ts`: + +```ts +import type { Application } from "pixi.js"; +import { STAGE } from "../glass-bounds"; + +export async function createMixerApp( + PIXI: typeof import("pixi.js") +): Promise { + const app = new PIXI.Application(); + await app.init({ + width: STAGE.width, + height: STAGE.height, + resolution: Math.min(2, window.devicePixelRatio || 1), + backgroundAlpha: 0, + antialias: true, + autoDensity: true, + }); + return app; +} + +export function destroyMixerApp(app: Application): void { + app.destroy( + { removeView: true }, + { children: true, texture: false, textureSource: false } + ); +} +``` + +`pixi/css-still.tsx` — 280×420 stack: `cocktail.color` fill with `mask-image: url(glass-{type}-mask.png)`, then `glass-{type}-front.png`, salt if `garnishType.startsWith("salt_")`, garnish PNG from `garnishPlates` (skip the salt plate already shown), Paloma foam dots if `cocktail.name === "Paloma"`. No Cosmonaut frost. Wrapper CSS: `width: 100%; max-width: 280px; height: auto`. + +`pixi/bar-stage.tsx` (shell for this task): + +- Props as spec. +- `useEffect` with `let cancelled = false`. +- Dynamic `import("pixi.js")` → `createMixerApp` → `loadMixerAssets`. +- On failure or `cancelled`, if not cancelled: render CSS still and `onSnapshot({ pouredCount: n, activePour: null, allDone: true })`. +- On success this task: still call `applyFinished` **later** (Task 6). For now, if init succeeds, append `app.canvas`, set `data-testid="bar-stage"`, and if `reducedMotion` emit `allDone` without mounting a director. +- Cleanup: `cancelled = true`; `destroyMixerApp` if app exists. +- Outer: `
` + +Do not mount `PourDirector` yet. + +- [ ] **Step 4: Run BarStage test GREEN** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/bar-stage.test.tsx` + +Expected: PASS (CSS still + allDone). + +- [ ] **Step 5: Commit** + +```bash +git add src/components/demos/cocktail-mixer/pixi src/components/demos/cocktail-mixer/__tests__/bar-stage.test.tsx +git commit -m "feat: mount mixer Pixi stage with CSS still fallback" +``` + +--- + +### Task 6: Rig, liquid MeshPlane, two streams, rocks ice + +**Files:** +- Create: `src/components/demos/cocktail-mixer/pixi/liquid.ts` +- Create: `src/components/demos/cocktail-mixer/pixi/stream.ts` +- Create: `src/components/demos/cocktail-mixer/pixi/rig.ts` +- Modify: `src/components/demos/cocktail-mixer/pixi/bar-stage.tsx` + +**Interfaces:** +- Consumes: `GlassBounds`, cocktail colors, textures from `Assets` +- Produces: `MixerRig` with `uniforms`, `applyFinished(cocktail)`, `setFillHeight(h)`, `setStream(on, color)`, `neckWorld()`, `tick(deltaMs)`, `destroy()` + +Uniform object (GSAP tweens these numbers): + +```ts +export type MixerUniforms = { + fillHeight: number; + fillColor: string; + flashColor: string; + flashAmount: number; + meniscusAmp: number; + swirl: number; + vortex: number; + streamOn: number; + streamColor: string; + bottleAngle: number; + bottleAlpha: number; + iceAlpha: number; + garnishAlpha: number; + frostAlpha: number; + displacementOn: boolean; +}; +``` + +- [ ] **Step 1: Write a failing uniform/rest-pose unit test (no WebGL)** + +Create `src/components/demos/cocktail-mixer/pixi/meniscus.ts` **or** export `writeMeniscusVertices` from `liquid.ts` as a pure function: + +```ts +export function writeMeniscusVertices( + positions: Float32Array, + cols: number, + rows: number, + width: number, + height: number, + amp: number, + swirl: number, + vortex: number, + bowlCenterX: number +): void +``` + +Test: `verticesX: 12`, `verticesY: 8`; at `swirl=0, vortex=0, amp=2` the top row Y varies by ~2px; at `vortex=1` top-row X shifts up to 8px around center; at `swirl=0.4` top-row X jitter magnitude ≤ 3px; lower rows stay on the grid. + +```ts +/** @vitest-environment node */ +import { describe, it, expect } from "vitest"; +import { writeMeniscusVertices } from "../pixi/liquid"; + +describe("writeMeniscusVertices", () => { + it("keeps lower rows on the grid and bends only the top row", () => { + const cols = 12; + const rows = 8; + const pos = new Float32Array(cols * rows * 2); + writeMeniscusVertices(pos, cols, rows, 130, 154, 2, 0, 0, 65); + const lastRow = (rows - 1) * cols; + // bottom-left y ≈ height + expect(pos[lastRow * 2 + 1]).toBeCloseTo(154, 0); + const topYs = Array.from({ length: cols }, (_, i) => pos[i * 2 + 1]); + const spread = Math.max(...topYs) - Math.min(...topYs); + expect(spread).toBeGreaterThan(0); + expect(spread).toBeLessThanOrEqual(5); + }); +}); +``` + +- [ ] **Step 2: Run and verify RED** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/liquid-vertices.test.ts` + +Put the test at `__tests__/liquid-vertices.test.ts`. Expected: FAIL. + +- [ ] **Step 3: Implement liquid + stream + rig for rocks** + +`liquid.ts`: codegen a 64×32 canvas gradient texture from `fillColor` (use `document.createElement("canvas")` in the browser; for vertex tests, `writeMeniscusVertices` must not need DOM). MeshPlane `verticesX: 12`, `verticesY: 8`. DisplacementFilter `scale: { x: 4, y: 4 }`, map `addressMode: "repeat"`, `addChild` the sprite, do not set `visible = false`. Off when `displacementOn` is false. + +`stream.ts`: two MeshRopes, 20 points, quadratic sag 6px toward +Y, texture `stream.png`. `rebuild(neck, rimY, surfaceY, on)`. + +`rig.ts` display list **back to front** as the spec sandwich. One interior `Container` + one mask sprite (`glass-{type}-mask.png`). Ice sprites from `ICE_LAYOUT` for rocks, `alpha` from `iceAlpha`, already inside the bowl. `applyFinished` sets the spec checklist (fillHeight 1, stream off, bottle hidden, swirl/vortex 0, meniscusAmp rest 2, displacement off, ice visible if hasIce, garnish on, Paloma foam on, frost off). + +Wire BarStage success path: `createRig` → if `reducedMotion`, `applyFinished` then emit allDone **before** appending canvas. + +- [ ] **Step 4: Run vertex test GREEN and mixer tests** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/liquid-vertices.test.ts src/components/demos/cocktail-mixer/__tests__/bar-stage.test.tsx src/components/demos/cocktail-mixer/__tests__/cocktail-mixer.test.tsx` + +Expected: PASS. Mixer tests still use `GlassScene` until Task 8 — they must keep passing. + +- [ ] **Step 5: Commit** + +```bash +git add src/components/demos/cocktail-mixer/pixi src/components/demos/cocktail-mixer/__tests__/liquid-vertices.test.ts +git commit -m "feat: add mixer liquid mesh, streams, and rocks rig" +``` + +--- + +### Task 7: Remaining glasses, garnishes, bottle, salt, particles + +**Files:** +- Create: `src/components/demos/cocktail-mixer/pixi/particles.ts` +- Modify: `src/components/demos/cocktail-mixer/pixi/rig.ts` + +**Interfaces:** +- Consumes: `garnishPlates`, `isFoamIngredient`, `CONDENSATION_LAYOUT` +- Produces: `emitSplash(x, y, color)`, `pinFoamTo(surfaceY)`, `emitMotes()`, `killEphemeral()` (splash/motes/frost) + +- [ ] **Step 1: Write failing foam/salt pure tests** + +Extend `garnish-map.test.ts` is already green. Add `src/components/demos/cocktail-mixer/__tests__/particles-policy.test.ts`: + +```ts +/** @vitest-environment node */ +import { describe, it, expect } from "vitest"; +import { shouldEmitFoam, shouldShowSalt } from "../pixi/particles"; +import { COCKTAILS } from "../data"; + +describe("particle policy", () => { + it("foams Paloma soda pour only", () => { + const paloma = COCKTAILS.find((c) => c.name === "Paloma")!; + expect(shouldEmitFoam(paloma, 0)).toBe(false); + expect(shouldEmitFoam(paloma, 1)).toBe(true); + expect(shouldEmitFoam(paloma, 2)).toBe(false); + const dog = COCKTAILS.find((c) => c.name === "Salty Dog")!; + expect(dog.ingredients.every((_, i) => !shouldEmitFoam(dog, i))).toBe(true); + }); + + it("shows salt when garnishType starts with salt_", () => { + expect(shouldShowSalt("salt_lime")).toBe(true); + expect(shouldShowSalt("cherry")).toBe(false); + }); +}); +``` + +Export `shouldEmitFoam` / `shouldShowSalt` from `particles.ts` as pure functions (no Pixi types). + +- [ ] **Step 2: Run RED** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/particles-policy.test.ts` + +Expected: FAIL. + +- [ ] **Step 3: Implement particles + rest of rig** + +```ts +export function shouldShowSalt(garnishType: string): boolean { + return garnishType.startsWith("salt_"); +} + +export function shouldEmitFoam( + cocktail: Cocktail, + ingredientIndex: number +): boolean { + return isFoamIngredient(cocktail.ingredients[ingredientIndex]?.name ?? ""); +} +``` + +ParticleContainer `boundsArea` = `{ x: 0, y: 0, width: 280, height: 420 }` (Pixi `Rectangle`). Splash ≤40, gravity, life <400ms, tint from ingredient, `dynamicProperties.color: true`. Foam ≤20, **no gravity**, pin Y to surface, stay after `allDone` for Paloma. Motes ≤12 + `frost.png` for secret extra, then `killEphemeral`. + +Garnish: salt sprite visible from frame one; other garnish `alpha` from `garnishAlpha`. Bottle 48×96, pivot neck, `rotation` from `bottleAngle` (degrees → radians), `alpha` from `bottleAlpha`. Condensation static. `rim-highlight.png` on front glass, camera-left, under salt. Hide highlight if fps fallback flag is set. + +- [ ] **Step 4: Run GREEN** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/particles-policy.test.ts src/components/demos/cocktail-mixer/__tests__/garnish-map.test.ts` + +Expected: PASS. + +- [ ] **Step 5: Commit** + +```bash +git add src/components/demos/cocktail-mixer/pixi src/components/demos/cocktail-mixer/__tests__/particles-policy.test.ts +git commit -m "feat: add mixer foam, salt, garnishes, and bottle" +``` + +--- + +### Task 8: PourDirector + RecipeView + +**Files:** +- Create: `src/components/demos/cocktail-mixer/pixi/pour-director.tsx` +- Modify: `src/components/demos/cocktail-mixer/pixi/bar-stage.tsx` +- Modify: `src/components/demos/cocktail-mixer/components/recipe-view.tsx` +- Create: `src/components/demos/cocktail-mixer/__tests__/recipe-view.test.tsx` + +**Interfaces:** +- Consumes: `buildPourCues`, `MixerRig`, `useGSAP` from `../gsap-setup` +- Produces: GSAP timeline from cues; `onSnapshot` via `gsap.call` + +Cue → tween map (durations from spec): + +| kind | tween | +|------|--------| +| bottleTip | `bottleAlpha` 1, `bottleAngle` 0 → −50, 0.28s `power3.inOut`; set `streamColor` / `flashColor` to ingredient color | +| streamOn | `streamOn` 1 | +| fill | `fillHeight` to `(i+1)/n`, 0.45s `power2.out` | +| meniscus | `meniscusAmp` up, `flashAmount` 1 → 0 over 0.2s | +| splash | `rig.emitSplash(...)` | +| streamOff | `streamOn` 0 | +| bottleHide | `bottleAngle` 0 in 0.16s, then `bottleAlpha` 0 | +| ice | `iceAlpha` 0 → 1, 0.28s | +| garnish | `garnishAlpha` 0 → 1, 0.28s | +| method | shaken: `swirl` 0.4 → 0 in 0.28s `power2.out`; stirred: `vortex` 1 → 0 in 0.40s `sine.inOut`; built: none | +| secret | `frostAlpha` 1 → 0 over 0.4s + `emitMotes()` | +| done | `applyFinished` (keep Paloma foam), snapshot `allDone` | +| snapshot | `onSnapshot(cue.snapshot)` | + +GSAP tweens **uniform numbers**. `rig.tick` reads them and writes meshes. + +- [ ] **Step 1: Write failing RecipeView test with mocked BarStage** + +```tsx +/** @vitest-environment jsdom */ +vi.mock("../pixi/bar-stage", () => ({ + BarStage: ({ + onSnapshot, + cocktail, + }: { + onSnapshot: (s: { pouredCount: number; activePour: null; allDone: boolean }) => void; + cocktail: { ingredients: unknown[] }; + }) => { + useEffect(() => { + onSnapshot({ + pouredCount: cocktail.ingredients.length, + activePour: null, + allDone: true, + }); + }, [cocktail, onSnapshot]); + return
; + }, +})); +``` + +Assert `onPourComplete` fires once. Import `useEffect` in the mock factory file via a real test component pattern: prefer injecting by rendering `RecipeView` with the mock module. + +- [ ] **Step 2: Run RED** (RecipeView still imports GlassScene — mock unused, complete callback may still depend on GlassScene/GSAP) + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/recipe-view.test.tsx` + +Expected: FAIL until RecipeView imports BarStage. + +- [ ] **Step 3: Implement PourDirector and swap RecipeView** + +`pour-director.tsx`: + +```tsx +"use client"; +import { useGSAP, gsap } from "../gsap-setup"; +import { buildPourCues } from "../pour-script"; +import type { MixerRig } from "./rig"; +import type { Cocktail } from "../types"; +import type { PourSnapshot } from "../pour-script"; +import { GLASS_BOUNDS } from "../glass-bounds"; + +export function PourDirector({ + cocktail, + rig, + onSnapshot, +}: { + cocktail: Cocktail; + rig: MixerRig; + onSnapshot: (s: PourSnapshot) => void; +}) { + useGSAP( + () => { + const cues = buildPourCues({ + ingredientCount: cocktail.ingredients.length, + hasIce: GLASS_BOUNDS[cocktail.glass].hasIce, + isSecret: Boolean(cocktail.isSecret), + reducedMotion: false, + }); + const tl = gsap.timeline(); + for (const cue of cues) { + // switch (cue.kind) with never default — map table above + } + return () => tl.kill(); + }, + { dependencies: [cocktail.name], revertOnUpdate: true } + ); + return null; +} +``` + +`BarStage`: when `ready && !reducedMotion && rig`, render ``. Ticker: `app.ticker.add(() => rig.tick(app.ticker.deltaMS))`. After done, freeze displacement / kill ephemeral as `applyFinished`. + +`recipe-view.tsx`: import `BarStage` from `../pixi/bar-stage` and `PourSnapshot` from `../pour-script`. Replace `GlassScene`. Keep `useReducedMotion`. + +- [ ] **Step 4: Run GREEN** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/recipe-view.test.tsx src/components/demos/cocktail-mixer/__tests__/cocktail-mixer.test.tsx src/components/demos/cocktail-mixer/__tests__/bar-stage.test.tsx` + +Expected: PASS. + +- [ ] **Step 5: Commit** + +```bash +git add src/components/demos/cocktail-mixer/pixi/pour-director.tsx src/components/demos/cocktail-mixer/pixi/bar-stage.tsx src/components/demos/cocktail-mixer/components/recipe-view.tsx src/components/demos/cocktail-mixer/__tests__/recipe-view.test.tsx +git commit -m "feat: drive mixer pour with GSAP director" +``` + +--- + +### Task 9: Delete SVG pour stack + +**Files:** +- Delete: `glass-scene.tsx`, `pour-timeline.ts`, `svg/glasses.tsx`, `svg/bottles.tsx`, `svg/garnishes.tsx`, `svg/decorations.tsx`, `components/glass-visualization.tsx`, `components/cosmonaut-reveal.tsx`, `__tests__/pour-timeline.test.ts`, `__tests__/pour-sequence.test.ts` +- Modify: `hooks.ts` (remove `usePourSequence` and pour constants; keep `useCocktailProgress`) +- Modify: `data.ts` (remove `GLASS_CONFIGS`, `WAVE_PATH`, `generateWavePath`, `ICE_POSITIONS`, `BUBBLE_SETS`, `CONDENSATION_DROPS`; keep `WAVE_STYLES` as **only** `cosmonaut-glow`) +- Modify: `gsap-setup.ts` (keep `gsap` + `useGSAP`; drop DrawSVG, MorphSVG, Physics2D, Flip, CustomWiggle unless still imported) +- Modify: `types.ts` (remove `GlassConfig` if unused) +- Modify: `index.tsx` (still injects `WAVE_STYLES`) + +- [ ] **Step 1: Run tests that still import deleted modules — expect RED after deletes, so grep first** + +```bash +rg "pour-timeline|GlassScene|usePourSequence|GLASS_CONFIGS|glass-visualization|CosmonautReveal|WAVE_PATH" src/components/demos/cocktail-mixer +``` + +Expected: only files you are about to delete / update. + +- [ ] **Step 2: Delete and slim as listed. `WAVE_STYLES` becomes:** + +```ts +export const WAVE_STYLES = ` +@keyframes cosmonaut-glow { + 0%, 100% { box-shadow: 0 0 8px #8b5cf640, 0 0 24px #8b5cf620; } + 50% { box-shadow: 0 0 16px #8b5cf680, 0 0 40px #8b5cf640; } +} +`; +``` + +`gsap-setup.ts`: + +```ts +"use client"; +import gsap from "gsap"; +import { useGSAP } from "@gsap/react"; + +let registered = false; +export function registerMixerGsap(): void { + if (registered) return; + gsap.registerPlugin(useGSAP); + registered = true; +} +registerMixerGsap(); +export { gsap, useGSAP }; +``` + +- [ ] **Step 3: Run the mixer test suite** + +Run: `npx vitest run src/components/demos/cocktail-mixer` + +Expected: PASS. No `pour-timeline` / `pour-sequence` files. + +- [ ] **Step 4: Commit** + +```bash +git add -A src/components/demos/cocktail-mixer +git commit -m "refactor: remove SVG pour stage from cocktail mixer" +``` + +--- + +### Task 10: FPS fallback, WebGL still, method/secret already in director + +**Files:** +- Modify: `src/components/demos/cocktail-mixer/pixi/rig.ts` +- Modify: `src/components/demos/cocktail-mixer/pixi/bar-stage.tsx` + +**Interfaces:** +- Consumes: ticker FPS +- Produces: after 30 consecutive frames `< 50fps`, `displacementOn = false` and hide `rim-highlight`. Keep the pour. + +- [ ] **Step 1: Write failing fps helper test** + +```ts +/** @vitest-environment node */ +import { describe, it, expect } from "vitest"; +import { FpsBudget } from "../pixi/fps-budget"; + +describe("FpsBudget", () => { + it("trips after 30 frames under 50fps", () => { + const b = new FpsBudget(50, 30); + for (let i = 0; i < 29; i++) expect(b.sample(40)).toBe(false); + expect(b.sample(40)).toBe(true); + }); + it("resets when fps recovers", () => { + const b = new FpsBudget(50, 30); + for (let i = 0; i < 10; i++) b.sample(40); + expect(b.sample(60)).toBe(false); + }); +}); +``` + +- [ ] **Step 2: RED** + +Run: `npx vitest run src/components/demos/cocktail-mixer/__tests__/fps-budget.test.ts` + +- [ ] **Step 3: Implement `pixi/fps-budget.ts` and sample `1000/deltaMS` in `rig.tick`. Skip displacement when `devicePixelRatio < 1.5` or reduced motion or `allDone`.** + +Confirm CSS still path already emits `allDone` (Task 5). Confirm `applyFinished` kills frost/motes/splash and keeps Paloma foam. + +- [ ] **Step 4: GREEN + full mixer tests** + +Run: `npx vitest run src/components/demos/cocktail-mixer` + +Expected: PASS. + +- [ ] **Step 5: Commit** + +```bash +git add src/components/demos/cocktail-mixer/pixi/fps-budget.ts src/components/demos/cocktail-mixer/pixi/rig.ts src/components/demos/cocktail-mixer/__tests__/fps-budget.test.ts +git commit -m "feat: drop mixer displacement under 50fps" +``` + +--- + +### Task 11: Full verify + browser pass + +**Files:** none new unless tests/build fail. + +- [ ] **Step 1: `npm test`** + +Expected: all Vitest suites PASS (including existing 889-ish tests plus new ones). Fix failures in this task. + +- [ ] **Step 2: `npm run build`** + +Expected: Next.js production build PASS. Pixi must not leak into the homepage bundle (mixer is dynamic). If the build traces Pixi on `/`, fix the import boundary. + +- [ ] **Step 3: Browser pass on `/work/cocktail-mixer`** + +Start `npm run dev`. Exercise: + +1. Margarita — shaken, salt from frame one, no ice +2. Old Fashioned — stirred vortex on liquid, rocks, ice stays in the bowl +3. Paloma — built, foam still there when paused +4. Salty Dog — salt, **no** foam +5. Whiskey Sour — shaken coupe, no ice +6. Unlock Cosmonaut (or seed localStorage `cocktails_made` with six names) — frost + motes, then still; XP after frost +7. 320px width +8. `prefers-reduced-motion: reduce` — finished still on first painted frame + +Fail the task if ice leaves the bowl, the stream is a fat ribbon, or the paused frame looks like wireframe SVG. + +- [ ] **Step 4: Commit any fixes** + +```bash +git add -A +git commit -m "fix: mixer pour browser-pass polish" +``` + +(Skip this commit if nothing changed.) + +- [ ] **Step 5: Push** + +```bash +git push -u origin cursor/cocktail-mixer-pixi-pour-5c83 +``` + +--- + +## Self-review + +**Spec coverage** + +| Spec requirement | Task | +|---|---| +| `glass-bounds.ts` seeds | 1 | +| `pourDuration` / snapshots / secret extra | 2 | +| Garnish plates + Paloma foam name | 3 | +| Asset pack + stream 128×8 + pixi.js | 4 | +| v8 `init`, abort, CSS still, `bar-stage` | 5 | +| MeshPlane, two ropes, rocks ice, sandwich | 6 | +| Particles, salt, bottle, other glasses | 7 | +| PourDirector / useGSAP child | 8 | +| Delete SVG pour, slim GSAP | 9 | +| FPS + displacement off after allDone | 10 | +| npm test, build, browser drinks | 11 | + +**Placeholder scan:** no TBD/TODO. Stream size locked. `PourSnapshot` lives in `pour-script.ts`. `never` defaults on garnish/glass switches. + +**Type consistency:** `MixerRig`, `MixerUniforms`, `PourCue`, `PourSnapshot`, `BarStage` props match across tasks 2, 5, 6, 8. + +**Out of scope left out:** Three/R3F, site-wide Pixi, oz-weighted fill, audio, card-icon Pixi rewrite. From 90205e65c718c72fef36b11d1412ba8d9a299137 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sun, 6 Sep 2026 04:54:52 +0000 Subject: [PATCH 05/26] feat: add cocktail mixer glass bounds Co-authored-by: Travis Jones --- .../__tests__/glass-bounds.test.ts | 48 ++++++++ .../demos/cocktail-mixer/glass-bounds.ts | 109 ++++++++++++++++++ 2 files changed, 157 insertions(+) create mode 100644 src/components/demos/cocktail-mixer/__tests__/glass-bounds.test.ts create mode 100644 src/components/demos/cocktail-mixer/glass-bounds.ts diff --git a/src/components/demos/cocktail-mixer/__tests__/glass-bounds.test.ts b/src/components/demos/cocktail-mixer/__tests__/glass-bounds.test.ts new file mode 100644 index 0000000..e58d848 --- /dev/null +++ b/src/components/demos/cocktail-mixer/__tests__/glass-bounds.test.ts @@ -0,0 +1,48 @@ +/** @vitest-environment node */ +import { describe, it, expect } from "vitest"; +import { + GLASS_BOUNDS, + ICE_LAYOUT, + CONDENSATION_LAYOUT, + STAGE, + GLASS_RECT, +} from "../glass-bounds"; +import type { GlassType } from "../types"; + +const TYPES: GlassType[] = ["rocks", "highball", "coupe", "margarita"]; + +describe("glass-bounds", () => { + it("defines a 280×420 stage and a 200×300 glass rect", () => { + expect(STAGE).toEqual({ width: 280, height: 420 }); + expect(GLASS_RECT).toEqual({ x: 40, y: 48, width: 200, height: 300 }); + }); + + it.each(TYPES)("%s has liquidTop < liquidBottom and rimY ≤ liquidTop", (type) => { + const b = GLASS_BOUNDS[type]; + expect(b.liquidTop).toBeLessThan(b.liquidBottom); + expect(b.rimY).toBeLessThanOrEqual(b.liquidTop); + expect(b.bowlWidth).toBeGreaterThan(0); + }); + + it("gives ice only to rocks and highball", () => { + expect(GLASS_BOUNDS.rocks.hasIce).toBe(true); + expect(GLASS_BOUNDS.highball.hasIce).toBe(true); + expect(GLASS_BOUNDS.coupe.hasIce).toBe(false); + expect(GLASS_BOUNDS.margarita.hasIce).toBe(false); + expect(ICE_LAYOUT.rocks).toHaveLength(2); + expect(ICE_LAYOUT.highball).toHaveLength(3); + }); + + it("places bottle neck in local sprite space, not stage 100,40", () => { + for (const type of TYPES) { + expect(GLASS_BOUNDS[type].bottle.neckX).toBeLessThan(48); + expect(GLASS_BOUNDS[type].bottle.neckY).toBeLessThan(48); + } + }); + + it("has condensation dots for every glass", () => { + for (const type of TYPES) { + expect(CONDENSATION_LAYOUT[type].length).toBeGreaterThan(0); + } + }); +}); diff --git a/src/components/demos/cocktail-mixer/glass-bounds.ts b/src/components/demos/cocktail-mixer/glass-bounds.ts new file mode 100644 index 0000000..50641c1 --- /dev/null +++ b/src/components/demos/cocktail-mixer/glass-bounds.ts @@ -0,0 +1,109 @@ +import type { GlassType } from "./types"; + +export const STAGE = { width: 280, height: 420 } as const; +export const GLASS_RECT = { x: 40, y: 48, width: 200, height: 300 } as const; + +export type IceCube = { + dx: number; + dy: number; + angle: number; + scale: number; +}; + +export type GlassBounds = { + liquidTop: number; + liquidBottom: number; + rimY: number; + bowlCenterX: number; + bowlWidth: number; + hasIce: boolean; + garnishX: number; + garnishY: number; + bottle: { x: number; y: number; neckX: number; neckY: number }; +}; + +export const GLASS_BOUNDS: Record = { + rocks: { + liquidTop: 100, + liquidBottom: 254, + rimY: 95, + bowlCenterX: 100, + bowlWidth: 130, + hasIce: true, + garnishX: 140, + garnishY: 90, + bottle: { x: 168, y: -8, neckX: 24, neckY: 8 }, + }, + highball: { + liquidTop: 50, + liquidBottom: 255, + rimY: 45, + bowlCenterX: 100, + bowlWidth: 82, + hasIce: true, + garnishX: 132, + garnishY: 42, + bottle: { x: 168, y: -8, neckX: 24, neckY: 8 }, + }, + coupe: { + liquidTop: 70, + liquidBottom: 180, + rimY: 65, + bowlCenterX: 100, + bowlWidth: 150, + hasIce: false, + garnishX: 148, + garnishY: 62, + bottle: { x: 168, y: -8, neckX: 24, neckY: 8 }, + }, + margarita: { + liquidTop: 60, + liquidBottom: 175, + rimY: 55, + bowlCenterX: 100, + bowlWidth: 170, + hasIce: false, + garnishX: 150, + garnishY: 52, + bottle: { x: 168, y: -8, neckX: 24, neckY: 8 }, + }, +}; + +export const ICE_LAYOUT: Record<"rocks" | "highball", IceCube[]> = { + rocks: [ + { dx: -8, dy: 10, angle: 12, scale: 1.35 }, + { dx: 18, dy: 22, angle: -8, scale: 0.85 }, + ], + highball: [ + { dx: -10, dy: -36, angle: 10, scale: 1 }, + { dx: 12, dy: -8, angle: -12, scale: 0.9 }, + { dx: -4, dy: 28, angle: 18, scale: 0.8 }, + ], +}; + +export const CONDENSATION_LAYOUT: Record = { + rocks: [ + { dx: -28, dy: 36 }, + { dx: 26, dy: 54 }, + { dx: -12, dy: 72 }, + { dx: 18, dy: 90 }, + ], + highball: [ + { dx: -22, dy: 40 }, + { dx: 20, dy: 70 }, + { dx: -16, dy: 100 }, + { dx: 14, dy: 130 }, + { dx: -8, dy: 160 }, + { dx: 10, dy: 190 }, + ], + coupe: [ + { dx: -40, dy: 18 }, + { dx: 36, dy: 28 }, + { dx: -12, dy: 40 }, + ], + margarita: [ + { dx: -48, dy: 16 }, + { dx: 44, dy: 26 }, + { dx: -10, dy: 36 }, + ], +}; From 0371ab661c623c25b48bf41fd0fc7c9e028398f8 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sun, 6 Sep 2026 04:57:46 +0000 Subject: [PATCH 06/26] feat: add mixer pour cue script Co-authored-by: Travis Jones --- .../__tests__/pour-script.test.ts | 94 +++++++++++++++ .../demos/cocktail-mixer/pour-script.ts | 114 ++++++++++++++++++ 2 files changed, 208 insertions(+) create mode 100644 src/components/demos/cocktail-mixer/__tests__/pour-script.test.ts create mode 100644 src/components/demos/cocktail-mixer/pour-script.ts diff --git a/src/components/demos/cocktail-mixer/__tests__/pour-script.test.ts b/src/components/demos/cocktail-mixer/__tests__/pour-script.test.ts new file mode 100644 index 0000000..00fc08a --- /dev/null +++ b/src/components/demos/cocktail-mixer/__tests__/pour-script.test.ts @@ -0,0 +1,94 @@ +/** @vitest-environment node */ +import { describe, it, expect } from "vitest"; +import { + POUR_FINISH, + POUR_INTRO, + POUR_SLOT, + SECRET_EXTRA, + buildPourCues, + pourDuration, +} from "../pour-script"; + +describe("pour-script", () => { + it("matches the duration formula", () => { + expect(pourDuration(3, false)).toBeCloseTo( + POUR_INTRO + 3 * POUR_SLOT + POUR_FINISH + ); + expect(pourDuration(3, false)).toBeCloseTo(3.4); + expect(pourDuration(4, true)).toBeCloseTo( + POUR_INTRO + 4 * POUR_SLOT + POUR_FINISH + SECRET_EXTRA + ); + expect(pourDuration(4, true)).toBeCloseTo(4.65); + }); + + it("increments pouredCount at each slot start", () => { + const cues = buildPourCues({ + ingredientCount: 3, + hasIce: false, + isSecret: false, + reducedMotion: false, + }); + const snaps = cues.filter((c) => c.kind === "snapshot").map((c) => c.snapshot); + expect(snaps[0]).toEqual({ + pouredCount: 0, + activePour: null, + allDone: false, + }); + expect(snaps.some((s) => s?.pouredCount === 1 && s.activePour === 0)).toBe( + true + ); + expect(snaps.at(-1)).toEqual({ + pouredCount: 3, + activePour: null, + allDone: true, + }); + }); + + it("emits allDone immediately for reduced motion", () => { + const cues = buildPourCues({ + ingredientCount: 3, + hasIce: true, + isSecret: true, + reducedMotion: true, + }); + expect(cues).toEqual([ + { + at: 0, + kind: "snapshot", + snapshot: { pouredCount: 3, activePour: null, allDone: true }, + }, + ]); + }); + + it("skips ice cues when hasIce is false", () => { + const noIce = buildPourCues({ + ingredientCount: 2, + hasIce: false, + isSecret: false, + reducedMotion: false, + }); + const iced = buildPourCues({ + ingredientCount: 2, + hasIce: true, + isSecret: false, + reducedMotion: false, + }); + expect(noIce.some((c) => c.kind === "ice")).toBe(false); + expect(iced.some((c) => c.kind === "ice")).toBe(true); + }); + + it("places Cosmonaut allDone after SECRET_EXTRA", () => { + const cues = buildPourCues({ + ingredientCount: 4, + hasIce: false, + isSecret: true, + reducedMotion: false, + }); + const secret = cues.find((c) => c.kind === "secret"); + const done = cues.find((c) => c.kind === "done"); + expect(secret).toBeTruthy(); + expect(done?.at).toBeCloseTo(pourDuration(4, true)); + expect(done?.at).toBeGreaterThan(secret!.at); + expect(done?.snapshot?.allDone).toBe(true); + }); +}); diff --git a/src/components/demos/cocktail-mixer/pour-script.ts b/src/components/demos/cocktail-mixer/pour-script.ts new file mode 100644 index 0000000..c979c46 --- /dev/null +++ b/src/components/demos/cocktail-mixer/pour-script.ts @@ -0,0 +1,114 @@ +export const POUR_INTRO = 0.2; +export const POUR_SLOT = 0.85; +export const POUR_FINISH = 0.65; +export const SECRET_EXTRA = 0.4; + +export interface PourSnapshot { + pouredCount: number; + activePour: number | null; + allDone: boolean; +} + +export type PourCueKind = + | "snapshot" + | "bottleTip" + | "streamOn" + | "fill" + | "meniscus" + | "splash" + | "streamOff" + | "bottleHide" + | "ice" + | "garnish" + | "method" + | "secret" + | "done"; + +export interface PourCue { + at: number; + kind: PourCueKind; + ingredientIndex?: number; + snapshot?: PourSnapshot; +} + +export function pourDuration( + ingredientCount: number, + isSecret = false +): number { + return ( + POUR_INTRO + + ingredientCount * POUR_SLOT + + POUR_FINISH + + (isSecret ? SECRET_EXTRA : 0) + ); +} + +export function buildPourCues({ + ingredientCount, + hasIce, + isSecret, + reducedMotion, +}: { + ingredientCount: number; + hasIce: boolean; + isSecret: boolean; + reducedMotion: boolean; +}): PourCue[] { + const n = ingredientCount; + const doneSnap: PourSnapshot = { + pouredCount: n, + activePour: null, + allDone: true, + }; + if (reducedMotion) { + return [{ at: 0, kind: "snapshot", snapshot: doneSnap }]; + } + + const cues: PourCue[] = [ + { + at: 0, + kind: "snapshot", + snapshot: { pouredCount: 0, activePour: null, allDone: false }, + }, + ]; + + for (let i = 0; i < n; i++) { + const at = POUR_INTRO + i * POUR_SLOT; + cues.push( + { + at, + kind: "snapshot", + ingredientIndex: i, + snapshot: { pouredCount: i + 1, activePour: i, allDone: false }, + }, + { at, kind: "bottleTip", ingredientIndex: i }, + { at: at + 0.18, kind: "streamOn", ingredientIndex: i }, + { at: at + 0.2, kind: "fill", ingredientIndex: i }, + { at: at + 0.25, kind: "meniscus", ingredientIndex: i }, + { at: at + 0.38, kind: "splash", ingredientIndex: i }, + { at: at + 0.58, kind: "streamOff", ingredientIndex: i }, + { + at: at + 0.62, + kind: "bottleHide", + ingredientIndex: i, + snapshot: { pouredCount: i + 1, activePour: null, allDone: false }, + } + ); + } + + const finishAt = POUR_INTRO + n * POUR_SLOT; + if (hasIce) cues.push({ at: finishAt, kind: "ice" }); + cues.push({ at: finishAt + 0.12, kind: "garnish" }); + cues.push({ at: finishAt + 0.2, kind: "method" }); + if (isSecret) { + cues.push({ at: finishAt + POUR_FINISH, kind: "secret" }); + const doneAt = finishAt + POUR_FINISH + SECRET_EXTRA; + cues.push({ at: doneAt, kind: "snapshot", snapshot: doneSnap }); + cues.push({ at: doneAt, kind: "done", snapshot: doneSnap }); + } else { + const doneAt = finishAt + POUR_FINISH; + cues.push({ at: doneAt, kind: "snapshot", snapshot: doneSnap }); + cues.push({ at: doneAt, kind: "done", snapshot: doneSnap }); + } + return cues; +} From 5148f197a34b92136c822175f38655dd0fb278e2 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sun, 6 Sep 2026 04:59:32 +0000 Subject: [PATCH 07/26] feat: map mixer garnishes and Paloma foam Co-authored-by: Travis Jones --- .../__tests__/cocktail-data.test.ts | 15 +++--- .../__tests__/garnish-map.test.ts | 36 +++++++++++++ .../demos/cocktail-mixer/garnish-map.ts | 53 +++++++++++++++++++ 3 files changed, 95 insertions(+), 9 deletions(-) create mode 100644 src/components/demos/cocktail-mixer/__tests__/garnish-map.test.ts create mode 100644 src/components/demos/cocktail-mixer/garnish-map.ts diff --git a/src/components/demos/cocktail-mixer/__tests__/cocktail-data.test.ts b/src/components/demos/cocktail-mixer/__tests__/cocktail-data.test.ts index 50e394f..e8ed068 100644 --- a/src/components/demos/cocktail-mixer/__tests__/cocktail-data.test.ts +++ b/src/components/demos/cocktail-mixer/__tests__/cocktail-data.test.ts @@ -1,10 +1,11 @@ import { describe, it, expect } from "vitest"; -import { COCKTAILS, THE_COSMONAUT, GLASS_CONFIGS } from "../data"; +import { COCKTAILS, THE_COSMONAUT } from "../data"; +import { GLASS_BOUNDS } from "../glass-bounds"; import type { Cocktail } from "../types"; const ALL_COCKTAILS: Cocktail[] = [...COCKTAILS, THE_COSMONAUT]; const HEX_RE = /^#[0-9a-fA-F]{6}$/; -const VALID_GLASSES = Object.keys(GLASS_CONFIGS); +const VALID_GLASSES = Object.keys(GLASS_BOUNDS); const VALID_METHODS = ["shaken", "stirred", "built"]; describe("cocktail data integrity", () => { @@ -68,13 +69,9 @@ describe("cocktail data integrity", () => { } ); - it("glass configs have valid liquid ranges", () => { - for (const [name, config] of Object.entries(GLASS_CONFIGS)) { - expect(config.liquidTop).toBeLessThan(config.liquidBottom); - expect(config.liquidTop).toBeGreaterThan(0); - expect(config.liquidBottom).toBeLessThan(300); - // Suppress unused var warning - void name; + it("every cocktail glass exists in GLASS_BOUNDS", () => { + for (const c of ALL_COCKTAILS) { + expect(GLASS_BOUNDS[c.glass]).toBeDefined(); } }); }); diff --git a/src/components/demos/cocktail-mixer/__tests__/garnish-map.test.ts b/src/components/demos/cocktail-mixer/__tests__/garnish-map.test.ts new file mode 100644 index 0000000..3dc356a --- /dev/null +++ b/src/components/demos/cocktail-mixer/__tests__/garnish-map.test.ts @@ -0,0 +1,36 @@ +/** @vitest-environment node */ +import { describe, it, expect } from "vitest"; +import { + garnishPlates, + isFoamIngredient, + SODA_INGREDIENT_NAME, +} from "../garnish-map"; +import { COCKTAILS, THE_COSMONAUT } from "../data"; + +describe("garnish-map", () => { + it("puts salt on from the first frame for salt_* types", () => { + expect(garnishPlates("salt_lime", "margarita")).toEqual([ + "rim-salt-margarita.png", + "garnish-lime-wheel.png", + ]); + expect(garnishPlates("salt_grapefruit", "highball")).toEqual([ + "rim-salt-highball.png", + "garnish-grapefruit-wedge.png", + ]); + }); + + it("maps rocket for the Cosmonaut", () => { + expect(garnishPlates("rocket", "coupe")).toEqual(["garnish-rocket.png"]); + }); + + it("foams only Grapefruit Soda, not Salty Dog juice", () => { + expect(SODA_INGREDIENT_NAME).toBe("Grapefruit Soda"); + const paloma = COCKTAILS.find((c) => c.name === "Paloma")!; + const dog = COCKTAILS.find((c) => c.name === "Salty Dog")!; + expect(paloma.ingredients.some((i) => isFoamIngredient(i.name))).toBe(true); + expect(dog.ingredients.some((i) => isFoamIngredient(i.name))).toBe(false); + expect(THE_COSMONAUT.ingredients.some((i) => isFoamIngredient(i.name))).toBe( + false + ); + }); +}); diff --git a/src/components/demos/cocktail-mixer/garnish-map.ts b/src/components/demos/cocktail-mixer/garnish-map.ts new file mode 100644 index 0000000..f9eb26f --- /dev/null +++ b/src/components/demos/cocktail-mixer/garnish-map.ts @@ -0,0 +1,53 @@ +import type { GarnishType, GlassType } from "./types"; + +export const SODA_INGREDIENT_NAME = "Grapefruit Soda"; + +export function isFoamIngredient(name: string): boolean { + return name === SODA_INGREDIENT_NAME; +} + +function saltPlate(glass: GlassType): string { + switch (glass) { + case "margarita": + return "rim-salt-margarita.png"; + case "highball": + return "rim-salt-highball.png"; + case "rocks": + case "coupe": + return "rim-salt-highball.png"; + default: { + const _exhaustive: never = glass; + return _exhaustive; + } + } +} + +export function garnishPlates( + type: GarnishType, + glass: GlassType +): string[] { + switch (type) { + case "lime_wheel": + return ["garnish-lime-wheel.png"]; + case "cherry": + return ["garnish-cherry.png"]; + case "orange_slice": + return ["garnish-orange-slice.png"]; + case "grapefruit_wedge": + return ["garnish-grapefruit-wedge.png"]; + case "salt_rim": + return [saltPlate(glass)]; + case "cherry_orange": + return ["garnish-cherry-orange.png"]; + case "salt_grapefruit": + return [saltPlate(glass), "garnish-grapefruit-wedge.png"]; + case "salt_lime": + return [saltPlate(glass), "garnish-lime-wheel.png"]; + case "rocket": + return ["garnish-rocket.png"]; + default: { + const _exhaustive: never = type; + return _exhaustive; + } + } +} From 86d2c3302a99cd8ad53ff57ee3bfad4f009f6046 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sun, 6 Sep 2026 05:04:36 +0000 Subject: [PATCH 08/26] feat: add pixi.js and mixer pour plates Co-authored-by: Travis Jones --- package-lock.json | 70 ++- package.json | 4 +- scripts/generate-mixer-plates.ts | 554 ++++++++++++++++++ .../__tests__/mixer-plates.test.ts | 130 ++++ .../demos/cocktail-mixer/assets/bar-top.png | Bin 0 -> 212133 bytes .../demos/cocktail-mixer/assets/bottle.png | Bin 0 -> 6633 bytes .../assets/condensation-dot.png | Bin 0 -> 1123 bytes .../cocktail-mixer/assets/displace-noise.png | Bin 0 -> 19405 bytes .../demos/cocktail-mixer/assets/foam-dot.png | Bin 0 -> 508 bytes .../demos/cocktail-mixer/assets/frost.png | Bin 0 -> 49767 bytes .../assets/garnish-cherry-orange.png | Bin 0 -> 10593 bytes .../cocktail-mixer/assets/garnish-cherry.png | Bin 0 -> 6107 bytes .../assets/garnish-grapefruit-wedge.png | Bin 0 -> 5605 bytes .../assets/garnish-lime-wheel.png | Bin 0 -> 6682 bytes .../assets/garnish-orange-slice.png | Bin 0 -> 6148 bytes .../cocktail-mixer/assets/garnish-rocket.png | Bin 0 -> 6378 bytes .../assets/glass-coupe-back.png | Bin 0 -> 44218 bytes .../assets/glass-coupe-front.png | Bin 0 -> 41263 bytes .../assets/glass-coupe-mask.png | Bin 0 -> 4412 bytes .../assets/glass-highball-back.png | Bin 0 -> 51305 bytes .../assets/glass-highball-front.png | Bin 0 -> 50664 bytes .../assets/glass-highball-mask.png | Bin 0 -> 5817 bytes .../assets/glass-margarita-back.png | Bin 0 -> 42769 bytes .../assets/glass-margarita-front.png | Bin 0 -> 39743 bytes .../assets/glass-margarita-mask.png | Bin 0 -> 3528 bytes .../assets/glass-rocks-back.png | Bin 0 -> 47217 bytes .../assets/glass-rocks-front.png | Bin 0 -> 44267 bytes .../assets/glass-rocks-mask.png | Bin 0 -> 3693 bytes .../demos/cocktail-mixer/assets/ice-cube.png | Bin 0 -> 6328 bytes .../cocktail-mixer/assets/rim-highlight.png | Bin 0 -> 10776 bytes .../assets/rim-salt-highball.png | Bin 0 -> 4561 bytes .../assets/rim-salt-margarita.png | Bin 0 -> 5820 bytes .../cocktail-mixer/assets/splash-dot.png | Bin 0 -> 734 bytes .../demos/cocktail-mixer/assets/star-mote.png | Bin 0 -> 577 bytes .../demos/cocktail-mixer/assets/stream.png | Bin 0 -> 772 bytes 35 files changed, 756 insertions(+), 2 deletions(-) create mode 100644 scripts/generate-mixer-plates.ts create mode 100644 src/components/demos/cocktail-mixer/__tests__/mixer-plates.test.ts create mode 100644 src/components/demos/cocktail-mixer/assets/bar-top.png create mode 100644 src/components/demos/cocktail-mixer/assets/bottle.png create mode 100644 src/components/demos/cocktail-mixer/assets/condensation-dot.png create mode 100644 src/components/demos/cocktail-mixer/assets/displace-noise.png create mode 100644 src/components/demos/cocktail-mixer/assets/foam-dot.png create mode 100644 src/components/demos/cocktail-mixer/assets/frost.png create mode 100644 src/components/demos/cocktail-mixer/assets/garnish-cherry-orange.png create mode 100644 src/components/demos/cocktail-mixer/assets/garnish-cherry.png create mode 100644 src/components/demos/cocktail-mixer/assets/garnish-grapefruit-wedge.png create mode 100644 src/components/demos/cocktail-mixer/assets/garnish-lime-wheel.png create mode 100644 src/components/demos/cocktail-mixer/assets/garnish-orange-slice.png create mode 100644 src/components/demos/cocktail-mixer/assets/garnish-rocket.png create mode 100644 src/components/demos/cocktail-mixer/assets/glass-coupe-back.png create mode 100644 src/components/demos/cocktail-mixer/assets/glass-coupe-front.png create mode 100644 src/components/demos/cocktail-mixer/assets/glass-coupe-mask.png create mode 100644 src/components/demos/cocktail-mixer/assets/glass-highball-back.png create mode 100644 src/components/demos/cocktail-mixer/assets/glass-highball-front.png create mode 100644 src/components/demos/cocktail-mixer/assets/glass-highball-mask.png create mode 100644 src/components/demos/cocktail-mixer/assets/glass-margarita-back.png create mode 100644 src/components/demos/cocktail-mixer/assets/glass-margarita-front.png create mode 100644 src/components/demos/cocktail-mixer/assets/glass-margarita-mask.png create mode 100644 src/components/demos/cocktail-mixer/assets/glass-rocks-back.png create mode 100644 src/components/demos/cocktail-mixer/assets/glass-rocks-front.png create mode 100644 src/components/demos/cocktail-mixer/assets/glass-rocks-mask.png create mode 100644 src/components/demos/cocktail-mixer/assets/ice-cube.png create mode 100644 src/components/demos/cocktail-mixer/assets/rim-highlight.png create mode 100644 src/components/demos/cocktail-mixer/assets/rim-salt-highball.png create mode 100644 src/components/demos/cocktail-mixer/assets/rim-salt-margarita.png create mode 100644 src/components/demos/cocktail-mixer/assets/splash-dot.png create mode 100644 src/components/demos/cocktail-mixer/assets/star-mote.png create mode 100644 src/components/demos/cocktail-mixer/assets/stream.png diff --git a/package-lock.json b/package-lock.json index e83bd1e..13ad6e0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,6 +19,7 @@ "motion": "^12.34.4", "next": "15.5.19", "next-themes": "^0.4.6", + "pixi.js": "^8.8.0", "radix-ui": "^1.4.3", "react": "19.1.0", "react-dom": "19.1.0", @@ -2808,6 +2809,12 @@ "dev": true, "license": "MIT" }, + "node_modules/@pixi/colord": { + "version": "2.9.6", + "resolved": "https://registry.npmjs.org/@pixi/colord/-/colord-2.9.6.tgz", + "integrity": "sha512-nezytU2pw587fQstUu1AsJZDVEynjskwOL+kibwcdxsMBFqPsFFNA7xl0ii/gXuDi6M0xj3mfRJj8pBSc2jCfA==", + "license": "MIT" + }, "node_modules/@radix-ui/number": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.1.tgz", @@ -5349,6 +5356,12 @@ "assertion-error": "^2.0.1" } }, + "node_modules/@types/css-font-loading-module": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/@types/css-font-loading-module/-/css-font-loading-module-0.0.12.tgz", + "integrity": "sha512-x2tZZYkSxXqWvTDgveSynfjq/T2HyiZHXb00j/+gy19yp70PHCizM48XFdjBCWH7eHBD0R5i/pw9yMBP/BH5uA==", + "license": "MIT" + }, "node_modules/@types/debug": { "version": "4.1.12", "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", @@ -5365,6 +5378,12 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/earcut": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@types/earcut/-/earcut-2.1.4.tgz", + "integrity": "sha512-qp3m9PPz4gULB9MhjGID7wpo3gJ4bTGXm7ltNDsmOvsPduTeHp8wSW9YckBj3mljeOh4F0m2z/0JKAALRKbmLQ==", + "license": "MIT" + }, "node_modules/@types/eslint": { "version": "9.6.1", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", @@ -6403,9 +6422,17 @@ "version": "0.1.69", "resolved": "https://registry.npmjs.org/@webgpu/types/-/types-0.1.69.tgz", "integrity": "sha512-RPmm6kgRbI8e98zSD3RVACvnuktIja5+yLgDAkTmxLr90BEwdTXRQWNLF3ETTTyH/8mKhznZuN5AveXYFEsMGQ==", - "dev": true, "license": "BSD-3-Clause" }, + "node_modules/@xmldom/xmldom": { + "version": "0.8.15", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.15.tgz", + "integrity": "sha512-/5NV/vDALVFDXgLmfsy9TRCBlKwO2LNBFzpzvb9iIj+jR+eSc6DLYYvVOdivT/jm7MtU6TebYuRmzEOI7w40UA==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", @@ -7906,6 +7933,12 @@ "node": ">= 0.4" } }, + "node_modules/earcut": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.4.tgz", + "integrity": "sha512-/pjZsA1b4RPHbeWZQn66SWS8nZZWLQQ23oE3Eam7aroEFGEvwKAsJfZ9ytiEMycfzXWpca4FA9QIOehf7PocBQ==", + "license": "ISC" + }, "node_modules/eciesjs": { "version": "0.4.17", "resolved": "https://registry.npmjs.org/eciesjs/-/eciesjs-0.4.17.tgz", @@ -8743,6 +8776,12 @@ "node": ">= 0.6" } }, + "node_modules/eventemitter3": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.4.tgz", + "integrity": "sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==", + "license": "MIT" + }, "node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", @@ -10497,6 +10536,12 @@ "dev": true, "license": "ISC" }, + "node_modules/ismobilejs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ismobilejs/-/ismobilejs-1.1.1.tgz", + "integrity": "sha512-VaFW53yt8QO61k2WJui0dHf4SlL8lxBofUuUmwBo0ljPk0Drz2TiuDW4jo3wDcv41qy/SxrJ+VAzJ/qYqsmzRw==", + "license": "MIT" + }, "node_modules/iterator.prototype": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", @@ -12995,6 +13040,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/parse-svg-path": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/parse-svg-path/-/parse-svg-path-0.1.2.tgz", + "integrity": "sha512-JyPSBnkTJ0AI8GGJLfMXvKq42cj5c006fnLz6fXy6zfoVjJizi8BNTpu8on8ziI1cKy9d9DGNuY17Ce7wuejpQ==", + "license": "MIT" + }, "node_modules/parse5": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/parse5/-/parse5-8.0.0.tgz", @@ -13085,6 +13136,23 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pixi.js": { + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/pixi.js/-/pixi.js-8.8.0.tgz", + "integrity": "sha512-0xW8tKa+uF28mi1SwvnNscMpYJSQrqLN7jJs6Ore37FZoXmIRzQNrGA6drpHDVTuEmoqJlSiGLCk5cUgz3ODgQ==", + "license": "MIT", + "dependencies": { + "@pixi/colord": "^2.9.6", + "@types/css-font-loading-module": "^0.0.12", + "@types/earcut": "^2.1.4", + "@webgpu/types": "^0.1.40", + "@xmldom/xmldom": "^0.8.10", + "earcut": "^2.2.4", + "eventemitter3": "^5.0.1", + "ismobilejs": "^1.1.1", + "parse-svg-path": "^0.1.2" + } + }, "node_modules/pkce-challenge": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.1.tgz", diff --git a/package.json b/package.json index 28c7486..aa8a072 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,8 @@ "lint": "eslint", "test": "vitest run", "test:watch": "vitest", - "sprites:process": "npx tsx scripts/process-voxel-sprites.ts" + "sprites:process": "npx tsx scripts/process-voxel-sprites.ts", + "plates:mixer": "npx tsx scripts/generate-mixer-plates.ts" }, "dependencies": { "@gsap/react": "^2.1.2", @@ -24,6 +25,7 @@ "motion": "^12.34.4", "next": "15.5.19", "next-themes": "^0.4.6", + "pixi.js": "^8.8.0", "radix-ui": "^1.4.3", "react": "19.1.0", "react-dom": "19.1.0", diff --git a/scripts/generate-mixer-plates.ts b/scripts/generate-mixer-plates.ts new file mode 100644 index 0000000..728fba7 --- /dev/null +++ b/scripts/generate-mixer-plates.ts @@ -0,0 +1,554 @@ +/** + * Generates the painted 2× raster plates used by Cocktail Mixer's Pixi stage. + * + * Usage: npx tsx scripts/generate-mixer-plates.ts + */ + +import { mkdir } from "node:fs/promises"; +import { dirname, join } from "node:path"; +import { fileURLToPath, pathToFileURL } from "node:url"; +import sharp from "sharp"; + +const ROOT = dirname(dirname(fileURLToPath(import.meta.url))); +const DEFAULT_OUTPUT_DIRECTORY = join( + ROOT, + "src", + "components", + "demos", + "cocktail-mixer", + "assets", +); + +type PlateSpec = { + filename: string; + width: number; + height: number; + render: () => string | Buffer; +}; + +type GlassDefinition = { + interior: string; + rim: string; + reflections: string; + stem: string; +}; + +const GLASS_DEFINITIONS: Record = { + rocks: { + interior: + "M70 192 Q200 174 330 192 L310 492 Q304 518 270 528 Q200 544 130 528 Q96 518 90 492 Z", + rim: "M70 192 Q200 174 330 192", + reflections: + '', + stem: + '', + }, + highball: { + interior: + "M118 88 Q200 76 282 88 L268 502 Q266 528 240 536 Q200 546 160 536 Q134 528 132 502 Z", + rim: "M118 88 Q200 76 282 88", + reflections: + '', + stem: + '', + }, + coupe: { + interior: + "M45 128 Q200 106 355 128 Q338 246 290 320 Q258 361 200 365 Q142 361 110 320 Q62 246 45 128 Z", + rim: "M45 128 Q200 106 355 128", + reflections: + '', + stem: + '', + }, + margarita: { + interior: + "M28 108 Q200 88 372 108 L300 212 Q264 266 222 292 L216 340 L184 340 L178 292 Q136 266 100 212 Z", + rim: "M28 108 Q200 88 372 108", + reflections: + '', + stem: + '', + }, +}; + +function svg( + width: number, + height: number, + content: string, + definitions = "", +): string { + return ` + ${definitions} + ${content} +`; +} + +const GLASS_GRADIENTS = ` + + + + + + + + + + + + + + + + + + + + + + + + + +`; + +function outsideMask(interior: string): string { + return ` + + + `; +} + +function glassBack(definition: GlassDefinition): string { + return svg( + 400, + 600, + ` + + + + + ${definition.reflections} + + ${definition.stem}`, + `${GLASS_GRADIENTS}${outsideMask(definition.interior)}`, + ); +} + +function glassFront(definition: GlassDefinition): string { + return svg( + 400, + 600, + ` + + + + + ${definition.reflections} + + ${definition.stem}`, + `${GLASS_GRADIENTS}${outsideMask(definition.interior)}`, + ); +} + +function glassMask(definition: GlassDefinition): string { + return svg(400, 600, ``); +} + +function barTop(): string { + const grain = Array.from({ length: 22 }, (_, index) => { + const y = 38 + index * 38; + const opacity = 0.08 + (index % 4) * 0.018; + return ``; + }).join(""); + + return svg( + 560, + 840, + ` + + ${grain} + + + `, + ` + + + + + + + + + + + `, + ); +} + +function iceCube(): string { + return svg( + 96, + 96, + ` + + + `, + ``, + ); +} + +function bottle(): string { + return svg( + 96, + 192, + ` + + + + `, + ``, + ); +} + +function stream(): string { + return svg( + 128, + 8, + '', + '', + ); +} + +function displaceNoise(): Buffer { + const width = 128; + const height = 128; + const data = Buffer.alloc(width * height * 3); + let state = 0x5f3759df; + + for (let offset = 0; offset < data.length; offset += 3) { + state ^= state << 13; + state ^= state >>> 17; + state ^= state << 5; + const value = 88 + ((state >>> 0) % 81); + data[offset] = value; + data[offset + 1] = value; + data[offset + 2] = value; + } + + return data; +} + +function frost(): string { + const crystals = Array.from({ length: 26 }, (_, index) => { + const x = 58 + ((index * 67) % 286); + const y = 134 + ((index * 89) % 218); + const radius = 4 + (index % 7); + return ``; + }).join(""); + + return svg( + 400, + 600, + ` + ${crystals} + `, + ``, + ); +} + +function condensationDot(): string { + return svg( + 24, + 32, + '', + '', + ); +} + +function rimHighlight(): string { + return svg( + 96, + 240, + '', + '', + ); +} + +function limeWheel(): string { + const segments = Array.from({ length: 8 }, (_, index) => { + const angle = index * 45; + return ``; + }).join(""); + return svg( + 128, + 128, + `${segments}`, + '', + ); +} + +function cherry(): string { + return svg( + 112, + 128, + '', + '', + ); +} + +function orangeSlice(): string { + const rays = [ + [17, 99], + [26, 72], + [44, 53], + [66, 48], + [90, 57], + [109, 79], + ] + .map( + ([x, y]) => + ``, + ) + .join(""); + return svg( + 128, + 128, + `${rays}`, + '', + ); +} + +function grapefruitWedge(): string { + return svg( + 144, + 128, + '', + '', + ); +} + +function cherryOrange(): string { + return svg( + 176, + 144, + `${orangeSlice().replace(/^.*?]*>|<\/svg>$/gs, "")} + ${cherry().replace(/^.*?]*>|<\/svg>$/gs, "")}`, + ); +} + +function rocket(): string { + return svg( + 96, + 176, + '', + '', + ); +} + +function saltOverlay(type: "margarita" | "highball"): string { + const margarita = type === "margarita"; + const rim = margarita + ? "M28 108 Q200 88 372 108" + : "M118 88 Q200 76 282 88"; + const grains = Array.from({ length: margarita ? 48 : 30 }, (_, index) => { + const span = margarita ? 330 : 154; + const start = margarita ? 35 : 123; + const x = start + ((index * 47) % span); + const normalized = (x - 200) / (margarita ? 172 : 82); + const y = (margarita ? 99 : 82) + normalized * normalized * (margarita ? 10 : 7) + ((index % 3) - 1) * 4; + const radius = 2 + (index % 4); + return ``; + }).join(""); + + return svg( + 400, + 600, + `${grains}`, + ); +} + +function softDot( + size: number, + centerColor: string, + edgeColor: string, + edgeOpacity: number, +): string { + return svg( + size, + size, + ``, + ``, + ); +} + +function starMote(): string { + return svg( + 32, + 32, + '', + '', + ); +} + +const GLASS_SPECS: PlateSpec[] = Object.entries(GLASS_DEFINITIONS).flatMap( + ([type, definition]) => [ + { + filename: `glass-${type}-back.png`, + width: 400, + height: 600, + render: () => glassBack(definition), + }, + { + filename: `glass-${type}-front.png`, + width: 400, + height: 600, + render: () => glassFront(definition), + }, + { + filename: `glass-${type}-mask.png`, + width: 400, + height: 600, + render: () => glassMask(definition), + }, + ], +); + +export const PLATE_SPECS: readonly PlateSpec[] = [ + { filename: "bar-top.png", width: 560, height: 840, render: barTop }, + ...GLASS_SPECS, + { filename: "ice-cube.png", width: 96, height: 96, render: iceCube }, + { filename: "bottle.png", width: 96, height: 192, render: bottle }, + { filename: "stream.png", width: 128, height: 8, render: stream }, + { + filename: "displace-noise.png", + width: 128, + height: 128, + render: displaceNoise, + }, + { filename: "frost.png", width: 400, height: 600, render: frost }, + { + filename: "condensation-dot.png", + width: 24, + height: 32, + render: condensationDot, + }, + { + filename: "rim-highlight.png", + width: 96, + height: 240, + render: rimHighlight, + }, + { + filename: "garnish-lime-wheel.png", + width: 128, + height: 128, + render: limeWheel, + }, + { + filename: "garnish-cherry.png", + width: 112, + height: 128, + render: cherry, + }, + { + filename: "garnish-orange-slice.png", + width: 128, + height: 128, + render: orangeSlice, + }, + { + filename: "garnish-grapefruit-wedge.png", + width: 144, + height: 128, + render: grapefruitWedge, + }, + { + filename: "garnish-cherry-orange.png", + width: 176, + height: 144, + render: cherryOrange, + }, + { + filename: "garnish-rocket.png", + width: 96, + height: 176, + render: rocket, + }, + { + filename: "rim-salt-margarita.png", + width: 400, + height: 600, + render: () => saltOverlay("margarita"), + }, + { + filename: "rim-salt-highball.png", + width: 400, + height: 600, + render: () => saltOverlay("highball"), + }, + { + filename: "splash-dot.png", + width: 32, + height: 32, + render: () => softDot(32, "#ffffff", "#d8f3ff", 0), + }, + { + filename: "foam-dot.png", + width: 24, + height: 24, + render: () => softDot(24, "#fffdf2", "#f6ead2", 0), + }, + { + filename: "star-mote.png", + width: 32, + height: 32, + render: starMote, + }, +]; + +async function writePlate(spec: PlateSpec, outputDirectory: string): Promise { + const source = spec.render(); + let image: sharp.Sharp; + + if (typeof source === "string") { + image = sharp(Buffer.from(source)); + } else { + image = sharp(source, { + raw: { width: spec.width, height: spec.height, channels: 3 }, + }).blur(0.45); + } + + await image + .resize(spec.width, spec.height, { fit: "fill" }) + .png({ compressionLevel: 9, palette: false }) + .toFile(join(outputDirectory, spec.filename)); +} + +export async function generateMixerPlates( + outputDirectory = DEFAULT_OUTPUT_DIRECTORY, +): Promise { + await mkdir(outputDirectory, { recursive: true }); + + for (const spec of PLATE_SPECS) { + await writePlate(spec, outputDirectory); + } + + return PLATE_SPECS.map(({ filename }) => filename); +} + +async function main(): Promise { + const filenames = await generateMixerPlates(); + console.log(`Generated ${filenames.length} Cocktail Mixer plates:`); + for (const filename of filenames) { + console.log(`- ${filename}`); + } +} + +const entrypoint = process.argv[1]; +if (entrypoint && import.meta.url === pathToFileURL(entrypoint).href) { + main().catch((error: unknown) => { + console.error("Failed to generate Cocktail Mixer plates:", error); + process.exitCode = 1; + }); +} diff --git a/src/components/demos/cocktail-mixer/__tests__/mixer-plates.test.ts b/src/components/demos/cocktail-mixer/__tests__/mixer-plates.test.ts new file mode 100644 index 0000000..66e2c3a --- /dev/null +++ b/src/components/demos/cocktail-mixer/__tests__/mixer-plates.test.ts @@ -0,0 +1,130 @@ +/** @vitest-environment node */ +import { mkdtemp, readdir, rm } from "node:fs/promises"; +import { tmpdir } from "node:os"; +import { join } from "node:path"; +import sharp from "sharp"; +import { afterAll, beforeAll, describe, expect, it } from "vitest"; +import { + generateMixerPlates, + PLATE_SPECS, +} from "../../../../../scripts/generate-mixer-plates"; + +const REQUIRED_FILES = [ + "bar-top.png", + "glass-rocks-back.png", + "glass-rocks-front.png", + "glass-rocks-mask.png", + "glass-highball-back.png", + "glass-highball-front.png", + "glass-highball-mask.png", + "glass-coupe-back.png", + "glass-coupe-front.png", + "glass-coupe-mask.png", + "glass-margarita-back.png", + "glass-margarita-front.png", + "glass-margarita-mask.png", + "ice-cube.png", + "bottle.png", + "stream.png", + "displace-noise.png", + "frost.png", + "condensation-dot.png", + "rim-highlight.png", + "garnish-lime-wheel.png", + "garnish-cherry.png", + "garnish-orange-slice.png", + "garnish-grapefruit-wedge.png", + "garnish-cherry-orange.png", + "garnish-rocket.png", + "rim-salt-margarita.png", + "rim-salt-highball.png", + "splash-dot.png", + "foam-dot.png", + "star-mote.png", +] as const; + +const INTERIOR_POINTS = { + rocks: { x: 200, y: 350 }, + highball: { x: 200, y: 300 }, + coupe: { x: 200, y: 250 }, + margarita: { x: 200, y: 230 }, +} as const; + +let outputDirectory: string; + +async function alphaAt(filename: string, x: number, y: number) { + const { data } = await sharp(join(outputDirectory, filename)) + .ensureAlpha() + .extract({ left: x, top: y, width: 1, height: 1 }) + .raw() + .toBuffer({ resolveWithObject: true }); + + return data[3]; +} + +beforeAll(async () => { + outputDirectory = await mkdtemp(join(tmpdir(), "mixer-plates-")); + await generateMixerPlates(outputDirectory); +}, 30_000); + +afterAll(async () => { + await rm(outputDirectory, { recursive: true, force: true }); +}); + +describe("mixer plate generator", () => { + it("declares and writes every required plate", async () => { + expect(PLATE_SPECS.map(({ filename }) => filename).sort()).toEqual( + [...REQUIRED_FILES].sort(), + ); + expect((await readdir(outputDirectory)).sort()).toEqual( + [...REQUIRED_FILES].sort(), + ); + }); + + it("writes the required fixed dimensions", async () => { + for (const type of Object.keys(INTERIOR_POINTS)) { + for (const layer of ["back", "front", "mask"]) { + const metadata = await sharp( + join(outputDirectory, `glass-${type}-${layer}.png`), + ).metadata(); + expect([metadata.width, metadata.height]).toEqual([400, 600]); + } + } + + const bar = await sharp(join(outputDirectory, "bar-top.png")).metadata(); + const bottle = await sharp(join(outputDirectory, "bottle.png")).metadata(); + const stream = await sharp(join(outputDirectory, "stream.png")).metadata(); + + expect([bar.width, bar.height]).toEqual([560, 840]); + expect([bottle.width, bottle.height]).toEqual([96, 192]); + expect([stream.width, stream.height]).toEqual([128, 8]); + }); + + it("keeps glass interiors transparent on painted layers and opaque on masks", async () => { + for (const [type, point] of Object.entries(INTERIOR_POINTS)) { + expect(await alphaAt(`glass-${type}-mask.png`, point.x, point.y)).toBe(255); + expect(await alphaAt(`glass-${type}-back.png`, point.x, point.y)).toBe(0); + expect(await alphaAt(`glass-${type}-front.png`, point.x, point.y)).toBe(0); + expect(await alphaAt(`glass-${type}-mask.png`, 0, 0)).toBe(0); + } + }); + + it("makes the bottle neutral enough to tint", async () => { + const { data, info } = await sharp(join(outputDirectory, "bottle.png")) + .ensureAlpha() + .raw() + .toBuffer({ resolveWithObject: true }); + const opaquePixels: number[][] = []; + + for (let offset = 0; offset < data.length; offset += info.channels) { + if (data[offset + 3] > 127) { + opaquePixels.push([data[offset], data[offset + 1], data[offset + 2]]); + } + } + + const average = opaquePixels + .flatMap((pixel) => pixel) + .reduce((sum, channel) => sum + channel, 0) / (opaquePixels.length * 3); + expect(average).toBeGreaterThan(200); + }); +}); diff --git a/src/components/demos/cocktail-mixer/assets/bar-top.png b/src/components/demos/cocktail-mixer/assets/bar-top.png new file mode 100644 index 0000000000000000000000000000000000000000..0c2c6c7674b706ce130f70d96e85d385df057d47 GIT binary patch literal 212133 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­P-!$!?73lz9jEUx*n9WX2SqWp;Gx#T>HAi1@u# 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 f`Xf?kP`08^}ZcU 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


>KQa1^XC9R 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 UYzvIikI;|0vW`-{f@S#s02X-l2><{9 literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/bottle.png b/src/components/demos/cocktail-mixer/assets/bottle.png new file mode 100644 index 0000000000000000000000000000000000000000..c96c1806f530d86c50be15fc417a417f05b47feb GIT binary patch literal 6633 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 bY-82*ZrB}nI?4K91Av8zt#PFxKK}mz6?tXq literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/condensation-dot.png b/src/components/demos/cocktail-mixer/assets/condensation-dot.png new file mode 100644 index 0000000000000000000000000000000000000000..febb4c324db74d9b068995358756d550ecab4871 GIT binary patch literal 1123 zcmV-p1f2VcP)oI%d%vB+0tZt+|p#pmh53> zZtGgKZk<)DMqEW#I;|J1a#N-<<LY38>>{S)pjmVEAE8%J+%B&$qc z9SZKtW>4%#Q}+Qhnfd1pz)pr@=~Z_irk>vl_5J$>P(V?csz?gOam<26-?KA;zXb^h zhSft^FqU$I9w@Bdz>6M8Ko3}YdjmyjtS0u2e1KWt*bWzgyzit@G!9})zzuqk@I6o1 z?)f89^TsZ3=-vi%z_Lu~*4eJ#xMd&^c*--F1+(7$#^pd%o=Br10FFZucn&`d##D}- zr$XbZkE>qvbO>ggt<2HcT9Qn6rHZfq2D8BAdD0F+8{vcwfP z?%sg$G|LTDSNVgNFEgcim<94VcRj2UP6`mQ4J$r2h=m2=3i~QUXm*le^>p?0)q2So z{uhq2sIXI%i&@Y=?JSpCU3ArghoMx44cR9HEf95Q!uv8iLo@>`1nRNtp9E9;hC zENJ6@fmzV4oBtX{ATm2C603^_=Uogkhf~9ybTq+es47#95ocjNyL;@JgikWb^EJx@kHIrM2t@I9x{PRhPiZA-sSt_yI@e=H`%)6EAfq;CY%;)jU;kHBVbyg=mUk)i86|)E98d z&F?`x@4eEkR>G2fSlTW7vE&bF0R&%U2+xB^&gRj0-{GjdQ?KP-&i@@b2`1$;0L;Nr pIXSpi_NU)cd)_|!9r}N)zW}V)(AoLC52647002ovPDHLkV1huR9M}K= literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/displace-noise.png b/src/components/demos/cocktail-mixer/assets/displace-noise.png new file mode 100644 index 0000000000000000000000000000000000000000..604adf691f3160e50f913852f31575c5e7d656d4 GIT binary patch literal 19405 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 YeV!Z literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/foam-dot.png b/src/components/demos/cocktail-mixer/assets/foam-dot.png new file mode 100644 index 0000000000000000000000000000000000000000..71ad49211d439f75de04f6cd9488e38405d49cb9 GIT binary patch literal 508 zcmVw*$PApC1opMlgUoz{PWLs&lU>*;z^s$g@=~2 zls;c9BdUvSYGR0zwzJY}H&$)vuG@~;P!Sy)XJCFzT(8&XY-Eak-&spSZ&OIO;=tSK zb(~!U9UEt0z~VD8IhhT!-AW>}_Y!#fabU`E;8rp*Wh*w$z<|YPq9A0Wsx~l3DxzcK3=G)J#}vQqxt5%jU$TDVK*<8PChvOeyC;b1nXL*&vEqa8mouSE z`bz0!HzYrnterSKJ&U9BOBK=8##x4`;G@36F?JPoTOUNw1wh>FB~IRn9^83HbjT0 yA6o8L#kkAP{^n(u`*l5&AI?O-%yFyu=bjIUli>EGigN$}0000g8M literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/frost.png b/src/components/demos/cocktail-mixer/assets/frost.png new file mode 100644 index 0000000000000000000000000000000000000000..e6d1f0c9430306fd0baad3331370912ddbd7e359 GIT binary patch literal 49767 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

xcV$8M!2I}|wc&+|Ee^BPNT42g`)7c;BEtyqA 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 literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/garnish-cherry-orange.png b/src/components/demos/cocktail-mixer/assets/garnish-cherry-orange.png new file mode 100644 index 0000000000000000000000000000000000000000..a318c14cb3aeb476c3af12d7ba26af5cdc476bc0 GIT binary patch literal 10593 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 literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/garnish-grapefruit-wedge.png b/src/components/demos/cocktail-mixer/assets/garnish-grapefruit-wedge.png new file mode 100644 index 0000000000000000000000000000000000000000..ef64dbf70535de1addebf5a09c1bb527b276e02f GIT binary patch literal 5605 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

0tY~bP^9&|+MRnRqx4AjovvCA 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 literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/garnish-orange-slice.png b/src/components/demos/cocktail-mixer/assets/garnish-orange-slice.png new file mode 100644 index 0000000000000000000000000000000000000000..4bb34aa944b9a457a9f03a22da954b85a4bec643 GIT binary patch literal 6148 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 bOOC~2bNnL9klp*WK0r%DSG`L0UBv$Zd9?Oc literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/garnish-rocket.png b/src/components/demos/cocktail-mixer/assets/garnish-rocket.png new file mode 100644 index 0000000000000000000000000000000000000000..228bb3d821dde344d0de1fa908dbc0b98d601e76 GIT binary patch literal 6378 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 literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/glass-coupe-back.png b/src/components/demos/cocktail-mixer/assets/glass-coupe-back.png new file mode 100644 index 0000000000000000000000000000000000000000..3e6e2320a5f99b70176c552e1e2029e8715be6ba GIT binary patch literal 44218 zcmeEt1y`Iwv*zFqgS&+Ug1ftu;O;QEySqam5FmJPcMIr~m*^aR30c79#xnFLEa}-`)o#M;UDw z000I1Uxxzx${+v$C;(q1MAbZ(Pcjia6Bm>2{_>2RrO5wo8>y1*^!?ks`D^oIv$9#M z9Q!87B#N~o*tCSi;e`_IpfqC#&6 z55fnTP%B`w=eLQDgU&mJRFMzyG9R%bCI0{L|C|W?)m~5@q*>o}A2ZhdM)(lw9zSf$=Bksb^qyr(cs*WS*spS%XW z-#VGKUg7}nHnf3_ll2ji>=R@N=uQQ9@)$t;m;P;PspCd-s*!x(g7maA2C-oXYCa)w z`VNg0>yQQ|oCYc+A}BBj!1}Pa)cb1G=X=^^)2=Z@uleeon!@xlQNqRbdWwCq+VXax z<*yR(qxO0H@hs`=WxjI}1FfP~WMtO}>beB-&y*dEWx7ffDUeq7fPwF?z!>{K7+sZwV&mx|P1mK`(UYuw;s^OnzkeuvL3= z`!mZeb*c4AO7%i0^;k#z=;e0)z0;?-v-;>s0M$A?&H}Ex z%G9v(B;B&)cxep-^|G8~1kfp@0{gO*H**kBsba8Pb0MEurb&@Xx{MSu`AFXB%fWsQ zSVZn=LT>t6m4>awZ_Gh^&<3q9^u zZxoZ?PMLrYW<4;j*XY-ttOz{&whA#+`f>_j3c8MAW@G?F(Bzqz(^}moh&(1i6E%nR zGa~Hf!_j6RuSxRjE3Vffs0wsnvjWO^&;sOV9=9^ zg^G>{3Jt;xjU*ERr)zj4@(9oo)aSCmQ-FI#h!K}rrZanI!UBZ=V3YvyAcxPp(#S4; zP)~zTE*oqt!f^z{gbOJ} z0}%bF5E(_H&30LcNXXz&byOu=sbKx6U~XKewTyC5g5v=>%+J!u&+&bJyTE{(mo!y^ zDUMC;x}u}Uq*&oBuCkcuqS&>;zURwvICiq3$Jb1Z8w;Yosgm<`g7(<5Cjq{8RB>wt zky#W!hwQ0pckdS*{&JeMPCjAOWb`5|1428Ohc1iQvC_=hPOAq#bWk0iMg;>Y}M zadM7&P%iuc0U$TL-!ea9Mhd+Z&D@SB8VWUB8i@hNwfGwuGQ77G^rHw18{itDYrUJC zarGv&fzR@-)^y?I;n;&Hz;E1i;Kx<6AxWdVjz`bVvIfe==Gtx07Q#u$2MjNXfsD&< ztsbLq{vLg*KGR*Bnnd-al^yR~X)Lq*;a{hlC5C%9!od!6K zHoq09ymss&udmJ1`TOcLu+UbvQqndc>t`owEX1Wk58ln%Nd7%+2tKK|7Il}3`Apv- z6_;dyR)uL^wD`@L{fOv0J8z66;igQWwZy=jo%P@Y90|jY>i9+q%7{PJKR;iNS|+rf1(jj@>b+j3JJ*P(LYwF>oTS zkQumGCf7k|61ycZ@tS3yIe}%pG)Jpo`V0m8ALVE!(6vImRo{RFKHVco3`ht?B23QL zsstmBfA*4b)wRAF zXv9zmWiO`2PdSXzm!%{oBJVYr+ z%aKk`8#KxjLd7&v0^>sTJr}PygqlF=FvX1RO?8DM7#?lUjl7Shm+8=6`|H z1Vl5@$b@V0(YLOD`+k7JdnD14DCa=SEDs|grW}rzqT(oc%W>1BlF^9Y;-xXdrO?H< zYQ`x@P=k7=6XUu5;TW|i5USUbW%@BW@~v;mpv`JMc?VyJ-RW}G@)W;$h-!N>{`hWt zDxAhldwqn?HEN3a?h9=t(rDSX^np{D(?I*+xJpocvr0ut>CgJhnWPwGe|1&*YL#FO z(4N?yMh-FV>g6DweM>W3l`aqNHl6|@!FqWJa`Gb7XRSV)XSaL5_9JSzYMs22>ZC^G z?p_`3@)Ct*y8TgpqL#~BsjPPKUWYTwGKVu;YbDnaqF?-G!HrBUH4SZqjP}RM-&R_2 zf8J&_4mM`Fmz>T{t}E2Hmsgj!v{kRvB>9D}F0Wv`Rt1ziMQF{8J+B*x559F)lxtQO zl6H{FlXlq2lM349HJ;(!YwN&9Rhf&*rl?KN((aY|`&YHgtHIpC>wmHe>I%UlTQ>=` zBW!089d!YGJ8bC9t0xlm7c=v-*CXUUHbCNjF~Fp`QBc-DTKk|dx|Y|P z$RAeWfIrXHsjijoOHZz+l;BF=MNP}sMPy^F=I>^#X2AI;v}E-t6w%StUfowqW8h`; zIFTQ1TEr+|7J8|y0S>VV4fGjFse2%M^K-O2qZ<+V;QSAuVfUM7aqCK zn-VW_nGha)FTdLiH~%uN<}mT11O(?P+nw3O~@HKuc9 zJNX)o<;*_!_HIZ~tLGjx`)aP%Kh*U^(=>Io^+5`pZyHdViAu{9BUSOAt&dIZ2qwkU zWlXf#bJbSn|0wk}H{|N%ISCR4Do+K%R9!6EY;N?#i#Bt6a9mPMAM5fL_G+MBRhd(U zf=qm3^J?>p)koo};5}(V%{*jde@oBIZLG{zs)<3+1->-h_$_YydD<1k;_;Vhx&f4Q zJD%qR`#dEnC24JS(xvw>uDyH(Bx9X32P)GZAB8M$&>#Ru+YW8@O?4>OrY`7qYa{ePiC+>#f(_ z&+J{E|CUkK4>^enWpVUWko5J`ko2|G(Dt>Y<|$@iVrY97wRHar<9ROXsBsvwDd(u6 zZR;rY#a2m5TTV&pFf*_}m}Mih;@F@zjZD+w6Tbn{57rJ>#>>!1i|*Wf1%ozsT^{>o zQ{z_eiytAf>)Mb~>wb3l&30in+v^~yjc-yukG34cmeo=|4Bg;fNi@81K29YL7Uftu z4vL2_ViLq;eEH}F704tqMw}dwB5P3X<$zJ#v`(cd0gyf%O3X*csvy44(s3FgoKjU9 zUK(j|&gqxs3u}TIzTh)=OPC}nYK&qRLAw5Ks)3H5U{}?aySAUIbCQ+@U}KWkm%5uD zvcjvus&+rP&J=Eg>Fa{O)uaJ{Z&ruR0kT5k8Y7#3-%8zEe1g~+EKe^p_HE)fxYKSD zJJS1yM8qA&x!oE;JVJaZn;%nweK{H}H&!kfuPvPzj?pA11pAc)XKR+9VB6_-)q5sG z+vt`k`#EtLRm0lr%QZ(}1zPK>6_?>eH~y~Boc4EHh;=DKFJhI%fbJU%n$MEz?{0gK z*QH9fZ^@d^jOYM)_<$J{mWbnZGEA+dKl#ocu{pS?ix7_~0t1hHVjNJ(jnc7hYmPf> z(&8*qL)-U_*@4ud=DP25s|yD7HmYhIjiaN)xIc}J>S~lI4h}BUd9+EKIHQBl9{;-33%0>d6<0{uSP7vT@U7A38A#cNbJk8}`QN#0cz z$VSBi=4ue#+%%XzhAMNC9EkcrN) zw5oU!v*_H|{aSUnSa&3H|LmNG?@&;3JM{om0PNZ+P+3;J%~!9c(Ie2gX$Yy5Jn+mfnzBBL077siS5wY#s0Js{ znu+F#Xy=HbcXyLFKuQ4V==earT6ypTEqEG`igMloVnhZHBG24Bvoe;8EY_a|$uwZ(lT+DRB28Zf!5EtQ4F5 zqY;kRWNl5`thHM98E4e&0qt_owo?u89ow_CA@Aru>X8k6fU`!wzrRLXF@ii*Du?uy zIYvD7p5|bqBU#TAfzG6>Ab7?9%R|!()>Z9#u=kiSEi=(6aW?juyKvtIE8St4`m}zz z>?@{)V#^cx0g8Pe>?KB?6 zoWz_I24`GoTx49#{Wc5^$$W3qa+d}Q(+{E~ugxl6XUN{iS-{AisQa+3mczO(^O191 z&t0N+my`1|syyo8S9*k3R|uwQ|6=z$W)G%B4LZgzdhF8N1QVC`oMKki0Y}Df23PQ68cL-_=CesoW^z zNLNzVq(3;h$375i?DR{K-9DLES!5UGrStubi=bE}D4I_3)R%?!$fQ0kzS(z7RI=bq{Y(kwPpz>C&O&;cR6x9&{QB?h!V3B=qV?mFz?uk_ z^Uu<ty|M5VmE?cUyp-`!{`;fpWF^#qcoF2V`()Bb-*>Oje>Kz z8jk0s5R&24II4ZaHh7pp{Y6JVpQ2W$|9iDWo)rGPIgI6OFuN=kvf&-*4L`&u_;$zkTO-eml9TNsNTgfLU-I)#|wgJnx3WZ9S3~2qUh=b{i9N z%I#j&#+AYTW<8RXpZ#j`Q1(~+k#jk2hH%7EF(t+d#{>kMkA}~w#d6GY#qz`gQ(PuZ zof?xGpPGa{pO4w0sDDEPHx2sdyLHdnH%dG=2cQJ9bx65cS^Nd5gaKH^Q`GjGJzu#kfL&ZT=I*;9? zX2|Pqxrcc`tJT)ysZSFbugg(%<@d~lfRZl7r4I0>PvjR5mEU9AbtrIFaJY6>VM&!% zVYrp0VCX+154e@IaC=d^&(4z8PLi_bRxux%g6A~U`W%>dkon7D<@HHwE80ZMz?e<- zcO!hQP6oQ?+$TeI&VaWL#x*}%b$xM9jC$7_G>&qH^CQwYk6Sj}K)5sF!0EGympCR!v{znk9qUsEZHbQepwF2_uNtl_&BQe|%q*K{L-A!ByiinUe(4w8gX()FSHSh?o7 zroX;~{Jv&nPYmN)jZ$F4H_mJP9J3a;PAOO8H<-Hmmaoo&KRx#CzAjlKqj`BnB)cb0kRk{n}hsX4~GP%O* zz+-QI^WdL=l5M-}VY^=@@54&PLa$Z#H%Pnp*90E54U0>+9K0xA2j@)!GfN6fK1=y} z>f?w-s;-0ln<=3=q4{z;`##endH%y-s#~g8s$XhQYFKLIKZwa`7@Hfr8;7%LkD8Ww zbFfuuSd<3D9l#e?P(Me74VmJRIrQmmUMm^|3|Ouk8vJUoyd>W&>Zk$r44qH@;(lW$ zXV$v@Gar`yJ5HE#3doidP6V1h*#c6{= z)G2D~Ghlh^e*JML%tvUY;duNNrAU*hrPlgx8b_))=IMo#SEG!a!$-B`#^=#*iLCwD^)QgG(FcLs(O#BbZ9i8~!$;$rXmbzpc88ZY zTlJCr2pr3?#7WmfKnQ)Dp-rQeehu=Kew=ig`Ja$ujBYSH7j-`=2kQDzw)Zf0)F4Nf z;zr|k?8QuU?0u+dZfS~kl6_B05+kQCvs6kdwsbz9)8dVGUuJ!%7YT1@llgqigfrZF zK}1i~OU!UODZN-1&T<}n*Sh)3iR>5i>1d_HQLw*=Cc0s-2HB3npPvd^T&VU(*`p;xaMA+fq->QPxL zR#^wq*@mznpe+BKR!6gor0b(&bQHG{O9HG;Baek?YtA9gj}{~&l+)&x!sz~FWI1Elb#!F^UDGM4_i2{ z;Y8DS>pi8trpxlZ8F0I`m#Ke}09*A}vUp9}*wONzlKbkTIRVgBagw`g!@b=Q9b`0L z#}*u-M-|Ie*}mVSg_M5_XX6+Koe-W_`8s?@f zUZVbTZtd9^@mdH#&vv=pD)4QC(-7rfU&jSw&f z5l+{(Z?z3O8g_o#O~WUQb(Y8e($jA|h}+AE(Vg;#OsPw+XLNv4_#8kub);;T^a+w> zdfs-+6)~x*soJUf*utq-xaNeW%S7W`<2>*TasL=)Ztr05^@YG)6YfMN#BJm{#i`}JYiaexfYJRBjvQai*2cY@U)8^ANmFLh`mbCL1 z|86WU`LU?`m*Q+kX7_7QJ8oBGT`s!4N`w~z@&1v>BK`?*8D?9f#BuhHQ@L(xTbqlT+6X~b&<+{ zCj!?;t=p4Dl0J7cenqtV69dLGD{R)*j#S4zk;84eRxd#fn$Ve_Md(@6q=x;ztF-4= z=!o|IVT6gqOAGoQX*09Zl2&qD? z0C|FIP{^20f)9k3bS8*8!#wg-rxz+H>k0eB!!k$ImFVF%;XN5o0xd-NHVHA3j`^{s zanVSDtE3luz9r8;csP94&~f#q)I4AFNweN8Lx2cZ%bUbr#IT;k0#{H;WAi=(8C>^V zRqpge$!Ed5l{JY?xEd-A>+dO8W3S441r@F#3LH!%>FOT?oqS9O`pYy=Bx!2TdEEZh zQ5^-=Th`Rx3zRqbfMZRei9SgC_QJ%=o~dpR`n zHTCd#+GegqHS!Ubu0$INss^%HwT)v_-%D$g` zo%?a+s!Vyv(1Q6Dwz!a5fz^Q1X+NXdAd@d(j9%)>qurXrVv3&q;LOM7Hj1il(YCAp zEN5f^CdDpflGj_f<_>N03bkdR#fheh^Ip{017vG_H<228MtryM)?XlQEL84z$Z5ppqaeYfLJC|6$;VlZLMlNV|px^r%g^1M5n=;_PXjCvgk!6ly{(Y`gRszK(}LLiG#;>O4q(s`)svx<4+`A z_p&2*@U9N7GgJ}SSa3vD zZUV&*!f34pyNmgLITv^RE)2t9CBQ><>xkI*71tcUwz zMJYjyZR`qkXsazFMJvoxCr6g3J&R0P6e z%X0fe+G4C@$9WgHtW;-aKqqcF)=p+RB4AQyN>-c3hUi@S6oOicuq23=$>i3R&E(dW zP3_i!(3$-w)V(ETc{i#veR^@8YuxAli!4jhEQY%gPWTyI*x-z#zC0p7bwgjZcgztPz-emiW- zrP75k^vm_z_DA-!Kz(<~HFmDz&?966#08`&i6=qqUR42-Ze% z3)lV>#tsq4E%G;(Qhy;&`0n|JOHTggvRr!*k%YABQhopYcKx0CIp4u|*~Z`^Eg%G# zy^o#1iJv^gbQLwCw}Y8pi}V~b^fHcp#!8qXcy7Vh-Q*}7`$QNI+>YFYUi2X(L3H5_ zb!XRco47wBO>!t6&gEr{0H*M-eN8SsCCL03lBCQQ0hSoNjYrZdL|2ZSrH@BaL3E@I z<=&ykM3M)t%e!m!k=LO6Oq=HacC)lia9e_jbhC_x4c0Tp#iFl8jWila6F}BRxRYt>vw}RSI;>lKc^A0n87Bi@3YJSXMNc^xBsR5hkk3@ zbvpKQM;t}FLs~4p#(7D(UJ<1aQf~V*w6#pikB%Z{&2;2t!6(MYA!u^WywYw1d zFCg?@9uGU443apcDUQLq`-$!f-YPRZb7< z5r8f|KLyJV>&vBydq#qZ{a#xeWkA=s{r8GeZ=e1Nr`l3eq!-!~A1&o@QmIxsoS)+w z!lEB7s7QnJx+lX^+F4ytxHKv|TThuhLGLdR(TA($lNyA90<0M9L8HD<9p-g8fRxlu zh_v_IMZJjpij$!FM2^$*(eCeB=Zo%GP5+w(G1eRY@wa9xcg%}HE+Z#HE$M#S2IN>? zTT(n1sLo8oTGY046I@^BUN#Qu5w>0bQc25b#9n=COkYLoALy<0oZ<)@Ho?oL$l-LN z>1>@;EzzA$vd+Aab0# z_A+TIecDo)v?D7nCKr(Zzp@P24tbo_4Rb4-`qCqFS--`yyxY)SFxD=-Z z3p*=+S{9-yZ9?g<(u$i$qN5$N>)PiBr0=;+ zX|VxBCkdc+&GtEAy{U+geu41sEOL))qH>}hDf^$;Z6sd^qr)m}U|(1odI`kRS$*lx zBi`#;6w)R+;x!@VM2WO?H0Ao*Q#`f7)uAjF(Tm_v=PWiTYhS`&#nD5Hd(WNC&IX2h zg!60$^r?3_iJAnugB>U?+gY`RddCQ6tEv!h58E%N!sIwE#oKBlnHj%R zzEl!Q#ERY#LE^-UIUT7s7hkG@7f97g7f#in3#2LFMN?MKwn-M{hd({hvEDf$64Gna zK_3u3C}G@x)?2MI3&&;v^-#MamVSf8>nmbYtH7*b;s^QoxY&*MdD7V zbC*kprE}koSK?xunkaK?(d&YRaPd6%P{ae zo}#!tnmRBdE^r+tnRL%vN&lRwr!({8RrA{=)jk$T&Mwd4A)(xnT=`B|&Tw0Q1O1Pe zQPoZ@O|9Iq#L0t;yRkjr$&d9PigTWf(u~WPA|?*Fe%9OJbx_o=zn-9V>GE~E4W6i0 zF#J8#`{FI8Wc#6;s*0PdOD=5;8)MhG9|j`t2Y~hm1e2CozCRd90%`FEA*a58&P(3)Bqr6)@>! zQ}9DG!tepo?tJwcMJUwU3&ERLK> ze+i?qhjJiwLQ3_9Sa(PD*+c1Kw8CZxfk`$U!PX+vPzT462>MkiAz_Yaoz$T<_+qIx z?TbD5<)G~RY(N#9Pi`!{`|9wqnETctF~r z>1NZR>B6{uVlcC7LdT34W1Y*UCW(KiGMP@d<$_DM`La=~)o~_$LcckEyxN&tx7B&m zZ<3n6sZ~B1_$c!4H^NBm z$h646k%XhsVic-rwgb^--ju(ThuM*UnTPbA*3NXOm5ytdmwN&IW|jdgI`>T}LfWi$ zv#W~u&u*<3!ZedXd(Cq(9%sBZTew&$^FCMpz7BfIoPZo7KyLt`$Qb@7-NWW16rvZ4 zo+fBhd|1d^V5Hh70T!#Ua(U7qBDT$bd~13VjDc~Jj~=sno9`G_|UZbvqAwO3a)wU<;@QyAzd zSw*h?mf?InoN?KQsa*hf{)xTTl z)$rG;U1|t5EXc$_*uCBJUf;M=`JA}*r1Zy+I|D|6Q%1)e!`PXa|a-w1;p^?VM zP+re0P?t#lOZz8Lva&NfNBKM(Lz^iEgOMKDPxa^5o5WRNrMXlI?^aV&xhA)EbC?55+pjvz&6=5Ox`6yNcJgX&7WeHQn?V4q5CDpP zDV|j%@Qzc%(?L+r#&LvRNrI0%JJsQT&Ow?lXM4{&y3Lc*KxUVh4JZ>edhG&v{BRJ%L~?+!nwE9yYq1& zCfVe67AUfrY?hUKJH4rBaTZ??JUMEA5`4tCtpL@}S#L3Hl_z6NbV<$-mOx1Cq`2mF zAGf!oSAeU6SAd!VVRO4MmbIz7c7TMtm9X#FImQ&-8O9V-kWLxu6rB-CvU&yT7{CIL zUOYG46o*!P?t3C7I9lwJttJ|iCCXR&3goZM?Zg=xV5Eo_J!CohRa7?xOYaNa&O7AS z%vX<(@q=5IgCAcHY#1}L-j?TItB>VL@u5DuS9IA1>>rP5W-J=kcXga?Cy^lDdLz0E z?R?j~KW5S^weWrY`m&7T{@j4C-U%A>M0?CYQ{(@0V5^44?>oAG<67fCz^Nn|l~GI?WL%szbT6Sr0uZN~?wP1c3Gnq791) zqJ1FTJm&s+#oT*55%i^HFzAbyLtAmdbNDOw`%(Dt`q}=i#bc(wU9St;ZQ6!udfIKb z(QB+VS31}$E1N$XENqWv$`y5OoJ6?Xr^ho zXr?VWE@sp+=y}Z2x$pJN8Kfqqrln@4=B5^6&-($#wTdu;0jy*gfElZtou74S+0Qo* zr3@mD%&Ch-liF8D*NTl2p9)corb^E~oA)ar*L*%iV7ZRSnTvYdT2gcr4REy1#VTXt zf!m6k(t`mKY{*TX!)va|OtvAoqsxp4`wG&YXLDnryg4zpfV;o}P*{=Iej}c-Yh6_w zwJ&q{#T6F5{=Lo<2Q-yGDh2GFaH|~NuA0pzMosY0Dkca6!e8<12Jf?n#*c+fY>T+w z>UQ=8?k&o=GiqD9UhCBn%|Ds%>(T{+l8uY3ldsV23WVnX4+Fr!3cZmZB1Mdz2VsX- zLcT^vz1j{6*>(4oRwzONW`n)e376k>$xZh>q@hJXL{Vwh#>Hul-bjH^If12xLe0sr zMZ0FbYN`N$1m{2^KMhO%rrD8joJ>KnJFLt6wXhJstJCc7z7#xWVPC6*-}(6C-B7X^ zhB8mrkb&^Rh^aau*Ia|0KKzHVA9}m?ot}G>TrNY1{{vWj^YJ&pf9!6_sRm0Hg~Dfv zmce(P?6BGNbPT(Q+3)GC2R(s#Qj72EGtU+`*TL7eow}|hkCU;hg4mnT4|Az{ z7}m2}O^pEX5w;uir^a-Is&X!CT32!Ghe!z`=3iYKyB@L_S>=Y_0N*%P@{V1g8sv8f zK2IBSn?z4v1m%C(0kePo65=}u+MD^Gj7}dGFW`U$JG~2U{6_n~n_f9g zdV~#r2{|n5k~98#y7h5M>3p3Do~rvgO6)vl({{F-bR*SkUHonQXD1~3gX0$mPjAfQ z`n>h~&Tc&d1r9mz2a1Mh&pxhU;s5tCQRq_E_j!}{*`&?%MpE!hD!I-MJ%R3txM zZ-(AW9{vAapUhUn6N z-<~~DQSh@+agx6~ZI4<9um0`?SNvWFXQ;q_bx_l=!e~E(s_~U4=f#TTFsR>#6f$d& zwDc41=cgQNkZ@M&2K?c=`j+nju}3+e|33gpEtP9T*ABZmfswc&K@^w|K6qf#xi%cf zjBy;rbLpkX7z`_R+p;q7Jks<>yMxb&nW3~kJqaxy_L;Q~TeE5iwqIJR=EtS8C4>&w z`P44+U(3VN*P&PQnd!G2)w>PkRMKqbG{p3}~{hh!&1H?${ zHF0FsWi`>X{?Y!jSGO)f?u(^QOyT%V;C0$Fk&5i51YSl?s_GL-!8{buDk28RKZi-i z*~`>mq>D9JBmafMZ&&8ytmh1Vab-qC_f8_NiPpAm?bg6I`FCyyANyudhdK;! zSYccVo+7RkyGYK<0D+=wns@(J8xFAozMC95LgQY%7vnp^NI6un1=5ao-&v3H6Oe2| zf4pV$w1(E0=H$alSa?TicRSNkYXN<3w64g1b2{D3&vQf&Iu!n0K^wnn?Xtu3C3$fm za3zZ#J>wqw-3P0p0moI)L|9A+11&W`G1!3>`eV1E5YT-r-ix6C2N}js3-n)_P^J+h z1GtD7Jmticv+%`l4SOz^nWtxeZPbY^kfILIF0S(CmqMI(r-LFzM8&=PNi{`aW(39`Lfy!eG+ku#e1eK zW_p2noes!sxQ_YHoexiT19rAY%k7FV_N{MPv~ng5P!h|gnSyp~fry%amb0|=H=MYu z+fkCQ-TOu>s&v!Ls^_F*B|Zoq>)08;jHXckF#}gm>W^%|t7;6bg#=F;#$NNDlb?nF zg6b3nru4hqZuZhp%>VcH1P~+#=lRT?P}>J}DVK$mw;(gL0MPx5hIR3bqg;Odozz{rGH%M@DD({j$|jaQP}!I*!-;s~1pWC< zUo$x7MS-mqNI?AN-kZVOmCfRHDU1Eu2??N?Nb3XaHqZ_RSO6|BhUUID2kQdjH1s`L zHUY9)o}c^eNT0y@((f0-yaM&U>#@O-y@o(|4#-bq072OJg13L4GP?h(ya~m2;5M#8 zt@_W(2?L|cVG7k`z5d4iDQgQrzQ^JV&oFX3tJMV9w`A$Ez{|ly60x*}Wo>1S`3)`2cf=e`wGd)~aa*8){ zE!Fz+JKEsrn%k0vygy$cL;0u&T7NwyB6JB#s&Re{$0X2 zr{AF-wz6L8?-Qk5ZkIu~^VVtl31W25*PLpm$6FhHWw#Ld1iwZ}ACF2!-v7 z1?@S46!{h%Om1F>1{wwu|29FWG(8FitJeI?6Qv*QmyfgT{ErZn029a2uW;ytM(Y;7 z015^H0R`{yWzc)+4qdyK|BD6E`6hCOg*Q_5R$=>5k`@)iUL_XCr?RbFXhilS5l;%9 z{z_Dl-I!BB!#U}=cVv|F5d(Rpg#~&$rV%j+BAdw_FNL2*hqC47+Cn`poilN@re3ku zXEcpVlP}9OjcaAS{w8S=nsL6O@(_5sQgP(ma@h32l<8G~S@UBlA|<>v+}4?mJGcZU z?`tCY9-#yv*c*hgMOn@+!=WJ1#;9p=^bf(qe>Yvgej0EE)?HP@B> zDx9+oT|S?`U!B`PWh!3dromL`nGXYYaD+$*$ z+IeJQM`>Qr)lBtT41aDof}H*c2SmxTC%;g2d3yFDP$=pjF6XQ^YU)Dr-&F@XLf-0G z;_khvH*6jo6{oh57C`X3$67xaq!$UV?q_psKSkn?a1-B}8R-@ega91p+0Wwsa5r(o z`roa&TswVy_qF5Towjp-^KH`YGN=e5vUN%jtW5I??FP%@oX{2%`=4_yj_r35Q%CKT z2MIMMX_f8R)zTJp(EMquIm!{8`OD)v`W1z2f>cF_peo&yQNMat`sX`x*a1!$Zz1qx zS>jtxv;45q6!rkjl!W!%AJu-gwgrCCmHRloPOS)k`YQWpmuF!$@j(eP9a!Z>wVxE1 z202DKRW-ynXI5um8%jlII#PvxzB8T%_00o}ATCWxNk*d%0g>)|kJ60qm0aD79pP$W zI3aH}YX@;&W@+8`_0d6}CTWEfWBao)7Do{a6>Q{!t!Kj!x>{6w9qfhW$iMtU4q{-f z9sw#`GtUX&qboNIMs+TPXAAeFD17M42FpS9WU50SeCs1lFQsm3^p0T7 zpgSMsE9Bi~Zj-6sJNI@GKi#QFG@L7htf$&vQvYXxI5lW$Sb5Csnh z1i+mK^PZ8R5PG{kfW$`tCeq4zHzooK1{q4MR8>2v^?~c7 z<$D@a?0>yQdi~=zF^Pz5NFbOXFyk7z!+Vwf{)qJsbPJ@V$`miyFGY`6aWML=Q5QDS z4EODoQGUJ{yNu}Y5j}-&8`bEeN?4>lLg+%y%7RZU} znY^BPH*&=`1zVDvfsBe)pbIuk9g ztuWF-ZJd=Lh{O7ZU(0i|MEuWacLkZV1?HN)%WQfUYud;~!Dz-?99a(Clb7$xjiq^y z20CWjSP%56ozCigFjB--h#2q`XQE6Sy4x?a0t?*0L)r=GCD`cJ-ZKq2+ithG^h7*LV5p`y}(+%$-Mx%e-D$~H9k3GO^Cp| z&GHRzcwSOB6t-0n^2V@{dxxCZ()gJLA^U?~Lk(%W0QxZIQX& ze3sLHr_D8dCUR#HzY3Kf1{R+X%^`pz?x z!pUs%;*lLGBRqzWDZ_r#tzmCJxURIQ>HGacv#0{|g2XwCk*fcIf08;Zuz*OsKoCKjPW^CzZTGp0 zoH69v*i}HKkreu*?LPBC`K|)e;X{1AxMoPLn z76d^+KqAQb_sas;#v0#y8&4Qt(* zs6SRDjB;$UE2piq)Bc#<(?re4-?UJArUuKUWos>BzSk`8-ssec`M>=?C&w_74vT9ha)Qd(9g6fTSz zRxgd$tQ4%2Bv(v-64xgB5@hIAyle_8yFTZhdUBmNmV5=x-+jFxoJ)%gF}ZY}zxw(R zQrhrI3h$D6S-!8}T|#5NO@C3Yg6N^~MnDBYgMZrIxLhJ&E)L;C=PiSW^Typz^E+Rs z=%{=fF$Afc@T)$-cE3DlaM-A@&VF=5Mab*7Sk6ta72Dg`j;GX6pn<6Z;sy9=enhc{ z$)ui7Lm!<@Q(i&wTRwP7(O~$~LY*$FySq;2i}V{GgDCf-u4L{{rlCj*lu%4aME3@2 z9lS)rIYX@GUvv?MbKzUbQnPwd$%u6CZ`q)*ui!Zex?MFtBo&S{9Pp2?@#`TdUXRO( zFc_#Y7~F)rQ9fq3p+tMn{3Mz6#uL;yFN$Wlbuu6&zXdXIHDECDdSzv0KaZZPW)2ba zd_3@HObDpsAI8l;cNDo*YqQLzbjTLJc@OGO9+S^%_baWYpt8aMi5!l9mBVSLTFLVY z6l(@V>zgHg(24aeE`^L^g)&PV}QfrcA2&_Xpurd8I=YL zwtKFIYow>i!OG~=wZEC~G45G>3Cd-KM}HSn9L$3{Ul1*U0%V1U@m`Q<8%aB9DCpf` zMJjsy;|Ls3@__Tf9uAAkiT}23y#1R52cHyzeC~BCMD2v|Tn3{A*nkC$i1E0aCUh?)U3Cs3DEIJEW=!8u$A5xBs-EghWSw1b0c{fm>xi2ckH) z{z5Tpk9$lA)OMU#)op`SH$Ub$WP^SDqbc@t`6jQRZ$n2IM@Cy+$tV+W(n^0KsioKH zY<}4SkIts(vqq0)M{$M8+)v2TjQTm2BB?371aHxxf2as(vA|wlk{cR(8jgbQs0KLF&9URXKU4nI=HK;wkrsz4V(|P5MjH^{ z&sC<6@w4ijT-FXz)wS;IUR6UUsG7-RDwXx~kG`h?SMyeS(8vI0OsCWkf1BJ#$kfe8 z3KD$=;lYC{2GunGz+CXSXNdz$sfVQg6ftxDHc*-pvL<+Ma`g=4 zqx|RTS%(OP%-7T5($hdI(YJ#0AQKvv*0lHAhMkwf^L~9?URY-C`yVCan0?~`HwywT z^1*GhNTKU`=uy7fpDHEl-uRb^nzkveJq?nE&;o7PuO}TM0Vq6!PlFf1&q|QAqmmOL z*^lal2cDrjSh%Xy62e$fm@j9$Iyxj4bz%U(yrmO(`{&ohoJ)U^^iCT}RNJ+m2UfJN z>RcJwiExb~5<{vDOz`e;YasLO?ZRsJcazH;OsrYq*U)d8=l*&)b@dvIJ|PagfRE+4 zjdwnNmiq!Sm9widYPeteF}4@!g+_NJ4ygw7bUh6g1fEY|lh^J>M^dvxlhx(QDIjmq zbXC*?-OyJo0Dq7^@DE%|&pAIg+2};+>2rt*Wn7ebIg8_c(FxAnmiUaXrhm!jX-s@Jru3iz{#Qc^V z0Q_~hSZHPh$&4>S()iL^$wt6B3n3T5bF?TaOxhZ%xHCBN`G0cw9<>19Cy8E*Sztwp z>YdLAGJvo4(bucz2G(o_;KW9UC!ejvCFCEXnCCzft2)kCIa^tYMeFL}=T_0x>nLO; z>*_jdK&yPTG)Xyc3GgSl<4N@eGPmF#IrDLBS;2?%`v7C92!{rS=0+*2A0(sqkxMsAx~Jno=p#x;M^f*+|mFixG8^#6q5}Eo(;o}ViT*! zl{oe-YtZ+}obmLZuEKj({P;W6H=3J@%bl}wxk2Xjp??S_Disg4mwf5O-KP|em5+d? z+oB|>{_yjhSIvA0S$XRvQK#oKYjMUvMf(QWlXFLWGk6mMajnr|skBJlK`TSpV1WGd z^zfq4;APmWLwRCY|MHut_+$0Wx2S{lqQKz3SD3Vh^(~cNOSI7I4qket_B)S}q6e_B z#36SA{%$$ zlb59i9yUIUbWjf-l;8D>KD}d`4S2Eyaifbs=rKIs<2}Q&MzQv#- zCFGN?xtNh&N?($F!GB8UJaN9vtOT;V-H~;})aX!RKp%-?spvI4aj6VC7E$~tiFYX{ zY<#$vieB)migWhl_#G#3+NGJFTJy1^le`0USAos-PQ~zlYR4q-$r4>WpO08KUf-~; z9UASUp#4}kw7TSSQmmf&IDY&&Ur6F`&&_{2mx?R@0UDa)TP@{4BL#HKxG}(n@690% z#VncKcLL2L0DdYAF>;+J33iSD0?uSOqWadXufd3X`O&8Tf(BU6 zRM}MW!U`Apkz@Jy$d4{>T_!yMkb~ri(W5@R(o%Q>(dJM17lGc0vCm$uh02nsH~v=l)U6xm{X2@RE{zc( z`~OV9Ty9XmI`sMhpU*!q7^G~p;H3*xK{a0zbV$=UjYKOdA9I8r12Z3Q>Bc~vu9M;^ zq_Od)V7yE0lb39ykch?e4hqGFWPnCF`_IE5)WU}nEv4%l_H|RU-Pp7rs}Z+5y%qfzmwX#x zDn<(rq}sZ8At8mY(*>>Ch~;Qdz{y=aSxvAxmy^GJRTpE{kEP7~5m!Sd$d8>w0=~Y{ zV6BRbj3H}wNiP%`R-lc<4$b~TIaJ%RKs6xsKT|yQ{|)Dd8uNV|>FSOP=zB%!s8mGC zh23l34X8RzUkH6 z`_GS_uABVGta;aM8bX3YKpw1f`tx^{KZ%~j5Pqg%<(fKAepK6#*G(u zWKBa}<3wk8WLnUaEjD8nE~oqjnax%G4Y5EH9e(~pyOg?4^}}1}tVdVL(qb;G*2PQ3 z94pc;Gf$ZlDj1P}Kt)LHssxm@9sAw3k*}cjx#cTmI$n+3=kpdDs!K_Kik4D~khE3P zczd`Zmy#MwsmlW|Z-!8v%y?z3sz$eK)+Nwo6l)KAewIH4Jl*c3=6W$#^l;u`2isz! zx_goO*aSZHYs&8GCELjL$synhTeczB;#SC5X5I+%AGPHJiZj=zN_>Er>6@jsq^j=N z5r6qZ)-=BTQ>#rkLmY#}dJJl5U3QFN^5pa-<$tcBUN_UbqdiYM7Yy>I>@aOf2zi1| zpbvh(Wgw?zB8#^IHw&{tUMC1IB_)qv&cqpv+Ir~|pO`w3*)O#d6jUk_Ku}`dUB%D5 z^$Jy*>`Y0QHT}P3yGQM7Fd?(-f`AJ29BR!_YgT@(*tO*MVuwcigf=l z-Kr3b27Of|M~w?**Y&Ep=329Oic;;|{^tNSuJX#>NNUJ4>x;e0SHR`zHVs{u>c){Q zCY_zCy4B|dHl5NsxOIZTQ|JGKIFq`W(Vdx`_gXeBIu3RI6Cf0`kh-)3ezuz-8owrM zI*v78#iWbP4?nI?TZt_>(o^2eM8^&!JhPRh_6EYArB1dg=|5Q0ku)-`23&?7I!s7g zLCPh}9Y`2@@Pc=5s(HwhyY`=^TGDUGx)U$Dmg!VY5A;VVW3|@NR1llEZW)b&20MKA zUj9=yGM)bcdAChS{!omhS0io!NYy~{^^(PoH*Ckb_GEF$)A=5o*EVRUr9FG6Wo^&J zFrAIBDm}@U)ptYV{aMEf7uw6oj$97{NHMEdo)*rxcjG&);^X!J?=+q9V{2H$OR3?} z?%pctC3O{WZfN3b{&KsM>l+g6E7l7JXc#_2?84doj=^% z%CS1=C@`bqZA?twC3FP*Zw+G`o9`BbgUhp{c6Dy;KY#Tcrd6N8l^&uBZ9EMN zLwyQ$ys$LS39LJF0|Mk+Nc5r&Xo(&~{sXJjSs&N~B}%uQAT%AgQq1rAI?($$>c`f- zrPqS_ktsn_+CPz}Q;i~=xKHYmE=mfk;eu{|rugP-Ff#Na*eZ;XMATjq9P(1ySO>*! z0BD!+8+oLbiJIqs1yO8thKr%l>a#;%sT#sm7jX*k~VlIUgWE?FhROmkmStW)I+Gm6NUc4uToG;pyrW~2yiYCF~ z$8K)QEoYNcd*Z)bR;xu5PJP5@s8GL*`xDAb*7$jCGizc`ZV9D-&ed0;k9k493jIx{ zKT>J4hCwc_la z{5AL(cec0xd~tXU1U1*Ei=HgUIw!G^_3@4^p04h&;E>{>od^qUPJ15DrpE2{JC(&L zZBs$$HxvY)vgrnKrgWBK)@%3nge`3>u*G1Bx6>eS0PsaRnry65jI%^0Q=tA)8xnvU(7C#LUsy3kV($O_6Fpz=k5qR^8iLWJAjw84G=z89XxOeEoVYt3FhLL!&^OW0M7U9BNShQ7FNWEi$-LG5JMcx?8~0>x$F;IY9IVr*}?2PsrZ<+D%a z7qCy|Ydh#yP3?)?>IpO5YO`FV^VI}xAJ($ z@u{Tt2&lRs_cJdPvThj}J1T-D|9l?15OXQ`J#l;ByXLyO)lSDX7!_Z2dsev$?>|15 zssEI}2LFzjsbVvA4q=;o7VD7j1N()xlVF*hni9#-M6I7s#h8`NQD zD1!b(+Zf!EZi7zmIo8jmx9JA(kfLwfh1s3QVOA6(vKKj?A#sfa?V!X3kp~wpW7N1w7?KeKZh>&EKWKGZVwd8g;|dyBXX+OM@r z94;t`pat%pxL?bbA5P|nR8OPKhaWCzQ=-%R&c`MgLg0EZK|+xR6lC(*fK46?5yIpe39l3P5dI@tQ7|i*=tyDfle95o7WVc--I8)r<^Bqd-JRlRcaGD)=s)4zQ+vZ?h+y)*x&iFVW20~$XLtLo?m!kJyl$Svk#5Y|YCHQZ z9?v4DhAbzQll-W~BB;%%Z7sejOe3>xR?B%;PhWR#r&q@YMV2NFJ)ao&p86hZ3MVMB zQl2>DF>>qI9XbSZoZ)N!0sckeYhUr@Uogq!bS(96L+_HpAgmz8yohU&k}=jI}4QdzYw%h4g2CEY+Aj+*&#}B!}S?&gNx*9a*>ItEsM=IhaN+W)Cj}^opUZV}_PJIp4J?%q_k3 z!sPV^o4vJ6i&4qnplyVxEf}-o^WQRl>VB9-#tb+vB9-PnQ^k|t!%fnS0dq6@@zP9xZTU03~ zf+YtbI5YLZT@N5oTP$iv!7wbJfzej>q+r#|KzuhcUOmfm>H6GZ!S!U z=__WttX6Qp$Cgb)G43tHiw=Ly9OVvgL(6HYvanli_~Q4KJgM^6!~~ODI?==NgxczB z7NZ=P*pERS*<2N?l7UG6=k3EL-UkPn6q8(z1?nDplp0hYV9|XAo1;THIu4{d#_lb4pVu1>=gcSrbg#wX)*P7(1neVv9iq(dgm)3ha)!9B1&^yac%@Rfu+~ zlCV2szqJd4P+r=3sjjeU8bybu6fG}G}O-wjTe9m(EK zJo{_9t3qzen~m4XcQ&aL3*coRhlpI2#+&>!abh0xlidYIr|J(vST$I>Ff~ch_ueLB?!G6X$C3KVMea+@z?)i4G zH;;5Fe7)yx=N|%!$q>;b$MxxDIkm~8qtX9ic9^dZ5=D0Mk6l@c&rdKZUwklvOIPHxOrqTZU|@Wo<@x7>=t9#K zKLGYIL$WjnN?#FJ0=TKcx4};)k4^s?uF75?gX}ZYpvWA@%&p^)1Ov|@>w>8xhZJ7A z<|7B8k;^weQS7Xzt?!g}Ow!$}Hv7f>;IE>7g}M6u+vqFX+Z@W_!9dIy5CehB-z|=o zgxUj34A<+xC8*`7-#kUeLq}cRENq2iM9OV$g+gE|g*}L`fAVl~3oz##Vc4`f>{-20 z5pR57Q*)~pQ6J~@c72u)g%Y0si2QOh5<>_{X#5TWZytZzv&vxhNXW|It{`7F{eTUA4 z&^e*zZ#RPNW7MpQ^BBiYRhTdD-cc_j1CF~{(+=F)>%%OB?W5axTqm~EcX^-W1sE<> zLKmCEBu1Zo92P<0XK=7XQe<&uRzu|#*c!EIV`<+tV}DRe+nd@|#J;5- z91pnVS_r%H7|bby2j6->`)O3f6mhZmiAV!twx?O118ugg)gK#A2He<~(VQk`3$JH` znnHOe2k$Ad283_-1lkN4agDFW1+nvtxba+u3#Gv4_s#CncFlwdWtj%VZ0a_-IKYS^ zt)CtWK%|CK&3c6hxz^$X4)VJ@aG)tV+g+KI=%7#(2JhJ4zWaDG;EJnC6^u@b6iTUB zn^dB(;4Wz%|FT6k4TPF4l3EXDMhuIVt5by>9w(ks^!~o!Gy#&_-?B})KLhblEo7)P zIgBf3L?V&udg=A;t`H`3WF+eM%QUpY6bFZ4Bq>dfsUI>pwUwWqfRzxD+>Jp3l7ny< zy#BV!8v+1bxc_lC^YTPGboM?d*oim#H+~w~rAWQO8uZNdh!%rKPp!ap&osYStzf4v ztCUVxUPX0DmofYR)YxUD3628sZ1)Nl#;KH~JkH~MgS%hI+8TC+4dyI+g{VpJop&j!XD z@%{*q4A*G({+p%iP7aBjRX>Geb%ze^RDGi$kG?19bv^aSh5EGeTm;PWOj&??HzOnJ z3e!4!=cgN43~ruqOL>|Z-Cjw`aBd1AmK>z8l$TO%hqhD9+xOO z3f2(-wB_71p}~q?8=^tgMmM1lgw>-)1of;$CiVZ8+N)?>W!Z7H+CJYSljA^mtWkCF z96Gn3$mHNi-UFZZwcVzJ@)m;rBAbFKM*=(Em7YYyf)rJFSij<7SN~`!>zkt#R-qU< zEgYEHzr~#u$qW*#J{tSo zU`fB-544HIGTd$T&n5Kb@HiO|7%;$tWqFjB>1TvaH<+wyA;jb~Oj9&!m7$JeUS%ZF}0b z_4q1ji_z1uf%(y$&k3k<7eFoUN${HkOO!a@%Y|m!XkX)_SM`^vYm-A3bU&*-G!l2& z9eDAt)h4jU|kWF3op5 zx%z6I)#9k)6|!U2fUBRQjUSNqACs>-ue%#6$SVplvr_@>= zRm1RZMNRnEsT~cfydX{09m#u$43#i!+9N)uug1(BNy;vOa>IZmSV)QOvvI7J=OjSP z@gb9IFV1CaL7)*MT_j5CUcVG>;U)g2@rDfYikJ6LB;k2P;gI}VZu+aZnEB5F%Y2!sd{UY!Rn)-xryHb8KP2& z^9N>5?rIdny+OwE+k`}jp}J2o?Lx4sg+5k2IQ`9+R`Ujz`h{vHOc3Z`)_{r%!_%uO z+K)IVBy3-R*t;=wL`r7Cywe&lBOk~U)|F6Iu9%{vzOc!>!>#;**C(nv4k&hC*Ws=c zpQaGw*k(*&n$5?i6Ml}C{K)Jx`@my#5UBHWd@wH8Y7oBeaGAJfy55|+;yomPpzcJO zQH#cMTat%>K9ZP~o>23hioS!5?U5<4CVR4PW6+;ite*BtK{v!XHc92AIdGz`a6Zpu zyX(}KxDUpUd@U?!6$q$86`wTqx#P#^;Am;NoF5x zaZ=ikI(}R>N77HCtE7+(}6D)!?Msrlb89&mM^?Py{5qjtp_!hZ5@8cT6T)yLir z&c+4})@uUWJ{2`nI!%Xf5`@(emiU_SM04e=NUr%l;Hw;ewtI?!_P3Vq`!aivL*>z? z+10?u*nqcT@r*p8Q6A-jB}IZi5uu#S>NBirFF7BX5-CxJENFJO0rt3coUzNh(C3zW z9Eh)yXR5@-N4OmK`-SXHLE4xUYfxUeX1a!JD`WAu!L3GBNI4bk=d(WTSP4!Hlr*2V zi@~2zL86Vg7s6q0D*TWm7BmHCB7L2bPJLS{$`*9TUc_7MX1`CRmEvqvpT+Rf^qMU> za36TaGip$CT5PM&XblfCRFve0F0;jQa5!{?v!k4D46~WS1Q9_w_p2dMTC}B~x`TFW zzz@J!>sl}t#;$OZ*D*u+gRTV_bjMyfDE5hmWMU+_EPH97;z0SDf zbtk@x%r)w%HfPWvLr!yo1>GCF-Of;HX0R@d0jMhDYieGQ0f^!`MnUsi_&p+f(|D&7 z>QV!~UIuy7ti#Rec0J5SmSE$NX4Fs2a4LD=&6>}(XB2yKNJ7IC_<4M~9J^h;1NQnktuY0=)}_UO}lxegru^)#eIqDUtOU%I|xq}4pgdOM{h zPq9BJXzJoI0N$zWSIu_i*_IXms-eE%Y^`9P`Tf`S=^ZiM*o88NODbS>re zu`>;a$|7Y%Y`@smjAq>rFn>5ZFy(4Ww2i1XYT_NKbvD^MSWmnFFWSU+>HGu`p0$E+ zXhZ}i=UWuayH&=``M!U6#?>!T1nuAGY(hrb7oI72>}h7DX!nbCM4Qv`H?#Lxy{r7~ zOLz84m-oHaDq~cs6#BN|v2NJ_{b;+&x z!uIibA{ENTJlivH*(FiS4Ko;|mLVa3&22h2F;Z}f9Az{T!M1K@Z#SnA5VK@`016u0!7tIYVG@_s5PR#Gl2P2igw-5l1}ypFr(-F-|?Uo?wxRn|pd5{nGca1?Drlc2BZp9d_w%t7a;`j6f>G84cc%) zMaqjj8LD51P?nM*JhqaNFcuB*C}8JbMYw)Pxy>agz^c&bqJZMTPT<&Jz>H>FRQ^8& z@BoRyWcdd5RE<y`m2$KWO4_jrkBSo~Hq(A+f0`-ZNP=`P?XXBN2 zI^#=|V-r*%Ojk`CG7x2!nWmg4um8@^;-FYARW!^m^q{Aq^q^W zvufMe&75YF`(Yqgn|_g_HE#CQV;w@lH(zh-XZG}e%UwI=ROD2Mey~D9J@q*szV<9X zk5y;KEkvW+jAl7{7A_&UNpQGLH(06>id~XxuDHWlb!^O6B}WgN@09MKDT9*IT)G#Y zy*$m4ywA)%YlAO&T!ml)Ml)$FpR?)-YqD><@H{ahGAv3AA(=5(h_AzT7MtSJuF?gu zfld506S*3AzW-T#3a9`*5<)kGBnGAYqRdIcd9II`t*OJgU#Va6G<#Zq^2H=6_%c$^ zq~QwQ65S-evRrT2K;9&m{4Rq;F|eP3uf0HS~Tk8y4sU#?%R9-=A$^tQ?Lrq0FX9;);q zdz3y!KCv1a1S3HZ*kepM&+2#>N1S`LW(j*?8>kF1Fn&n@)dnZYVQdmgo!;y4oV;o{ zp+}-H*y?loxaLSougJA>$H&(svlJ!b6ic|2{@i3KiapwiDUHZZ{|3`>F^-5HHnn*~ zWJ~^SVkX2I5PRY1VrUMvpW9XmoUg}`{UGfdF_A%s^Apeg;pgh}HavGfMH8-skWg8} zx(^Z<^z21k(Q;hGJBao4Z;ax>hn|3ZDrLe%=fLYUnBcy)(W_W$qAjcWM z%udfS>#MLr_rc4>j^S9Y$(w#!yh~h3Lvsr*JT1sV8v;us-u#wr@Ev-sl2La}AR!0X zbHJ5t`Jkc{b=#Reh_Iiif!65y2g}wkp;~*g2v=j#DQ^{lY2=5`rEKOLLhII?j2D$s zp%PLEHeM+gHr_7^mxH)w)P2c`Bf7sR5x$Trex4q@kv8LWtPWK10-`+vi}` z6{8C5-2o>>>iO`-som>7898Je=)hfO(%6UQB3<;xRY}`dH9Z&DcUio7bIxd!*I;A( z>)BBg@8}=U7mSrW8D_Kxl8pcO?OSfdc_AXYbP~Nraq3Tv;^d!grjUJzHy|sa6`wer zd8vJYqLv0^aeN@qf`&1XhU9Cj@SI<&^MT^$&Gf{Id&hKXh%uwUv=Euvfojo>5G9Yj z*!w{j1eT#1#X)f=Ow(F&Vdo$~IlcfmPGW$WCFb1?DZTgQ{XS=U5HQj&cvfw9j>sNy zRlm)P@X@kW(!N+baNW%v3v&&$wE?KUtyR$t_1$PDUXHb3Et{>@S#n(WOLQmW+NzvCQp)xRG1}t z%q76x>ipj~^N5yEFMz6QV$NQC<*3PLzxLl?<0VtMRvg5k7pZz@{T60b8wvlX9C^-< zru>PJdEBFu=7McP#+^awB_u)cQqw)GO=1^$ zdYlU!y`3=z#NNq+8580w-(4}WIqY^0GUT!ZXB8-4kFofX4S~OE@6tVQ=n@rNb{iNB z`qxr9mVY~bRGTzvtfYM$AbFkG>6vVxO`eD)d$d5H`trM|asQ>X#m(qoYQ6PZS4UaR zy#H~{Ggf@@H@e>psZ!ox0!{Rne$NNZ{F-@InK>Ta*~Q5r#2(Uy1{;Lz&vhX5ZP0z| zi+?OUJHx$h-{3ye7zw#-``GLj%u8eZGab)FNjE*L4O8F8^2*`F-R(kGy8i6Non_Js zg4~Zdda-s8X?STn$q45Au6)t%QeBDBI zrSD<+++pE$@=p<`18g+ZS*^jEyQWUm?wiDYB%P_nuvfqm*d*<62`$&-eHeyC!V9Ej zN$hjrEC!BXQNC7q|AITlkf2XV6CPZMvJBR04E|#u>?2=v;0L1o3Y=s2h1;8HgjHCp zuA#RTj###iFWu-M@+JZ#<10F>Sj`v64Fi;Hn`Cc_rcyaQZO$MHU7aW}Ya#{$m;zA@ z7D<@c(fVMwNIC6*NIvZV8WxcjH*~VPJ!v~53#Kjz4`W1+!mCL>unU@K4Bu4T zAD-`VpQe;zZ>@WOn&poOyKRok`o(IyNdC}PG=Xw5J^DiNjIAhkzc|a_n>-9j&&xqB zu7Bg#AhIiATLn#iZ|RqAs<`)kvVnhSDlX%xm_glWRZ*;J`M6(y1Bq0>y)`c;l7D1~ zA;f}RDzNc$L~TP~$deNFDGg+NEkvEyaT5gI_vF!_x#kxFWSn3LY{z@l(<@t_V7c+uzes9}ZRh?qWWMhA0-IVp1jXFI z7JlmPzK_3pN-+7gw3T$UkXey^Nm>F{n_9;3u!~wh$=iTivu8|P2zgB+YnGA0EggE8 za=((3+VD#6)=Nm&6zb`ddgy9ko-RD+F*d;(#x6v)J~Z423~q>>6THc5GK5@;O0H4f zUqJYO`2uCH1bv%G?JDnlia9NzH;7Nvs&U-8z~_?(mv~!pI+7)i$m9!lP|}C~&~6Ec z!rkx1{s>RCe(^&J?Q=FL^}4tTo7y$b5ai^yGY4M=~XlUH%X}``P7nHr<6$`OF+T0)@t5Z{h94 z3`Gq?}z2Nn}18^-=g#9J~srF0Z8g)pzH7Pi^MmAvOf?GDuP~$ zRM3J^?iW(bb5~N#f3_vD5ngB0vBe0G3ag6H$AO}Ww5af!-IE5pd0%EdZG#dCA>{ib zT-AoduH=Ukn)}$qI;K$VPOW}8^xu-4qD^!>;7dDmA!skk4bxl9D6}D$ukC50#FpF- zBH7a9{{5>l8OW^TnK{!(TjVnz**vuuKaRqH^2~2>W8dv_Y;ccv{QgpU|6Od&e-D=DZB-y8+Ddsxew6Z# zKxt>gL=htF%ta`NK~xz^x8cVKJ$nje>Uib>{p}bk_yJRl%8EUT;AM;EP5y$%`*6x# z-)%{wqeV{DcJ5eE{Sn&u*uH1(Nt-X2B6U!v@uoyv+%(|CLH!S%p^Ztn7Hzo9$2z7` zI6{yji#Rt86GS%cHfo0f@IK86YQF9G+WX_t)Nvoxpv+x^Bc|oel#+N@0cpQHv1pTmD;~JroK|0nbG^ zsSPHn!`?bKGMNnx4+Q?&NFKJDOCF|861-bGpALTq^9nVhCt6=qX_rp&4O(z;G3=&R z`=|wYMfn(XUs941@N%Dd;=5pYdhhY*VFH%Ve01ijxuvD3qwP@mm#lVVXq%jrYOQyU z#VD5qbBxApfsectvQ@WIry}Grx6d*mY;4+13VwU* zFIP?e!Vv-Y)Xf$`DMh7g)^EnV#^-2#Ib!D+fnSAdU3sPeX1FLvA;%88w4gtpCl>aP zX$9Wc6d&1c@hblZ2!CxRgCqr-VqH-Q-E8mV5EJ-gB~@|h)Jp#?Oy|us9lx22!K{fC zgpdAxzFFR<{l7(*Fn#lytc{lx2LhM~h~5TWx~0?aDe8nWZzT0peUshfwa5$J5trRM zIm5uqI(ehGVT~1MvyxZ5ONVXDK5EHF;HOd$6xNSC@Jl?!GgU9s`%AK> zrB6nmDjPU?Tx&0g=%1p#G*D1@l=e>Up?l5-CQ^5agic-}1Zh>i=T%2x5GwTeS*M=C ztA2)Uqim}E=8NF!m$Bgaww*!JCj-aS4MApvGfrHK97kb*+G{7RtKn(8zrS9Wg*qF_u*JM2?qk>E4ooK# za$%%n-gL6_*xr~glb<6Gp4NO}*%jQ=xj!r~3yGnE$>ae?>mMCuTzcUBKhJ#$i~FwS zWBWGo#9chJ%g+f~fREs`SGsr(nIs B#jb$}+59U-@qNfm)`%!AVnwvULDIDv9vp z`tcI>=UF8a%2x}IL=TkQh*L4b(SU9-U&8vl-pe-yaJ3;krJD<_rv7JL($3$oCgr09 z$>W~GxP;ka2e(l0tYyvG5wz6;(1fRZp?paO8v~r1#T37mT%yA8ZF)^qA%SeV9Ij-c zh4x}qnJ;x?=3?Pyy$7EAX*?Nbvh5Apai$hc&-$U3HRIfX$%~mG`K(D*Xues{Q`PV#)67Lu3ABfpir54cxXjlZzkDY zT6sAR$e~!MgyvLQ%{{gY0{djtf$Su&3$>Fu`gdnGw<%~$@+?388q(|9+F`9 zN^dY-abhEmR>|0G*K*MapG`+n*HCNz#`0DhQjr3*Yf%GoAA-^PM+4!1?Cr4u|%vF>}Oa$@u%-5>wNkUB+W*dnNURWLjGIY>K-;DZNt6F_rzi} z^L7vDi{yj-mzzRV#9yuDqAnTm17j09Sa56ceGrdnEkmYf-+7aiw;~x##yqMbTmlWW zmSag=;kjzKi+m>3RzVCsIkpX{~eHEn{!|{gnqM1>f>EHTjod$IE zl#j8npqkEp270FW7&#pmmIGK24-;D(baSMiLG`C}5srGeaT=G$jfeVhUWBCc&7a8Y z%_#w9N*u<=o?h5OALnp_fKhtPl;6hAmtPm2e~_|8Gf|2f5n~FP<-|V*)0n>|Osnyc zhH|xEyHnyUOTxQE+*)&!ym0Qa!6zhr>)W0Eok4>0??_w^;&9fs%FS)bs#IL=^^9xr zPZ#h5WrciIQaE*=--rNQP}a~Ws8(r+h0?@_;rOXXy+9X-t;$->=LL@%eOvJX`D?|g zH={Auo1%m=RD>@-zUU$flZovSu}+Te1B!h+vR>>49P9p|r6PHZ>P``i3H`9Qt8@`J zM$6ydsAn|)4iE}pS$s7-VBG@MU-j^-|B;UjOuw#3dVe%3no-hxnJhK&K)_Kuk-byg z_~n;Tua^6RSjmsAC%Wc+x5*{f3X_ww3WOzz;Nho?(R`C*<& z)|rUjTUVLrQTZxql~INBf-3|Qsh(c?IbPN8EW411NG6G@k6sHaTTrv;q8e)wajQ>m zhD(@G9?P~7Hm7|RQTv{8sx+i`*=-K5O=BSZGG=I9Vx^YHf4P}WSQ0_asBBKX6wFOu z4jiZwyoHTNKdr~KHPv_0I46~yUR9A)zo>sA^RTe{s$rA0rJ_xMJix3zGbLfd#lb>W zdT#jgYsK^8E6c({zKqnww{v0~74@z*Kbl*fLP(eoJsDUp&c>24*YrKBWAkfD+KfHX=s(mBjM!1q4S z{SPj`@SHPezw2FVuN`Nvwf8YXD~hE-FSN?(ohS=7`Ix_#wLixjh(WFm7o5s-n@IT3 zL+72}NGC4mK-U)H|K8$_71aAp*I&jRX2LP^xRHk!SGoCbd>a3lzo(3Ec+A5JkwkvbMIMvU9iJz43nrhDPdx5Sqk4i|hS z^Fc5k2V(z69@PtCgDdi~`FEuf-2BCxybOc4{Sw~Fs5G*HXytqtI`zk45vjTqeIJpS zTA+IrLaOT%&SS93I#b_oM5b8C_~maeY1k=eoK#AMzH3D1$&z^pai=#~XcBkxg1gEd z-gnKE(ubmcu_st)o0D_i-+|`TqrA9nZfB6O>jB;d{ZOt;!1AdhE?#i7j&&}6T-^67 zxn6Noy2Z%B)g>TAP^X#c@2R4r@Sc9_FE&Ti-pC5HmXkA`mI;4>BbIQQBbH#AF^X`3 z=OZDID%LwmG)r*PXt7L(v^U*JXdI z(dxs$ed`l#Upf!_csV|>Uk?qc8?Zaj)ESsxBF}n+=simqzgjSou?*7niN<7+b*x_c z({J^u!phux!~dmC2M!kf#lAQuiJ0Ev&;1vUhGkB%XQ^fSuGO<|>-}O8s(Hc9+#^j& zYGyQ-INy(-FNaj1gO25=97EikL+A!evPw@*K};6PM$7sMue_XMj5b8Ze<55*r_pxm zwGxTGX${I76Qy(uN%`{m&5=|PTn4s0XAe_k4omVl?zbY%^1uL=9!eYZ5-H@b z^0!kVa2Nk035C6{=@ipZ%2)rJVVJITW4M;}mE@dLxecA%Mj_~J*{Sm3L>6<@maanS zOlsFe{cxgA>(MJ4>-R4@rHxt=m)Wicn=U?ln-;8O{LuT+Q%(M3b6`0EV~+^&ObUZUQCUw)oBqA)#)?#JJd_$(bvE`E$pE%NKn79j z+F^sj1+pD5j$gJIiC?wf6|LAEX-3E<9%g{`kWc4G-RfeWtk}`TFvrzIRWR3x8m!cE zH#<1mJ{FD1le1=oun)wyC!Q-Sn7@nmOQ=ruE(QIIT)Z&8zUF)JMRR9TrWC-RNj+ykqytevv1*`7!@63*VZ9& ztd^Fj_J{Zg{*gzw{j5fI%rUovtDJOJ$rIVmQ^hG0qvIWr*20o4>k7IPexLGVx?}xD zN$~YQAq(Rlo*LOGAq&+XspeF~N~$1IDgFmp!PYa_$(WA#AIHKV1UcfqSgBY9diL^y zkT#L5yf5StdWIH4+JbLF0p*(HcA)v4mK$f;p2 z(W-S3=Q6G1T5GAh57PDhOd@^ZdQ6a`E$)MAK`5Ykf8+RNO`}bH=_n)S8Ioflmq*he z>a0n-V*%BrJ#KDfs5TA-oZFgt&GvNyA)yZ`)2I!LW1Q@)quFIp$Elf`cXXd}w|yOn zU!+6i@?hwd#AL;?0{z_6h@;{f(RBHbLM7rs`A8~n4B4wB{4O{Q{u9za+y@yOP8L_x znn!&Ql!(eJC6DmRd^W3or;W;>#v4p&XNMg#u;vqV3l>Xd@XC4&l{*|r5EGYSy;OMe z9+hLG5PVVRl|(WDytZ!|o<0)IKK$yM5j7uMKCe@sY#&RLeA`+H4%?R~ON@aRLr?-` za=l1P{X<5Q`LEpHSCb?ZI!~3R4j&71TG&WK&Ns0Byz?m*#XIwUQF)L`JI55Unxxw0 zrByu`7x{x7PT)vnF!E_kp80d@woU2uGoCK(V3mia zImSjF4CTW;fYkZ$b$aYGL)7UBpe?T)Jo0SqzLU93Fv3=qmvHaglpEMq^ zCAeR(OOsdvb{?RUB=Aq!3fQRR{qdj8&pzQf7>zcIEVx}3%yOD&L`Hy_FG$o|)79#D z)|Krj6Br-Sr<+cK-S?{Y8(Lp{Qn`QKd(1>>j6`LO{1j}_NM5%5=(T>UBEpOMxX+4H ziMlR|$H0pgeyvz9M8qlSC{u5J24jJmJ>h zW>p*&P9jX=2=Qp+Z>(OCOhd=LgIt%2Ur3YiS-7K9YnsqLi`Be(Sjz*YMqqapyQmvf zza5oNpBgnGYnqz)?J;@!lVtVsv-LvJq8_MG{j>av9i7uWGGgY@AV@fzxQ$*=ya(BQ}b&dUC;O zt2*22A}YFA?M)7Ie`EFOKc8SopW1c(bYy#>oTb+*X-Ylt!uQJ7T#hy%eBOJi*guXZ z+d|5jHjb{r=NBK$kIO`axf%FMP8ze8mnlbZbUdBA)t%yTN{_Q)XCjN;3ru+>y+hV~ z$-k8Znwd+yZx3c5ezP|ox7lnocrt)KUh1v`THRxx9QsniBxnDmmI8ja<7s@EEkz6Z zaK%DWKp*LR-Tq*?8rR(0?-bjAHh~eo_u4&g$)AfBSNi>&-)(=nQH<``wQu+!XU-{+^*+O zIgiZUZPz4cWZBTB*y6PY@$Pi1^Uw-)m743U)pnN$^#F631*1?(Ra_ zJgJw+GR3KO%qmKWK_k9@O0M^fXH2KN1Z3L^1O zG?_(b6>GQ*cV67#oM}hEnw$h+)gDRVuZ}JYf`(|sWrUo-XGyU1me-aH29!1wj!IGF z53_7WAa#-he@+EAs5277I!Y2Gryq7b08tXp1`H)Po{BrFFFj);^&1ZHRUfOxM}BdV zW}ms~8>863;+d8Cyf`<#+v)hlvSr3TD8TS*U4Z4+I$j)q%RTzVDK5Jz$_x78jgJz! z2~<9F1zKlKp=^7iB&px76km1j$*e?~q{UCoV_}T8oMNhYiDJp^&e5>X|D`2s^GkC% zKApcVacV&?XxL#H4`{p!aaq`;sc~(IvtE8u^^btY+hSYzKqg1%kkw()wEDd`lB%ip z6NF**=g3~VVgE6|DsC|M%h7ssAL=Ip1j{5kd5#6}XXLk~;qPYAg_8CS+-Wg(5Ccd^e;Q`WnYKs^MHUC!2 zaJ>r49)5#MH7|qyN5b}(j~XMA=@dGX8X0g^<~{kiEN1;(cN+Zi&nvG&U5!p7Nrd)s zl&4yS*`1ej!PDI)ful6p=r(FT!3C4M*bywmZMInf|84CCj_J%^GwZguj2sX++kQ?% zxL0x=vvSPz@Ui0WZcsWgXU~rFW!O_HTJhail7>MfPR7)6N+dz?ttQ>l7RsiluuYo7 z7p2u1xXh2=esKO8{4;u~HIaLXi)7lyD8#_V2xAjrggzeCaL!8Mc%Z^H)d?G%T}t{i zH5kpxnB;OA-!I&v@KmT-uE^;HSw`)q`n$`ppBDDpgi2aD#?o3jkD`($n-xiZ?-9nB z)xpRbFQNL^{cTH>Bsh;+Fl!$9$ZBwAht}F8t@GOOSmi_TkQtY~K^#ic4l0@zd>eTQ zHuB!5>tl!k_DoYk}0Au z>}Cv^rnQW+U+2KRT*kbLoW>0Csqh71ZaWFc^Wi>WjhfuN_|+BCD*g48^yWzc9;eC{ zE~iQb_buwPrsE0cv2Qwi#HF0`g&eU8Oi6T)(7WST#EQ3{Y)1+vGJ`-_^Gk?DgCM3oux?CRKnQi4R)R-(ybi{XO($!)lEraVUZ;kV{pKOys4%5Y*Q*f( zH@=QE^PjfN%T7crOc!}dMvciWh?a%+jOpNc+q2@mdpjW>cbxCN#}VolTeLnbnVBsx z%U$$l?Q_UnhI8q~c;u@m0{Qw@T)57nQ4f&<$5|Hm$u>}G5Qr~gr%Suf0aPl26mPEe zlQKNXDC%QLEc>3ylH$b^S?XlQq}9lqs#DJ!Tk+b2R%7}Vh3RN5d+RsXgr*YD1jXrU zb@hBxB5nOJw%Vs$_t#ohY6900es6uYNh8eQeq1xRcFVwQra`{jP(ja<9U~ zaLB%;aBDnz>8TozGCQQ6ui<*7^Oeq#w7t?Sn!Uw%P;bze3*rmzqt0Y*H-tBVTWIr% zTbHOuot(EvU68=GEzYyob`J+81cIJ9e8IBThT-+;!f<*kvX|0Kt+sQFEe2qm={q^` zVhbTG9|fX2k_*B3AW-!u?aS>V@%V9n|JR<&24Zq5XH4El8KH+^T6kKoVLYn3jl7DL zo7s8#sI74_G=7d z4}Hzx>95RvGFX~PooFH|m#$|)lc*&r%HHxi(ad(U5E{CLZYFn;-a>?F4cO(U($lEr zb;qMPGsE=X{`OMNSBQ)0mv)b>1wDpfE<2fN({DVT4S#MnbDXfPv;5A<%+a3~V*8x$ z@!DhNYnIeHL={NwOC@ zNf_Q+glOa`3_x}s4F8vU8$Y%IloIfj?4rbRZwn?paC7DQ+JMooUjvS!VtS*#7HaZt zXW7SJwCc2Ih6j}^x3g0;XZZyT=ASdy+^ifoWj1W`Pwb8_mCY3Qml+mkk|>6h{S8(x zxn;f2Z78(wBBrOwS?{h5tbJ|YwKRd8D5QOkve(lBs%Xc zqf|ZSgub^ry_Iz(?USTtt3gX36K><}t@1IesPKb*(uRLb!2*3q;EDgr>Eec&7_hX| zy0c8N_VoW*r}nhn&M=_jUbnRsbRSZ6*~m;V4DfufJYH&#;~`65pQ8orVA5LJ7IU;A zr)zLsWn=5nu7@S2HjsFK^Ci+*5a+Kb^v@53DsP!}^`nD+U@J`fUsQg698s-~6xXE( zf#gM+=_nRyUk64+(cDDc(jitGE#(ZL0qz_b-P{o*Ry)XWsKT#@N~aJETdqF1Q~PpD zMTVP5$$6Wh26&_5>*UyJzrI$-V=4J`K&TJA22*aLiFzP;Wfo+Ix&5d)2|*y{?EbyD zJi6C`AuB=>k@uqZHVIK8|Dh#tOu!Mh{1hpAo3~+v7gC+IYpBjU#>LnDDQw|};0Fjq zoYlSXi%|s_{)LdK4zS(mR@7fIulaYrC77LBz>c1KH9a=RtYj8tT~L_!TH<<~707VM zBXJST|6^z0e$lIrC;NHBAN!7-33xs;Jggln-<#;}ns#i&|4lDu=lC_*{dJ7|QPStf z*hq<6h0QU^h+Xkhpdq0Iq}5Bn_47s&(;NwHG#s6Y*q$hK(1#TDsZjy95)7uN>hKtH zED*?nSn=w_UWPRuY%_19?+Ub7l4LqPr|^o%+$#Fu+b1|bm$cc9#Xlca$uzsih+lL? zB0rNT%3Az%xGPeVO5atm-e!U2gi_E|Ay4M+3Ef@7u9fzg0_7LYDCe%a%&QR;riXe!yLOcMLbJb1H&l`b4 z1~yk!_b}|4EhvXxXBMtk*W|jiAW%g}|7orn;k3xvp%(m3$&^ofH^-xlVu~fN{4wrT zsz5HA;ZF;hP5>vf+**nih$p^(*PFQk1Z#iZRne!(SM;<`18+BwnBPer0TNNEo(7IA z;@v@DFcae8$pVd)kdpu~lKkJk0XHrl!1P`a_B7pe}#+bif zW)UV+p9^Jp%0r+=nNeN!9FJY{DFkB>%C}yj;r`t&u?UkSb@tyAU0_tJ;6@j9L;9)U z$)=lKy|}&OSW$`f);Pv93k7?sKXpm0Ku*EI4e)gT#>r4Qnh&!PBjtLOf+qH>KtA0w8 zdrvLlx91*$k#hZJQ6HGDR0{=uGkgDQ2@5B>EVtvfL`?l|=L?iwGy}_Er4RKzvHZ3x z0~I`$!q!ct3SbhUPbHT_kyrB#YTbXjXn8N!x#ct&;RCiALWSO&q;a!9DfO`;)b(Kb zPEbvQQ!9gn#Q_bDPG#IZS#>Yds~EsapLHQo_l4?DfCfDx3$*83qkT-)D)t8~4+L5B z?k%ETUWJ?+L(^aEo1F-w;&r0ahx9 z&Q!guPKQQi-h|!aaTaaJ4vVGEb{nCd>H@=;V}&Qhq=*U*i|X|8v)daLI^dk&-TKPl z+c@|gr*1=7{#mO9M<6!d#IV&Z%hz5O^Y4Z<(TK@~ugN)q8G)|yLSJ;1{tm68|3F^N zEwf5A(TSt{Rrw4-@#s6bavp2lZmA@S+8Rd!_f*M>d9D$fXgE(x&e88Ali7F;*8z{n z)?9MjlAqGw7F@_02DmUbzl8nIK2E@=fBZ*d*SdrLWChRWcvrLdkm$wk_^ zR~tAgII_CaHx73;;6RuN(>KoXRCJqJ+!R6+?P2E{I@LUR5!Z9Y@jqBY zq}xD_te$wtEh59qgn4lI~k0$aMiiEuV8MApA})>;4KtkIR$U!gW0F z-X~VPi~|-ef07+JnDyLh7vr(_qhHM5=Id%0hmh(IH7)>0T6s9(YDDboU|l-2*MJDs zsyr7Bbk37uwa7!G)W;FvszbS3Z=TX0r##yWPo^vMwXq0P#HD#+ULgj!6|pFto+Wz03T18rzJR$>pW{k}u;EJN%+U^JVI)iW1*3<7;L*0ytwVGcUnpVi|G|*y%+BCND}hXFbDZ zYV-Q<;20$7<+)(>vVdqiG+<^yRGP*kp*!c{cY}N!5#YRgemnTSlLvu**s^3_jEEP$ z@bLo<#-WMcYlKSUzFr{ct@KYSo)nL;18f{tCr%cHr9A8}UV474)AE-o{s*uP2u*;~ zbQI{KI|ML*c_vY={Ly%n3Q8alyUV!=hb1Jr_F90`EJPO2uE~a;dI)`$LNZt1^K@;= zf|JO5^<7?e6vdlfA^=@uxL|4S;JK|{>uy?se@1R>j{q#31=pLbaZxfu!cuK)Q(sgMjp}l9p>kz;EO8sjrtyY$^)b(6ND@gR%Y| zj6w=XtQ`p;0~>Hg^Pv=2cPX!5ZR^??+kkupR8wW~uunZ^wW#bSq8;!%eM5Q*$s4C# z1Z=I;N7BTZ8|{EK1Dm&P$0jWq$jzhzOp)aiz^FZ5Kin;3jO=XxyJdH(%NF0Y#81y5 z=R&WhD;fO|sQWqejpoQ@;r2@h;7N+#Cdk3SUaQdOcwO8D|6*j6LaPqOQs9UTVi2fF zW#+5jrS@z+@7lMy>&}|hEs944a$tIU)+!&C6}UgklYN9lX<5%dWf16t)JVms_?Z9h zcG|4u#p_>@S!R`vZ5N3C(WgX>O>^*3$1dP&mCX_dQHxFplWoB65t;v8!~7570bAGq zvPySRM?+<&ad5-=(*wP7Fi|D+6k!ctBhmS{^?9mQ&v@zW%{LjtYY|VU2OvjzH<#r( zyUb#k-zA(O`)21VrC9R96WGD%Ter5thB8DCOsD7#?8;8tEHKJHw3&HR%*t~NkSqxL zN@FImaB@-E2ty)idiG$b-=)jrF7_3{&^=W!&%sJnAH>@ORj5=4}UnGs3dq&_v5Np-_}|X;#a$5;qH=c~f^w$8c&3UW?GL%U8e7b}c_C7F zDH>UplFKV~LRfO1%(=RrRKvD@hZk}~D}8wspU0_a zaF!|pUma##Egtd30_mr&WeGEEUaSjOnIX4)t~gPxyS^8Bi@VL|!~32xU}i0Fr}PO% zWSK>f{`7fnQ>&Be?bxxRb`kzh84ENuS73V{EP?utT$-qInKijsC;X+?-dZ2mYsHIU zX@d3{B8C)@P5BMO=XCJX(l$I3Oz1;@2Q<08^Z3OfqfEQ6{wMPloT#Q<-(9mt!uY9x zO@_uZ8So@`JhskHEQ^(4*2>p8Eai?Ua9P>O#7chy+Z%mi&0P@7e#UB~GJ5<#^ z>wPjX`}H@<|4D-2Q#{Ay6`yL=m~U*=HT2N&UiBGlPAm zB~K2h9?pG-x$~_Sxc~J@Tr}k7^fUq1j_g1dR0X_Y8xz3=3VLzIe++XIn66K1H1jWS zs=VSjRsmiaB;g+0gn7PK%f?I}gIUBOmzP2@Rz%nsZ+S79T*L&jzS`{d;kmtq8E0n9 zx*oi=xe8reqQm}yy*!hax#)X(LYQ>3K1t{ULG3M?2Eb1WD2N{tq6I?3q`}@jRf9zi z*|XlR?T0HVo8D}^?fJT1kSMPwpr4JhC%x;9g3A#2$he2Cotg5&V%|&PruX=W8t9)GS2`he^O=9n)HCO)Al@#dMFRxT4`{JI76M@^msuY zCSrs0|Aj-r@d@B~<-_Y_lcwgTt)(87r@R4<3b`#f9={8`bU8P=9xs`8A`xIVaz0vYHN)#0vnB>QV_$x^G_Zf; za-_G2G6J$wz;TR#c`b9$F5E@^oHyO(e2?-PD${NbC?y|&ng%o{;La$Kv-17tj4Ve) z(qN+AS0swe-tEAQ;O)f$Jm5$;xdGJlbK4w#V=7Y@J5m+!U&O8Ig19T^F;%pNl9&B8 z%SlyE&tEm5^YNwe*wf#vVa4DPE3#t%)dDsX9s4acJ5*(B)$M#&Gh_|w$uqa}w_ZTGaTQDkq0Y^=SNC8qX#^Rv8+XYuz z1P=w!%##Df(QjdTf1qu)p0a+O!2B>!Og&TpJckyD&xFpnUidHa!3S4TdhY)RO;Ki2=Q- zPCO{Y_Xs!v>+ar@XYs>uf2uqp5I%5xWFzF&+->!sZIWYW1lPygZk&gJ%t6i$g1q!*(k}W$$phK5Bfip(W)x| literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/glass-coupe-front.png b/src/components/demos/cocktail-mixer/assets/glass-coupe-front.png new file mode 100644 index 0000000000000000000000000000000000000000..a8df64ad1f0e0c610d6948a938551c9be61c249f GIT binary patch literal 41263 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 R0X^Z8&W`TLnzMoT{tGULT}J=_ literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/glass-highball-back.png b/src/components/demos/cocktail-mixer/assets/glass-highball-back.png new file mode 100644 index 0000000000000000000000000000000000000000..8d4c8d4ade292eb3e55ae8acd3291a757ee2672d GIT binary patch literal 51305 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 G@c#hb3*XNG literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/glass-highball-front.png b/src/components/demos/cocktail-mixer/assets/glass-highball-front.png new file mode 100644 index 0000000000000000000000000000000000000000..40cdf6af54dcd463331f767a605fd3f55d6d5c03 GIT binary patch literal 50664 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 literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/glass-highball-mask.png b/src/components/demos/cocktail-mixer/assets/glass-highball-mask.png new file mode 100644 index 0000000000000000000000000000000000000000..6ab2a34a9b7e11db875da6f741ac7d6afbb43dd2 GIT binary patch literal 5817 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 Ie)9JJ0A(TXp#T5? literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/glass-margarita-front.png b/src/components/demos/cocktail-mixer/assets/glass-margarita-front.png new file mode 100644 index 0000000000000000000000000000000000000000..cd5307afd6a9a71859b0d84f8962f09a7b76688f GIT binary patch literal 39743 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 YR?dE|_%~+$4v;s0+d0}6S$p67KOIA~wEzGB literal 0 HcmV?d00001 diff --git a/src/components/demos/cocktail-mixer/assets/glass-margarita-mask.png b/src/components/demos/cocktail-mixer/assets/glass-margarita-mask.png new file mode 100644 index 0000000000000000000000000000000000000000..1ee551e4ebe02dd7afda479b4126fa4acf114f4e GIT binary patch literal 3528 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