Migrate to a monorepo structure (#2909)
This commit is contained in:
@ -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 };
|
||||
};
|
||||
@ -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 };
|
||||
};
|
||||
@ -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);
|
||||
Reference in New Issue
Block a user