Migrate to a monorepo structure (#2909)

This commit is contained in:
Charles Bochet
2023-12-10 18:10:54 +01:00
committed by GitHub
parent a70a9281eb
commit 5bdca9de6c
2304 changed files with 37152 additions and 25869 deletions

View File

@ -0,0 +1,19 @@
import { useSetRecoilState } from 'recoil';
import { spreadsheetImportState } from '@/spreadsheet-import/states/spreadsheetImportState';
import { SpreadsheetOptions } from '@/spreadsheet-import/types';
export const useSpreadsheetImport = <T extends string>() => {
const setSpreadSheetImport = useSetRecoilState(spreadsheetImportState);
const openSpreadsheetImport = (
options: Omit<SpreadsheetOptions<T>, 'isOpen' | 'onClose'>,
) => {
setSpreadSheetImport({
isOpen: true,
options,
});
};
return { openSpreadsheetImport };
};

View File

@ -0,0 +1,26 @@
import { useMemo } from 'react';
import { StepType } from '@/spreadsheet-import/steps/components/UploadFlow';
export const useSpreadsheetImportInitialStep = (initialStep?: StepType) => {
const steps = ['uploadStep', 'matchColumnsStep', 'validationStep'] as const;
const initialStepNumber = useMemo(() => {
switch (initialStep) {
case StepType.upload:
return 0;
case StepType.selectSheet:
return 0;
case StepType.selectHeader:
return 0;
case StepType.matchColumns:
return 2;
case StepType.validateData:
return 3;
default:
return -1;
}
}, [initialStep]);
return { steps, initialStep: initialStepNumber };
};

View File

@ -0,0 +1,14 @@
import { useContext } from 'react';
import { SetRequired } from 'type-fest';
import { RsiContext } from '@/spreadsheet-import/components/Providers';
import { defaultSpreadsheetImportProps } from '@/spreadsheet-import/provider/components/SpreadsheetImport';
import { SpreadsheetOptions } from '@/spreadsheet-import/types';
export const useSpreadsheetImportInternal = <T extends string>() =>
useContext<
SetRequired<
SpreadsheetOptions<T>,
keyof typeof defaultSpreadsheetImportProps
>
>(RsiContext);