Files
deflock/webapp
Daniel McGee ab571bc67b Fix Shopify embed theming: modal/cart stuck on stale theme, unreadable quantity stepper
Root cause: the cart drawer and product modal are SDK singletons attached
outside shopifyContainer, not children of it. Destroying and recreating
the collection component on theme change only rebuilt the product grid —
the cart/modal never got torn down, so they stayed frozen on whatever
theme was active the first time they rendered.

- Replace destroy-and-recreate with ui.createComponent() + updateConfig()
  on a persisted component reference, so theme changes push new options
  into the cart/modal singletons in place instead of leaving them stale
- Rename initShopify() -> renderShopify() to reflect create-or-update
  behavior
- Drop the shopifyRenderToken race guard from the previous commit — no
  longer needed since we're not destroying/rebuilding DOM on each change
- Theme quantityInput (background, text, border) in both the product tile
  and modal; it was left on the SDK's static default and stayed
  unreadable regardless of theme

Files changed:
  src/pages/StorePage.vue
2026-07-01 22:14:51 -04:00
..
2026-04-26 22:13:16 -06:00
2024-09-30 17:33:30 -05:00
2026-02-02 12:50:56 -07:00
2026-04-21 12:16:18 -06:00
2026-04-21 12:16:18 -06:00
2024-09-30 17:33:30 -05:00
2025-12-04 19:41:24 -07:00
2025-12-04 19:41:24 -07:00
2025-12-04 19:41:24 -07:00

deflock

This template should help get you started developing with Vue 3 in Vite.

VSCode + Volar (and disable Vetur).

Type Support for .vue Imports in TS

TypeScript cannot handle type information for .vue imports by default, so we replace the tsc CLI with vue-tsc for type checking. In editors, we need Volar to make the TypeScript language service aware of .vue types.

Customize configuration

See Vite Configuration Reference.

Project Setup

npm install

Compile and Hot-Reload for Development

npm run dev

Type-Check, Compile and Minify for Production

npm run build