diff --git a/src/entryPoints/AuthModule/AuthUtils.res b/src/entryPoints/AuthModule/AuthUtils.res index 8d044c5d6..c078e412c 100644 --- a/src/entryPoints/AuthModule/AuthUtils.res +++ b/src/entryPoints/AuthModule/AuthUtils.res @@ -79,7 +79,7 @@ let redirectToLogin = () => { open LogicUtils let authId = getSessionData(~key="auth_id") - let domain = getSessionData(~key="domain") + let domain = getSessionData(~key="domain") // todo: setting domain in session storage shall be removed later let urlToRedirect = switch (authId->isNonEmptyString, domain->isNonEmptyString) { | (true, true) => `/login?auth_id=${authId}&domain=${domain}` diff --git a/src/entryPoints/AuthModule/TwoFaAuth/TwoFaAuth.res b/src/entryPoints/AuthModule/TwoFaAuth/TwoFaAuth.res index 5ace30d86..3980e864d 100644 --- a/src/entryPoints/AuthModule/TwoFaAuth/TwoFaAuth.res +++ b/src/entryPoints/AuthModule/TwoFaAuth/TwoFaAuth.res @@ -48,7 +48,7 @@ let make = (~setAuthStatus, ~authType, ~setAuthType) => { ~entityName=USERS, ~userType=#CONNECT_ACCOUNT, ~methodType=Post, - ~queryParamerters=Some(`auth_id=${authId}&domain=${domain}`), + ~queryParamerters=Some(`auth_id=${authId}&domain=${domain}`), // todo: domain shall be removed from query params later ) let res = await updateDetails(url, body, Post) let valuesDict = res->getDictFromJsonObject diff --git a/src/entryPoints/HyperSwitchEntry.res b/src/entryPoints/HyperSwitchEntry.res index 4456f5ee6..5dd086d94 100644 --- a/src/entryPoints/HyperSwitchEntry.res +++ b/src/entryPoints/HyperSwitchEntry.res @@ -64,8 +64,8 @@ module HyperSwitchEntryComponent = { let fetchConfig = async () => { try { open LogicUtils - let domain = HyperSwitchEntryUtils.getSessionData(~key="domain", ~defaultValue="default") - let apiURL = `${GlobalVars.getHostUrlWithBasePath}/config/feature?domain=${domain}` + let domain = HyperSwitchEntryUtils.getSessionData(~key="domain", ~defaultValue="") + let apiURL = `${GlobalVars.getHostUrlWithBasePath}/config/feature?domain=${domain}` // todo: domain shall be removed from query params later let res = await fetchDetails(apiURL) let featureFlags = res->FeatureFlagUtils.featureFlagType setFeatureFlag(_ => featureFlags) @@ -111,7 +111,7 @@ module HyperSwitchEntryComponent = { React.useEffect(() => { let _ = HyperSwitchEntryUtils.setSessionData(~key="auth_id", ~searchParams=url.search) - let _ = HyperSwitchEntryUtils.setSessionData(~key="domain", ~searchParams=url.search) + let _ = HyperSwitchEntryUtils.setSessionData(~key="domain", ~searchParams=url.search) // todo: setting domain in session storage shall be removed later let _ = fetchConfig()->ignore None diff --git a/src/screens/Hooks/MerchantSpecificConfigHook.res b/src/screens/Hooks/MerchantSpecificConfigHook.res index 34f942409..3642a9362 100644 --- a/src/screens/Hooks/MerchantSpecificConfigHook.res +++ b/src/screens/Hooks/MerchantSpecificConfigHook.res @@ -29,8 +29,8 @@ let useMerchantSpecificConfig = () => { HyperswitchAtom.merchantSpecificConfigAtom->Recoil.useRecoilValueFromAtom let fetchMerchantSpecificConfig = async () => { try { - let domain = HyperSwitchEntryUtils.getSessionData(~key="domain", ~defaultValue="default") - let merchantConfigURL = ` ${GlobalVars.getHostUrlWithBasePath}/config/merchant?domain=${domain}` + let domain = HyperSwitchEntryUtils.getSessionData(~key="domain", ~defaultValue="") + let merchantConfigURL = ` ${GlobalVars.getHostUrlWithBasePath}/config/merchant?domain=${domain}` // todo: domain shall be removed from query params later let body = [ ("org_id", orgId->JSON.Encode.string), diff --git a/src/screens/OMPSwitch/OrgSwitch.res b/src/screens/OMPSwitch/OrgSwitch.res index b50d0b4de..86315e3b5 100644 --- a/src/screens/OMPSwitch/OrgSwitch.res +++ b/src/screens/OMPSwitch/OrgSwitch.res @@ -36,7 +36,10 @@ module SwitchOrg = { let _ = await orgSwitch(~expectedOrgId=value, ~currentOrgId=orgId) setShowModal(_ => false) } catch { - | _ => showToast(~message="Failed to switch the org! Try again.", ~toastType=ToastError) + | _ => { + showToast(~message="Failed to switch the org! Try again.", ~toastType=ToastError) + setShowModal(_ => false) + } } } @@ -311,7 +314,7 @@ let make = () => { dropdownContainerStyle shouldDisplaySelectedOnTop=true /> - Array.length > 20}> + Array.length >= 20}> diff --git a/src/screens/UserManagement/UserRevamp/UserManagementUtils.res b/src/screens/UserManagement/UserRevamp/UserManagementUtils.res index e1ac8660a..1a07c6e05 100644 --- a/src/screens/UserManagement/UserRevamp/UserManagementUtils.res +++ b/src/screens/UserManagement/UserRevamp/UserManagementUtils.res @@ -23,7 +23,7 @@ let roleScope = userRole => { ~options=roleScopeArray, ~buttonText="Select Option", ~deselectDisable=true, - ~disableSelect=userRole === "org_admin" ? false : true, + ~disableSelect=userRole === "org_admin" || userRole === "tenant_admin" ? false : true, ), ~isRequired=true, ) diff --git a/src/server/Server.res b/src/server/Server.res index 9397f95a9..fbdb2c37f 100644 --- a/src/server/Server.res +++ b/src/server/Server.res @@ -58,13 +58,22 @@ let currentCommitHash = nullableGitCommitStr->Option.getOr("no-commit-hash") let serverHandler: Http.serverHandler = (request, response) => { let arr = request.url.toString()->String.split("?") - let domain = + + let domainFromQueryParam = arr ->Array.get(1) - ->Option.getOr("domain=default") + ->Option.getOr("domain=") ->Js.String2.split("=") ->Array.get(1) - ->Option.getOr("default") + ->Option.getOr("") + + let xTenantId = request.headers->Dict.get("x-tenant-id") + let domainFromXTenantId = switch xTenantId->Option.getOr("public") { + | "public" => "default" + | value => value + } + + let domain = domainFromQueryParam == "" ? domainFromXTenantId : domainFromQueryParam let path = arr