diff --git a/src/screens/OMPSwitch/OrgSwitch.res b/src/screens/OMPSwitch/OrgSwitch.res
index d18ee6c23..b50d0b4de 100644
--- a/src/screens/OMPSwitch/OrgSwitch.res
+++ b/src/screens/OMPSwitch/OrgSwitch.res
@@ -1,3 +1,61 @@
+module SwitchOrg = {
+ @react.component
+ let make = (~setShowModal) => {
+ let showToast = ToastState.useShowToast()
+ let showPopUp = PopUpState.useShowPopUp()
+ let orgSwitch = OMPSwitchHooks.useOrgSwitch()
+ let (value, setValue) = React.useState(() => "")
+ let {userInfo: {orgId}} = React.useContext(UserInfoProvider.defaultContext)
+
+ let input = React.useMemo((): ReactFinalForm.fieldRenderPropsInput => {
+ {
+ name: "-",
+ onBlur: _ => (),
+ onChange: ev => {
+ let value = {ev->ReactEvent.Form.target}["value"]
+ if value->String.includes("") {
+ showPopUp({
+ popUpType: (Warning, WithIcon),
+ heading: `Script Tags are not allowed`,
+ description: React.string(`Input cannot contain tags`),
+ handleConfirm: {text: "OK"},
+ })
+ }
+ let val = value->String.replace("", "")
+ setValue(_ => val)
+ },
+ onFocus: _ => (),
+ value: JSON.Encode.string(value),
+ checked: false,
+ }
+ }, [value])
+
+ let switchOrg = async () => {
+ try {
+ setShowModal(_ => true)
+ let _ = await orgSwitch(~expectedOrgId=value, ~currentOrgId=orgId)
+ setShowModal(_ => false)
+ } catch {
+ | _ => showToast(~message="Failed to switch the org! Try again.", ~toastType=ToastError)
+ }
+ }
+
+ let handleKeyUp = event => {
+ if event->ReactEvent.Keyboard.keyCode === 13 {
+ switchOrg()->ignore
+ }
+ }
+
+