From 17cebe07e7ea374a131a9ec7de66053308a8dc81 Mon Sep 17 00:00:00 2001 From: giles Date: Sun, 1 Mar 2026 10:47:24 +0000 Subject: [PATCH] Add sx-get to cross-domain cart and auth-menu fragment links Cart mini and auth-menu components were rendering plain links for cross-domain navigation. Add sx-get with OOB swap attributes so these use the SX fetch path instead of full reloads. Co-Authored-By: Claude Opus 4.6 --- shared/sexp/templates/fragments.sexp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/shared/sexp/templates/fragments.sexp b/shared/sexp/templates/fragments.sexp index ba13e98..b729efc 100644 --- a/shared/sexp/templates/fragments.sexp +++ b/shared/sexp/templates/fragments.sexp @@ -26,6 +26,8 @@ (img :src (str blog-url "static/img/logo.jpg") :class "h-full w-full rounded-full object-cover border border-stone-300 flex-shrink-0"))) (a :href cart-url + :sx-get cart-url + :sx-target "#main-panel" :sx-swap "outerHTML" :sx-push-url "true" :class "relative inline-flex items-center justify-center text-stone-700 hover:text-emerald-700" (i :class "fa fa-shopping-cart text-5xl" :aria-hidden "true") (span :class "absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 inline-flex items-center justify-center rounded-full bg-emerald-600 text-white text-sm w-5 h-5" @@ -36,21 +38,30 @@ (span :id "auth-menu-desktop" :class "hidden md:inline-flex" (if user-email (a :href account-url + :sx-get account-url + :sx-target "#main-panel" :sx-swap "outerHTML" :sx-push-url "true" :class "justify-center cursor-pointer flex flex-row items-center p-3 gap-2 rounded bg-stone-200 text-black" :data-close-details true (i :class "fa-solid fa-user") (span user-email)) (a :href account-url + :sx-get account-url + :sx-target "#main-panel" :sx-swap "outerHTML" :sx-push-url "true" :class "justify-center cursor-pointer flex flex-row items-center p-3 gap-2 rounded bg-stone-200 text-black" :data-close-details true (i :class "fa-solid fa-key") (span "sign in or register")))) (span :id "auth-menu-mobile" :class "block md:hidden text-md font-bold" (if user-email - (a :href account-url :data-close-details true + (a :href account-url + :sx-get account-url + :sx-target "#main-panel" :sx-swap "outerHTML" :sx-push-url "true" + :data-close-details true (i :class "fa-solid fa-user") (span user-email)) (a :href account-url + :sx-get account-url + :sx-target "#main-panel" :sx-swap "outerHTML" :sx-push-url "true" (i :class "fa-solid fa-key") (span "sign in or register"))))))