Skip to content

Commit

Permalink
Add CreateElementColumn component
Browse files Browse the repository at this point in the history
  • Loading branch information
roshni73 committed Feb 14, 2025
1 parent 503261c commit 51a75f9
Show file tree
Hide file tree
Showing 8 changed files with 259 additions and 244 deletions.
38 changes: 38 additions & 0 deletions src/components/CreateElementColumn/index.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
import React from 'react';

type Options<D, K, CompProps> = {
columnClassName?: string;
sortable?: boolean;
headerCellRendererClassName?: string;
headerContainerClassName?: string;
cellRendererClassName?: string;
cellContainerClassName?: string;
cellRendererParams?: (key: K, datum: D, index: number, data: D[]) => Omit<CompProps, 'className' | 'name'>;
columnStyle?: React.CSSProperties;
};

interface Column<DATUM, KEY, ELEMENT_PROPS, HEADER_CELL_PROPS > {
id: string;
title: string;
renderer: React.ComponentType<ELEMENT_PROPS>;
rendererParams: (key: KEY, datum: DATUM) => ELEMENT_PROPS;
options?: Options<DATUM, KEY, ELEMENT_PROPS>,
headerCellProps?: HEADER_CELL_PROPS;
}

// eslint-disable-next-line import/prefer-default-export
export function createElementColumn<DATUM, KEY, ELEMENT_PROPS, HEADER_CELL_PROPS >(
id: string,
title: string,
renderer: React.ComponentType<ELEMENT_PROPS>,
rendererParams: (key: KEY, datum: DATUM) => ELEMENT_PROPS,
options: Options<DATUM, KEY, ELEMENT_PROPS> = {},
): Column<DATUM, KEY, ELEMENT_PROPS, HEADER_CELL_PROPS> {
return {
id,
title,
renderer,
rendererParams,
options,
};
}
242 changes: 0 additions & 242 deletions src/views/UserManagement/UserTable/index.tsx

This file was deleted.

Loading

0 comments on commit 51a75f9

Please sign in to comment.