Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions lib/SmartDataTable.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,27 +17,27 @@ import * as constants from './helpers/constants'
import * as utils from './helpers/functions'
import './css/basic.css'

const EMPTY_HEADERS = {} as utils.Headers<never>
const EMPTY_ORDERED_HEADERS: string[] = []
const EMPTY_REQUEST_OPTIONS: RequestInit = {}
const NOOP_ROW_CLICK = () => null
const emptyHeaders = {} as utils.Headers<never>
const emptyOrderedHeaders: string[] = []
const emptyRequestOptions: RequestInit = {}
const noopRowClick = () => null

function SmartDataTable<T = utils.UnknownObject>({
className = '',
data,
dataKey = constants.DEFAULT_DATA_KEY,
dataKeyResolver = null,
dataRequestOptions = EMPTY_REQUEST_OPTIONS,
dataRequestOptions = emptyRequestOptions,
dataSampling = 0,
dynamic = false,
emptyTable = null,
filterValue = '',
headers = EMPTY_HEADERS as utils.Headers<T>,
headers = emptyHeaders as utils.Headers<T>,
hideUnordered = false,
loader = null,
name = 'reactsmartdatatable',
onRowClick = NOOP_ROW_CLICK,
orderedHeaders = EMPTY_ORDERED_HEADERS,
onRowClick = noopRowClick,
orderedHeaders = emptyOrderedHeaders,
paginator: PaginatorComponent = Paginator,
parseBool = false,
parseImg = false,
Expand Down
2 changes: 1 addition & 1 deletion lib/components/CellValue.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ const CellValue: FC<PropsWithChildren<CellValueProps>> = ({
const highlightedValue = highlightValue()

if (utils.isEmpty(grabLinks)) {
if (utils.isDataURL(value)) {
if (utils.isDataUrl(value)) {
return renderImage({ bypass: true })
}

Expand Down
6 changes: 3 additions & 3 deletions lib/helpers/functions.table.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import {
getRenderValue,
getSampleElement,
highlightValueParts,
isDataURL,
isDataUrl,
isImage,
parseDataForColumns,
parseDataForRows,
Expand Down Expand Up @@ -588,11 +588,11 @@ test('sortData(), should return a properly sorted array', () => {
)
})

describe('isDataURL(), should return true if data is an enconded image', () => {
describe('isDataUrl(), should return true if data is an enconded image', () => {
const tests: [unknown, boolean][] = [...negativeImgTests, [imgb64, true]]

test.each(tests)('Testing data type %#', (data, expected) => {
expect(isDataURL(data)).toBe(expected)
expect(isDataUrl(data)).toBe(expected)
})
})

Expand Down
16 changes: 8 additions & 8 deletions lib/helpers/functions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ export type ParseImg = {
className: string
}

export type TransformFN<T = UnknownObject> = (
export type TransformFn<T = UnknownObject> = (
value: unknown,
index: number,
row: T,
) => ReactNode

export type RowClickFN<T = UnknownObject> = (
export type RowClickFn<T = UnknownObject> = (
event: MouseEvent<HTMLElement>,
{
rowData,
Expand All @@ -32,7 +32,7 @@ export type RowClickFN<T = UnknownObject> = (
}: { rowData: T; rowIndex: number; tableData: T[] },
) => void

export type RowClassNameFN<T = UnknownObject> = (
export type RowClassNameFn<T = UnknownObject> = (
rowData: T,
rowIndex: number,
tableData: T[],
Expand All @@ -49,7 +49,7 @@ export interface Column<T> {
sortable: HeaderSortable<T>
filterable: boolean
isImg: boolean
transform?: TransformFN<T>
transform?: TransformFn<T>
}

export type Headers<T> = Record<string, Column<T>>
Expand All @@ -72,11 +72,11 @@ export interface RenderOptions {
parseBool?: boolean | ParseBool
}

export type KeyResolverFN<T = UnknownObject> = (args: T) => T[]
export type KeyResolverFn<T = UnknownObject> = (args: T) => T[]

export interface FetchDataOptions<T = UnknownObject> {
dataKey?: string
dataKeyResolver?: KeyResolverFN<T>
dataKeyResolver?: KeyResolverFn<T>
options?: RequestInit
}

Expand Down Expand Up @@ -495,7 +495,7 @@ export function sortData<T = UnknownObject>(
return filterRows(filterValue, sortedRows, colProperties)
}

export function isDataURL(url: unknown): boolean {
export function isDataUrl(url: unknown): boolean {
// Checks if the data is a valid base64 enconded string
const regex =
/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/
Expand Down Expand Up @@ -529,7 +529,7 @@ export function isDataURL(url: unknown): boolean {
}

export function isImage(url: unknown): boolean {
const isImgDataURL = isDataURL(url)
const isImgDataURL = isDataUrl(url)

if (isImgDataURL) {
return isImgDataURL
Expand Down
2 changes: 1 addition & 1 deletion lib/hooks/useAsyncData.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import * as utils from '../helpers/functions'
interface UseAsyncDataOptions<T> {
data: string | T[]
dataKey: string
dataKeyResolver: utils.KeyResolverFN<T>
dataKeyResolver: utils.KeyResolverFn<T>
dataRequestOptions: RequestInit
headers: utils.Headers<T>
orderedHeaders: string[]
Expand Down
6 changes: 3 additions & 3 deletions lib/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ export interface SmartDataTableProps<T = utils.UnknownObject> {
className: string
data: string | T[]
dataKey: string
dataKeyResolver: utils.KeyResolverFN<T>
dataKeyResolver: utils.KeyResolverFn<T>
dataRequestOptions: RequestInit
dataSampling: number
dynamic: boolean
Expand All @@ -17,13 +17,13 @@ export interface SmartDataTableProps<T = utils.UnknownObject> {
hideUnordered: boolean
loader: ReactNode
name: string
onRowClick: utils.RowClickFN<T>
onRowClick: utils.RowClickFn<T>
orderedHeaders: string[]
paginator: ComponentType<WrappedComponentProps>
parseBool: boolean | utils.ParseBool
parseImg: boolean | utils.ParseImg
perPage: number
rowClassName: utils.RowClassNameFN<T>
rowClassName: utils.RowClassNameFn<T>
sortable: boolean
withFooter: boolean
withHeader: boolean
Expand Down
Loading