diff --git a/docs/config.json b/docs/config.json index 5bd3c6b4da..edcbc6bd11 100644 --- a/docs/config.json +++ b/docs/config.json @@ -5,76 +5,13 @@ "apiKey": "35bc6c51aa322700d1383e17c4f669f4", "indexName": "tanstackquery" }, - "menu": [ + "sections": [ { - "label": "API Reference", - "children": [ - { - "label": "QueryClient", - "to": "reference/QueryClient" - }, - { - "label": "QueryCache", - "to": "reference/QueryCache" - }, - { - "label": "MutationCache", - "to": "reference/MutationCache" - }, - { - "label": "QueryObserver", - "to": "reference/QueryObserver" - }, - { - "label": "InfiniteQueryObserver", - "to": "reference/InfiniteQueryObserver" - }, - { - "label": "QueriesObserver", - "to": "reference/QueriesObserver" - }, - { - "label": "focusManager", - "to": "reference/focusManager" - }, - { - "label": "onlineManager", - "to": "reference/onlineManager" - }, - { - "label": "notifyManager", - "to": "reference/notifyManager" - } - ] - }, - { - "label": "ESLint", - "children": [ - { - "label": "ESLint Plugin Query", - "to": "eslint/eslint-plugin-query" - }, - { - "label": "Exhaustive Deps", - "to": "eslint/exhaustive-deps" - }, - { - "label": "Stable Query Client", - "to": "eslint/stable-query-client" - }, - { - "label": "No Rest Destructuring", - "to": "eslint/no-rest-destructuring" - } - ] - } - ], - "frameworkMenus": [ - { - "framework": "react", - "menuItems": [ + "label": "Getting Started", + "children": [], + "frameworks": [ { - "label": "Getting Started", + "label": "react", "children": [ { "label": "Overview", @@ -115,7 +52,97 @@ ] }, { - "label": "Guides & Concepts", + "label": "solid", + "children": [ + { + "label": "Overview", + "to": "framework/solid/overview" + }, + { + "label": "Devtools", + "to": "framework/solid/devtools" + } + ] + }, + { + "label": "vue", + "children": [ + { + "label": "Overview", + "to": "framework/vue/overview" + }, + { + "label": "Installation", + "to": "framework/vue/installation" + }, + { + "label": "Quick Start", + "to": "framework/vue/quick-start" + }, + { + "label": "Devtools", + "to": "framework/vue/devtools" + }, + { + "label": "TypeScript", + "to": "framework/vue/typescript" + }, + { + "label": "GraphQL", + "to": "framework/vue/graphql" + } + ] + }, + { + "label": "svelte", + "children": [ + { + "label": "Overview", + "to": "framework/svelte/overview" + }, + { + "label": "Installation", + "to": "framework/svelte/installation" + }, + { + "label": "SSR & SvelteKit", + "to": "framework/svelte/ssr" + }, + { + "label": "Reactivity", + "to": "framework/svelte/reactivity" + } + ] + }, + { + "label": "angular", + "children": [ + { + "label": "Overview", + "to": "framework/angular/overview" + }, + { + "label": "Installation", + "to": "framework/angular/installation" + }, + { + "label": "Quick Start", + "to": "framework/angular/quick-start" + }, + { + "label": "Devtools", + "to": "framework/angular/devtools" + } + ] + } + ] + }, + { + "label": "Guides & Concepts", + "children": [], + "frameworks": [ + { + "label": "react", "children": [ { "label": "Important Defaults", @@ -264,456 +291,365 @@ ] }, { - "label": "Community Resources", + "label": "vue", "children": [ { - "label": "TkDodo's Blog", - "to": "framework/react/community/tkdodos-blog" + "label": "Important Defaults", + "to": "framework/vue/guides/important-defaults" }, { - "label": "Community Projects", - "to": "framework/react/community/community-projects" - } - ] - }, - { - "label": "Examples", - "children": [ - { - "label": "Simple", - "to": "framework/react/examples/simple" + "label": "Queries", + "to": "framework/vue/guides/queries" }, { - "label": "Basic", - "to": "framework/react/examples/basic" + "label": "Query Keys", + "to": "framework/vue/guides/query-keys" }, { - "label": "Basic w/ GraphQL-Request", - "to": "framework/react/examples/basic-graphql-request" + "label": "Query Functions", + "to": "framework/vue/guides/query-functions" }, { - "label": "Auto Refetching / Polling / Realtime", - "to": "framework/react/examples/auto-refetching" + "label": "Network Mode", + "to": "framework/vue/guides/network-mode" }, { - "label": "Optimistic Updates (UI)", - "to": "framework/react/examples/optimistic-updates-ui" + "label": "Parallel Queries", + "to": "framework/vue/guides/parallel-queries" }, { - "label": "Optimistic Updates (Cache)", - "to": "framework/react/examples/optimistic-updates-cache" + "label": "Dependent Queries", + "to": "framework/vue/guides/dependent-queries" }, { - "label": "Pagination", - "to": "framework/react/examples/pagination" + "label": "Background Fetching Indicators", + "to": "framework/vue/guides/background-fetching-indicators" }, { - "label": "Load-More & Infinite Scroll", - "to": "framework/react/examples/load-more-infinite-scroll" + "label": "Window Focus Refetching", + "to": "framework/vue/guides/window-focus-refetching" }, { - "label": "Infinite query with Max pages", - "to": "framework/react/examples/infinite-query-with-max-pages" + "label": "Disabling/Pausing Queries", + "to": "framework/vue/guides/disabling-queries" }, { - "label": "Suspense", - "to": "framework/react/examples/suspense" + "label": "Query Retries", + "to": "framework/vue/guides/query-retries" }, { - "label": "Default Query Function", - "to": "framework/react/examples/default-query-function" + "label": "Paginated Queries", + "to": "framework/vue/guides/paginated-queries" }, { - "label": "Playground", - "to": "framework/react/examples/playground" + "label": "Infinite Queries", + "to": "framework/vue/guides/infinite-queries" }, { - "label": "Prefetching", - "to": "framework/react/examples/prefetching" + "label": "Initial Query Data", + "to": "framework/vue/guides/initial-query-data" }, { - "label": "Star Wars", - "to": "framework/react/examples/star-wars" + "label": "Placeholder Query Data", + "to": "framework/vue/guides/placeholder-query-data" }, { - "label": "Rick And Morty", - "to": "framework/react/examples/rick-morty" + "label": "Prefetching", + "to": "framework/vue/guides/prefetching" }, { - "label": "Next.js", - "to": "framework/react/examples/nextjs" + "label": "Mutations", + "to": "framework/vue/guides/mutations" }, { - "label": "Next.js app with streaming", - "to": "framework/react/examples/nextjs-suspense-streaming" + "label": "Query Invalidation", + "to": "framework/vue/guides/query-invalidation" }, { - "label": "React Native", - "to": "framework/react/examples/react-native" + "label": "Invalidation from Mutations", + "to": "framework/vue/guides/invalidations-from-mutations" }, { - "label": "React Router", - "to": "framework/react/examples/react-router" + "label": "Updates from Mutation", + "to": "framework/vue/guides/updates-from-mutation-responses" }, { - "label": "Offline Queries and Mutations", - "to": "framework/react/examples/offline" + "label": "Optimistic Updates", + "to": "framework/vue/guides/optimistic-updates" }, { - "label": "Algolia", - "to": "framework/react/examples/algolia" + "label": "Query Cancellation", + "to": "framework/vue/guides/query-cancellation" }, { - "label": "Shadow DOM", - "to": "framework/react/examples/shadow-dom" - } - ] - }, - { - "label": "Plugins", - "children": [ + "label": "Scroll Restoration", + "to": "framework/vue/guides/scroll-restoration" + }, { - "label": "persistQueryClient", - "to": "framework/react/plugins/persistQueryClient" + "label": "Filters", + "to": "framework/vue/guides/filters" }, { - "label": "createSyncStoragePersister", - "to": "framework/react/plugins/createSyncStoragePersister" - }, - { - "label": "createAsyncStoragePersister", - "to": "framework/react/plugins/createAsyncStoragePersister" - }, - { - "label": "broadcastQueryClient (Experimental)", - "to": "framework/react/plugins/broadcastQueryClient" - }, - { - "label": "createPersister (Experimental)", - "to": "framework/react/plugins/createPersister" - } - ] - }, - { - "label": "API Reference", - "children": [ - { - "label": "useQuery", - "to": "framework/react/reference/useQuery" - }, - { - "label": "useQueries", - "to": "framework/react/reference/useQueries" - }, - { - "label": "useInfiniteQuery", - "to": "framework/react/reference/useInfiniteQuery" - }, - { - "label": "useMutation", - "to": "framework/react/reference/useMutation" - }, - { - "label": "useIsFetching", - "to": "framework/react/reference/useIsFetching" - }, - { - "label": "useIsMutating", - "to": "framework/react/reference/useIsMutating" - }, - { - "label": "useMutationState", - "to": "framework/react/reference/useMutationState" - }, - { - "label": "useSuspenseQuery", - "to": "framework/react/reference/useSuspenseQuery" - }, - { - "label": "useSuspenseInfiniteQuery", - "to": "framework/react/reference/useSuspenseInfiniteQuery" - }, - { - "label": "useSuspenseQueries", - "to": "framework/react/reference/useSuspenseQueries" - }, - - { - "label": "QueryClientProvider", - "to": "framework/react/reference/QueryClientProvider" - }, - { - "label": "useQueryClient", - "to": "framework/react/reference/useQueryClient" - }, - { - "label": "queryOptions", - "to": "framework/react/reference/queryOptions" - }, - { - "label": "infiniteQueryOptions", - "to": "framework/react/reference/infiniteQueryOptions" - }, - { - "label": "QueryErrorResetBoundary", - "to": "framework/react/reference/QueryErrorResetBoundary" - }, - { - "label": "useQueryErrorResetBoundary", - "to": "framework/react/reference/useQueryErrorResetBoundary" - }, - { - "label": "hydration", - "to": "framework/react/reference/hydration" - } - ] - } - ] - }, - { - "framework": "solid", - "menuItems": [ - { - "label": "Getting Started", - "children": [ - { - "label": "Overview", - "to": "framework/solid/overview" - }, - { - "label": "Devtools", - "to": "framework/solid/devtools" - } - ] - }, - { - "label": "Examples", - "children": [ - { - "label": "Simple", - "to": "framework/solid/examples/simple" - }, - { - "label": "Basic", - "to": "framework/solid/examples/basic-typescript" - }, - { - "label": "Basic w/ GraphQL-Request", - "to": "framework/solid/examples/basic-graphql-request" + "label": "SSR & Nuxt", + "to": "framework/vue/guides/ssr" }, { - "label": "Default Query Function", - "to": "framework/solid/examples/default-query-function" + "label": "Caching", + "to": "framework/vue/guides/caching" }, { - "label": "Solid Start", - "to": "framework/solid/examples/solid-start-streaming" - } - ] - } - ] - }, - { - "framework": "vue", - "menuItems": [ - { - "label": "Getting Started", - "children": [ - { - "label": "Overview", - "to": "framework/vue/overview" + "label": "Default Query Fn", + "to": "framework/vue/guides/default-query-function" }, { - "label": "Installation", - "to": "framework/vue/installation" + "label": "Suspense", + "to": "framework/vue/guides/suspense" }, { - "label": "Quick Start", - "to": "framework/vue/quick-start" + "label": "Testing", + "to": "framework/vue/guides/testing" }, { - "label": "Devtools", - "to": "framework/vue/devtools" + "label": "Custom Client", + "to": "framework/vue/guides/custom-client" }, { - "label": "TypeScript", - "to": "framework/vue/typescript" + "label": "Does this replace [Vuex, Pinia]?", + "to": "framework/vue/guides/does-this-replace-client-state" }, { - "label": "GraphQL", - "to": "framework/vue/graphql" + "label": "Migrating to v5", + "to": "framework/vue/guides/migrating-to-v5" } ] }, { - "label": "Guides & Concepts", + "label": "angular", "children": [ { "label": "Important Defaults", - "to": "framework/vue/guides/important-defaults" + "to": "framework/angular/guides/important-defaults" }, { "label": "Queries", - "to": "framework/vue/guides/queries" + "to": "framework/angular/guides/queries" }, { "label": "Query Keys", - "to": "framework/vue/guides/query-keys" + "to": "framework/angular/guides/query-keys" }, { "label": "Query Functions", - "to": "framework/vue/guides/query-functions" + "to": "framework/angular/guides/query-functions" + }, + { + "label": "Query Options", + "to": "framework/angular/guides/query-options" }, { "label": "Network Mode", - "to": "framework/vue/guides/network-mode" + "to": "framework/angular/guides/network-mode" }, { "label": "Parallel Queries", - "to": "framework/vue/guides/parallel-queries" + "to": "framework/angular/guides/parallel-queries" }, { "label": "Dependent Queries", - "to": "framework/vue/guides/dependent-queries" + "to": "framework/angular/guides/dependent-queries" }, { "label": "Background Fetching Indicators", - "to": "framework/vue/guides/background-fetching-indicators" + "to": "framework/angular/guides/background-fetching-indicators" }, { "label": "Window Focus Refetching", - "to": "framework/vue/guides/window-focus-refetching" + "to": "framework/angular/guides/window-focus-refetching" }, { "label": "Disabling/Pausing Queries", - "to": "framework/vue/guides/disabling-queries" + "to": "framework/angular/guides/disabling-queries" }, { "label": "Query Retries", - "to": "framework/vue/guides/query-retries" + "to": "framework/angular/guides/query-retries" }, { "label": "Paginated Queries", - "to": "framework/vue/guides/paginated-queries" + "to": "framework/angular/guides/paginated-queries" }, { "label": "Infinite Queries", - "to": "framework/vue/guides/infinite-queries" + "to": "framework/angular/guides/infinite-queries" }, { "label": "Initial Query Data", - "to": "framework/vue/guides/initial-query-data" + "to": "framework/angular/guides/initial-query-data" }, { "label": "Placeholder Query Data", - "to": "framework/vue/guides/placeholder-query-data" - }, - { - "label": "Prefetching", - "to": "framework/vue/guides/prefetching" + "to": "framework/angular/guides/placeholder-query-data" }, { "label": "Mutations", - "to": "framework/vue/guides/mutations" + "to": "framework/angular/guides/mutations" }, { "label": "Query Invalidation", - "to": "framework/vue/guides/query-invalidation" + "to": "framework/angular/guides/query-invalidation" }, { "label": "Invalidation from Mutations", - "to": "framework/vue/guides/invalidations-from-mutations" - }, - { - "label": "Updates from Mutation", - "to": "framework/vue/guides/updates-from-mutation-responses" + "to": "framework/angular/guides/invalidations-from-mutations" }, { "label": "Optimistic Updates", - "to": "framework/vue/guides/optimistic-updates" + "to": "framework/angular/guides/optimistic-updates" }, { "label": "Query Cancellation", - "to": "framework/vue/guides/query-cancellation" + "to": "framework/angular/guides/query-cancellation" }, { "label": "Scroll Restoration", - "to": "framework/vue/guides/scroll-restoration" + "to": "framework/angular/guides/scroll-restoration" }, { "label": "Filters", - "to": "framework/vue/guides/filters" - }, - { - "label": "SSR & Nuxt", - "to": "framework/vue/guides/ssr" + "to": "framework/angular/guides/filters" }, { "label": "Caching", - "to": "framework/vue/guides/caching" + "to": "framework/angular/guides/caching" }, { "label": "Default Query Fn", - "to": "framework/vue/guides/default-query-function" + "to": "framework/angular/guides/default-query-function" }, { - "label": "Suspense", - "to": "framework/vue/guides/suspense" + "label": "Does this replace state managers?", + "to": "framework/angular/guides/does-this-replace-client-state" + } + ] + } + ] + }, + { + "label": "API Reference", + "children": [ + { + "label": "QueryClient", + "to": "reference/QueryClient" + }, + { + "label": "QueryCache", + "to": "reference/QueryCache" + }, + { + "label": "MutationCache", + "to": "reference/MutationCache" + }, + { + "label": "QueryObserver", + "to": "reference/QueryObserver" + }, + { + "label": "InfiniteQueryObserver", + "to": "reference/InfiniteQueryObserver" + }, + { + "label": "QueriesObserver", + "to": "reference/QueriesObserver" + }, + { + "label": "focusManager", + "to": "reference/focusManager" + }, + { + "label": "onlineManager", + "to": "reference/onlineManager" + }, + { + "label": "notifyManager", + "to": "reference/notifyManager" + } + ], + "frameworks": [ + { + "label": "react", + "children": [ + { + "label": "useQuery", + "to": "framework/react/reference/useQuery" }, { - "label": "Testing", - "to": "framework/vue/guides/testing" + "label": "useQueries", + "to": "framework/react/reference/useQueries" }, { - "label": "Custom Client", - "to": "framework/vue/guides/custom-client" + "label": "useInfiniteQuery", + "to": "framework/react/reference/useInfiniteQuery" }, { - "label": "Does this replace [Vuex, Pinia]?", - "to": "framework/vue/guides/does-this-replace-client-state" + "label": "useMutation", + "to": "framework/react/reference/useMutation" }, { - "label": "Migrating to v5", - "to": "framework/vue/guides/migrating-to-v5" - } - ] - }, - { - "label": "Community Resources", - "children": [ + "label": "useIsFetching", + "to": "framework/react/reference/useIsFetching" + }, { - "label": "TkDodo's Blog", - "to": "framework/vue/community/tkdodos-blog" + "label": "useIsMutating", + "to": "framework/react/reference/useIsMutating" }, { - "label": "Query Key Factory", - "to": "framework/vue/community/lukemorales-query-key-factory" - } - ] - }, - { - "label": "Examples", - "children": [ + "label": "useMutationState", + "to": "framework/react/reference/useMutationState" + }, { - "label": "Basic", - "to": "framework/vue/examples/basic" + "label": "useSuspenseQuery", + "to": "framework/react/reference/useSuspenseQuery" }, { - "label": "Vue 2.6", - "to": "framework/vue/examples/2.6-basic" + "label": "useSuspenseInfiniteQuery", + "to": "framework/react/reference/useSuspenseInfiniteQuery" }, { - "label": "Nuxt 3", - "to": "framework/vue/examples/nuxt3" + "label": "useSuspenseQueries", + "to": "framework/react/reference/useSuspenseQueries" }, { - "label": "Persister", - "to": "framework/vue/examples/persister" + "label": "QueryClientProvider", + "to": "framework/react/reference/QueryClientProvider" + }, + { + "label": "useQueryClient", + "to": "framework/react/reference/useQueryClient" + }, + { + "label": "queryOptions", + "to": "framework/react/reference/queryOptions" + }, + { + "label": "infiniteQueryOptions", + "to": "framework/react/reference/infiniteQueryOptions" + }, + { + "label": "QueryErrorResetBoundary", + "to": "framework/react/reference/QueryErrorResetBoundary" + }, + { + "label": "useQueryErrorResetBoundary", + "to": "framework/react/reference/useQueryErrorResetBoundary" + }, + { + "label": "hydration", + "to": "framework/react/reference/hydration" } ] }, { - "label": "API Reference", + "label": "vue", "children": [ { "label": "useQuery", @@ -752,203 +688,240 @@ ] }, { - "framework": "svelte", - "menuItems": [ + "label": "ESLint", + "children": [ + { + "label": "ESLint Plugin Query", + "to": "eslint/eslint-plugin-query" + }, + { + "label": "Exhaustive Deps", + "to": "eslint/exhaustive-deps" + }, + { + "label": "Stable Query Client", + "to": "eslint/stable-query-client" + }, + { + "label": "No Rest Destructuring", + "to": "eslint/no-rest-destructuring" + } + ] + }, + { + "label": "Community Resources", + "children": [], + "frameworks": [ { - "label": "Getting Started", + "label": "react", "children": [ { - "label": "Overview", - "to": "framework/svelte/overview" + "label": "TkDodo's Blog", + "to": "framework/react/community/tkdodos-blog" }, { - "label": "Installation", - "to": "framework/svelte/installation" - }, + "label": "Community Projects", + "to": "framework/react/community/community-projects" + } + ] + }, + { + "label": "vue", + "children": [ { - "label": "SSR & SvelteKit", - "to": "framework/svelte/ssr" + "label": "TkDodo's Blog", + "to": "framework/vue/community/tkdodos-blog" }, { - "label": "Reactivity", - "to": "framework/svelte/reactivity" + "label": "Query Key Factory", + "to": "framework/vue/community/lukemorales-query-key-factory" } ] - }, + } + ] + }, + { + "label": "Examples", + "children": [], + "frameworks": [ { - "label": "Examples", + "label": "react", "children": [ { "label": "Simple", - "to": "framework/svelte/examples/simple" + "to": "framework/react/examples/simple" }, { "label": "Basic", - "to": "framework/svelte/examples/basic" + "to": "framework/react/examples/basic" }, { - "label": "Auto Refetching / Polling / Realtime", - "to": "framework/svelte/examples/auto-refetching" + "label": "Basic w/ GraphQL-Request", + "to": "framework/react/examples/basic-graphql-request" }, { - "label": "SSR", - "to": "framework/svelte/examples/ssr" + "label": "Auto Refetching / Polling / Realtime", + "to": "framework/react/examples/auto-refetching" }, { - "label": "Optimistic Updates in TypeScript", - "to": "framework/svelte/examples/optimistic-updates-typescript" + "label": "Optimistic Updates (UI)", + "to": "framework/react/examples/optimistic-updates-ui" }, { - "label": "Playground", - "to": "framework/svelte/examples/playground" + "label": "Optimistic Updates (Cache)", + "to": "framework/react/examples/optimistic-updates-cache" }, { - "label": "Star Wars", - "to": "framework/svelte/examples/star-wars" + "label": "Pagination", + "to": "framework/react/examples/pagination" }, { - "label": "Infinite Queries", - "to": "framework/svelte/examples/load-more-infinite-scroll" - } - ] - } - ] - }, - { - "framework": "angular", - "menuItems": [ - { - "label": "Getting Started", - "children": [ - { - "label": "Overview", - "to": "framework/angular/overview" + "label": "Load-More & Infinite Scroll", + "to": "framework/react/examples/load-more-infinite-scroll" }, { - "label": "Installation", - "to": "framework/angular/installation" + "label": "Infinite query with Max pages", + "to": "framework/react/examples/infinite-query-with-max-pages" }, { - "label": "Quick Start", - "to": "framework/angular/quick-start" + "label": "Suspense", + "to": "framework/react/examples/suspense" }, { - "label": "Devtools", - "to": "framework/angular/devtools" - } - ] - }, - { - "label": "Guides & Concepts", - "children": [ - { - "label": "Important Defaults", - "to": "framework/angular/guides/important-defaults" + "label": "Default Query Function", + "to": "framework/react/examples/default-query-function" }, { - "label": "Queries", - "to": "framework/angular/guides/queries" + "label": "Playground", + "to": "framework/react/examples/playground" }, { - "label": "Query Keys", - "to": "framework/angular/guides/query-keys" + "label": "Prefetching", + "to": "framework/react/examples/prefetching" }, { - "label": "Query Functions", - "to": "framework/angular/guides/query-functions" + "label": "Star Wars", + "to": "framework/react/examples/star-wars" }, { - "label": "Query Options", - "to": "framework/angular/guides/query-options" + "label": "Rick And Morty", + "to": "framework/react/examples/rick-morty" }, { - "label": "Network Mode", - "to": "framework/angular/guides/network-mode" + "label": "Next.js", + "to": "framework/react/examples/nextjs" }, { - "label": "Parallel Queries", - "to": "framework/angular/guides/parallel-queries" + "label": "Next.js app with streaming", + "to": "framework/react/examples/nextjs-suspense-streaming" }, { - "label": "Dependent Queries", - "to": "framework/angular/guides/dependent-queries" + "label": "React Native", + "to": "framework/react/examples/react-native" }, { - "label": "Background Fetching Indicators", - "to": "framework/angular/guides/background-fetching-indicators" + "label": "React Router", + "to": "framework/react/examples/react-router" }, { - "label": "Window Focus Refetching", - "to": "framework/angular/guides/window-focus-refetching" + "label": "Offline Queries and Mutations", + "to": "framework/react/examples/offline" }, { - "label": "Disabling/Pausing Queries", - "to": "framework/angular/guides/disabling-queries" + "label": "Algolia", + "to": "framework/react/examples/algolia" }, { - "label": "Query Retries", - "to": "framework/angular/guides/query-retries" + "label": "Shadow DOM", + "to": "framework/react/examples/shadow-dom" + } + ] + }, + { + "label": "solid", + "children": [ + { + "label": "Simple", + "to": "framework/solid/examples/simple" }, { - "label": "Paginated Queries", - "to": "framework/angular/guides/paginated-queries" + "label": "Basic", + "to": "framework/solid/examples/basic-typescript" }, { - "label": "Infinite Queries", - "to": "framework/angular/guides/infinite-queries" + "label": "Basic w/ GraphQL-Request", + "to": "framework/solid/examples/basic-graphql-request" }, { - "label": "Initial Query Data", - "to": "framework/angular/guides/initial-query-data" + "label": "Default Query Function", + "to": "framework/solid/examples/default-query-function" }, { - "label": "Placeholder Query Data", - "to": "framework/angular/guides/placeholder-query-data" + "label": "Solid Start", + "to": "framework/solid/examples/solid-start-streaming" + } + ] + }, + { + "label": "vue", + "children": [ + { + "label": "Basic", + "to": "framework/vue/examples/basic" }, { - "label": "Mutations", - "to": "framework/angular/guides/mutations" + "label": "Vue 2.6", + "to": "framework/vue/examples/2.6-basic" }, { - "label": "Query Invalidation", - "to": "framework/angular/guides/query-invalidation" + "label": "Nuxt 3", + "to": "framework/vue/examples/nuxt3" }, { - "label": "Invalidation from Mutations", - "to": "framework/angular/guides/invalidations-from-mutations" + "label": "Persister", + "to": "framework/vue/examples/persister" + } + ] + }, + { + "label": "svelte", + "children": [ + { + "label": "Simple", + "to": "framework/svelte/examples/simple" }, { - "label": "Optimistic Updates", - "to": "framework/angular/guides/optimistic-updates" + "label": "Basic", + "to": "framework/svelte/examples/basic" }, { - "label": "Query Cancellation", - "to": "framework/angular/guides/query-cancellation" + "label": "Auto Refetching / Polling / Realtime", + "to": "framework/svelte/examples/auto-refetching" }, { - "label": "Scroll Restoration", - "to": "framework/angular/guides/scroll-restoration" + "label": "SSR", + "to": "framework/svelte/examples/ssr" }, { - "label": "Filters", - "to": "framework/angular/guides/filters" + "label": "Optimistic Updates in TypeScript", + "to": "framework/svelte/examples/optimistic-updates-typescript" }, { - "label": "Caching", - "to": "framework/angular/guides/caching" + "label": "Playground", + "to": "framework/svelte/examples/playground" }, { - "label": "Default Query Fn", - "to": "framework/angular/guides/default-query-function" + "label": "Star Wars", + "to": "framework/svelte/examples/star-wars" }, { - "label": "Does this replace state managers?", - "to": "framework/angular/guides/does-this-replace-client-state" + "label": "Infinite Queries", + "to": "framework/svelte/examples/load-more-infinite-scroll" } ] }, { - "label": "Examples", + "label": "angular", "children": [ { "label": "Simple", @@ -969,6 +942,37 @@ ] } ] + }, + { + "label": "Plugins", + "children": [], + "frameworks": [ + { + "label": "react", + "children": [ + { + "label": "persistQueryClient", + "to": "framework/react/plugins/persistQueryClient" + }, + { + "label": "createSyncStoragePersister", + "to": "framework/react/plugins/createSyncStoragePersister" + }, + { + "label": "createAsyncStoragePersister", + "to": "framework/react/plugins/createAsyncStoragePersister" + }, + { + "label": "broadcastQueryClient (Experimental)", + "to": "framework/react/plugins/broadcastQueryClient" + }, + { + "label": "createPersister (Experimental)", + "to": "framework/react/plugins/createPersister" + } + ] + } + ] } ], "users": [