import { CheckBox, Label, RadioButton, useMergedRefs } from '@rocket.chat/fuselage';
import React, { useRef, useState } from 'react';
import { call } from '../../../../app/ui-utils/client';
import { handleError } from '../../../../app/utils/client';
import { useTranslation } from '../../../hooks/useTranslation';
import { Icon } from '../../basic/Icon';
import { Pager } from '../Pager';
import { useSetupWizardParameters } from '../ParametersProvider';
import { Step } from '../Step';
import { StepContent } from '../StepContent';
import { StepHeader } from '../StepHeader';
import { useSetupWizardStepsState } from '../StepsState';
import { batchSetSettings } from '../functions';
import { useFocus } from '../../../hooks/useFocus';
const Option = React.forwardRef(({ children, label, selected, disabled, ...props }, ref) => {
const innerRef = useRef();
const mergedRef = useMergedRefs(ref, innerRef);
return {
innerRef.current.click();
}}
>
{children}
;
});
const Items = (props) =>
;
const Item = ({ children, icon, ...props }) =>
{children}
;
export function RegisterServerStep({ step, title }) {
const { canDeclineServerRegistration } = useSetupWizardParameters();
const { currentStep, goToPreviousStep, goToFinalStep } = useSetupWizardStepsState();
const active = step === currentStep;
const [registerServer, setRegisterServer] = useState(true);
const [optInMarketingEmails, setOptInMarketingEmails] = useState(true);
const t = useTranslation();
const [commiting, setComitting] = useState(false);
const handleBackClick = () => {
goToPreviousStep();
};
const handleSubmit = async (event) => {
event.preventDefault();
setComitting(true);
try {
await batchSetSettings([
{
_id: 'Statistics_reporting',
value: registerServer,
},
{
_id: 'Apps_Framework_enabled',
value: registerServer,
},
{
_id: 'Register_Server',
value: registerServer,
},
{
_id: 'Allow_Marketing_Emails',
value: optInMarketingEmails,
},
]);
if (registerServer) {
await call('cloud:registerWorkspace');
}
setComitting(false);
goToFinalStep();
} catch (error) {
console.error(error);
handleError(error);
setComitting(false);
}
};
const autoFocusRef = useFocus(active);
return
{t('Register_Server_Info')}
;
}