import { observer } from 'mobx-react-lite';
import {
CustomFieldsAllNamespacesFormState,
CustomFieldsWidgetState,
} from '../../state';
import React, { useState } from 'react';
import { Box } from '@wix/design-system';
import { CustomFieldsNamespaceSectionForm } from './CustomFieldsNamespaceSectionForm';
import { CustomFieldsNamespaceForm } from './CustomFieldsNamespaceForm';
import { OnCustomFieldChange } from './OnCustomFieldChange';
import { EmptyStateContent } from './EmptyStateContent';
import { CustomFieldsEmptyStateOverrides } from './CustomFieldsEmptyStateOverrides';
export interface CustomFieldsAllNamespacesFormProps {
state: CustomFieldsWidgetState;
onChange?: OnCustomFieldChange;
emptyStateOverrides?: CustomFieldsEmptyStateOverrides;
}
function _CustomFieldsAllNamespacesForm(
props: CustomFieldsAllNamespacesFormProps,
) {
const {
state: customFieldsWidgetState,
onChange,
emptyStateOverrides,
} = props;
const { _userFieldsNamespace } = customFieldsWidgetState;
const [state] = useState(
() =>
(customFieldsWidgetState._formState ??=
new CustomFieldsAllNamespacesFormState({
customFieldsWidgetState,
})),
);
const { schemasSections, tpaFieldsExist } = state;
if (!schemasSections.length) {
return (
);
}
let child;
if (tpaFieldsExist) {
child = (
<>
{schemasSections.map((schema, index) => (
))}
>
);
} else {
child = (
);
}
return (
{child}
);
}
export const CustomFieldsAllNamespacesForm = observer(
_CustomFieldsAllNamespacesForm,
);