import { observer } from 'mobx-react-lite';
import { usePathname } from 'next/navigation';
import React from 'react';

import { CreateModals } from '../createV2/componentsQ3/CreateModals';
import CreateFormContext, { useCreateForm } from './CreateFormContext';

function useStudioMode() {
  const pathname = usePathname();
  return (
    pathname === '/studio' ||
    pathname.startsWith('/studio/') ||
    pathname.startsWith('/edit-v3/') ||
    pathname.startsWith('/edit/')
  );
}

const CreateFormContextProvider: React.FC<React.PropsWithChildren> = observer(
  ({ children }) => {
    const isStudioMode = useStudioMode();
    const createFormContext = useCreateForm();

    return (
      <CreateFormContext.Provider value={createFormContext}>
        {children}
        <CreateModals isStudioMode={isStudioMode} />
      </CreateFormContext.Provider>
    );
  }
);

export default CreateFormContextProvider;
