Skip to content

Commit

Permalink
updated storybook example to load more option
Browse files Browse the repository at this point in the history
  • Loading branch information
pramodcog committed Aug 9, 2024
1 parent 0e3d945 commit 98efded
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 27 deletions.
4 changes: 3 additions & 1 deletion react-components/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,9 @@ export {
useAllMappedEquipmentAssetMappings,
useMappingsForAssetIds,
type ModelMappings,
type ModelMappingsWithAssets
type ModelMappingsWithAssets,
type AssetPage,
type ModelAssetPage
} from './query/useSearchMappedEquipmentAssetMappings';
export {
useSearchAssetsMapped360Annotations,
Expand Down
34 changes: 8 additions & 26 deletions react-components/stories/SearchHooks.stories.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import {
type AddPointCloudResourceOptions
} from '../src';
import { Color } from 'three';
import { type ReactElement, useState, useMemo, useEffect } from 'react';
import { type ReactElement, useState, useMemo, useCallback } from 'react';
import { createSdkByUrlToken } from './utilities/createSdkByUrlToken';
import { ReactQueryDevtools } from '@tanstack/react-query-devtools';
import { RevealResourcesFitCameraOnLoad } from './utilities/with3dResoursesFitCameraOnLoad';
Expand Down Expand Up @@ -59,8 +59,7 @@ const StoryContent = ({ resources }: { resources: AddResourceOptions[] }): React
const [mainSearchQuery, setMainSearchQuery] = useState<string>('');
const [searchMethod, setSearchMethod] = useState<
'allFdm' | 'allAssets' | 'fdmSearch' | 'assetSearch'
>('fdmSearch');
const [loadMore, setLoadMore] = useState<boolean>(false);
>('assetSearch');

const filteredResources = resources.filter(
(resource): resource is AddCadResourceOptions | AddPointCloudResourceOptions =>
Expand Down Expand Up @@ -120,29 +119,14 @@ const StoryContent = ({ resources }: { resources: AddResourceOptions[] }): React
filteredResources
);

useEffect(() => {
if (searchMethod !== 'allAssets') return;

if (!isFetching && hasNextPage && loadMore) {
const fetchNextPageCallback = useCallback(() => {
if (searchMethod !== 'allAssets' && searchMethod !== 'assetSearch') return;
if (searchMethod === 'allAssets' && !isFetching && hasNextPage) {
void fetchNextPage();
setLoadMore(false);
}
}, [searchMethod, isFetching, hasNextPage, fetchNextPage, loadMore]);

useEffect(() => {
if (searchMethod !== 'assetSearch') return;

if (!isAssetSearchFetching && assetSearchHasNextPage && loadMore) {
} else if (searchMethod === 'assetSearch' && !isAssetSearchFetching && assetSearchHasNextPage) {
void fetchAssetSearchNextPage();
setLoadMore(false);
}
}, [
searchMethod,
isAssetSearchFetching,
assetSearchHasNextPage,
fetchAssetSearchNextPage,
loadMore
]);
}, []);

const filteredEquipment = useMemo(() => {
if (searchMethod === 'allFdm') {
Expand Down Expand Up @@ -332,9 +316,7 @@ const StoryContent = ({ resources }: { resources: AddResourceOptions[] }): React
<Button
size="small"
loading={isFetching || isAssetSearchFetching}
onClick={() => {
setLoadMore(true);
}}>
onClick={fetchNextPageCallback}>
Load More
</Button>
</div>
Expand Down

0 comments on commit 98efded

Please sign in to comment.