@databiosphere/findable-ui 35.0.2 → 35.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.release-please-manifest.json +1 -1
- package/CHANGELOG.md +14 -0
- package/lib/common/entities.d.ts +1 -0
- package/lib/components/DataDictionary/components/Table/hook.js +1 -0
- package/lib/components/DataDictionary/hooks/UseDataDictionary/hook.js +15 -2
- package/lib/providers/exploreState/entities/state.js +12 -9
- package/package.json +1 -1
- package/src/common/entities.ts +1 -0
- package/src/components/DataDictionary/components/Table/hook.ts +1 -0
- package/src/components/DataDictionary/hooks/UseDataDictionary/hook.ts +17 -4
- package/src/providers/exploreState/entities/state.ts +13 -10
- package/lib/components/DataDictionary/components/Table/columns/columnDef.d.ts +0 -6
- package/lib/components/DataDictionary/components/Table/columns/columnDef.js +0 -33
- package/lib/components/DataDictionary/components/Table/columns/columnIdentifier.d.ts +0 -5
- package/lib/components/DataDictionary/components/Table/columns/columnIdentifier.js +0 -5
- package/lib/components/DataDictionary/components/Table/columns/types.d.ts +0 -2
- package/lib/components/DataDictionary/components/Table/columns/types.js +0 -1
- package/lib/components/DataDictionary/components/Table/components/BasicCell/types.d.ts +0 -4
- package/lib/components/DataDictionary/components/Table/components/BasicCell/types.js +0 -1
- package/lib/components/Detail/components/Table/components/TableHead/tableHead.d.ts +0 -8
- package/lib/components/Detail/components/Table/components/TableHead/tableHead.js +0 -36
- package/lib/components/Filter/components/Filter/filter.stories.d.ts +0 -25
- package/lib/components/Filter/components/Filter/filter.stories.js +0 -42
- package/lib/components/Filter/components/FilterTag/filterTag.stories.d.ts +0 -16
- package/lib/components/Filter/components/FilterTag/filterTag.stories.js +0 -17
- package/lib/components/Filter/components/Filters/filters.stories.d.ts +0 -6
- package/lib/components/Filter/components/Filters/filters.stories.js +0 -91
- package/lib/components/Index/components/Cell/cell.d.ts +0 -7
- package/lib/components/Index/components/Cell/cell.js +0 -10
- package/lib/components/Index/components/EntitiesView/constants.d.ts +0 -1
- package/lib/components/Index/components/EntitiesView/constants.js +0 -1
- package/lib/components/Index/components/Hero/components/Summaries/summaries.stories.d.ts +0 -13
- package/lib/components/Index/components/Hero/components/Summaries/summaries.stories.js +0 -18
- package/lib/components/Index/components/Hero/hero.stories.d.ts +0 -23
- package/lib/components/Index/components/Hero/hero.stories.js +0 -22
- package/lib/components/Index/components/NTag/components/Tooltip/tooltip.d.ts +0 -8
- package/lib/components/Index/components/NTag/components/Tooltip/tooltip.js +0 -57
- package/lib/components/Index/components/NTag/components/Tooltip/tooltip.styles.d.ts +0 -4
- package/lib/components/Index/components/NTag/components/Tooltip/tooltip.styles.js +0 -10
- package/lib/components/Index/components/NTag/nTag.d.ts +0 -10
- package/lib/components/Index/components/NTag/nTag.js +0 -8
- package/lib/components/Index/components/NTagCell/nTagCell.d.ts +0 -11
- package/lib/components/Index/components/NTagCell/nTagCell.js +0 -29
- package/lib/components/Index/components/NTagCell/nTagCell.stories.d.ts +0 -5
- package/lib/components/Index/components/NTagCell/nTagCell.stories.js +0 -16
- package/lib/components/Index/components/TitleCell/titleCell.d.ts +0 -6
- package/lib/components/Index/components/TitleCell/titleCell.js +0 -10
- package/lib/components/Index/components/TitleCell/titleCell.styles.d.ts +0 -3
- package/lib/components/Index/components/TitleCell/titleCell.styles.js +0 -6
- package/lib/components/Index/index.stories.d.ts +0 -6
- package/lib/components/Index/index.stories.js +0 -26
- package/lib/components/Layout/components/BackPage/components/BackPageHero/backPageHero.stories.d.ts +0 -6
- package/lib/components/Layout/components/BackPage/components/BackPageHero/backPageHero.stories.js +0 -10
- package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.stories.d.ts +0 -5
- package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.stories.js +0 -29
- package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/RequestAuthentication/requestAuthentication.d.ts +0 -6
- package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/RequestAuthentication/requestAuthentication.js +0 -13
- package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/RequestAuthentication/requestAuthentication.styles.d.ts +0 -36
- package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/RequestAuthentication/requestAuthentication.styles.js +0 -9
- package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchButton/searchButton.d.ts +0 -5
- package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchButton/searchButton.js +0 -10
- package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchButton/searchButton.styles.d.ts +0 -36
- package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Search/components/SearchButton/searchButton.styles.js +0 -9
- package/lib/components/Layout/components/Header/hooks/useMeasureHeader.d.ts +0 -5
- package/lib/components/Layout/components/Header/hooks/useMeasureHeader.js +0 -19
- package/lib/components/Layout/components/Outline/common/constants.d.ts +0 -2
- package/lib/components/Layout/components/Outline/common/constants.js +0 -1
- package/lib/components/Login/login.stories.d.ts +0 -6
- package/lib/components/Login/login.stories.js +0 -31
- package/lib/components/Table/components/CheckboxMenu/checkboxMenu.d.ts +0 -16
- package/lib/components/Table/components/CheckboxMenu/checkboxMenu.js +0 -28
- package/lib/components/Table/components/CheckboxMenu/checkboxMenu.stories.d.ts +0 -5
- package/lib/components/Table/components/CheckboxMenu/checkboxMenu.stories.js +0 -46
- package/lib/components/Table/components/CheckboxMenu/checkboxMenu.styles.d.ts +0 -3
- package/lib/components/Table/components/CheckboxMenu/checkboxMenu.styles.js +0 -21
- package/lib/components/Table/components/EntityViewToggle/entityViewToggle.d.ts +0 -2
- package/lib/components/Table/components/EntityViewToggle/entityViewToggle.js +0 -37
- package/lib/components/TableCreator/common/constants.d.ts +0 -6
- package/lib/components/TableCreator/common/constants.js +0 -19
- package/lib/components/TableCreator/common/entities.d.ts +0 -5
- package/lib/components/TableCreator/common/entities.js +0 -1
- package/lib/components/TableCreator/tableCreator.styles.d.ts +0 -4
- package/lib/components/TableCreator/tableCreator.styles.js +0 -4
- package/lib/components/common/Alert/alert.stories.d.ts +0 -6
- package/lib/components/common/Alert/alert.stories.js +0 -36
- package/lib/components/common/Alert/components/AlertText/alertText.styles.d.ts +0 -4
- package/lib/components/common/Alert/components/AlertText/alertText.styles.js +0 -19
- package/lib/components/common/Banner/components/BannerPrimary/bannerPrimary.d.ts +0 -7
- package/lib/components/common/Banner/components/BannerPrimary/bannerPrimary.js +0 -5
- package/lib/components/common/Banner/components/BannerPrimary/bannerPrimary.styles.d.ts +0 -3
- package/lib/components/common/Banner/components/BannerPrimary/bannerPrimary.styles.js +0 -19
- package/lib/components/common/Banner/components/DismissibleBanner/dismissibleBanner.d.ts +0 -10
- package/lib/components/common/Banner/components/DismissibleBanner/dismissibleBanner.js +0 -16
- package/lib/components/common/Banner/components/SessionTimeout/sessionTimeout.styles.d.ts +0 -3
- package/lib/components/common/Banner/components/SessionTimeout/sessionTimeout.styles.js +0 -21
- package/lib/components/common/Button/components/LoginButton/loginButton.d.ts +0 -3
- package/lib/components/common/Button/components/LoginButton/loginButton.js +0 -6
- package/lib/components/common/Button/components/LoginButton/loginButton.styles.d.ts +0 -7
- package/lib/components/common/Button/components/LoginButton/loginButton.styles.js +0 -11
- package/lib/components/common/IconButton/components/LoadingIconButton/loadingIconButton.d.ts +0 -5
- package/lib/components/common/IconButton/components/LoadingIconButton/loadingIconButton.js +0 -10
- package/lib/components/common/IconButton/components/LoadingIconButton/loadingIconButton.stories.d.ts +0 -3
- package/lib/components/common/IconButton/components/LoadingIconButton/loadingIconButton.stories.js +0 -9
- package/lib/hooks/useAuthentication/common/constants.d.ts +0 -4
- package/lib/hooks/useAuthentication/common/constants.js +0 -19
- package/lib/hooks/useAuthentication/common/entities.d.ts +0 -25
- package/lib/hooks/useAuthentication/common/entities.js +0 -11
- package/lib/hooks/useAuthentication/common/utils.d.ts +0 -15
- package/lib/hooks/useAuthentication/common/utils.js +0 -25
- package/lib/hooks/useAuthentication/useAuthentication.d.ts +0 -6
- package/lib/hooks/useAuthentication/useAuthentication.js +0 -9
- package/lib/hooks/useAuthentication/useAuthenticationComplete.d.ts +0 -6
- package/lib/hooks/useAuthentication/useAuthenticationComplete.js +0 -55
- package/lib/hooks/useAuthentication/useAuthenticationForm.d.ts +0 -20
- package/lib/hooks/useAuthentication/useAuthenticationForm.js +0 -88
- package/lib/hooks/useAuthentication/useAuthenticationNIHExpiry.d.ts +0 -18
- package/lib/hooks/useAuthentication/useAuthenticationNIHExpiry.js +0 -50
- package/lib/hooks/useAuthentication/useAuthenticationStatus.d.ts +0 -20
- package/lib/hooks/useAuthentication/useAuthenticationStatus.js +0 -32
- package/lib/hooks/useAuthentication/useFetchGoogleProfile.d.ts +0 -21
- package/lib/hooks/useAuthentication/useFetchGoogleProfile.js +0 -41
- package/lib/hooks/useAuthentication/useFetchTerraNIHProfile.d.ts +0 -18
- package/lib/hooks/useAuthentication/useFetchTerraNIHProfile.js +0 -62
- package/lib/hooks/useAuthentication/useFetchTerraProfile.d.ts +0 -24
- package/lib/hooks/useAuthentication/useFetchTerraProfile.js +0 -62
- package/lib/hooks/useAuthentication/useFetchTerraTermsOfService.d.ts +0 -15
- package/lib/hooks/useAuthentication/useFetchTerraTermsOfService.js +0 -62
- package/lib/hooks/useAuthentication/useTokenClient.d.ts +0 -11
- package/lib/hooks/useAuthentication/useTokenClient.js +0 -29
- package/lib/hooks/useAuthenticationConfig.d.ts +0 -6
- package/lib/hooks/useAuthenticationConfig.js +0 -14
- package/lib/hooks/useCategoryConfigs.d.ts +0 -6
- package/lib/hooks/useCategoryConfigs.js +0 -17
- package/lib/hooks/useEntityListRelatedView.d.ts +0 -15
- package/lib/hooks/useEntityListRelatedView.js +0 -62
- package/lib/hooks/useExploreMode.d.ts +0 -14
- package/lib/hooks/useExploreMode.js +0 -20
- package/lib/hooks/useFileManifest/common/buildFileManifestRequestURL.d.ts +0 -15
- package/lib/hooks/useFileManifest/common/buildFileManifestRequestURL.js +0 -27
- package/lib/hooks/useFileManifest/useFileManifestURL.d.ts +0 -5
- package/lib/hooks/useFileManifest/useFileManifestURL.js +0 -11
- package/lib/hooks/useFileManifest/useRequestFileManifest.d.ts +0 -9
- package/lib/hooks/useFileManifest/useRequestFileManifest.js +0 -37
- package/lib/hooks/useLayoutState.d.ts +0 -6
- package/lib/hooks/useLayoutState.js +0 -9
- package/lib/hooks/useMenu.d.ts +0 -10
- package/lib/hooks/useMenu.js +0 -17
- package/lib/hooks/useMenuWithPosition.d.ts +0 -14
- package/lib/hooks/useMenuWithPosition.js +0 -33
- package/lib/hooks/useSessionTimeout.d.ts +0 -11
- package/lib/hooks/useSessionTimeout.js +0 -28
- package/lib/providers/authentication.d.ts +0 -51
- package/lib/providers/authentication.js +0 -110
- package/lib/providers/layoutState.d.ts +0 -40
- package/lib/providers/layoutState.js +0 -47
- package/lib/styles/common/mixins/shadows.d.ts +0 -3
- package/lib/styles/common/mixins/shadows.js +0 -4
- package/lib/styles/common/mui/palette.d.ts +0 -47
- package/lib/styles/common/mui/palette.js +0 -47
- package/lib/theme/common/entities.d.ts +0 -6
- package/lib/theme/common/entities.js +0 -1
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import { AUTHENTICATION_STATUS, } from "./common/entities";
|
|
2
|
-
import { useAuthentication } from "./useAuthentication";
|
|
3
|
-
export var ONBOARDING_STEP;
|
|
4
|
-
(function (ONBOARDING_STEP) {
|
|
5
|
-
ONBOARDING_STEP[ONBOARDING_STEP["NIH_ACCOUNT"] = 3] = "NIH_ACCOUNT";
|
|
6
|
-
ONBOARDING_STEP[ONBOARDING_STEP["TERRA_ACCOUNT"] = 1] = "TERRA_ACCOUNT";
|
|
7
|
-
ONBOARDING_STEP[ONBOARDING_STEP["TERRA_TOS"] = 2] = "TERRA_TOS";
|
|
8
|
-
})(ONBOARDING_STEP || (ONBOARDING_STEP = {}));
|
|
9
|
-
/**
|
|
10
|
-
* Handles authentication form onboarding.
|
|
11
|
-
* @returns onboarding steps and corresponding status.
|
|
12
|
-
*/
|
|
13
|
-
export const useAuthenticationForm = () => {
|
|
14
|
-
const authentication = useAuthentication();
|
|
15
|
-
const isReady = authentication.authenticationStatus === AUTHENTICATION_STATUS.COMPLETED;
|
|
16
|
-
const loginStatuses = concatLoginStatuses(authentication).filter(filterLoginStatus);
|
|
17
|
-
const onboardingStatusByStep = getOnboardingStatusByStep(loginStatuses);
|
|
18
|
-
const isComplete = isAuthenticationComplete(onboardingStatusByStep);
|
|
19
|
-
return {
|
|
20
|
-
isComplete,
|
|
21
|
-
isReady,
|
|
22
|
-
onboardingStatusByStep,
|
|
23
|
-
};
|
|
24
|
-
};
|
|
25
|
-
/**
|
|
26
|
-
* Returns true if all authentication steps are complete.
|
|
27
|
-
* @param onboardingStatusByStep - Onboarding status by step.
|
|
28
|
-
* @returns true if all authentication steps are complete.
|
|
29
|
-
*/
|
|
30
|
-
function isAuthenticationComplete(onboardingStatusByStep) {
|
|
31
|
-
for (const { completed } of onboardingStatusByStep.values()) {
|
|
32
|
-
if (!completed) {
|
|
33
|
-
return false;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
return true;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Returns all login statuses, ordered by onboarding step.
|
|
40
|
-
* @param authentication - Authentication.
|
|
41
|
-
* @returns login statuses.
|
|
42
|
-
*/
|
|
43
|
-
function concatLoginStatuses(authentication) {
|
|
44
|
-
const { terraNIHProfileLoginStatus, terraProfileLoginStatus, terraTOSLoginStatus, } = authentication;
|
|
45
|
-
return [
|
|
46
|
-
terraProfileLoginStatus,
|
|
47
|
-
terraTOSLoginStatus,
|
|
48
|
-
terraNIHProfileLoginStatus,
|
|
49
|
-
];
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Returns true if login is supported.
|
|
53
|
-
* @param loginStatus - Login status.
|
|
54
|
-
* @returns true if login is supported.
|
|
55
|
-
*/
|
|
56
|
-
function filterLoginStatus(loginStatus) {
|
|
57
|
-
return loginStatus.isSupported;
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Returns a map of onboarding steps and their status.
|
|
61
|
-
* @param loginStatuses - Login statuses.
|
|
62
|
-
* @returns map of onboarding steps and their status.
|
|
63
|
-
*/
|
|
64
|
-
function getOnboardingStatusByStep(loginStatuses) {
|
|
65
|
-
const onboardingStatusByStep = new Map();
|
|
66
|
-
for (let i = 0; i < loginStatuses.length; i++) {
|
|
67
|
-
const { isSuccess } = loginStatuses[i];
|
|
68
|
-
onboardingStatusByStep.set(i + 1, {
|
|
69
|
-
active: isStepActive(isSuccess, onboardingStatusByStep),
|
|
70
|
-
completed: isSuccess,
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
return onboardingStatusByStep;
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Returns true if step is active.
|
|
77
|
-
* @param isSuccess - Response is successful.
|
|
78
|
-
* @param onboardingStatusByStep - Onboarding status by step.
|
|
79
|
-
* @returns true if step is active.
|
|
80
|
-
*/
|
|
81
|
-
function isStepActive(isSuccess, onboardingStatusByStep) {
|
|
82
|
-
for (const { active } of onboardingStatusByStep.values()) {
|
|
83
|
-
if (active) {
|
|
84
|
-
return false;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
return !isSuccess;
|
|
88
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
interface UseAuthenticationNIHExpiry {
|
|
2
|
-
isReady: boolean;
|
|
3
|
-
linkExpired?: boolean;
|
|
4
|
-
linkExpireTime?: number;
|
|
5
|
-
linkWillExpire?: boolean;
|
|
6
|
-
}
|
|
7
|
-
/**
|
|
8
|
-
* Handles authentication NIH expiry.
|
|
9
|
-
* @returns NIH expiry status.
|
|
10
|
-
*/
|
|
11
|
-
export declare const useAuthenticationNIHExpiry: () => UseAuthenticationNIHExpiry;
|
|
12
|
-
/**
|
|
13
|
-
* Calculates the remaining time in seconds until the given expiration time.
|
|
14
|
-
* @param expireTime - Expire time in seconds.
|
|
15
|
-
* @returns remaining time in seconds.
|
|
16
|
-
*/
|
|
17
|
-
export declare function expireTimeInSeconds(expireTime: number): number;
|
|
18
|
-
export {};
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { REQUEST_STATUS } from "./common/entities";
|
|
2
|
-
import { useAuthentication } from "./useAuthentication";
|
|
3
|
-
const WARNING_WINDOW_SECONDS = 60 * 60 * 24 * 5; // 5 days.
|
|
4
|
-
/**
|
|
5
|
-
* Handles authentication NIH expiry.
|
|
6
|
-
* @returns NIH expiry status.
|
|
7
|
-
*/
|
|
8
|
-
export const useAuthenticationNIHExpiry = () => {
|
|
9
|
-
const authentication = useAuthentication();
|
|
10
|
-
const { terraNIHProfileLoginStatus } = authentication;
|
|
11
|
-
const { requestStatus, response } = terraNIHProfileLoginStatus;
|
|
12
|
-
const { linkExpireTime } = response || {};
|
|
13
|
-
const isReady = requestStatus === REQUEST_STATUS.COMPLETED;
|
|
14
|
-
const linkExpired = hasLinkedNIHAccountExpired(linkExpireTime);
|
|
15
|
-
const linkWillExpire = isLinkedNIHAccountWillExpire(linkExpireTime);
|
|
16
|
-
return {
|
|
17
|
-
isReady,
|
|
18
|
-
linkExpireTime,
|
|
19
|
-
linkExpired,
|
|
20
|
-
linkWillExpire,
|
|
21
|
-
};
|
|
22
|
-
};
|
|
23
|
-
/**
|
|
24
|
-
* Calculates the remaining time in seconds until the given expiration time.
|
|
25
|
-
* @param expireTime - Expire time in seconds.
|
|
26
|
-
* @returns remaining time in seconds.
|
|
27
|
-
*/
|
|
28
|
-
export function expireTimeInSeconds(expireTime) {
|
|
29
|
-
return expireTime - Date.now() / 1000;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Returns true if the linked NIH account has expired.
|
|
33
|
-
* @param expireTime - Expire time in seconds.
|
|
34
|
-
* @returns true if the linked NIH account has expired.
|
|
35
|
-
*/
|
|
36
|
-
function hasLinkedNIHAccountExpired(expireTime) {
|
|
37
|
-
if (!expireTime)
|
|
38
|
-
return;
|
|
39
|
-
return expireTimeInSeconds(expireTime) < 0;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Returns true if the linked NIH account will expire in less than a week.
|
|
43
|
-
* @param expireTime - Expire time in seconds.
|
|
44
|
-
* @returns true if the linked NIH account will expire in less than a week.
|
|
45
|
-
*/
|
|
46
|
-
function isLinkedNIHAccountWillExpire(expireTime) {
|
|
47
|
-
if (!expireTime)
|
|
48
|
-
return;
|
|
49
|
-
return expireTimeInSeconds(expireTime) < WARNING_WINDOW_SECONDS;
|
|
50
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { AUTHENTICATION_STATUS, LoginResponse, LoginStatus } from "./common/entities";
|
|
2
|
-
import { GoogleResponse } from "./useFetchGoogleProfile";
|
|
3
|
-
import { TerraNIHResponse } from "./useFetchTerraNIHProfile";
|
|
4
|
-
import { TerraResponse } from "./useFetchTerraProfile";
|
|
5
|
-
import { TerraTermsOfServiceResponse } from "./useFetchTerraTermsOfService";
|
|
6
|
-
/**
|
|
7
|
-
* Handles the status of the authentication process.
|
|
8
|
-
* @param userProfileLoginStatus - User profile login status.
|
|
9
|
-
* @param terraProfileLoginStatus - Terra profile login status.
|
|
10
|
-
* @param terraTOSLoginStatus - Terra terms of service login status.
|
|
11
|
-
* @param terraNIHProfileLoginStatus - Terra NIH profile login status.
|
|
12
|
-
* @returns authentication status.
|
|
13
|
-
*/
|
|
14
|
-
export declare const useAuthenticationStatus: (userProfileLoginStatus: LoginStatus<GoogleResponse>, terraProfileLoginStatus: LoginStatus<TerraResponse>, terraTOSLoginStatus: LoginStatus<TerraTermsOfServiceResponse>, terraNIHProfileLoginStatus: LoginStatus<TerraNIHResponse>) => AUTHENTICATION_STATUS;
|
|
15
|
-
/**
|
|
16
|
-
* Returns the authentication status ("INCOMPLETE" or "COMPLETE").
|
|
17
|
-
* @param loginStatuses - Login statuses.
|
|
18
|
-
* @returns authentication status.
|
|
19
|
-
*/
|
|
20
|
-
export declare function getAuthenticationStatus(loginStatuses: LoginStatus<LoginResponse>[]): AUTHENTICATION_STATUS;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { AUTHENTICATION_STATUS, REQUEST_STATUS, } from "./common/entities";
|
|
2
|
-
/**
|
|
3
|
-
* Handles the status of the authentication process.
|
|
4
|
-
* @param userProfileLoginStatus - User profile login status.
|
|
5
|
-
* @param terraProfileLoginStatus - Terra profile login status.
|
|
6
|
-
* @param terraTOSLoginStatus - Terra terms of service login status.
|
|
7
|
-
* @param terraNIHProfileLoginStatus - Terra NIH profile login status.
|
|
8
|
-
* @returns authentication status.
|
|
9
|
-
*/
|
|
10
|
-
export const useAuthenticationStatus = (userProfileLoginStatus, terraProfileLoginStatus, terraTOSLoginStatus, terraNIHProfileLoginStatus) => {
|
|
11
|
-
return getAuthenticationStatus([
|
|
12
|
-
terraNIHProfileLoginStatus,
|
|
13
|
-
terraProfileLoginStatus,
|
|
14
|
-
terraTOSLoginStatus,
|
|
15
|
-
userProfileLoginStatus,
|
|
16
|
-
]);
|
|
17
|
-
};
|
|
18
|
-
/**
|
|
19
|
-
* Returns the authentication status ("INCOMPLETE" or "COMPLETE").
|
|
20
|
-
* @param loginStatuses - Login statuses.
|
|
21
|
-
* @returns authentication status.
|
|
22
|
-
*/
|
|
23
|
-
export function getAuthenticationStatus(loginStatuses) {
|
|
24
|
-
for (const loginStatus of loginStatuses) {
|
|
25
|
-
if (!loginStatus.isSupported)
|
|
26
|
-
continue;
|
|
27
|
-
if (loginStatus.requestStatus === REQUEST_STATUS.NOT_STARTED) {
|
|
28
|
-
return AUTHENTICATION_STATUS.INCOMPLETE;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
return AUTHENTICATION_STATUS.COMPLETED;
|
|
32
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { LoginStatus } from "./common/entities";
|
|
2
|
-
export type UserProfile = GoogleResponse;
|
|
3
|
-
export interface GoogleResponse {
|
|
4
|
-
email: string;
|
|
5
|
-
email_verified: boolean;
|
|
6
|
-
family_name: string;
|
|
7
|
-
given_name: string;
|
|
8
|
-
hd: string;
|
|
9
|
-
locale: string;
|
|
10
|
-
name: string;
|
|
11
|
-
picture: string;
|
|
12
|
-
sub: string;
|
|
13
|
-
}
|
|
14
|
-
type Status = LoginStatus<GoogleResponse>;
|
|
15
|
-
/**
|
|
16
|
-
* Returns user profile login status from configured endpoint.
|
|
17
|
-
* @param token - Token.
|
|
18
|
-
* @returns google profile login status.
|
|
19
|
-
*/
|
|
20
|
-
export declare const useFetchGoogleProfile: (token?: string) => Status;
|
|
21
|
-
export {};
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useState } from "react";
|
|
2
|
-
import { useAuthenticationConfig } from "../useAuthenticationConfig";
|
|
3
|
-
import { LOGIN_STATUS_FAILED, LOGIN_STATUS_NOT_STARTED, } from "./common/constants";
|
|
4
|
-
import { REQUEST_STATUS } from "./common/entities";
|
|
5
|
-
import { getAuthenticationRequestOptions } from "./common/utils";
|
|
6
|
-
/**
|
|
7
|
-
* Returns user profile login status from configured endpoint.
|
|
8
|
-
* @param token - Token.
|
|
9
|
-
* @returns google profile login status.
|
|
10
|
-
*/
|
|
11
|
-
export const useFetchGoogleProfile = (token) => {
|
|
12
|
-
const authenticationConfig = useAuthenticationConfig();
|
|
13
|
-
const { googleGISAuthConfig: { googleProfileEndpoint: endpoint } = {} } = authenticationConfig;
|
|
14
|
-
const [loginStatus, setLoginStatus] = useState(LOGIN_STATUS_NOT_STARTED);
|
|
15
|
-
// Fetch google user profile.
|
|
16
|
-
const fetchEndpointData = useCallback((endpoint, accessToken) => {
|
|
17
|
-
fetch(endpoint, getAuthenticationRequestOptions(accessToken))
|
|
18
|
-
.then((response) => response.json())
|
|
19
|
-
.then((profile) => {
|
|
20
|
-
setLoginStatus((prevStatus) => ({
|
|
21
|
-
...prevStatus,
|
|
22
|
-
isSuccess: true,
|
|
23
|
-
requestStatus: REQUEST_STATUS.COMPLETED,
|
|
24
|
-
response: profile,
|
|
25
|
-
}));
|
|
26
|
-
})
|
|
27
|
-
.catch((err) => {
|
|
28
|
-
console.log(err); // TODO handle error.
|
|
29
|
-
setLoginStatus(LOGIN_STATUS_FAILED);
|
|
30
|
-
});
|
|
31
|
-
}, []);
|
|
32
|
-
// Fetches user profile.
|
|
33
|
-
useEffect(() => {
|
|
34
|
-
if (!token)
|
|
35
|
-
return;
|
|
36
|
-
if (!endpoint)
|
|
37
|
-
return;
|
|
38
|
-
fetchEndpointData(endpoint, token);
|
|
39
|
-
}, [endpoint, fetchEndpointData, token]);
|
|
40
|
-
return loginStatus;
|
|
41
|
-
};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { LoginStatus } from "./common/entities";
|
|
2
|
-
interface DatasetPermission {
|
|
3
|
-
authorized: boolean;
|
|
4
|
-
name: string;
|
|
5
|
-
}
|
|
6
|
-
type Status = LoginStatus<TerraNIHResponse>;
|
|
7
|
-
export interface TerraNIHResponse {
|
|
8
|
-
datasetPermissions: DatasetPermission[];
|
|
9
|
-
linkedNihUsername: string;
|
|
10
|
-
linkExpireTime: number;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Returns Terra NIH login status from configured endpoint.
|
|
14
|
-
* @param token - Token.
|
|
15
|
-
* @returns Terra NIH login status.
|
|
16
|
-
*/
|
|
17
|
-
export declare const useFetchTerraNIHProfile: (token?: string) => Status;
|
|
18
|
-
export {};
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useState } from "react";
|
|
2
|
-
import { useAuthenticationConfig } from "../useAuthenticationConfig";
|
|
3
|
-
import { LOGIN_STATUS_FAILED } from "./common/constants";
|
|
4
|
-
import { REQUEST_STATUS, } from "./common/entities";
|
|
5
|
-
import { getAuthenticationRequestOptions, initLoginStatus, } from "./common/utils";
|
|
6
|
-
/**
|
|
7
|
-
* Returns Terra NIH login status from configured endpoint.
|
|
8
|
-
* @param token - Token.
|
|
9
|
-
* @returns Terra NIH login status.
|
|
10
|
-
*/
|
|
11
|
-
export const useFetchTerraNIHProfile = (token) => {
|
|
12
|
-
const authenticationConfig = useAuthenticationConfig();
|
|
13
|
-
const { terraAuthConfig: { terraNIHProfileEndpoint: endpoint } = {} } = authenticationConfig;
|
|
14
|
-
const [loginStatus, setLoginStatus] = useState(initLoginStatus(endpoint));
|
|
15
|
-
// Fetch Terra NIH account profile.
|
|
16
|
-
const fetchEndpointData = useCallback((endpoint, accessToken) => {
|
|
17
|
-
fetch(endpoint, getAuthenticationRequestOptions(accessToken))
|
|
18
|
-
.then((response) => response.json())
|
|
19
|
-
.then((response) => {
|
|
20
|
-
if (isResponseError(response)) {
|
|
21
|
-
setLoginStatus(LOGIN_STATUS_FAILED);
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
setLoginStatus((prevStatus) => ({
|
|
25
|
-
...prevStatus,
|
|
26
|
-
isSuccess: isResponseSuccess(response),
|
|
27
|
-
requestStatus: REQUEST_STATUS.COMPLETED,
|
|
28
|
-
response,
|
|
29
|
-
}));
|
|
30
|
-
}
|
|
31
|
-
})
|
|
32
|
-
.catch((err) => {
|
|
33
|
-
console.log(err); // TODO handle error.
|
|
34
|
-
setLoginStatus(LOGIN_STATUS_FAILED);
|
|
35
|
-
});
|
|
36
|
-
}, []);
|
|
37
|
-
// Fetches Terra NIH account profile.
|
|
38
|
-
useEffect(() => {
|
|
39
|
-
if (!token)
|
|
40
|
-
return;
|
|
41
|
-
if (!endpoint)
|
|
42
|
-
return;
|
|
43
|
-
fetchEndpointData(endpoint, token);
|
|
44
|
-
}, [endpoint, fetchEndpointData, token]);
|
|
45
|
-
return loginStatus;
|
|
46
|
-
};
|
|
47
|
-
/**
|
|
48
|
-
* Returns true if response is an error response.
|
|
49
|
-
* @param response - Response.
|
|
50
|
-
* @returns true if response is an error response.
|
|
51
|
-
*/
|
|
52
|
-
function isResponseError(response) {
|
|
53
|
-
return Boolean(response.statusCode);
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Returns true if the user accepted terms of service version is current.
|
|
57
|
-
* @param response - Response.
|
|
58
|
-
* @returns true if response is successful.
|
|
59
|
-
*/
|
|
60
|
-
function isResponseSuccess(response) {
|
|
61
|
-
return Boolean(response.linkedNihUsername);
|
|
62
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { LoginStatus } from "./common/entities";
|
|
2
|
-
type Status = LoginStatus<TerraResponse>;
|
|
3
|
-
export interface TerraResponse {
|
|
4
|
-
enabled: TerraResponseEnabled;
|
|
5
|
-
userInfo: TerraResponseUserInfo;
|
|
6
|
-
}
|
|
7
|
-
interface TerraResponseEnabled {
|
|
8
|
-
adminEnabled: boolean;
|
|
9
|
-
allUsersGroup: boolean;
|
|
10
|
-
google: boolean;
|
|
11
|
-
ldap: boolean;
|
|
12
|
-
tosAccepted: boolean;
|
|
13
|
-
}
|
|
14
|
-
interface TerraResponseUserInfo {
|
|
15
|
-
userEmail: string;
|
|
16
|
-
userSubjectId: string;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Returns Terra profile login status from configured endpoint.
|
|
20
|
-
* @param token - Token.
|
|
21
|
-
* @returns Terra profile login status.
|
|
22
|
-
*/
|
|
23
|
-
export declare const useFetchTerraProfile: (token?: string) => Status;
|
|
24
|
-
export {};
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useState } from "react";
|
|
2
|
-
import { useAuthenticationConfig } from "../useAuthenticationConfig";
|
|
3
|
-
import { LOGIN_STATUS_FAILED } from "./common/constants";
|
|
4
|
-
import { REQUEST_STATUS, } from "./common/entities";
|
|
5
|
-
import { getAuthenticationRequestOptions, initLoginStatus, } from "./common/utils";
|
|
6
|
-
/**
|
|
7
|
-
* Returns Terra profile login status from configured endpoint.
|
|
8
|
-
* @param token - Token.
|
|
9
|
-
* @returns Terra profile login status.
|
|
10
|
-
*/
|
|
11
|
-
export const useFetchTerraProfile = (token) => {
|
|
12
|
-
const authenticationConfig = useAuthenticationConfig();
|
|
13
|
-
const { terraAuthConfig: { terraProfileEndpoint: endpoint } = {} } = authenticationConfig;
|
|
14
|
-
const [loginStatus, setLoginStatus] = useState(initLoginStatus(endpoint));
|
|
15
|
-
// Fetch Terra profile.
|
|
16
|
-
const fetchEndpointData = useCallback((endpoint, accessToken) => {
|
|
17
|
-
fetch(endpoint, getAuthenticationRequestOptions(accessToken))
|
|
18
|
-
.then((response) => response.json())
|
|
19
|
-
.then((response) => {
|
|
20
|
-
if (isResponseError(response)) {
|
|
21
|
-
setLoginStatus(LOGIN_STATUS_FAILED);
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
setLoginStatus((prevStatus) => ({
|
|
25
|
-
...prevStatus,
|
|
26
|
-
isSuccess: isResponseSuccess(response),
|
|
27
|
-
requestStatus: REQUEST_STATUS.COMPLETED,
|
|
28
|
-
response: response,
|
|
29
|
-
}));
|
|
30
|
-
}
|
|
31
|
-
})
|
|
32
|
-
.catch((err) => {
|
|
33
|
-
console.log(err); // TODO handle error.
|
|
34
|
-
setLoginStatus(LOGIN_STATUS_FAILED);
|
|
35
|
-
});
|
|
36
|
-
}, []);
|
|
37
|
-
// Fetches Terra profile.
|
|
38
|
-
useEffect(() => {
|
|
39
|
-
if (!token)
|
|
40
|
-
return;
|
|
41
|
-
if (!endpoint)
|
|
42
|
-
return;
|
|
43
|
-
fetchEndpointData(endpoint, token);
|
|
44
|
-
}, [endpoint, fetchEndpointData, token]);
|
|
45
|
-
return loginStatus;
|
|
46
|
-
};
|
|
47
|
-
/**
|
|
48
|
-
* Returns true if response is an error response.
|
|
49
|
-
* @param response - Response.
|
|
50
|
-
* @returns true if response is an error response.
|
|
51
|
-
*/
|
|
52
|
-
function isResponseError(response) {
|
|
53
|
-
return Boolean(response.statusCode);
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Returns true if response is enabled.
|
|
57
|
-
* @param response - Response.
|
|
58
|
-
* @returns true if response is successful.
|
|
59
|
-
*/
|
|
60
|
-
function isResponseSuccess(response) {
|
|
61
|
-
return Boolean(response.enabled?.google);
|
|
62
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { LoginStatus } from "./common/entities";
|
|
2
|
-
type Status = LoginStatus<TerraTermsOfServiceResponse>;
|
|
3
|
-
export interface TerraTermsOfServiceResponse {
|
|
4
|
-
currentVersion: string;
|
|
5
|
-
isEnabled: boolean;
|
|
6
|
-
isGracePeriodEnabled: boolean;
|
|
7
|
-
userAcceptedVersion?: string;
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Returns Terra terms of service login status from configured endpoint.
|
|
11
|
-
* @param token - Token.
|
|
12
|
-
* @returns Terra terms of service login status.
|
|
13
|
-
*/
|
|
14
|
-
export declare const useFetchTerraTermsOfService: (token?: string) => Status;
|
|
15
|
-
export {};
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useState } from "react";
|
|
2
|
-
import { useAuthenticationConfig } from "../useAuthenticationConfig";
|
|
3
|
-
import { LOGIN_STATUS_FAILED } from "./common/constants";
|
|
4
|
-
import { REQUEST_STATUS, } from "./common/entities";
|
|
5
|
-
import { getAuthenticationRequestOptions, initLoginStatus, } from "./common/utils";
|
|
6
|
-
/**
|
|
7
|
-
* Returns Terra terms of service login status from configured endpoint.
|
|
8
|
-
* @param token - Token.
|
|
9
|
-
* @returns Terra terms of service login status.
|
|
10
|
-
*/
|
|
11
|
-
export const useFetchTerraTermsOfService = (token) => {
|
|
12
|
-
const authenticationConfig = useAuthenticationConfig();
|
|
13
|
-
const { terraAuthConfig: { termsOfServiceEndpoint: endpoint } = {} } = authenticationConfig;
|
|
14
|
-
const [loginStatus, setLoginStatus] = useState(initLoginStatus(endpoint));
|
|
15
|
-
// Fetch Terra terms of service.
|
|
16
|
-
const fetchEndpointData = useCallback((endpoint, accessToken) => {
|
|
17
|
-
fetch(endpoint, getAuthenticationRequestOptions(accessToken))
|
|
18
|
-
.then((response) => response.json())
|
|
19
|
-
.then((response) => {
|
|
20
|
-
if (isResponseError(response)) {
|
|
21
|
-
setLoginStatus(LOGIN_STATUS_FAILED);
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
setLoginStatus((prevStatus) => ({
|
|
25
|
-
...prevStatus,
|
|
26
|
-
isSuccess: isResponseSuccess(response),
|
|
27
|
-
requestStatus: REQUEST_STATUS.COMPLETED,
|
|
28
|
-
response,
|
|
29
|
-
}));
|
|
30
|
-
}
|
|
31
|
-
})
|
|
32
|
-
.catch((err) => {
|
|
33
|
-
console.log(err); // TODO handle error.
|
|
34
|
-
setLoginStatus(LOGIN_STATUS_FAILED);
|
|
35
|
-
});
|
|
36
|
-
}, []);
|
|
37
|
-
// Fetches Terra terms of service.
|
|
38
|
-
useEffect(() => {
|
|
39
|
-
if (!token)
|
|
40
|
-
return;
|
|
41
|
-
if (!endpoint)
|
|
42
|
-
return;
|
|
43
|
-
fetchEndpointData(endpoint, token);
|
|
44
|
-
}, [endpoint, fetchEndpointData, token]);
|
|
45
|
-
return loginStatus;
|
|
46
|
-
};
|
|
47
|
-
/**
|
|
48
|
-
* Returns true if response is an error response.
|
|
49
|
-
* @param response - Response.
|
|
50
|
-
* @returns true if response is an error response.
|
|
51
|
-
*/
|
|
52
|
-
function isResponseError(response) {
|
|
53
|
-
return Boolean(response.statusCode);
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Returns true if the user accepted terms of service version is current.
|
|
57
|
-
* @param response - Response.
|
|
58
|
-
* @returns true if response is successful.
|
|
59
|
-
*/
|
|
60
|
-
function isResponseSuccess(response) {
|
|
61
|
-
return Boolean(response.currentVersion === response.userAcceptedVersion);
|
|
62
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
type TokenClient = any;
|
|
2
|
-
export interface UseTokenClient {
|
|
3
|
-
token: string | undefined;
|
|
4
|
-
tokenClient: TokenClient | undefined;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* Initializes the token client, sets token from token client callback.
|
|
8
|
-
* @returns initialized token client.
|
|
9
|
-
*/
|
|
10
|
-
export declare const useTokenClient: () => UseTokenClient;
|
|
11
|
-
export {};
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { useEffect, useState } from "react";
|
|
2
|
-
import { useAuthenticationConfig } from "../useAuthenticationConfig";
|
|
3
|
-
/**
|
|
4
|
-
* Initializes the token client, sets token from token client callback.
|
|
5
|
-
* @returns initialized token client.
|
|
6
|
-
*/
|
|
7
|
-
export const useTokenClient = () => {
|
|
8
|
-
const [token, setToken] = useState();
|
|
9
|
-
const [tokenClient, setTokenClient] = useState();
|
|
10
|
-
const authenticationConfig = useAuthenticationConfig();
|
|
11
|
-
const { googleGISAuthConfig: { clientId, scope } = {} } = authenticationConfig;
|
|
12
|
-
// Initializes token client - (authorization client id must be configured).
|
|
13
|
-
useEffect(() => {
|
|
14
|
-
if (clientId) {
|
|
15
|
-
setTokenClient(google.accounts.oauth2.initTokenClient({
|
|
16
|
-
callback: (tokenResponse) => {
|
|
17
|
-
const access_token = tokenResponse.access_token;
|
|
18
|
-
setToken(access_token);
|
|
19
|
-
},
|
|
20
|
-
client_id: clientId,
|
|
21
|
-
scope,
|
|
22
|
-
}));
|
|
23
|
-
}
|
|
24
|
-
}, [clientId, scope]);
|
|
25
|
-
return {
|
|
26
|
-
token,
|
|
27
|
-
tokenClient,
|
|
28
|
-
};
|
|
29
|
-
};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { useConfig } from "./useConfig";
|
|
2
|
-
/**
|
|
3
|
-
* Hook to get the authentication config
|
|
4
|
-
* @returns @see AuthenticationConfig used in the current config.
|
|
5
|
-
*/
|
|
6
|
-
export const useAuthenticationConfig = () => {
|
|
7
|
-
const { config } = useConfig();
|
|
8
|
-
if (!config.authentication) {
|
|
9
|
-
return {
|
|
10
|
-
title: "",
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
return config.authentication;
|
|
14
|
-
};
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { CategoryConfig } from "../config/entities";
|
|
2
|
-
/**
|
|
3
|
-
* Returns configured grouped configured categories as a list of configured categories.
|
|
4
|
-
* @returns a list of configured categories.
|
|
5
|
-
*/
|
|
6
|
-
export declare const useCategoryConfigs: () => CategoryConfig[] | undefined;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useCategoryConfigs = void 0;
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
const useConfig_1 = require("./useConfig");
|
|
6
|
-
/**
|
|
7
|
-
* Returns configured grouped configured categories as a list of configured categories.
|
|
8
|
-
* @returns a list of configured categories.
|
|
9
|
-
*/
|
|
10
|
-
const useCategoryConfigs = () => {
|
|
11
|
-
const { config } = (0, useConfig_1.useConfig)();
|
|
12
|
-
const { categoryGroupConfigs } = config;
|
|
13
|
-
return (0, react_1.useMemo)(() => {
|
|
14
|
-
return categoryGroupConfigs === null || categoryGroupConfigs === void 0 ? void 0 : categoryGroupConfigs.flatMap(({ categoryConfigs }) => categoryConfigs);
|
|
15
|
-
}, [categoryGroupConfigs]);
|
|
16
|
-
};
|
|
17
|
-
exports.useCategoryConfigs = useCategoryConfigs;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { SelectedFilterValue } from "../common/entities";
|
|
2
|
-
import { RelatedSearchResult } from "../config/entities";
|
|
3
|
-
import { ListItems, RelatedListItems } from "../providers/exploreState";
|
|
4
|
-
/**
|
|
5
|
-
* Returns related entity lists filtered by related search results.
|
|
6
|
-
* @param listItems - Entity list items.
|
|
7
|
-
* @param relatedSearchResult - Related search result.
|
|
8
|
-
* @param excludedValues - Selected category values to be excluded from related entity lists.
|
|
9
|
-
* @returns related entities.
|
|
10
|
-
*/
|
|
11
|
-
export declare function buildRelatedEntityList(listItems: ListItems, relatedSearchResult: RelatedSearchResult | undefined, excludedValues: SelectedFilterValue | undefined): RelatedListItems;
|
|
12
|
-
/**
|
|
13
|
-
* Updates related entity list.
|
|
14
|
-
*/
|
|
15
|
-
export declare const useEntityListRelatedView: () => void;
|