From 94806e1048ca46e7afce0e4e1c50d4eaa96523fe Mon Sep 17 00:00:00 2001 From: Prestasafe Date: Sat, 7 Nov 2026 09:18:49 +0100 Subject: [PATCH] Fix editor reload loop on products with combinations --- .dockerignore | 1 + _dev/src/components/Iframe.vue | 9 ++- _dev/src/components/form/ShopSelect.vue | 6 +- _dev/src/scripts/eventHandler.js | 22 ++----- _dev/src/store/pinia.js | 50 +++++++--------- _dev/src/store/previewUrl.mjs | 29 +++++++++ docker/release.Dockerfile | 6 +- tests/preview-url.test.mjs | 79 +++++++++++++++++++++++++ 8 files changed, 150 insertions(+), 52 deletions(-) create mode 100644 _dev/src/store/previewUrl.mjs create mode 100644 tests/preview-url.test.mjs diff --git a/.dockerignore b/.dockerignore index 951e486d..e3c038d8 100644 --- a/.dockerignore +++ b/.dockerignore @@ -15,6 +15,7 @@ tests/* !tests/frontend-compat.test.mjs !tests/block-selection.test.mjs !tests/datepicker-compat.test.mjs +!tests/preview-url.test.mjs !tests/vite-compat.test.mjs docs vendor diff --git a/_dev/src/components/Iframe.vue b/_dev/src/components/Iframe.vue index 780b94b2..c5292261 100644 --- a/_dev/src/components/Iframe.vue +++ b/_dev/src/components/Iframe.vue @@ -35,6 +35,9 @@ let currentPrettyBlocksId = computed(() => currentBlock.id_prettyblocks) */ onMounted(() => { prettyBlocksContext.setIframe() + if (new URL(window.location.href).searchParams.has('startup_url')) { + prettyBlocksContext.pushUrl(prettyBlocksContext.psContext.current_url) + } }) watch(currentBlock, (newVal, oldValue) => { @@ -51,11 +54,7 @@ const reloadIframe = () => { } -let filteredURL = ref(prettyBlocksContext.updateFilteredURL(ajax_urls.startup_url)) - -watch(prettyBlocksContext.psContext, () => { - filteredURL.value = prettyBlocksContext.updateFilteredURL(prettyBlocksContext.psContext.current_url) -}) +const filteredURL = computed(() => prettyBlocksContext.psContext.current_url)