Import company and person from csv file (#1236)

* feat: wip implement back-end call csv import

* fix: rebase IconBrandTwitter missing

* feat: person and company csv import

* fix: test & clean

* fix: clean & test
This commit is contained in:
Jérémy M
2023-08-16 23:18:16 +02:00
committed by GitHub
parent 5890354d21
commit 8863bb0035
74 changed files with 950 additions and 312 deletions

View File

@ -1,11 +0,0 @@
import { useContext } from 'react';
import { SetRequired } from 'type-fest';
import { RsiContext } from '@/spreadsheet-import/components/core/Providers';
import { defaultRSIProps } from '@/spreadsheet-import/components/SpreadsheetImport';
import { RsiProps } from '@/spreadsheet-import/types';
export const useRsi = <T extends string>() =>
useContext<SetRequired<RsiProps<T>, keyof typeof defaultRSIProps>>(
RsiContext,
);

View File

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

View File

@ -1,8 +1,8 @@
import { useMemo } from 'react';
import { StepType } from '@/spreadsheet-import/components/steps/UploadFlow';
import { StepType } from '@/spreadsheet-import/steps/components/UploadFlow';
export const useRsiInitialStep = (initialStep?: StepType) => {
export const useSpreadsheetImportInitialStep = (initialStep?: StepType) => {
const steps = ['uploadStep', 'matchColumnsStep', 'validationStep'] as const;
const initialStepNumber = useMemo(() => {

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);