diff --git a/packages/frontend-2/lib/viewer/composables/setup.ts b/packages/frontend-2/lib/viewer/composables/setup.ts index 0ddb486c9..f1ed6528f 100644 --- a/packages/frontend-2/lib/viewer/composables/setup.ts +++ b/packages/frontend-2/lib/viewer/composables/setup.ts @@ -489,10 +489,14 @@ function setupResponseResourceItems( result: resolvedResourcesResult, variables: resourceItemsQueryVariables, onError - } = useQuery(projectViewerResourcesQuery, () => ({ - projectId: projectId.value, - resourceUrlString: resourceIdString.value - })) + } = useQuery( + projectViewerResourcesQuery, + () => ({ + projectId: projectId.value, + resourceUrlString: resourceIdString.value + }), + { keepPreviousResult: true } + ) onError((err) => { globalError.value = createError({ @@ -635,7 +639,9 @@ function setupResponseResourceData( variables: viewerLoadedResourcesVariables, onError: onViewerLoadedResourcesError, onResult: onViewerLoadedResourcesResult - } = useQuery(viewerLoadedResourcesQuery, viewerLoadedResourcesVariablesFunc) + } = useQuery(viewerLoadedResourcesQuery, viewerLoadedResourcesVariablesFunc, { + keepPreviousResult: true + }) const project = computed(() => viewerLoadedResourcesResult.value?.project) const models = computed(() => project.value?.models?.items || []) @@ -723,13 +729,17 @@ function setupResponseResourceData( result: viewerLoadedThreadsResult, onError: onViewerLoadedThreadsError, variables: threadsQueryVariables - } = useQuery(viewerLoadedThreadsQuery, () => ({ - projectId: projectId.value, - filter: { - ...threadFilters.value, - resourceIdString: resourceIdString.value - } - })) + } = useQuery( + viewerLoadedThreadsQuery, + () => ({ + projectId: projectId.value, + filter: { + ...threadFilters.value, + resourceIdString: resourceIdString.value + } + }), + { keepPreviousResult: true } + ) const commentThreadsMetadata = computed( () => viewerLoadedThreadsResult.value?.project?.commentThreads diff --git a/packages/frontend-2/package.json b/packages/frontend-2/package.json index 9916e6b5c..a7b8a564f 100644 --- a/packages/frontend-2/package.json +++ b/packages/frontend-2/package.json @@ -27,7 +27,7 @@ "chromatic": "chromatic --exit-zero-on-changes --exit-once-uploaded" }, "dependencies": { - "@apollo/client": "^3.8.1", + "@apollo/client": "^3.8.4", "@headlessui/vue": "^1.7.13", "@heroicons/vue": "^2.0.12", "@speckle/shared": "workspace:^", @@ -50,8 +50,8 @@ "@tiptap/pm": "2.0.0-beta.220", "@tiptap/suggestion": "2.0.0-beta.220", "@tiptap/vue-3": "2.0.0-beta.220", - "@vue/apollo-composable": "4.0.0-beta.8", - "@vue/apollo-ssr": "4.0.0-beta.5", + "@vue/apollo-composable": "4.0.0-beta.11", + "@vue/apollo-ssr": "4.0.0-beta.9", "@vueuse/core": "^9.13.0", "apollo-upload-client": "^17.0.0", "dayjs": "^1.11.7", diff --git a/yarn.lock b/yarn.lock index 3e5770ecf..e60da57dc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -46,7 +46,7 @@ __metadata: languageName: node linkType: hard -"@apollo/client@npm:^3.6.6, @apollo/client@npm:^3.7.0, @apollo/client@npm:^3.7.14, @apollo/client@npm:^3.8.1": +"@apollo/client@npm:^3.6.6, @apollo/client@npm:^3.7.0, @apollo/client@npm:^3.7.14": version: 3.8.1 resolution: "@apollo/client@npm:3.8.1" dependencies: @@ -82,6 +82,42 @@ __metadata: languageName: node linkType: hard +"@apollo/client@npm:^3.8.4": + version: 3.8.4 + resolution: "@apollo/client@npm:3.8.4" + dependencies: + "@graphql-typed-document-node/core": ^3.1.1 + "@wry/context": ^0.7.3 + "@wry/equality": ^0.5.6 + "@wry/trie": ^0.4.3 + graphql-tag: ^2.12.6 + hoist-non-react-statics: ^3.3.2 + optimism: ^0.17.5 + prop-types: ^15.7.2 + response-iterator: ^0.2.6 + symbol-observable: ^4.0.0 + ts-invariant: ^0.10.3 + tslib: ^2.3.0 + zen-observable-ts: ^1.2.5 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 + graphql-ws: ^5.5.5 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + subscriptions-transport-ws: ^0.9.0 || ^0.11.0 + peerDependenciesMeta: + graphql-ws: + optional: true + react: + optional: true + react-dom: + optional: true + subscriptions-transport-ws: + optional: true + checksum: 509e37cdce7462cacda0a86c413ce471cd8f618625fb8ac3a60d6347d12f37a4fc60e12fc3fc1a375799caa21e56ff58d709e13ef5e13ab15e4dfc828a527848 + languageName: node + linkType: hard + "@apollo/protobufjs@npm:1.2.4": version: 1.2.4 resolution: "@apollo/protobufjs@npm:1.2.4" @@ -12422,7 +12458,7 @@ __metadata: version: 0.0.0-use.local resolution: "@speckle/frontend-2@workspace:packages/frontend-2" dependencies: - "@apollo/client": ^3.8.1 + "@apollo/client": ^3.8.4 "@babel/core": ^7.19.6 "@babel/preset-env": ^7.19.4 "@babel/preset-react": ^7.18.6 @@ -12476,8 +12512,8 @@ __metadata: "@typescript-eslint/eslint-plugin": ^5.38.1 "@typescript-eslint/parser": ^5.38.1 "@vitejs/plugin-legacy": ^4.0.3 - "@vue/apollo-composable": 4.0.0-beta.8 - "@vue/apollo-ssr": 4.0.0-beta.5 + "@vue/apollo-composable": 4.0.0-beta.11 + "@vue/apollo-ssr": 4.0.0-beta.9 "@vueuse/core": ^9.13.0 apollo-upload-client: ^17.0.0 autoprefixer: ^10.4.14 @@ -16959,13 +16995,13 @@ __metadata: languageName: node linkType: hard -"@vue/apollo-composable@npm:4.0.0-beta.8": - version: 4.0.0-beta.8 - resolution: "@vue/apollo-composable@npm:4.0.0-beta.8" +"@vue/apollo-composable@npm:4.0.0-beta.11": + version: 4.0.0-beta.11 + resolution: "@vue/apollo-composable@npm:4.0.0-beta.11" dependencies: - throttle-debounce: ^3.0.1 - ts-essentials: ^9.1.2 - vue-demi: ^0.13.1 + throttle-debounce: ^5.0.0 + ts-essentials: ^9.4.0 + vue-demi: ^0.14.6 peerDependencies: "@apollo/client": ^3.4.13 "@vue/composition-api": ^1.0.0 @@ -16974,7 +17010,7 @@ __metadata: peerDependenciesMeta: "@vue/composition-api": optional: true - checksum: da25c39bba90d6f7ad4e433c37a1688f2d6640282fe2fcc8763ed27b1f06a1fb106d13ffc6e1245c3596e0ed57751efb2ce17ba3b97da46c447449ef1f6560dc + checksum: c68771158d1362804c14ad872943b4f549b3f3842de7b9ba2ef21a11e012c7dd71ce7bbc8bed5fbd79ee26a402efee2263e9985b1cac9da0a0a1a8ec3ef66a6c languageName: node linkType: hard @@ -17028,12 +17064,12 @@ __metadata: languageName: node linkType: hard -"@vue/apollo-ssr@npm:4.0.0-beta.5": - version: 4.0.0-beta.5 - resolution: "@vue/apollo-ssr@npm:4.0.0-beta.5" +"@vue/apollo-ssr@npm:4.0.0-beta.9": + version: 4.0.0-beta.9 + resolution: "@vue/apollo-ssr@npm:4.0.0-beta.9" dependencies: - serialize-javascript: ^6.0.0 - checksum: 95094d0dc9f0bb34090b29c452db8c89915bed173763c17a0d2c5f634d622e9f2797ec0b6321bb2221da7d2855453a7d516ba81ec4a4e1715d88863d898abf66 + serialize-javascript: ^6.0.1 + checksum: 493a1cae1e900754d3f3117f7a82d17ea0a8c2708923f9264f78f5821ce4380f8893f19a00a257de3f2e50f02ac25a425d57ba8a902767c59c81d975559c4303 languageName: node linkType: hard @@ -40366,6 +40402,13 @@ __metadata: languageName: node linkType: hard +"throttle-debounce@npm:^5.0.0": + version: 5.0.0 + resolution: "throttle-debounce@npm:5.0.0" + checksum: aa8bf25828b4f8645ce863589de05d6807ea3debc147ce7d89624638ff8a16792d6d0baa0f8a32a260f0b163444d74020c6087b713ae561fde594b97b6e51f28 + languageName: node + linkType: hard + "through2@npm:^2.0.3": version: 2.0.5 resolution: "through2@npm:2.0.5" @@ -40619,6 +40662,18 @@ __metadata: languageName: node linkType: hard +"ts-essentials@npm:^9.4.0": + version: 9.4.0 + resolution: "ts-essentials@npm:9.4.0" + peerDependencies: + typescript: ">=4.1.0" + peerDependenciesMeta: + typescript: + optional: true + checksum: 50719782f9bfa31678fd1607de783a92b322ed8c26e6229bd0d1786c0649b9f1a7b9a6ac5bc60435053c4952bd3ef2356b5c930cb3a8d3519dc8f41c5576328f + languageName: node + linkType: hard + "ts-interface-checker@npm:^0.1.9": version: 0.1.13 resolution: "ts-interface-checker@npm:0.1.13" @@ -42453,6 +42508,22 @@ __metadata: languageName: node linkType: hard +"vue-demi@npm:^0.14.6": + version: 0.14.6 + resolution: "vue-demi@npm:0.14.6" + peerDependencies: + "@vue/composition-api": ^1.0.0-rc.1 + vue: ^3.0.0-0 || ^2.6.0 + peerDependenciesMeta: + "@vue/composition-api": + optional: true + bin: + vue-demi-fix: bin/vue-demi-fix.js + vue-demi-switch: bin/vue-demi-switch.js + checksum: 424b1f340d5111fc4d4a0f8042c14ae836ba983bc968773a6d955d6846202d7e6f951993ac1525be8732b0cfe0c81d94ab88f427c97bfa86ead08db06491279b + languageName: node + linkType: hard + "vue-devtools-stub@npm:^0.1.0": version: 0.1.0 resolution: "vue-devtools-stub@npm:0.1.0"