From 7426c5d647df8c7d8ed729c9de17c7768134101e Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Fri, 17 Oct 2025 15:58:11 +0200 Subject: [PATCH 1/3] test --- stores/app_store.js | 20 ++++++++++++++++++++ stores/data_base.js | 11 ----------- stores/hybrid_viewer.js | 7 +++++++ stores/treeview.js | 9 +++++---- 4 files changed, 32 insertions(+), 15 deletions(-) diff --git a/stores/app_store.js b/stores/app_store.js index fde1a59a..60dd3e7c 100644 --- a/stores/app_store.js +++ b/stores/app_store.js @@ -17,6 +17,25 @@ export const useAppStore = defineStore("app", () => { stores.push(store) } + async function addItem(id, value) { + // 1. Store in database + const dataBaseStore = useDataBaseStore() + await dataBaseStore.addItem(id, value) + + // 2. Add to tree + const treeviewStore = useTreeviewStore() + treeviewStore.addToTree( + value.geode_object, + value.displayed_name, + id, + value.object_type + ) + + // 3. Add to viewer + const hybridViewerStore = useHybridViewerStore() + hybridViewerStore.addToViewer(id, value.vtk_js) + } + function save() { const snapshot = {} let savedCount = 0 @@ -79,6 +98,7 @@ export const useAppStore = defineStore("app", () => { return { stores, registerStore, + addItem, save, load, } diff --git a/stores/data_base.js b/stores/data_base.js index 452fa434..44c85c1b 100644 --- a/stores/data_base.js +++ b/stores/data_base.js @@ -2,9 +2,6 @@ import back_schemas from "@geode/opengeodeweb-back/opengeodeweb_back_schemas.jso import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" export const useDataBaseStore = defineStore("dataBase", () => { - const treeview_store = useTreeviewStore() - const hybridViewerStore = useHybridViewerStore() - /** State **/ const db = reactive({}) @@ -65,14 +62,6 @@ export const useDataBaseStore = defineStore("dataBase", () => { await fetchMeshComponents(id) await fetchUuidToFlatIndexDict(id) } - treeview_store.addItem( - value.geode_object, - value.displayed_name, - id, - value.object_type, - ) - - hybridViewerStore.addItem(id, value.vtk_js) } async function fetchMeshComponents(id) { diff --git a/stores/hybrid_viewer.js b/stores/hybrid_viewer.js index 34a2d943..b93d04a3 100644 --- a/stores/hybrid_viewer.js +++ b/stores/hybrid_viewer.js @@ -18,6 +18,12 @@ export const useHybridViewerStore = defineStore("hybridViewer", () => { let viewStream let gridActor = null + async function addToViewer(id, vtk_js) { + if (vtk_js && vtk_js.binary_light_viewable) { + await addItem(id, vtk_js) + } + } + async function initHybridViewer() { if (status.value !== Status.NOT_CREATED) return status.value = Status.CREATING @@ -187,6 +193,7 @@ export const useHybridViewerStore = defineStore("hybridViewer", () => { return { db, genericRenderWindow, + addToViewer, addItem, setVisibility, setZScaling, diff --git a/stores/treeview.js b/stores/treeview.js index 07ce7566..044c22e1 100644 --- a/stores/treeview.js +++ b/stores/treeview.js @@ -12,9 +12,10 @@ export const useTreeviewStore = defineStore("treeview", () => { const selectedTree = ref(null) /** Functions **/ - function addItem(geodeObject, displayed_name, id, object_type) { - dataStyleStore.addDataStyle(id, geodeObject, object_type) - const child = { title: displayed_name, id, object_type } + function addToTree(geodeObject, displayedName, id, objectType) { + dataStyleStore.addDataStyle(id, geodeObject, objectType) + const child = { title: displayedName, id, object_type: objectType } + for (let i = 0; i < items.value.length; i++) { if (items.value[i].title === geodeObject) { items.value[i].children.push(child) @@ -55,7 +56,7 @@ export const useTreeviewStore = defineStore("treeview", () => { panelWidth, model_id, selectedTree, - addItem, + addToTree, displayAdditionalTree, displayFileTree, toggleTreeView, From 66bb68f200057dc5aaeb4c8659bc8faeedfb6d77 Mon Sep 17 00:00:00 2001 From: MaxNumerique <144453705+MaxNumerique@users.noreply.github.com> Date: Fri, 17 Oct 2025 14:04:58 +0000 Subject: [PATCH 2/3] Apply prepare changes --- stores/app_store.js | 8 ++++---- stores/treeview.js | 2 +- tests/integration/microservices/back/requirements.txt | 1 - tests/integration/microservices/viewer/requirements.txt | 1 - 4 files changed, 5 insertions(+), 7 deletions(-) diff --git a/stores/app_store.js b/stores/app_store.js index 60dd3e7c..9208b772 100644 --- a/stores/app_store.js +++ b/stores/app_store.js @@ -25,10 +25,10 @@ export const useAppStore = defineStore("app", () => { // 2. Add to tree const treeviewStore = useTreeviewStore() treeviewStore.addToTree( - value.geode_object, - value.displayed_name, - id, - value.object_type + value.geode_object, + value.displayed_name, + id, + value.object_type, ) // 3. Add to viewer diff --git a/stores/treeview.js b/stores/treeview.js index 044c22e1..5e344e42 100644 --- a/stores/treeview.js +++ b/stores/treeview.js @@ -15,7 +15,7 @@ export const useTreeviewStore = defineStore("treeview", () => { function addToTree(geodeObject, displayedName, id, objectType) { dataStyleStore.addDataStyle(id, geodeObject, objectType) const child = { title: displayedName, id, object_type: objectType } - + for (let i = 0; i < items.value.length; i++) { if (items.value[i].title === geodeObject) { items.value[i].children.push(child) diff --git a/tests/integration/microservices/back/requirements.txt b/tests/integration/microservices/back/requirements.txt index 3f801627..bd3a3ef5 100644 --- a/tests/integration/microservices/back/requirements.txt +++ b/tests/integration/microservices/back/requirements.txt @@ -5,4 +5,3 @@ # pip-compile --output-file=tests/integration/microservices/back/requirements.txt tests/integration/microservices/back/requirements.in # -opengeodeweb-back==5.*,>=5.10.5 diff --git a/tests/integration/microservices/viewer/requirements.txt b/tests/integration/microservices/viewer/requirements.txt index 00788b3f..4d097394 100644 --- a/tests/integration/microservices/viewer/requirements.txt +++ b/tests/integration/microservices/viewer/requirements.txt @@ -5,4 +5,3 @@ # pip-compile --output-file=tests/integration/microservices/viewer/requirements.txt tests/integration/microservices/viewer/requirements.in # -opengeodeweb-viewer==1.*,>=1.11.4 From 1d3f02b2be82a80ac546e433d516da00f924699c Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Fri, 17 Oct 2025 16:05:18 +0200 Subject: [PATCH 3/3] clean --- stores/app_store.js | 3 --- 1 file changed, 3 deletions(-) diff --git a/stores/app_store.js b/stores/app_store.js index 60dd3e7c..d121f454 100644 --- a/stores/app_store.js +++ b/stores/app_store.js @@ -18,11 +18,9 @@ export const useAppStore = defineStore("app", () => { } async function addItem(id, value) { - // 1. Store in database const dataBaseStore = useDataBaseStore() await dataBaseStore.addItem(id, value) - // 2. Add to tree const treeviewStore = useTreeviewStore() treeviewStore.addToTree( value.geode_object, @@ -31,7 +29,6 @@ export const useAppStore = defineStore("app", () => { value.object_type ) - // 3. Add to viewer const hybridViewerStore = useHybridViewerStore() hybridViewerStore.addToViewer(id, value.vtk_js) }