in src/app/(proper_react)/(redesign)/(authenticated)/admin/dev/UserAdmin.tsx [80:150]
key as (typeof CONST_DATA_BROKER_PROFILE_DETAIL_ALLOW_LIST)[number]
],
);
return filteredData;
},
{},
);
const [editableProfileData, setEditableProfileData] = useState(initialData);
return (
<>
<Button
variant="primary"
disabled={isEqual(initialData, editableProfileData)}
onPress={() => {
try {
const editableProfileDataParsed = Object.keys(
editableProfileData,
).reduce((parsedData: Record<string, string>, key) => {
parsedData[key] = JSON.parse(editableProfileData[key]);
return parsedData;
}, {});
onChange(
editableProfileDataParsed as unknown as UpdateableProfileDetails,
);
} catch (error) {
console.error("Could not parse input data:", error);
onError(`Could not parse input data: ${JSON.stringify(error)}`);
}
}}
>
Update profile
</Button>
<div className={styles.editInputs}>
{dataKeys.map((key) => {
const dataValue = editableProfileData[key];
return (
<InputField
key={key}
value={dataValue}
isDisabled={!isEnabled}
onChange={(value) => {
const updatedProfileData = {
...editableProfileData,
[key]: value,
};
setEditableProfileData(updatedProfileData);
}}
label={key}
/>
);
})}
</div>
</>
);
};
export const UserAdmin = ({
isLocal,
enabledFeatureFlags,
}: {
isLocal: boolean;
enabledFeatureFlags: FeatureFlagName[];
}) => {
const session = useSession();
const [isLoading, setIsLoading] = useState(false);
const [emailInput, setEmailInput] = useState("");
const [status, setStatus] = useState<null | string>(null);
const [subscriberData, setSubscriberData] =
useState<GetUserStateResponseBody | null>(null);
const [onerepProfileData, setOnerepProfileData] = useState<{