@propellerads/table 5.0.2 → 5.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -290,15 +290,15 @@ function renderResizer(column) {
290
290
  }
291
291
  function getHeadContent(column) {
292
292
  if (column.isSorted && column.isSortedDesc) {
293
- return React__default.createElement(HeadCell$1, null, column.render('Header'), React__default.createElement(icon.ArrowDown, {
294
- size: icon.SIZE.SMALL,
295
- color: icon.COLOR.GRAY_DARK
293
+ return React__default.createElement(HeadCell$1, null, column.render('Header'), React__default.createElement(icon.ArrowUp, {
294
+ size: icon.Size.Small,
295
+ color: icon.Color.GrayDark
296
296
  }));
297
297
  }
298
298
  if (column.isSorted && !column.isSortedDesc) {
299
- return React__default.createElement(HeadCell$1, null, column.render('Header'), React__default.createElement(icon.ArrowUp, {
300
- size: icon.SIZE.SMALL,
301
- color: icon.COLOR.GRAY_DARK
299
+ return React__default.createElement(HeadCell$1, null, column.render('Header'), React__default.createElement(icon.ArrowDown, {
300
+ size: icon.Size.Small,
301
+ color: icon.Color.GrayDark
302
302
  }));
303
303
  }
304
304
  return column.render('Header');
@@ -1 +1 @@
1
- {"version":3,"file":"table.cjs.development.js","sources":["../src/useLoadingState.tsx","../src/useTableShadow.tsx","../src/types.tsx","../src/propsGetter.tsx","../src/style.tsx","../src/index.tsx"],"sourcesContent":["import React, {FunctionComponent, useMemo} from 'react';\nimport {Column} from 'react-table';\nimport {DefaultObject, LoadingState} from './types';\n\nconst useLoadingState = (\n showLoadingState: boolean,\n loading: boolean,\n pageSize: number,\n columns: Column<DefaultObject>[],\n LoadingCellComponent: FunctionComponent<DefaultObject>,\n): LoadingState => {\n const loadingColumns: Column<DefaultObject>[] | undefined = useMemo(\n () =>\n showLoadingState && loading\n ? columns.map((column: Column<DefaultObject>) => {\n const loadingColumn: Column<DefaultObject> = {\n ...column,\n Cell: () => <LoadingCellComponent />,\n };\n\n return loadingColumn;\n })\n : [],\n [columns, loading, showLoadingState],\n );\n\n const loadingData = useMemo(() => {\n if (showLoadingState && loading && columns && columns.length > 0) {\n const dataObject: DefaultObject = {};\n const dataArray: DefaultObject[] = [];\n\n for (let i = 0; i < columns.length; i += 1) {\n dataObject[`empty_${i}`] = '';\n }\n for (let i = 0; i < pageSize; i += 1) {\n dataArray.push(dataObject);\n }\n\n return dataArray;\n }\n\n return [];\n }, [columns, loading, pageSize, showLoadingState]);\n\n return {\n // @ts-ignore\n loadingColumns,\n loadingData,\n };\n};\n\nexport default useLoadingState;\n","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport {useEffect} from 'react';\n\nconst TABLE_SHADOW_CLASS_NAME = {\n LEFT: 'shadow_left',\n RIGHT: 'shadow_right',\n};\n\nfunction changeClassName(tableWrapperNode: Element, newClassNameList: string[]) {\n const {classList} = tableWrapperNode;\n\n classList.remove(TABLE_SHADOW_CLASS_NAME.LEFT, TABLE_SHADOW_CLASS_NAME.RIGHT);\n classList.add(...newClassNameList);\n}\n\nfunction calculateNewClassNames(tableNode, tableWrapperNode) {\n if (!tableNode || !tableWrapperNode) {\n return;\n }\n\n const tableRect = tableNode.getBoundingClientRect();\n const tableWrapperRect = tableWrapperNode.getBoundingClientRect();\n const newClassName = [];\n\n const tableRectLeft = Math.floor(tableRect.left);\n const tableRectRight = Math.floor(tableRect.right);\n const tableWrapperRectLeft = Math.floor(tableWrapperRect.left);\n const tableWrapperRectRight = Math.floor(tableWrapperRect.right);\n\n if (tableRectLeft < tableWrapperRectLeft) {\n newClassName.push(TABLE_SHADOW_CLASS_NAME.LEFT);\n }\n\n if (tableRectRight > tableWrapperRectRight) {\n newClassName.push(TABLE_SHADOW_CLASS_NAME.RIGHT);\n }\n\n changeClassName(tableWrapperNode, newClassName);\n}\n\nexport default (tableRef, tableWrapperRef) => {\n useEffect(() => {\n let ticking = false;\n\n function onMousewheel() {\n if (ticking) {\n return;\n }\n\n window.requestAnimationFrame(() => {\n calculateNewClassNames(tableRef.current, tableWrapperRef.current);\n ticking = false;\n });\n\n ticking = true;\n }\n\n calculateNewClassNames(tableRef.current, tableWrapperRef.current);\n\n tableRef?.current?.addEventListener('mousewheel', onMousewheel);\n window.addEventListener('resize', onMousewheel);\n\n return () => {\n tableRef?.current?.removeEventListener('mousewheel', onMousewheel);\n window.removeEventListener('resize', onMousewheel);\n };\n }, [tableRef.current, tableWrapperRef.current]);\n};\n","import React, {FunctionComponent, ReactElement, ReactNode} from 'react';\nimport {\n Cell,\n CellPropGetter,\n Column,\n FooterGroupPropGetter,\n FooterPropGetter,\n HeaderGroup,\n HeaderGroupPropGetter,\n Hooks,\n Meta,\n Row,\n RowPropGetter,\n TableBodyPropGetter,\n TablePropGetter,\n TableState,\n UsePaginationInstanceProps,\n UsePaginationOptions,\n UsePaginationState,\n UseRowSelectInstanceProps,\n UseRowSelectState,\n UseSortByColumnProps,\n UseRowSelectRowProps,\n UseSortByInstanceProps,\n UseSortByOptions,\n UseTableOptions,\n HeaderPropGetter,\n} from 'react-table';\n\nexport type DefaultObject = Record<string, string | number | unknown>;\n\nexport type LoadingState = {\n loadingColumns?: Column[];\n loadingData: any[];\n};\n\nexport enum FOOTER_PLACEMENT {\n TOP = 'top',\n BOTTOM = 'bottom',\n}\n\nexport type PaginationProps = {\n paginationAmount?: string | ReactNode | ReactElement;\n parentElementId: string;\n labelPerPage?: string;\n pageSizes?: Array<string | number>;\n pageIndex: number;\n perPage: number;\n totalPages: number;\n totalItems: number;\n canNextPage: boolean;\n canPreviousPage: boolean;\n nextPageHandler: () => void;\n previousPageHandler: () => void;\n setPageSize: (size: number) => void;\n gotoPage: (page: number) => void;\n};\n\nexport type ControlledPagination = {\n paginationAmount?: string | ReactNode | ReactElement;\n pageSize: number;\n pageIndex: number;\n pageCount: number;\n};\n\nexport type TableProps = {\n columns: Array<Column<DefaultObject>>;\n data: [];\n totalItems?: number;\n PaginationComponent: React.FunctionComponent<PaginationProps>;\n initialState: Partial<TableState<DefaultObject>>;\n fetchData?: (params: {pageIndex: number; pageSize: number}) => void;\n onSortedChange?: (id: string, isDesc: boolean) => void;\n isLoading?: boolean;\n footerPlacement?: Array<FOOTER_PLACEMENT>;\n hasDefaultPagination?: boolean;\n onSelectRowsChange?: (rows: Array<DefaultObject>) => void;\n controlledPagination?: ControlledPagination;\n loadingMessage?: string;\n labelPerPage?: string;\n parentElementId?: string;\n tableContentId?: string;\n getRowPreProps?: (row: Row) => DefaultObject;\n getTableProps?: TableGetter;\n getHeaderGroupProps?: ElementGetter;\n getHeaderProps?: ElementGetter;\n getRowProps?: ElementGetter;\n getCellProps?: ElementGetter;\n getFooterProps?: ElementGetter;\n getFooterGroupProps?: ElementGetter;\n showLoadingState?: boolean;\n LoadingCellComponent?: FunctionComponent<DefaultObject>;\n noDataMessage?: string | ReactElement;\n rowSubComponent?: (row: StandardRow) => ReactElement;\n isEnableRowSelect?: (original: DefaultObject) => boolean;\n};\n\nexport type TableOptions = {\n columns: Array<Column<DefaultObject>>;\n data: Array<DefaultObject>;\n initialState: {\n pageIndex?: number;\n pageSize?: number;\n };\n disableSortRemove: boolean;\n disableMultiSort: boolean;\n disableMultiRemove: boolean;\n manualSortBy?: boolean;\n autoResetPage?: boolean;\n manualPagination?: boolean;\n pageCount?: number;\n};\n\nexport type MetaProps = {\n column?: HeaderGroup<DefaultObject>;\n cell?: Cell;\n};\n\nexport type BaseMeta = Meta<DefaultObject, MetaProps>;\n\nexport type TableGetter = (props: DefaultObject) => DefaultObject;\n\nexport type ElementGetter = (props: DefaultObject, meta: BaseMeta) => DefaultObject;\n\nexport type ElementCellPropGetter = CellPropGetter<DefaultObject>;\n\nexport type ElementRowPropGetter = RowPropGetter<DefaultObject>;\n\nexport type ElementHeaderFooterPropGetter =\n | FooterGroupPropGetter<DefaultObject>\n | HeaderGroupPropGetter<DefaultObject>\n | FooterPropGetter<DefaultObject>;\n\nexport type GetTableContainerPropsGetter = (\n userGetter?: TableGetter,\n getter?: TableGetter,\n) => TablePropGetter<DefaultObject> | TableBodyPropGetter<DefaultObject>;\n\nexport type GetTableElementPropsGetter<T> = (userGetter?: ElementGetter, getter?: ElementGetter) => T;\n\nexport type GetTableElementInternalPropsGetter = (\n internalProps: DefaultObject,\n userGetter?: ElementGetter,\n getter?: ElementGetter,\n) => HeaderPropGetter<DefaultObject>;\n\nexport type ColumnWithSort = HeaderGroup<DefaultObject> & Partial<UseSortByColumnProps<DefaultObject>>;\n\nexport type StandardColumn = Column<DefaultObject>;\n\nexport type StandardRow = Row<DefaultObject> & {isExpanded?: boolean};\n\nexport type SelectableRow = Row<{id: string}> & UseRowSelectRowProps<DefaultObject>;\n\nexport type StandardCell = Cell<DefaultObject>;\n\nexport type SelectableRowInstanceProps = UseRowSelectInstanceProps<DefaultObject>;\n\nexport type StandardHooks = Hooks<DefaultObject>;\n\nexport type TableHooksInstanceProps = UseSortByInstanceProps<DefaultObject> &\n UsePaginationInstanceProps<DefaultObject> &\n UseRowSelectInstanceProps<DefaultObject> & {\n state: UseRowSelectState<DefaultObject> & UsePaginationState<DefaultObject>;\n };\n\nexport type TableOptionsProps = UseTableOptions<DefaultObject> &\n UseSortByOptions<DefaultObject> &\n UsePaginationOptions<DefaultObject> & {\n initialState: Partial<TableState<DefaultObject>> & Partial<UsePaginationState<DefaultObject>>;\n };\n\nexport class Table extends React.Component<Partial<TableProps>> {}\n","import {\n ElementGetter,\n BaseMeta,\n TableGetter,\n ElementCellPropGetter,\n ElementRowPropGetter,\n DefaultObject,\n ElementHeaderFooterPropGetter,\n GetTableElementPropsGetter,\n GetTableContainerPropsGetter,\n GetTableElementInternalPropsGetter,\n} from './types';\n\nexport const defaultGetter: ElementGetter = (props) => props;\n\nexport const cellGetter: ElementGetter = (props, {cell}) => ({\n ...props,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n align: cell?.column?.align,\n});\nexport const mainCellGetter: ElementGetter = (props, {column}) => ({\n ...props,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n align: column?.align,\n});\n\nexport const getTableProps: GetTableContainerPropsGetter = (userGetter, getter = defaultGetter as TableGetter) => {\n if (userGetter) {\n return (props) => ({\n ...getter(props),\n ...userGetter(props),\n });\n }\n\n return getter;\n};\n\nexport const getTableElementProps: GetTableElementPropsGetter<ElementHeaderFooterPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableRowProps: GetTableElementPropsGetter<ElementRowPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableCellProps: GetTableElementPropsGetter<ElementCellPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableElementInternalProps: GetTableElementInternalPropsGetter = (\n internalProps,\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter({...props, ...internalProps}, meta),\n ...userGetter(props, meta),\n });\n }\n\n return (props: DefaultObject, meta: BaseMeta) => getter({...props, ...internalProps}, meta);\n};\n","/* eslint max-len: off */\nimport styled, {keyframes, css, CSSObject} from 'styled-components';\nimport {fontNormal, white, black, spacing, gray80, gray95} from '@propellerads/stylevariables';\n\nconst loadingAnimation = keyframes`\n from {\n background-position-x: 0;\n }\n 50% {\n background-position-x: 100%;\n }\n 100% {\n background-position-x: 0;\n }\n`;\n\nexport const TableLoading = styled.div`\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.8);\n transition: all 0.3s ease;\n z-index: -1;\n opacity: 0;\n pointer-events: none;\n\n ${(props: {isLoading: boolean}) =>\n props.isLoading &&\n css`\n opacity: 1;\n z-index: 2;\n pointer-events: all;\n `}\n`;\n\nexport const TableLoadingInner = styled.div`\n position: absolute;\n display: block;\n text-align: center;\n width: 100%;\n top: 50%;\n left: 0;\n color: rgba(0, 0, 0, 0.6);\n transform: translateY(-52%);\n transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);\n`;\n\nexport const TableWrapper = styled.div`\n position: relative;\n overflow: hidden;\n\n &::before {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n position: absolute;\n width: 10px;\n height: 100%;\n top: 0;\n left: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &::after {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n width: 10px;\n height: 100%;\n position: absolute;\n top: 0;\n right: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &.shadow_left {\n &::before {\n opacity: 1 !important;\n }\n }\n\n &.shadow_right {\n &::after {\n opacity: 1 !important;\n }\n }\n`;\n\nexport const TableRoot = styled.div`\n font-size: ${fontNormal}px;\n position: relative;\n display: flex;\n flex-direction: column;\n border: 0;\n`;\n\nexport const TableContent = styled.div`\n display: block;\n max-width: 100%;\n overflow-x: scroll;\n overflow-y: hidden;\n`;\n\nexport const TableCore = styled.div`\n flex: auto 1;\n display: flex;\n flex-direction: column;\n align-items: stretch;\n border-collapse: collapse;\n`;\n\nexport const HeadCell = styled.div`\n display: inline-flex;\n`;\n\nexport const TD = styled.div`\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: 1.3rem;\n padding: 7px 4px;\n overflow: hidden;\n transition: width 0.3s ease 0s, min-width, padding, opacity;\n\n ${({align}: {align?: CSSObject; colSpan?: number}) =>\n align &&\n css`\n text-align: ${align};\n `}\n`;\n\nexport const EmptyStateCell = styled.div`\n width: 100%;\n height: ${spacing * 4}px;\n background: linear-gradient(to left, ${gray95}, ${white}, ${gray95});\n background-size: 200% 200%;\n animation: ${loadingAnimation} 1.6s linear infinite;\n`;\n\nexport const TH = styled.div`\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;\n color: rgb(0, 0, 0);\n font-weight: 500;\n outline: none;\n`;\n\nexport const THead = styled.div`\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n user-select: none;\n\n ${TH}, ${TD} {\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);\n color: ${black};\n font-weight: 500;\n outline: none;\n }\n`;\n\nexport const TRGroup = styled.div`\n display: flex;\n flex: 1 0 auto;\n box-shadow: inset 0 -1px 0 0 ${gray95};\n min-width: 100%;\n width: max-content;\n`;\n\nexport const TR = styled.div`\n padding: 0;\n -webkit-box-align: center;\n align-items: center;\n`;\n\nexport const TBody = styled.div`\n border-top: 1px solid ${gray80};\n margin-top: ${spacing * 2}px;\n min-width: 100%;\n width: max-content;\n`;\n\nexport const TFoot = styled.div`\n background: ${gray95};\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n`;\n\nexport const TResizer = styled.div`\n display: inline-block;\n position: absolute;\n right: 5px;\n top: 0;\n z-index: 1;\n touch-action: none;\n\n &:after {\n content: '↔';\n position: absolute;\n right: 0;\n top: 0;\n }\n`;\n","import React, {FunctionComponent, useEffect, useMemo, useRef} from 'react';\nimport {\n useSortBy,\n useTable,\n useRowSelect,\n usePagination,\n useExpanded,\n useFlexLayout,\n useResizeColumns,\n Column,\n} from 'react-table';\n\nimport {ArrowDown, ArrowUp, COLOR, SIZE} from '@propellerads/icon';\nimport Checkbox from '@propellerads/input-checkbox';\n\nimport useLoadingState from './useLoadingState';\nimport useTableShadow from './useTableShadow';\n\nimport {\n FOOTER_PLACEMENT,\n TableProps,\n PaginationProps,\n StandardHooks,\n StandardColumn,\n StandardRow,\n StandardCell,\n ColumnWithSort,\n TableHooksInstanceProps,\n TableOptionsProps,\n SelectableRow,\n DefaultObject,\n} from './types';\n\nimport {\n getTableProps as getTableBodyProps,\n getTableElementProps,\n getTableElementInternalProps,\n cellGetter,\n mainCellGetter,\n getTableCellProps,\n getTableRowProps,\n} from './propsGetter';\n\nimport {\n TableRoot as _TableRoot,\n TableWrapper as _TableWrapper,\n TableContent as _TableContent,\n HeadCell as _HeadCell,\n TableLoading as _TableLoading,\n TableLoadingInner as _TableLoadingInner,\n TD as _TD,\n TableCore as _TableCore,\n THead as _THead,\n TR as _TR,\n TH as _TH,\n TBody as _TBody,\n TRGroup as _TRGroup,\n TFoot as _TFoot,\n EmptyStateCell as _EmptyStateCell,\n TResizer as _TResizer,\n} from './style';\n\nconst TableRoot = _TableRoot as unknown as React.FunctionComponent<DefaultObject>;\nconst TableWrapper = _TableWrapper as unknown as React.FunctionComponent<DefaultObject>;\nconst TableContent = _TableContent as unknown as React.FunctionComponent<DefaultObject>;\nconst HeadCell = _HeadCell as unknown as React.FunctionComponent<DefaultObject>;\nconst TableLoading = _TableLoading as unknown as React.FunctionComponent<DefaultObject>;\nconst TableLoadingInner = _TableLoadingInner as unknown as React.FunctionComponent<DefaultObject>;\nconst TD = _TD as unknown as React.FunctionComponent<DefaultObject>;\nconst TableCore = _TableCore as unknown as React.FunctionComponent<DefaultObject>;\nconst THead = _THead as unknown as React.FunctionComponent<DefaultObject>;\nconst TR = _TR as unknown as React.FunctionComponent<DefaultObject>;\nconst TH = _TH as unknown as React.FunctionComponent<DefaultObject>;\nconst TBody = _TBody as unknown as React.FunctionComponent<DefaultObject>;\nconst TRGroup = _TRGroup as unknown as React.FunctionComponent<DefaultObject>;\nconst TFoot = _TFoot as unknown as React.FunctionComponent<DefaultObject>;\nconst EmptyStateCell = _EmptyStateCell as unknown as React.FunctionComponent<DefaultObject>;\nconst TResizer = _TResizer as unknown as React.FunctionComponent<DefaultObject>;\n\nconst isEnableRowSelectDefault: () => boolean = () => true;\nconst selectColumnPropsDefault = {};\nconst getRowPrePropsDefault: () => DefaultObject = () => ({});\n\nexport const defaultProps = {\n hasDefaultPagination: false,\n isLoading: false,\n footerPlacement: [],\n loadingMessage: 'loading...',\n labelPerPage: 'Show rows',\n parentElementId: 'parent-element',\n tableContentId: '',\n showLoadingState: false,\n initialState: {},\n LoadingCellComponent: EmptyStateCell,\n getRowPreProps: getRowPrePropsDefault,\n isEnableRowSelect: isEnableRowSelectDefault,\n selectColumnProps: selectColumnPropsDefault,\n noDataMessage: '',\n};\n\ntype DefaultProps = Readonly<typeof defaultProps>;\n\nconst disableSortRemove = true;\nconst disableMultiSort = true;\nconst disabledMultiRemove = true;\n\nconst DEFAULT_PAGE_INDEX = 0;\nconst DEFAULT_PAGE_SIZE = 10;\n\nfunction isFunction(reference?: (arg1?: any, arg2?: any) => void) {\n return typeof reference === 'function';\n}\n\nfunction renderResizer(column) {\n if (column.isResizable) {\n return (\n <TResizer\n {...column.getResizerProps()}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n );\n }\n\n return null;\n}\n\nfunction getHeadContent(column: ColumnWithSort) {\n if (column.isSorted && column.isSortedDesc) {\n return (\n <HeadCell>\n {column.render('Header')}\n <ArrowDown size={SIZE.SMALL} color={COLOR.GRAY_DARK} />\n </HeadCell>\n );\n }\n\n if (column.isSorted && !column.isSortedDesc) {\n return (\n <HeadCell>\n {column.render('Header')}\n <ArrowUp size={SIZE.SMALL} color={COLOR.GRAY_DARK} />\n </HeadCell>\n );\n }\n\n return column.render('Header');\n}\n\nconst Table: FunctionComponent<TableProps & DefaultProps> = (props) => {\n const {\n columns,\n data,\n totalItems,\n fetchData,\n controlledPagination,\n initialState,\n isLoading,\n loadingMessage,\n labelPerPage,\n footerPlacement,\n onSortedChange,\n hasDefaultPagination,\n onSelectRowsChange,\n parentElementId,\n tableContentId,\n LoadingCellComponent,\n PaginationComponent,\n getRowPreProps,\n getTableProps,\n getHeaderGroupProps,\n getHeaderProps,\n getRowProps,\n getCellProps,\n getFooterProps,\n getFooterGroupProps,\n showLoadingState,\n noDataMessage,\n rowSubComponent,\n isEnableRowSelect,\n selectColumnProps,\n } = props;\n\n const memoColumns = useMemo(() => columns, [columns]);\n\n const {loadingColumns, loadingData} = useLoadingState(\n showLoadingState,\n isLoading,\n controlledPagination?.pageSize ?? DEFAULT_PAGE_SIZE,\n memoColumns,\n LoadingCellComponent,\n );\n\n const showLoading = showLoadingState && isLoading;\n const hasSelectedRowsAbility = onSelectRowsChange && isFunction(onSelectRowsChange);\n const hasManualSortBy = onSortedChange && isFunction(onSortedChange);\n const hasControlledPagination = fetchData && controlledPagination && Object.keys(controlledPagination).length > 0;\n\n const options: TableOptionsProps = {\n columns: showLoading ? (loadingColumns as Column<DefaultObject>[]) : memoColumns,\n data: showLoading ? loadingData : data,\n initialState,\n disableSortRemove,\n disableMultiSort,\n disabledMultiRemove,\n };\n\n if (hasManualSortBy) {\n options.manualSortBy = true;\n }\n\n if (hasControlledPagination) {\n if (typeof controlledPagination?.pageCount === 'undefined') {\n throw new Error('You have to pass pageCount in controlledPagination data');\n }\n\n options.initialState = {\n ...options.initialState,\n pageIndex: controlledPagination.pageIndex ?? DEFAULT_PAGE_INDEX,\n pageSize: controlledPagination.pageSize ?? DEFAULT_PAGE_SIZE,\n };\n\n options.autoResetPage = true;\n options.manualPagination = true;\n options.pageCount = controlledPagination.pageCount;\n }\n\n const useSelect = (hooks: StandardHooks) => {\n if (!hasSelectedRowsAbility) {\n return;\n }\n\n const newColumn = {\n id: 'selection',\n disableSortBy: true,\n Header: (instance: TableHooksInstanceProps & {toggleAllPageRowsSelected: () => void}) => {\n const {getToggleAllPageRowsSelectedProps, toggleAllPageRowsSelected, page} = instance;\n\n const isDisabledAllRows = page.map(({original}) => original).filter(isEnableRowSelect).length === 0;\n\n return (\n <Checkbox\n elementId=\"all\"\n onChange={toggleAllPageRowsSelected}\n isChecked={getToggleAllPageRowsSelectedProps().checked}\n isDisabled={isDisabledAllRows}\n />\n );\n },\n Cell: ({row}: {row: SelectableRow}) => {\n const {id, original, toggleRowSelected, getToggleRowSelectedProps} = row;\n\n const elementId = Number.isInteger(original.id) ? original.id : id;\n const isEnabled = isEnableRowSelect(row.original);\n\n return (\n <Checkbox\n elementId={elementId}\n onChange={toggleRowSelected}\n isDisabled={!isEnabled}\n isChecked={isEnabled && getToggleRowSelectedProps().checked}\n />\n );\n },\n ...selectColumnProps,\n };\n\n // @ts-ignore\n hooks.visibleColumns.push((tableColumns: Array<StandardColumn>) => [newColumn, ...tableColumns]);\n };\n\n const {\n getTableProps: _getTableProps,\n headerGroups,\n footerGroups,\n setHiddenColumns,\n rows,\n prepareRow,\n visibleColumns,\n ...rest\n } = useTable(\n options,\n useFlexLayout,\n useSortBy,\n useExpanded,\n usePagination,\n useRowSelect,\n useSelect,\n useResizeColumns,\n );\n\n const {\n selectedFlatRows,\n setSortBy,\n page,\n canPreviousPage,\n canNextPage,\n pageCount,\n gotoPage,\n nextPage,\n previousPage,\n setPageSize,\n state: {selectedRowIds, pageIndex, pageSize},\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n } = rest as TableHooksInstanceProps;\n\n const tableRef = useRef(null);\n const tableWrapperRef = useRef(null);\n\n useTableShadow(tableRef, tableWrapperRef);\n\n useEffect(() => {\n if (!initialState?.hiddenColumns) {\n return;\n }\n\n setHiddenColumns(initialState.hiddenColumns);\n }, [initialState?.hiddenColumns]);\n\n useEffect(() => {\n if (hasSelectedRowsAbility) {\n onSelectRowsChange?.(selectedFlatRows?.map((row: StandardRow) => row.original).filter(isEnableRowSelect));\n }\n }, [selectedRowIds]);\n\n let pagination: JSX.Element | null = null;\n\n if (hasDefaultPagination && hasControlledPagination) {\n throw new Error(\n 'You have to pass either hasDefaultPagination true boolean prop or ' +\n 'pass fetchData callback and controlledPagination data',\n );\n }\n\n if (hasControlledPagination || hasDefaultPagination) {\n const paginationData: PaginationProps = {\n setPageSize,\n gotoPage,\n canNextPage,\n canPreviousPage,\n parentElementId,\n labelPerPage,\n pageIndex,\n previousPageHandler: previousPage,\n nextPageHandler: nextPage,\n totalPages: pageCount,\n perPage: pageSize,\n totalItems: totalItems ?? data.length,\n };\n\n if (hasControlledPagination && controlledPagination) {\n paginationData.canNextPage = controlledPagination.pageIndex + 1 !== paginationData.totalPages;\n paginationData.canPreviousPage = controlledPagination.pageIndex !== 0;\n paginationData.pageIndex = controlledPagination.pageIndex;\n paginationData.perPage = controlledPagination.pageSize;\n\n paginationData.setPageSize = (newPageSize: number) => {\n fetchData?.({\n pageIndex: paginationData.pageIndex,\n pageSize: newPageSize,\n });\n };\n\n paginationData.gotoPage = (newPageIndex: number) => {\n fetchData?.({\n pageIndex: newPageIndex,\n pageSize: paginationData.perPage,\n });\n };\n\n paginationData.nextPageHandler = () => {\n const newPageIndex = paginationData.pageIndex + 1;\n paginationData.gotoPage(newPageIndex);\n };\n\n paginationData.previousPageHandler = () => {\n const newPageIndex = paginationData.pageIndex - 1;\n paginationData.gotoPage(newPageIndex);\n };\n\n if (controlledPagination?.paginationAmount) {\n paginationData.paginationAmount = controlledPagination.paginationAmount;\n }\n }\n\n pagination = <PaginationComponent {...paginationData} />;\n }\n\n function extendSortByProps(column: ColumnWithSort) {\n const headerProps = column.getSortByToggleProps && column.getSortByToggleProps();\n\n delete headerProps?.style;\n\n if (hasManualSortBy && column.canSort && headerProps) {\n headerProps.onClick = () => {\n onSortedChange?.(column.id, Boolean(column.isSortedDesc));\n setSortBy([\n {\n id: column.id,\n desc: !column.isSortedDesc,\n },\n ]);\n };\n }\n\n return headerProps;\n }\n\n const tBodyTr = hasControlledPagination || hasDefaultPagination ? page : rows;\n\n return (\n <TableRoot className=\"table-root\">\n <TableLoading isLoading={!showLoadingState && isLoading} className=\"table-loading\">\n <TableLoadingInner>{loadingMessage}</TableLoadingInner>\n </TableLoading>\n <TableWrapper ref={tableWrapperRef} className=\"table-wrapper\">\n <TableContent id={tableContentId} className=\"table-content\">\n <TableCore {..._getTableProps(getTableBodyProps(getTableProps))} ref={tableRef}>\n <THead className=\"table-head\" data-role=\"table-head\">\n {headerGroups.map((headerGroup) => (\n <TR {...headerGroup.getHeaderGroupProps(getTableElementProps(getHeaderGroupProps))}>\n {headerGroup.headers.map((column) => {\n const headerProps = extendSortByProps(column) as DefaultObject;\n\n return (\n <TH\n {...column.getHeaderProps(\n getTableElementInternalProps(headerProps, getHeaderProps, mainCellGetter),\n )}\n >\n {getHeadContent(column)}\n {renderResizer(column)}\n </TH>\n );\n })}\n </TR>\n ))}\n </THead>\n {footerPlacement.includes(FOOTER_PLACEMENT.TOP) && (\n <TFoot className=\"table-footer-top\" data-role=\"table-footer-top\">\n {footerGroups.map((group) => (\n <TR {...group.getFooterGroupProps(getTableElementProps(getFooterGroupProps))}>\n {group.headers.map((column) => (\n <TD {...column.getFooterProps(getTableElementProps(getFooterProps, mainCellGetter))}>\n {column.render('Footer')}\n </TD>\n ))}\n </TR>\n ))}\n </TFoot>\n )}\n <TBody className=\"table-body\" data-role=\"table-body\">\n {tBodyTr.map((row: StandardRow) => {\n prepareRow(row);\n const {isDelimiterTd} = getRowPreProps(row);\n\n if (isDelimiterTd) {\n const cell = row.cells[0].render('Cell') as React.ReactNode;\n\n return (\n <React.Fragment key={`group_${row.index}`}>\n <TRGroup>\n <TR {...row.getRowProps(getTableRowProps(getRowProps))}>\n <TD\n colSpan={visibleColumns.length}\n {...row.cells[0].getCellProps(getTableCellProps(getCellProps, cellGetter))}\n >\n <strong>{cell}</strong>\n </TD>\n </TR>\n </TRGroup>\n {row?.isExpanded && rowSubComponent && rowSubComponent(row)}\n </React.Fragment>\n );\n }\n\n return (\n <React.Fragment key={`group_${row.index}`}>\n <TRGroup>\n <TR {...row.getRowProps(getTableRowProps(getRowProps))}>\n {row.cells.map((cell: StandardCell) => (\n <TD {...cell.getCellProps(getTableCellProps(getCellProps, cellGetter))}>\n {cell.render('Cell')}\n </TD>\n ))}\n </TR>\n </TRGroup>\n {row?.isExpanded && rowSubComponent && rowSubComponent(row)}\n </React.Fragment>\n );\n })}\n </TBody>\n {footerPlacement.includes(FOOTER_PLACEMENT.BOTTOM) && (\n <TFoot className=\"table-footer-bottom\" data-role=\"table-footer-bottom\">\n {footerGroups.map((group) => (\n <TR {...group.getFooterGroupProps(getTableElementProps(getFooterGroupProps))}>\n {group.headers.map((column) => (\n <TD {...column.getFooterProps(getTableElementProps(getFooterProps, mainCellGetter))}>\n {column.render('Footer')}\n </TD>\n ))}\n </TR>\n ))}\n </TFoot>\n )}\n </TableCore>\n </TableContent>\n </TableWrapper>\n {!isLoading && !data.length && noDataMessage}\n {pagination}\n </TableRoot>\n );\n};\n\nTable.defaultProps = defaultProps;\n\nexport {Table};\n"],"names":["useLoadingState","showLoadingState","loading","pageSize","columns","LoadingCellComponent","loadingColumns","useMemo","map","column","loadingColumn","_extends","Cell","React","loadingData","length","dataObject","dataArray","i","push","TABLE_SHADOW_CLASS_NAME","LEFT","RIGHT","changeClassName","tableWrapperNode","newClassNameList","classList","remove","add","apply","calculateNewClassNames","tableNode","tableRect","getBoundingClientRect","tableWrapperRect","newClassName","tableRectLeft","Math","floor","left","tableRectRight","right","tableWrapperRectLeft","tableWrapperRectRight","tableRef","tableWrapperRef","useEffect","ticking","onMousewheel","window","requestAnimationFrame","current","_tableRef$current","addEventListener","_tableRef$current2","removeEventListener","FOOTER_PLACEMENT","defaultGetter","props","cellGetter","_ref","_cell$column","cell","align","mainCellGetter","_ref2","getTableProps","userGetter","getter","getTableElementProps","meta","getTableRowProps","getTableCellProps","getTableElementInternalProps","internalProps","loadingAnimation","keyframes","_templateObject","_taggedTemplateLiteralLoose","TableLoading","styled","div","_templateObject2","isLoading","css","_templateObject3","TableLoadingInner","_templateObject4","TableWrapper","_templateObject5","TableRoot","_templateObject6","fontNormal","TableContent","_templateObject7","TableCore","_templateObject8","HeadCell","_templateObject9","TD","_templateObject0","_templateObject1","EmptyStateCell","_templateObject10","spacing","gray95","white","TH","_templateObject11","THead","_templateObject12","black","TRGroup","_templateObject13","TR","_templateObject14","TBody","_templateObject15","gray80","TFoot","_templateObject16","TResizer","_templateObject17","_TableRoot","_TableWrapper","_TableContent","_HeadCell","_TableLoading","_TableLoadingInner","_TD","_TableCore","_THead","_TR","_TH","_TBody","_TRGroup","_TFoot","_EmptyStateCell","_TResizer","isEnableRowSelectDefault","selectColumnPropsDefault","getRowPrePropsDefault","defaultProps","hasDefaultPagination","footerPlacement","loadingMessage","labelPerPage","parentElementId","tableContentId","initialState","getRowPreProps","isEnableRowSelect","selectColumnProps","noDataMessage","disableSortRemove","disableMultiSort","disabledMultiRemove","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","isFunction","reference","renderResizer","isResizable","getResizerProps","onClick","e","preventDefault","stopPropagation","getHeadContent","isSorted","isSortedDesc","render","ArrowDown","size","SIZE","SMALL","color","COLOR","GRAY_DARK","ArrowUp","Table","data","totalItems","fetchData","controlledPagination","onSortedChange","onSelectRowsChange","PaginationComponent","getHeaderGroupProps","getHeaderProps","getRowProps","getCellProps","getFooterProps","getFooterGroupProps","rowSubComponent","memoColumns","_useLoadingState","_controlledPagination","showLoading","hasSelectedRowsAbility","hasManualSortBy","hasControlledPagination","Object","keys","options","manualSortBy","_controlledPagination2","_controlledPagination3","pageCount","Error","pageIndex","autoResetPage","manualPagination","useSelect","hooks","newColumn","id","disableSortBy","Header","instance","getToggleAllPageRowsSelectedProps","toggleAllPageRowsSelected","page","isDisabledAllRows","original","filter","Checkbox","elementId","onChange","isChecked","checked","isDisabled","row","toggleRowSelected","getToggleRowSelectedProps","Number","isInteger","isEnabled","visibleColumns","tableColumns","concat","_useTable","useTable","useFlexLayout","useSortBy","useExpanded","usePagination","useRowSelect","useResizeColumns","_getTableProps","headerGroups","footerGroups","setHiddenColumns","rows","prepareRow","rest","_objectWithoutPropertiesLoose","_excluded","selectedFlatRows","setSortBy","canPreviousPage","canNextPage","gotoPage","nextPage","previousPage","setPageSize","_rest$state","state","selectedRowIds","useRef","useTableShadow","hiddenColumns","pagination","paginationData","previousPageHandler","nextPageHandler","totalPages","perPage","newPageSize","newPageIndex","paginationAmount","extendSortByProps","headerProps","getSortByToggleProps","style","canSort","Boolean","desc","tBodyTr","className","ref","getTableBodyProps","headerGroup","headers","includes","TOP","group","_getRowPreProps","isDelimiterTd","cells","Fragment","key","index","colSpan","isExpanded","BOTTOM"],"mappings":"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"}
1
+ {"version":3,"file":"table.cjs.development.js","sources":["../src/useLoadingState.tsx","../src/useTableShadow.tsx","../src/types.tsx","../src/propsGetter.tsx","../src/style.tsx","../src/index.tsx"],"sourcesContent":["import React, {FunctionComponent, useMemo} from 'react';\nimport {Column} from 'react-table';\nimport {DefaultObject, LoadingState} from './types';\n\nconst useLoadingState = (\n showLoadingState: boolean,\n loading: boolean,\n pageSize: number,\n columns: Column<DefaultObject>[],\n LoadingCellComponent: FunctionComponent<DefaultObject>,\n): LoadingState => {\n const loadingColumns: Column<DefaultObject>[] | undefined = useMemo(\n () =>\n showLoadingState && loading\n ? columns.map((column: Column<DefaultObject>) => {\n const loadingColumn: Column<DefaultObject> = {\n ...column,\n Cell: () => <LoadingCellComponent />,\n };\n\n return loadingColumn;\n })\n : [],\n [columns, loading, showLoadingState],\n );\n\n const loadingData = useMemo(() => {\n if (showLoadingState && loading && columns && columns.length > 0) {\n const dataObject: DefaultObject = {};\n const dataArray: DefaultObject[] = [];\n\n for (let i = 0; i < columns.length; i += 1) {\n dataObject[`empty_${i}`] = '';\n }\n for (let i = 0; i < pageSize; i += 1) {\n dataArray.push(dataObject);\n }\n\n return dataArray;\n }\n\n return [];\n }, [columns, loading, pageSize, showLoadingState]);\n\n return {\n // @ts-ignore\n loadingColumns,\n loadingData,\n };\n};\n\nexport default useLoadingState;\n","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport {useEffect} from 'react';\n\nconst TABLE_SHADOW_CLASS_NAME = {\n LEFT: 'shadow_left',\n RIGHT: 'shadow_right',\n};\n\nfunction changeClassName(tableWrapperNode: Element, newClassNameList: string[]) {\n const {classList} = tableWrapperNode;\n\n classList.remove(TABLE_SHADOW_CLASS_NAME.LEFT, TABLE_SHADOW_CLASS_NAME.RIGHT);\n classList.add(...newClassNameList);\n}\n\nfunction calculateNewClassNames(tableNode, tableWrapperNode) {\n if (!tableNode || !tableWrapperNode) {\n return;\n }\n\n const tableRect = tableNode.getBoundingClientRect();\n const tableWrapperRect = tableWrapperNode.getBoundingClientRect();\n const newClassName = [];\n\n const tableRectLeft = Math.floor(tableRect.left);\n const tableRectRight = Math.floor(tableRect.right);\n const tableWrapperRectLeft = Math.floor(tableWrapperRect.left);\n const tableWrapperRectRight = Math.floor(tableWrapperRect.right);\n\n if (tableRectLeft < tableWrapperRectLeft) {\n newClassName.push(TABLE_SHADOW_CLASS_NAME.LEFT);\n }\n\n if (tableRectRight > tableWrapperRectRight) {\n newClassName.push(TABLE_SHADOW_CLASS_NAME.RIGHT);\n }\n\n changeClassName(tableWrapperNode, newClassName);\n}\n\nexport default (tableRef, tableWrapperRef) => {\n useEffect(() => {\n let ticking = false;\n\n function onMousewheel() {\n if (ticking) {\n return;\n }\n\n window.requestAnimationFrame(() => {\n calculateNewClassNames(tableRef.current, tableWrapperRef.current);\n ticking = false;\n });\n\n ticking = true;\n }\n\n calculateNewClassNames(tableRef.current, tableWrapperRef.current);\n\n tableRef?.current?.addEventListener('mousewheel', onMousewheel);\n window.addEventListener('resize', onMousewheel);\n\n return () => {\n tableRef?.current?.removeEventListener('mousewheel', onMousewheel);\n window.removeEventListener('resize', onMousewheel);\n };\n }, [tableRef.current, tableWrapperRef.current]);\n};\n","import React, {FunctionComponent, ReactElement, ReactNode} from 'react';\nimport {\n Cell,\n CellPropGetter,\n Column,\n FooterGroupPropGetter,\n FooterPropGetter,\n HeaderGroup,\n HeaderGroupPropGetter,\n Hooks,\n Meta,\n Row,\n RowPropGetter,\n TableBodyPropGetter,\n TablePropGetter,\n TableState,\n UsePaginationInstanceProps,\n UsePaginationOptions,\n UsePaginationState,\n UseRowSelectInstanceProps,\n UseRowSelectState,\n UseSortByColumnProps,\n UseRowSelectRowProps,\n UseSortByInstanceProps,\n UseSortByOptions,\n UseTableOptions,\n HeaderPropGetter,\n} from 'react-table';\n\nexport type DefaultObject = Record<string, string | number | unknown>;\n\nexport type LoadingState = {\n loadingColumns?: Column[];\n loadingData: any[];\n};\n\nexport enum FOOTER_PLACEMENT {\n TOP = 'top',\n BOTTOM = 'bottom',\n}\n\nexport type PaginationProps = {\n paginationAmount?: string | ReactNode | ReactElement;\n parentElementId: string;\n labelPerPage?: string;\n pageSizes?: Array<string | number>;\n pageIndex: number;\n perPage: number;\n totalPages: number;\n totalItems: number;\n canNextPage: boolean;\n canPreviousPage: boolean;\n nextPageHandler: () => void;\n previousPageHandler: () => void;\n setPageSize: (size: number) => void;\n gotoPage: (page: number) => void;\n};\n\nexport type ControlledPagination = {\n paginationAmount?: string | ReactNode | ReactElement;\n pageSize: number;\n pageIndex: number;\n pageCount: number;\n};\n\nexport type TableProps = {\n columns: Array<Column<DefaultObject>>;\n data: [];\n totalItems?: number;\n PaginationComponent: React.FunctionComponent<PaginationProps>;\n initialState: Partial<TableState<DefaultObject>>;\n fetchData?: (params: {pageIndex: number; pageSize: number}) => void;\n onSortedChange?: (id: string, isDesc: boolean) => void;\n isLoading?: boolean;\n footerPlacement?: Array<FOOTER_PLACEMENT>;\n hasDefaultPagination?: boolean;\n onSelectRowsChange?: (rows: Array<DefaultObject>) => void;\n controlledPagination?: ControlledPagination;\n loadingMessage?: string;\n labelPerPage?: string;\n parentElementId?: string;\n tableContentId?: string;\n getRowPreProps?: (row: Row) => DefaultObject;\n getTableProps?: TableGetter;\n getHeaderGroupProps?: ElementGetter;\n getHeaderProps?: ElementGetter;\n getRowProps?: ElementGetter;\n getCellProps?: ElementGetter;\n getFooterProps?: ElementGetter;\n getFooterGroupProps?: ElementGetter;\n showLoadingState?: boolean;\n LoadingCellComponent?: FunctionComponent<DefaultObject>;\n noDataMessage?: string | ReactElement;\n rowSubComponent?: (row: StandardRow) => ReactElement;\n isEnableRowSelect?: (original: DefaultObject) => boolean;\n};\n\nexport type TableOptions = {\n columns: Array<Column<DefaultObject>>;\n data: Array<DefaultObject>;\n initialState: {\n pageIndex?: number;\n pageSize?: number;\n };\n disableSortRemove: boolean;\n disableMultiSort: boolean;\n disableMultiRemove: boolean;\n manualSortBy?: boolean;\n autoResetPage?: boolean;\n manualPagination?: boolean;\n pageCount?: number;\n};\n\nexport type MetaProps = {\n column?: HeaderGroup<DefaultObject>;\n cell?: Cell;\n};\n\nexport type BaseMeta = Meta<DefaultObject, MetaProps>;\n\nexport type TableGetter = (props: DefaultObject) => DefaultObject;\n\nexport type ElementGetter = (props: DefaultObject, meta: BaseMeta) => DefaultObject;\n\nexport type ElementCellPropGetter = CellPropGetter<DefaultObject>;\n\nexport type ElementRowPropGetter = RowPropGetter<DefaultObject>;\n\nexport type ElementHeaderFooterPropGetter =\n | FooterGroupPropGetter<DefaultObject>\n | HeaderGroupPropGetter<DefaultObject>\n | FooterPropGetter<DefaultObject>;\n\nexport type GetTableContainerPropsGetter = (\n userGetter?: TableGetter,\n getter?: TableGetter,\n) => TablePropGetter<DefaultObject> | TableBodyPropGetter<DefaultObject>;\n\nexport type GetTableElementPropsGetter<T> = (userGetter?: ElementGetter, getter?: ElementGetter) => T;\n\nexport type GetTableElementInternalPropsGetter = (\n internalProps: DefaultObject,\n userGetter?: ElementGetter,\n getter?: ElementGetter,\n) => HeaderPropGetter<DefaultObject>;\n\nexport type ColumnWithSort = HeaderGroup<DefaultObject> & Partial<UseSortByColumnProps<DefaultObject>>;\n\nexport type StandardColumn = Column<DefaultObject>;\n\nexport type StandardRow = Row<DefaultObject> & {isExpanded?: boolean};\n\nexport type SelectableRow = Row<{id: string}> & UseRowSelectRowProps<DefaultObject>;\n\nexport type StandardCell = Cell<DefaultObject>;\n\nexport type SelectableRowInstanceProps = UseRowSelectInstanceProps<DefaultObject>;\n\nexport type StandardHooks = Hooks<DefaultObject>;\n\nexport type TableHooksInstanceProps = UseSortByInstanceProps<DefaultObject> &\n UsePaginationInstanceProps<DefaultObject> &\n UseRowSelectInstanceProps<DefaultObject> & {\n state: UseRowSelectState<DefaultObject> & UsePaginationState<DefaultObject>;\n };\n\nexport type TableOptionsProps = UseTableOptions<DefaultObject> &\n UseSortByOptions<DefaultObject> &\n UsePaginationOptions<DefaultObject> & {\n initialState: Partial<TableState<DefaultObject>> & Partial<UsePaginationState<DefaultObject>>;\n };\n\nexport class Table extends React.Component<Partial<TableProps>> {}\n","import {\n ElementGetter,\n BaseMeta,\n TableGetter,\n ElementCellPropGetter,\n ElementRowPropGetter,\n DefaultObject,\n ElementHeaderFooterPropGetter,\n GetTableElementPropsGetter,\n GetTableContainerPropsGetter,\n GetTableElementInternalPropsGetter,\n} from './types';\n\nexport const defaultGetter: ElementGetter = (props) => props;\n\nexport const cellGetter: ElementGetter = (props, {cell}) => ({\n ...props,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n align: cell?.column?.align,\n});\nexport const mainCellGetter: ElementGetter = (props, {column}) => ({\n ...props,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n align: column?.align,\n});\n\nexport const getTableProps: GetTableContainerPropsGetter = (userGetter, getter = defaultGetter as TableGetter) => {\n if (userGetter) {\n return (props) => ({\n ...getter(props),\n ...userGetter(props),\n });\n }\n\n return getter;\n};\n\nexport const getTableElementProps: GetTableElementPropsGetter<ElementHeaderFooterPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableRowProps: GetTableElementPropsGetter<ElementRowPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableCellProps: GetTableElementPropsGetter<ElementCellPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableElementInternalProps: GetTableElementInternalPropsGetter = (\n internalProps,\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter({...props, ...internalProps}, meta),\n ...userGetter(props, meta),\n });\n }\n\n return (props: DefaultObject, meta: BaseMeta) => getter({...props, ...internalProps}, meta);\n};\n","/* eslint max-len: off */\nimport styled, {keyframes, css, CSSObject} from 'styled-components';\nimport {fontNormal, white, black, spacing, gray80, gray95} from '@propellerads/stylevariables';\n\nconst loadingAnimation = keyframes`\n from {\n background-position-x: 0;\n }\n 50% {\n background-position-x: 100%;\n }\n 100% {\n background-position-x: 0;\n }\n`;\n\nexport const TableLoading = styled.div`\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.8);\n transition: all 0.3s ease;\n z-index: -1;\n opacity: 0;\n pointer-events: none;\n\n ${(props: {isLoading: boolean}) =>\n props.isLoading &&\n css`\n opacity: 1;\n z-index: 2;\n pointer-events: all;\n `}\n`;\n\nexport const TableLoadingInner = styled.div`\n position: absolute;\n display: block;\n text-align: center;\n width: 100%;\n top: 50%;\n left: 0;\n color: rgba(0, 0, 0, 0.6);\n transform: translateY(-52%);\n transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);\n`;\n\nexport const TableWrapper = styled.div`\n position: relative;\n overflow: hidden;\n\n &::before {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n position: absolute;\n width: 10px;\n height: 100%;\n top: 0;\n left: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &::after {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n width: 10px;\n height: 100%;\n position: absolute;\n top: 0;\n right: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &.shadow_left {\n &::before {\n opacity: 1 !important;\n }\n }\n\n &.shadow_right {\n &::after {\n opacity: 1 !important;\n }\n }\n`;\n\nexport const TableRoot = styled.div`\n font-size: ${fontNormal}px;\n position: relative;\n display: flex;\n flex-direction: column;\n border: 0;\n`;\n\nexport const TableContent = styled.div`\n display: block;\n max-width: 100%;\n overflow-x: scroll;\n overflow-y: hidden;\n`;\n\nexport const TableCore = styled.div`\n flex: auto 1;\n display: flex;\n flex-direction: column;\n align-items: stretch;\n border-collapse: collapse;\n`;\n\nexport const HeadCell = styled.div`\n display: inline-flex;\n`;\n\nexport const TD = styled.div`\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: 1.3rem;\n padding: 7px 4px;\n overflow: hidden;\n transition: width 0.3s ease 0s, min-width, padding, opacity;\n\n ${({align}: {align?: CSSObject; colSpan?: number}) =>\n align &&\n css`\n text-align: ${align};\n `}\n`;\n\nexport const EmptyStateCell = styled.div`\n width: 100%;\n height: ${spacing * 4}px;\n background: linear-gradient(to left, ${gray95}, ${white}, ${gray95});\n background-size: 200% 200%;\n animation: ${loadingAnimation} 1.6s linear infinite;\n`;\n\nexport const TH = styled.div`\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;\n color: rgb(0, 0, 0);\n font-weight: 500;\n outline: none;\n`;\n\nexport const THead = styled.div`\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n user-select: none;\n\n ${TH}, ${TD} {\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);\n color: ${black};\n font-weight: 500;\n outline: none;\n }\n`;\n\nexport const TRGroup = styled.div`\n display: flex;\n flex: 1 0 auto;\n box-shadow: inset 0 -1px 0 0 ${gray95};\n min-width: 100%;\n width: max-content;\n`;\n\nexport const TR = styled.div`\n padding: 0;\n -webkit-box-align: center;\n align-items: center;\n`;\n\nexport const TBody = styled.div`\n border-top: 1px solid ${gray80};\n margin-top: ${spacing * 2}px;\n min-width: 100%;\n width: max-content;\n`;\n\nexport const TFoot = styled.div`\n background: ${gray95};\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n`;\n\nexport const TResizer = styled.div`\n display: inline-block;\n position: absolute;\n right: 5px;\n top: 0;\n z-index: 1;\n touch-action: none;\n\n &:after {\n content: '↔';\n position: absolute;\n right: 0;\n top: 0;\n }\n`;\n","import React, {FunctionComponent, useEffect, useMemo, useRef} from 'react';\nimport {\n useSortBy,\n useTable,\n useRowSelect,\n usePagination,\n useExpanded,\n useFlexLayout,\n useResizeColumns,\n Column,\n} from 'react-table';\n\nimport {ArrowDown, ArrowUp, Color, Size} from '@propellerads/icon';\nimport Checkbox from '@propellerads/input-checkbox';\n\nimport useLoadingState from './useLoadingState';\nimport useTableShadow from './useTableShadow';\n\nimport {\n FOOTER_PLACEMENT,\n TableProps,\n PaginationProps,\n StandardHooks,\n StandardColumn,\n StandardRow,\n StandardCell,\n ColumnWithSort,\n TableHooksInstanceProps,\n TableOptionsProps,\n SelectableRow,\n DefaultObject,\n} from './types';\n\nimport {\n getTableProps as getTableBodyProps,\n getTableElementProps,\n getTableElementInternalProps,\n cellGetter,\n mainCellGetter,\n getTableCellProps,\n getTableRowProps,\n} from './propsGetter';\n\nimport {\n TableRoot as _TableRoot,\n TableWrapper as _TableWrapper,\n TableContent as _TableContent,\n HeadCell as _HeadCell,\n TableLoading as _TableLoading,\n TableLoadingInner as _TableLoadingInner,\n TD as _TD,\n TableCore as _TableCore,\n THead as _THead,\n TR as _TR,\n TH as _TH,\n TBody as _TBody,\n TRGroup as _TRGroup,\n TFoot as _TFoot,\n EmptyStateCell as _EmptyStateCell,\n TResizer as _TResizer,\n} from './style';\n\nconst TableRoot = _TableRoot as unknown as React.FunctionComponent<DefaultObject>;\nconst TableWrapper = _TableWrapper as unknown as React.FunctionComponent<DefaultObject>;\nconst TableContent = _TableContent as unknown as React.FunctionComponent<DefaultObject>;\nconst HeadCell = _HeadCell as unknown as React.FunctionComponent<DefaultObject>;\nconst TableLoading = _TableLoading as unknown as React.FunctionComponent<DefaultObject>;\nconst TableLoadingInner = _TableLoadingInner as unknown as React.FunctionComponent<DefaultObject>;\nconst TD = _TD as unknown as React.FunctionComponent<DefaultObject>;\nconst TableCore = _TableCore as unknown as React.FunctionComponent<DefaultObject>;\nconst THead = _THead as unknown as React.FunctionComponent<DefaultObject>;\nconst TR = _TR as unknown as React.FunctionComponent<DefaultObject>;\nconst TH = _TH as unknown as React.FunctionComponent<DefaultObject>;\nconst TBody = _TBody as unknown as React.FunctionComponent<DefaultObject>;\nconst TRGroup = _TRGroup as unknown as React.FunctionComponent<DefaultObject>;\nconst TFoot = _TFoot as unknown as React.FunctionComponent<DefaultObject>;\nconst EmptyStateCell = _EmptyStateCell as unknown as React.FunctionComponent<DefaultObject>;\nconst TResizer = _TResizer as unknown as React.FunctionComponent<DefaultObject>;\n\nconst isEnableRowSelectDefault: () => boolean = () => true;\nconst selectColumnPropsDefault = {};\nconst getRowPrePropsDefault: () => DefaultObject = () => ({});\n\nexport const defaultProps = {\n hasDefaultPagination: false,\n isLoading: false,\n footerPlacement: [],\n loadingMessage: 'loading...',\n labelPerPage: 'Show rows',\n parentElementId: 'parent-element',\n tableContentId: '',\n showLoadingState: false,\n initialState: {},\n LoadingCellComponent: EmptyStateCell,\n getRowPreProps: getRowPrePropsDefault,\n isEnableRowSelect: isEnableRowSelectDefault,\n selectColumnProps: selectColumnPropsDefault,\n noDataMessage: '',\n};\n\ntype DefaultProps = Readonly<typeof defaultProps>;\n\nconst disableSortRemove = true;\nconst disableMultiSort = true;\nconst disabledMultiRemove = true;\n\nconst DEFAULT_PAGE_INDEX = 0;\nconst DEFAULT_PAGE_SIZE = 10;\n\nfunction isFunction(reference?: (arg1?: any, arg2?: any) => void) {\n return typeof reference === 'function';\n}\n\nfunction renderResizer(column) {\n if (column.isResizable) {\n return (\n <TResizer\n {...column.getResizerProps()}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n );\n }\n\n return null;\n}\n\nfunction getHeadContent(column: ColumnWithSort) {\n if (column.isSorted && column.isSortedDesc) {\n return (\n <HeadCell>\n {column.render('Header')}\n <ArrowUp size={Size.Small} color={Color.GrayDark} />\n </HeadCell>\n );\n }\n\n if (column.isSorted && !column.isSortedDesc) {\n return (\n <HeadCell>\n {column.render('Header')}\n <ArrowDown size={Size.Small} color={Color.GrayDark} />\n </HeadCell>\n );\n }\n\n return column.render('Header');\n}\n\nconst Table: FunctionComponent<TableProps & DefaultProps> = (props) => {\n const {\n columns,\n data,\n totalItems,\n fetchData,\n controlledPagination,\n initialState,\n isLoading,\n loadingMessage,\n labelPerPage,\n footerPlacement,\n onSortedChange,\n hasDefaultPagination,\n onSelectRowsChange,\n parentElementId,\n tableContentId,\n LoadingCellComponent,\n PaginationComponent,\n getRowPreProps,\n getTableProps,\n getHeaderGroupProps,\n getHeaderProps,\n getRowProps,\n getCellProps,\n getFooterProps,\n getFooterGroupProps,\n showLoadingState,\n noDataMessage,\n rowSubComponent,\n isEnableRowSelect,\n selectColumnProps,\n } = props;\n\n const memoColumns = useMemo(() => columns, [columns]);\n\n const {loadingColumns, loadingData} = useLoadingState(\n showLoadingState,\n isLoading,\n controlledPagination?.pageSize ?? DEFAULT_PAGE_SIZE,\n memoColumns,\n LoadingCellComponent,\n );\n\n const showLoading = showLoadingState && isLoading;\n const hasSelectedRowsAbility = onSelectRowsChange && isFunction(onSelectRowsChange);\n const hasManualSortBy = onSortedChange && isFunction(onSortedChange);\n const hasControlledPagination = fetchData && controlledPagination && Object.keys(controlledPagination).length > 0;\n\n const options: TableOptionsProps = {\n columns: showLoading ? (loadingColumns as Column<DefaultObject>[]) : memoColumns,\n data: showLoading ? loadingData : data,\n initialState,\n disableSortRemove,\n disableMultiSort,\n disabledMultiRemove,\n };\n\n if (hasManualSortBy) {\n options.manualSortBy = true;\n }\n\n if (hasControlledPagination) {\n if (typeof controlledPagination?.pageCount === 'undefined') {\n throw new Error('You have to pass pageCount in controlledPagination data');\n }\n\n options.initialState = {\n ...options.initialState,\n pageIndex: controlledPagination.pageIndex ?? DEFAULT_PAGE_INDEX,\n pageSize: controlledPagination.pageSize ?? DEFAULT_PAGE_SIZE,\n };\n\n options.autoResetPage = true;\n options.manualPagination = true;\n options.pageCount = controlledPagination.pageCount;\n }\n\n const useSelect = (hooks: StandardHooks) => {\n if (!hasSelectedRowsAbility) {\n return;\n }\n\n const newColumn = {\n id: 'selection',\n disableSortBy: true,\n Header: (instance: TableHooksInstanceProps & {toggleAllPageRowsSelected: () => void}) => {\n const {getToggleAllPageRowsSelectedProps, toggleAllPageRowsSelected, page} = instance;\n\n const isDisabledAllRows = page.map(({original}) => original).filter(isEnableRowSelect).length === 0;\n\n return (\n <Checkbox\n elementId=\"all\"\n onChange={toggleAllPageRowsSelected}\n isChecked={getToggleAllPageRowsSelectedProps().checked}\n isDisabled={isDisabledAllRows}\n />\n );\n },\n Cell: ({row}: {row: SelectableRow}) => {\n const {id, original, toggleRowSelected, getToggleRowSelectedProps} = row;\n\n const elementId = Number.isInteger(original.id) ? original.id : id;\n const isEnabled = isEnableRowSelect(row.original);\n\n return (\n <Checkbox\n elementId={elementId}\n onChange={toggleRowSelected}\n isDisabled={!isEnabled}\n isChecked={isEnabled && getToggleRowSelectedProps().checked}\n />\n );\n },\n ...selectColumnProps,\n };\n\n // @ts-ignore\n hooks.visibleColumns.push((tableColumns: Array<StandardColumn>) => [newColumn, ...tableColumns]);\n };\n\n const {\n getTableProps: _getTableProps,\n headerGroups,\n footerGroups,\n setHiddenColumns,\n rows,\n prepareRow,\n visibleColumns,\n ...rest\n } = useTable(\n options,\n useFlexLayout,\n useSortBy,\n useExpanded,\n usePagination,\n useRowSelect,\n useSelect,\n useResizeColumns,\n );\n\n const {\n selectedFlatRows,\n setSortBy,\n page,\n canPreviousPage,\n canNextPage,\n pageCount,\n gotoPage,\n nextPage,\n previousPage,\n setPageSize,\n state: {selectedRowIds, pageIndex, pageSize},\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n } = rest as TableHooksInstanceProps;\n\n const tableRef = useRef(null);\n const tableWrapperRef = useRef(null);\n\n useTableShadow(tableRef, tableWrapperRef);\n\n useEffect(() => {\n if (!initialState?.hiddenColumns) {\n return;\n }\n\n setHiddenColumns(initialState.hiddenColumns);\n }, [initialState?.hiddenColumns]);\n\n useEffect(() => {\n if (hasSelectedRowsAbility) {\n onSelectRowsChange?.(selectedFlatRows?.map((row: StandardRow) => row.original).filter(isEnableRowSelect));\n }\n }, [selectedRowIds]);\n\n let pagination: JSX.Element | null = null;\n\n if (hasDefaultPagination && hasControlledPagination) {\n throw new Error(\n 'You have to pass either hasDefaultPagination true boolean prop or ' +\n 'pass fetchData callback and controlledPagination data',\n );\n }\n\n if (hasControlledPagination || hasDefaultPagination) {\n const paginationData: PaginationProps = {\n setPageSize,\n gotoPage,\n canNextPage,\n canPreviousPage,\n parentElementId,\n labelPerPage,\n pageIndex,\n previousPageHandler: previousPage,\n nextPageHandler: nextPage,\n totalPages: pageCount,\n perPage: pageSize,\n totalItems: totalItems ?? data.length,\n };\n\n if (hasControlledPagination && controlledPagination) {\n paginationData.canNextPage = controlledPagination.pageIndex + 1 !== paginationData.totalPages;\n paginationData.canPreviousPage = controlledPagination.pageIndex !== 0;\n paginationData.pageIndex = controlledPagination.pageIndex;\n paginationData.perPage = controlledPagination.pageSize;\n\n paginationData.setPageSize = (newPageSize: number) => {\n fetchData?.({\n pageIndex: paginationData.pageIndex,\n pageSize: newPageSize,\n });\n };\n\n paginationData.gotoPage = (newPageIndex: number) => {\n fetchData?.({\n pageIndex: newPageIndex,\n pageSize: paginationData.perPage,\n });\n };\n\n paginationData.nextPageHandler = () => {\n const newPageIndex = paginationData.pageIndex + 1;\n paginationData.gotoPage(newPageIndex);\n };\n\n paginationData.previousPageHandler = () => {\n const newPageIndex = paginationData.pageIndex - 1;\n paginationData.gotoPage(newPageIndex);\n };\n\n if (controlledPagination?.paginationAmount) {\n paginationData.paginationAmount = controlledPagination.paginationAmount;\n }\n }\n\n pagination = <PaginationComponent {...paginationData} />;\n }\n\n function extendSortByProps(column: ColumnWithSort) {\n const headerProps = column.getSortByToggleProps && column.getSortByToggleProps();\n\n delete headerProps?.style;\n\n if (hasManualSortBy && column.canSort && headerProps) {\n headerProps.onClick = () => {\n onSortedChange?.(column.id, Boolean(column.isSortedDesc));\n setSortBy([\n {\n id: column.id,\n desc: !column.isSortedDesc,\n },\n ]);\n };\n }\n\n return headerProps;\n }\n\n const tBodyTr = hasControlledPagination || hasDefaultPagination ? page : rows;\n\n return (\n <TableRoot className=\"table-root\">\n <TableLoading isLoading={!showLoadingState && isLoading} className=\"table-loading\">\n <TableLoadingInner>{loadingMessage}</TableLoadingInner>\n </TableLoading>\n <TableWrapper ref={tableWrapperRef} className=\"table-wrapper\">\n <TableContent id={tableContentId} className=\"table-content\">\n <TableCore {..._getTableProps(getTableBodyProps(getTableProps))} ref={tableRef}>\n <THead className=\"table-head\" data-role=\"table-head\">\n {headerGroups.map((headerGroup) => (\n <TR {...headerGroup.getHeaderGroupProps(getTableElementProps(getHeaderGroupProps))}>\n {headerGroup.headers.map((column) => {\n const headerProps = extendSortByProps(column) as DefaultObject;\n\n return (\n <TH\n {...column.getHeaderProps(\n getTableElementInternalProps(headerProps, getHeaderProps, mainCellGetter),\n )}\n >\n {getHeadContent(column)}\n {renderResizer(column)}\n </TH>\n );\n })}\n </TR>\n ))}\n </THead>\n {footerPlacement.includes(FOOTER_PLACEMENT.TOP) && (\n <TFoot className=\"table-footer-top\" data-role=\"table-footer-top\">\n {footerGroups.map((group) => (\n <TR {...group.getFooterGroupProps(getTableElementProps(getFooterGroupProps))}>\n {group.headers.map((column) => (\n <TD {...column.getFooterProps(getTableElementProps(getFooterProps, mainCellGetter))}>\n {column.render('Footer')}\n </TD>\n ))}\n </TR>\n ))}\n </TFoot>\n )}\n <TBody className=\"table-body\" data-role=\"table-body\">\n {tBodyTr.map((row: StandardRow) => {\n prepareRow(row);\n const {isDelimiterTd} = getRowPreProps(row);\n\n if (isDelimiterTd) {\n const cell = row.cells[0].render('Cell') as React.ReactNode;\n\n return (\n <React.Fragment key={`group_${row.index}`}>\n <TRGroup>\n <TR {...row.getRowProps(getTableRowProps(getRowProps))}>\n <TD\n colSpan={visibleColumns.length}\n {...row.cells[0].getCellProps(getTableCellProps(getCellProps, cellGetter))}\n >\n <strong>{cell}</strong>\n </TD>\n </TR>\n </TRGroup>\n {row?.isExpanded && rowSubComponent && rowSubComponent(row)}\n </React.Fragment>\n );\n }\n\n return (\n <React.Fragment key={`group_${row.index}`}>\n <TRGroup>\n <TR {...row.getRowProps(getTableRowProps(getRowProps))}>\n {row.cells.map((cell: StandardCell) => (\n <TD {...cell.getCellProps(getTableCellProps(getCellProps, cellGetter))}>\n {cell.render('Cell')}\n </TD>\n ))}\n </TR>\n </TRGroup>\n {row?.isExpanded && rowSubComponent && rowSubComponent(row)}\n </React.Fragment>\n );\n })}\n </TBody>\n {footerPlacement.includes(FOOTER_PLACEMENT.BOTTOM) && (\n <TFoot className=\"table-footer-bottom\" data-role=\"table-footer-bottom\">\n {footerGroups.map((group) => (\n <TR {...group.getFooterGroupProps(getTableElementProps(getFooterGroupProps))}>\n {group.headers.map((column) => (\n <TD {...column.getFooterProps(getTableElementProps(getFooterProps, mainCellGetter))}>\n {column.render('Footer')}\n </TD>\n ))}\n </TR>\n ))}\n </TFoot>\n )}\n </TableCore>\n </TableContent>\n </TableWrapper>\n {!isLoading && !data.length && noDataMessage}\n {pagination}\n </TableRoot>\n );\n};\n\nTable.defaultProps = defaultProps;\n\nexport {Table};\n"],"names":["useLoadingState","showLoadingState","loading","pageSize","columns","LoadingCellComponent","loadingColumns","useMemo","map","column","loadingColumn","_extends","Cell","React","loadingData","length","dataObject","dataArray","i","push","TABLE_SHADOW_CLASS_NAME","LEFT","RIGHT","changeClassName","tableWrapperNode","newClassNameList","classList","remove","add","apply","calculateNewClassNames","tableNode","tableRect","getBoundingClientRect","tableWrapperRect","newClassName","tableRectLeft","Math","floor","left","tableRectRight","right","tableWrapperRectLeft","tableWrapperRectRight","tableRef","tableWrapperRef","useEffect","ticking","onMousewheel","window","requestAnimationFrame","current","_tableRef$current","addEventListener","_tableRef$current2","removeEventListener","FOOTER_PLACEMENT","defaultGetter","props","cellGetter","_ref","_cell$column","cell","align","mainCellGetter","_ref2","getTableProps","userGetter","getter","getTableElementProps","meta","getTableRowProps","getTableCellProps","getTableElementInternalProps","internalProps","loadingAnimation","keyframes","_templateObject","_taggedTemplateLiteralLoose","TableLoading","styled","div","_templateObject2","isLoading","css","_templateObject3","TableLoadingInner","_templateObject4","TableWrapper","_templateObject5","TableRoot","_templateObject6","fontNormal","TableContent","_templateObject7","TableCore","_templateObject8","HeadCell","_templateObject9","TD","_templateObject0","_templateObject1","EmptyStateCell","_templateObject10","spacing","gray95","white","TH","_templateObject11","THead","_templateObject12","black","TRGroup","_templateObject13","TR","_templateObject14","TBody","_templateObject15","gray80","TFoot","_templateObject16","TResizer","_templateObject17","_TableRoot","_TableWrapper","_TableContent","_HeadCell","_TableLoading","_TableLoadingInner","_TD","_TableCore","_THead","_TR","_TH","_TBody","_TRGroup","_TFoot","_EmptyStateCell","_TResizer","isEnableRowSelectDefault","selectColumnPropsDefault","getRowPrePropsDefault","defaultProps","hasDefaultPagination","footerPlacement","loadingMessage","labelPerPage","parentElementId","tableContentId","initialState","getRowPreProps","isEnableRowSelect","selectColumnProps","noDataMessage","disableSortRemove","disableMultiSort","disabledMultiRemove","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","isFunction","reference","renderResizer","isResizable","getResizerProps","onClick","e","preventDefault","stopPropagation","getHeadContent","isSorted","isSortedDesc","render","ArrowUp","size","Size","Small","color","Color","GrayDark","ArrowDown","Table","data","totalItems","fetchData","controlledPagination","onSortedChange","onSelectRowsChange","PaginationComponent","getHeaderGroupProps","getHeaderProps","getRowProps","getCellProps","getFooterProps","getFooterGroupProps","rowSubComponent","memoColumns","_useLoadingState","_controlledPagination","showLoading","hasSelectedRowsAbility","hasManualSortBy","hasControlledPagination","Object","keys","options","manualSortBy","_controlledPagination2","_controlledPagination3","pageCount","Error","pageIndex","autoResetPage","manualPagination","useSelect","hooks","newColumn","id","disableSortBy","Header","instance","getToggleAllPageRowsSelectedProps","toggleAllPageRowsSelected","page","isDisabledAllRows","original","filter","Checkbox","elementId","onChange","isChecked","checked","isDisabled","row","toggleRowSelected","getToggleRowSelectedProps","Number","isInteger","isEnabled","visibleColumns","tableColumns","concat","_useTable","useTable","useFlexLayout","useSortBy","useExpanded","usePagination","useRowSelect","useResizeColumns","_getTableProps","headerGroups","footerGroups","setHiddenColumns","rows","prepareRow","rest","_objectWithoutPropertiesLoose","_excluded","selectedFlatRows","setSortBy","canPreviousPage","canNextPage","gotoPage","nextPage","previousPage","setPageSize","_rest$state","state","selectedRowIds","useRef","useTableShadow","hiddenColumns","pagination","paginationData","previousPageHandler","nextPageHandler","totalPages","perPage","newPageSize","newPageIndex","paginationAmount","extendSortByProps","headerProps","getSortByToggleProps","style","canSort","Boolean","desc","tBodyTr","className","ref","getTableBodyProps","headerGroup","headers","includes","TOP","group","_getRowPreProps","isDelimiterTd","cells","Fragment","key","index","colSpan","isExpanded","BOTTOM"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var n,t=require("react"),o=e(t),a=require("react-table"),r=require("@propellerads/icon"),i=e(require("@propellerads/input-checkbox")),l=require("styled-components"),s=e(l),u=require("@propellerads/stylevariables");function c(){return(c=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var o in t)({}).hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e}).apply(null,arguments)}function d(e,n){return n||(n=e.slice(0)),e.raw=n,e}function g(e,n){if(e&&n){var t=e.getBoundingClientRect(),o=n.getBoundingClientRect(),a=[],r=Math.floor(t.left),i=Math.floor(t.right),l=Math.floor(o.left),s=Math.floor(o.right);r<l&&a.push("shadow_left"),i>s&&a.push("shadow_right"),function(e,n){var t=e.classList;t.remove("shadow_left","shadow_right"),t.add.apply(t,n)}(n,a)}}!function(e){e.TOP="top",e.BOTTOM="bottom"}(n||(n={}));var p,f,m,b,h,v,P,x,w,E,y,S,C,R,O,I,k,z,D,L=function(e){return e},j=function(e,n){var t,o=n.cell;return c({},e,{align:null==o||null===(t=o.column)||void 0===t?void 0:t.align})},M=function(e,n){var t=n.column;return c({},e,{align:null==t?void 0:t.align})},T=function(e,n){return void 0===n&&(n=L),e?function(t,o){return c({},n(t,o),e(t,o))}:n},A=function(e,n){return void 0===n&&(n=L),e?function(t,o){return c({},n(t,o),e(t,o))}:n},H=function(e,n){return void 0===n&&(n=L),e?function(t,o){return c({},n(t,o),e(t,o))}:n},F=l.keyframes(p||(p=d(["\n from {\n background-position-x: 0;\n }\n 50% {\n background-position-x: 100%;\n }\n 100% {\n background-position-x: 0;\n }\n"]))),N=s.div(f||(f=d(["\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.8);\n transition: all 0.3s ease;\n z-index: -1;\n opacity: 0;\n pointer-events: none;\n\n ","\n"])),(function(e){return e.isLoading&&l.css(m||(m=d(["\n opacity: 1;\n z-index: 2;\n pointer-events: all;\n "])))})),_=s.div(b||(b=d(["\n position: absolute;\n display: block;\n text-align: center;\n width: 100%;\n top: 50%;\n left: 0;\n color: rgba(0, 0, 0, 0.6);\n transform: translateY(-52%);\n transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);\n"]))),B=s.div(h||(h=d(["\n position: relative;\n overflow: hidden;\n\n &::before {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n position: absolute;\n width: 10px;\n height: 100%;\n top: 0;\n left: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &::after {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n width: 10px;\n height: 100%;\n position: absolute;\n top: 0;\n right: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &.shadow_left {\n &::before {\n opacity: 1 !important;\n }\n }\n\n &.shadow_right {\n &::after {\n opacity: 1 !important;\n }\n }\n"]))),G=s.div(v||(v=d(["\n font-size: ","px;\n position: relative;\n display: flex;\n flex-direction: column;\n border: 0;\n"])),u.fontNormal),q=s.div(P||(P=d(["\n display: block;\n max-width: 100%;\n overflow-x: scroll;\n overflow-y: hidden;\n"]))),Y=s.div(x||(x=d(["\n flex: auto 1;\n display: flex;\n flex-direction: column;\n align-items: stretch;\n border-collapse: collapse;\n"]))),K=s.div(w||(w=d(["\n display: inline-flex;\n"]))),Z=s.div(E||(E=d(["\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: 1.3rem;\n padding: 7px 4px;\n overflow: hidden;\n transition: width 0.3s ease 0s, min-width, padding, opacity;\n\n ","\n"])),(function(e){var n=e.align;return n&&l.css(y||(y=d(["\n text-align: ",";\n "])),n)})),U=s.div(S||(S=d(["\n width: 100%;\n height: ","px;\n background: linear-gradient(to left, ",", ",", ",");\n background-size: 200% 200%;\n animation: "," 1.6s linear infinite;\n"])),4*u.spacing,u.gray95,u.white,u.gray95,F),J=s.div(C||(C=d(["\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;\n color: rgb(0, 0, 0);\n font-weight: 500;\n outline: none;\n"]))),Q=s.div(R||(R=d(["\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n user-select: none;\n\n ",", "," {\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);\n color: ",";\n font-weight: 500;\n outline: none;\n }\n"])),J,Z,u.black),V=s.div(O||(O=d(["\n display: flex;\n flex: 1 0 auto;\n box-shadow: inset 0 -1px 0 0 ",";\n min-width: 100%;\n width: max-content;\n"])),u.gray95),W=s.div(I||(I=d(["\n padding: 0;\n -webkit-box-align: center;\n align-items: center;\n"]))),X=s.div(k||(k=d(["\n border-top: 1px solid ",";\n margin-top: ","px;\n min-width: 100%;\n width: max-content;\n"])),u.gray80,2*u.spacing),$=s.div(z||(z=d(["\n background: ",";\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n"])),u.gray95),ee=s.div(D||(D=d(["\n display: inline-block;\n position: absolute;\n right: 5px;\n top: 0;\n z-index: 1;\n touch-action: none;\n\n &:after {\n content: '↔';\n position: absolute;\n right: 0;\n top: 0;\n }\n"]))),ne=["getTableProps","headerGroups","footerGroups","setHiddenColumns","rows","prepareRow","visibleColumns"],te=G,oe=B,ae=q,re=K,ie=N,le=_,se=Z,ue=Y,ce=Q,de=W,ge=J,pe=X,fe=V,me=$,be=ee,he={hasDefaultPagination:!1,isLoading:!1,footerPlacement:[],loadingMessage:"loading...",labelPerPage:"Show rows",parentElementId:"parent-element",tableContentId:"",showLoadingState:!1,initialState:{},LoadingCellComponent:U,getRowPreProps:function(){return{}},isEnableRowSelect:function(){return!0},selectColumnProps:{},noDataMessage:""};function ve(e){return"function"==typeof e}var Pe=function(e){var l,s=e.columns,u=e.data,d=e.totalItems,p=e.fetchData,f=e.controlledPagination,m=e.initialState,b=e.isLoading,h=e.loadingMessage,v=e.labelPerPage,P=e.footerPlacement,x=e.onSortedChange,w=e.hasDefaultPagination,E=e.onSelectRowsChange,y=e.parentElementId,S=e.tableContentId,C=e.LoadingCellComponent,R=e.PaginationComponent,O=e.getRowPreProps,I=e.getTableProps,k=e.getHeaderGroupProps,z=e.getHeaderProps,D=e.getRowProps,F=e.getCellProps,N=e.getFooterProps,_=e.getFooterGroupProps,B=e.showLoadingState,G=e.noDataMessage,q=e.rowSubComponent,Y=e.isEnableRowSelect,K=e.selectColumnProps,Z=t.useMemo((function(){return s}),[s]),U=function(e,n,a,r,i){return{loadingColumns:t.useMemo((function(){return e&&n?r.map((function(e){return c({},e,{Cell:function(){return o.createElement(i,null)}})})):[]}),[r,n,e]),loadingData:t.useMemo((function(){if(e&&n&&r&&r.length>0){for(var t={},o=[],i=0;i<r.length;i+=1)t["empty_"+i]="";for(var l=0;l<a;l+=1)o.push(t);return o}return[]}),[r,n,a,e])}}(B,b,null!==(l=null==f?void 0:f.pageSize)&&void 0!==l?l:10,Z,C),J=U.loadingColumns,Q=U.loadingData,V=B&&b,W=E&&ve(E),X=x&&ve(x),$=p&&f&&Object.keys(f).length>0,ee={columns:V?J:Z,data:V?Q:u,initialState:m,disableSortRemove:!0,disableMultiSort:!0,disabledMultiRemove:!0};if(X&&(ee.manualSortBy=!0),$){var he,Pe;if(void 0===(null==f?void 0:f.pageCount))throw new Error("You have to pass pageCount in controlledPagination data");ee.initialState=c({},ee.initialState,{pageIndex:null!==(he=f.pageIndex)&&void 0!==he?he:0,pageSize:null!==(Pe=f.pageSize)&&void 0!==Pe?Pe:10}),ee.autoResetPage=!0,ee.manualPagination=!0,ee.pageCount=f.pageCount}var xe=a.useTable(ee,a.useFlexLayout,a.useSortBy,a.useExpanded,a.usePagination,a.useRowSelect,(function(e){if(W){var n=c({id:"selection",disableSortBy:!0,Header:function(e){var n=e.getToggleAllPageRowsSelectedProps,t=e.toggleAllPageRowsSelected,a=0===e.page.map((function(e){return e.original})).filter(Y).length;return o.createElement(i,{elementId:"all",onChange:t,isChecked:n().checked,isDisabled:a})},Cell:function(e){var n=e.row,t=n.id,a=n.original,r=n.toggleRowSelected,l=n.getToggleRowSelectedProps,s=Number.isInteger(a.id)?a.id:t,u=Y(n.original);return o.createElement(i,{elementId:s,onChange:r,isDisabled:!u,isChecked:u&&l().checked})}},K);e.visibleColumns.push((function(e){return[n].concat(e)}))}}),a.useResizeColumns),we=xe.getTableProps,Ee=xe.headerGroups,ye=xe.footerGroups,Se=xe.setHiddenColumns,Ce=xe.rows,Re=xe.prepareRow,Oe=xe.visibleColumns,Ie=function(e,n){if(null==e)return{};var t={};for(var o in e)if({}.hasOwnProperty.call(e,o)){if(-1!==n.indexOf(o))continue;t[o]=e[o]}return t}(xe,ne),ke=Ie.selectedFlatRows,ze=Ie.setSortBy,De=Ie.page,Le=Ie.canPreviousPage,je=Ie.canNextPage,Me=Ie.pageCount,Te=Ie.gotoPage,Ae=Ie.nextPage,He=Ie.previousPage,Fe=Ie.setPageSize,Ne=Ie.state,_e=Ne.selectedRowIds,Be=Ne.pageIndex,Ge=Ne.pageSize,qe=t.useRef(null),Ye=t.useRef(null);!function(e,n){t.useEffect((function(){var t,o=!1;function a(){o||(window.requestAnimationFrame((function(){g(e.current,n.current),o=!1})),o=!0)}return g(e.current,n.current),null==e||null===(t=e.current)||void 0===t||t.addEventListener("mousewheel",a),window.addEventListener("resize",a),function(){var n;null==e||null===(n=e.current)||void 0===n||n.removeEventListener("mousewheel",a),window.removeEventListener("resize",a)}}),[e.current,n.current])}(qe,Ye),t.useEffect((function(){null!=m&&m.hiddenColumns&&Se(m.hiddenColumns)}),[null==m?void 0:m.hiddenColumns]),t.useEffect((function(){W&&(null==E||E(null==ke?void 0:ke.map((function(e){return e.original})).filter(Y)))}),[_e]);var Ke=null;if(w&&$)throw new Error("You have to pass either hasDefaultPagination true boolean prop or pass fetchData callback and controlledPagination data");if($||w){var Ze={setPageSize:Fe,gotoPage:Te,canNextPage:je,canPreviousPage:Le,parentElementId:y,labelPerPage:v,pageIndex:Be,previousPageHandler:He,nextPageHandler:Ae,totalPages:Me,perPage:Ge,totalItems:null!=d?d:u.length};$&&f&&(Ze.canNextPage=f.pageIndex+1!==Ze.totalPages,Ze.canPreviousPage=0!==f.pageIndex,Ze.pageIndex=f.pageIndex,Ze.perPage=f.pageSize,Ze.setPageSize=function(e){null==p||p({pageIndex:Ze.pageIndex,pageSize:e})},Ze.gotoPage=function(e){null==p||p({pageIndex:e,pageSize:Ze.perPage})},Ze.nextPageHandler=function(){Ze.gotoPage(Ze.pageIndex+1)},Ze.previousPageHandler=function(){Ze.gotoPage(Ze.pageIndex-1)},null!=f&&f.paginationAmount&&(Ze.paginationAmount=f.paginationAmount)),Ke=o.createElement(R,Object.assign({},Ze))}var Ue,Je,Qe=$||w?De:Ce;return o.createElement(te,{className:"table-root"},o.createElement(ie,{isLoading:!B&&b,className:"table-loading"},o.createElement(le,null,h)),o.createElement(oe,{ref:Ye,className:"table-wrapper"},o.createElement(ae,{id:S,className:"table-content"},o.createElement(ue,Object.assign({},we((void 0===Je&&(Je=L),(Ue=I)?function(e){return c({},Je(e),Ue(e))}:Je)),{ref:qe}),o.createElement(ce,{className:"table-head","data-role":"table-head"},Ee.map((function(e){return o.createElement(de,Object.assign({},e.getHeaderGroupProps(T(k))),e.headers.map((function(e){var n=function(e){var n=e.getSortByToggleProps&&e.getSortByToggleProps();return null==n||delete n.style,X&&e.canSort&&n&&(n.onClick=function(){null==x||x(e.id,Boolean(e.isSortedDesc)),ze([{id:e.id,desc:!e.isSortedDesc}])}),n}(e);return o.createElement(ge,Object.assign({},e.getHeaderProps(function(e,n,t){return void 0===t&&(t=L),n?function(o,a){return c({},t(c({},o,e),a),n(o,a))}:function(n,o){return t(c({},n,e),o)}}(n,z,M))),function(e){return e.isSorted&&e.isSortedDesc?o.createElement(re,null,e.render("Header"),o.createElement(r.ArrowDown,{size:r.SIZE.SMALL,color:r.COLOR.GRAY_DARK})):e.isSorted&&!e.isSortedDesc?o.createElement(re,null,e.render("Header"),o.createElement(r.ArrowUp,{size:r.SIZE.SMALL,color:r.COLOR.GRAY_DARK})):e.render("Header")}(e),function(e){return e.isResizable?o.createElement(be,Object.assign({},e.getResizerProps(),{onClick:function(e){e.preventDefault(),e.stopPropagation()}})):null}(e))})))}))),P.includes(n.TOP)&&o.createElement(me,{className:"table-footer-top","data-role":"table-footer-top"},ye.map((function(e){return o.createElement(de,Object.assign({},e.getFooterGroupProps(T(_))),e.headers.map((function(e){return o.createElement(se,Object.assign({},e.getFooterProps(T(N,M))),e.render("Footer"))})))}))),o.createElement(pe,{className:"table-body","data-role":"table-body"},Qe.map((function(e){if(Re(e),O(e).isDelimiterTd){var n=e.cells[0].render("Cell");return o.createElement(o.Fragment,{key:"group_"+e.index},o.createElement(fe,null,o.createElement(de,Object.assign({},e.getRowProps(A(D))),o.createElement(se,Object.assign({colSpan:Oe.length},e.cells[0].getCellProps(H(F,j))),o.createElement("strong",null,n)))),(null==e?void 0:e.isExpanded)&&q&&q(e))}return o.createElement(o.Fragment,{key:"group_"+e.index},o.createElement(fe,null,o.createElement(de,Object.assign({},e.getRowProps(A(D))),e.cells.map((function(e){return o.createElement(se,Object.assign({},e.getCellProps(H(F,j))),e.render("Cell"))})))),(null==e?void 0:e.isExpanded)&&q&&q(e))}))),P.includes(n.BOTTOM)&&o.createElement(me,{className:"table-footer-bottom","data-role":"table-footer-bottom"},ye.map((function(e){return o.createElement(de,Object.assign({},e.getFooterGroupProps(T(_))),e.headers.map((function(e){return o.createElement(se,Object.assign({},e.getFooterProps(T(N,M))),e.render("Footer"))})))})))))),!b&&!u.length&&G,Ke)};Pe.defaultProps=he,exports.Table=Pe,exports.defaultProps=he;
1
+ "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var n,t=require("react"),o=e(t),a=require("react-table"),r=require("@propellerads/icon"),i=e(require("@propellerads/input-checkbox")),l=require("styled-components"),s=e(l),u=require("@propellerads/stylevariables");function c(){return(c=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var o in t)({}).hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e}).apply(null,arguments)}function d(e,n){return n||(n=e.slice(0)),e.raw=n,e}function g(e,n){if(e&&n){var t=e.getBoundingClientRect(),o=n.getBoundingClientRect(),a=[],r=Math.floor(t.left),i=Math.floor(t.right),l=Math.floor(o.left),s=Math.floor(o.right);r<l&&a.push("shadow_left"),i>s&&a.push("shadow_right"),function(e,n){var t=e.classList;t.remove("shadow_left","shadow_right"),t.add.apply(t,n)}(n,a)}}!function(e){e.TOP="top",e.BOTTOM="bottom"}(n||(n={}));var p,f,m,b,h,v,P,x,w,y,E,S,C,k,z,R,O,I,D,j=function(e){return e},M=function(e,n){var t,o=n.cell;return c({},e,{align:null==o||null===(t=o.column)||void 0===t?void 0:t.align})},T=function(e,n){var t=n.column;return c({},e,{align:null==t?void 0:t.align})},H=function(e,n){return void 0===n&&(n=j),e?function(t,o){return c({},n(t,o),e(t,o))}:n},L=function(e,n){return void 0===n&&(n=j),e?function(t,o){return c({},n(t,o),e(t,o))}:n},F=function(e,n){return void 0===n&&(n=j),e?function(t,o){return c({},n(t,o),e(t,o))}:n},N=l.keyframes(p||(p=d(["\n from {\n background-position-x: 0;\n }\n 50% {\n background-position-x: 100%;\n }\n 100% {\n background-position-x: 0;\n }\n"]))),B=s.div(f||(f=d(["\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.8);\n transition: all 0.3s ease;\n z-index: -1;\n opacity: 0;\n pointer-events: none;\n\n ","\n"])),(function(e){return e.isLoading&&l.css(m||(m=d(["\n opacity: 1;\n z-index: 2;\n pointer-events: all;\n "])))})),G=s.div(b||(b=d(["\n position: absolute;\n display: block;\n text-align: center;\n width: 100%;\n top: 50%;\n left: 0;\n color: rgba(0, 0, 0, 0.6);\n transform: translateY(-52%);\n transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);\n"]))),_=s.div(h||(h=d(["\n position: relative;\n overflow: hidden;\n\n &::before {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n position: absolute;\n width: 10px;\n height: 100%;\n top: 0;\n left: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &::after {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n width: 10px;\n height: 100%;\n position: absolute;\n top: 0;\n right: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &.shadow_left {\n &::before {\n opacity: 1 !important;\n }\n }\n\n &.shadow_right {\n &::after {\n opacity: 1 !important;\n }\n }\n"]))),A=s.div(v||(v=d(["\n font-size: ","px;\n position: relative;\n display: flex;\n flex-direction: column;\n border: 0;\n"])),u.fontNormal),q=s.div(P||(P=d(["\n display: block;\n max-width: 100%;\n overflow-x: scroll;\n overflow-y: hidden;\n"]))),Y=s.div(x||(x=d(["\n flex: auto 1;\n display: flex;\n flex-direction: column;\n align-items: stretch;\n border-collapse: collapse;\n"]))),U=s.div(w||(w=d(["\n display: inline-flex;\n"]))),J=s.div(y||(y=d(["\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: 1.3rem;\n padding: 7px 4px;\n overflow: hidden;\n transition: width 0.3s ease 0s, min-width, padding, opacity;\n\n ","\n"])),(function(e){var n=e.align;return n&&l.css(E||(E=d(["\n text-align: ",";\n "])),n)})),K=s.div(S||(S=d(["\n width: 100%;\n height: ","px;\n background: linear-gradient(to left, ",", ",", ",");\n background-size: 200% 200%;\n animation: "," 1.6s linear infinite;\n"])),4*u.spacing,u.gray95,u.white,u.gray95,N),Q=s.div(C||(C=d(["\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;\n color: rgb(0, 0, 0);\n font-weight: 500;\n outline: none;\n"]))),V=s.div(k||(k=d(["\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n user-select: none;\n\n ",", "," {\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);\n color: ",";\n font-weight: 500;\n outline: none;\n }\n"])),Q,J,u.black),W=s.div(z||(z=d(["\n display: flex;\n flex: 1 0 auto;\n box-shadow: inset 0 -1px 0 0 ",";\n min-width: 100%;\n width: max-content;\n"])),u.gray95),X=s.div(R||(R=d(["\n padding: 0;\n -webkit-box-align: center;\n align-items: center;\n"]))),Z=s.div(O||(O=d(["\n border-top: 1px solid ",";\n margin-top: ","px;\n min-width: 100%;\n width: max-content;\n"])),u.gray80,2*u.spacing),$=s.div(I||(I=d(["\n background: ",";\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n"])),u.gray95),ee=s.div(D||(D=d(["\n display: inline-block;\n position: absolute;\n right: 5px;\n top: 0;\n z-index: 1;\n touch-action: none;\n\n &:after {\n content: '↔';\n position: absolute;\n right: 0;\n top: 0;\n }\n"]))),ne=["getTableProps","headerGroups","footerGroups","setHiddenColumns","rows","prepareRow","visibleColumns"],te=A,oe=_,ae=q,re=U,ie=B,le=G,se=J,ue=Y,ce=V,de=X,ge=Q,pe=Z,fe=W,me=$,be=ee,he={hasDefaultPagination:!1,isLoading:!1,footerPlacement:[],loadingMessage:"loading...",labelPerPage:"Show rows",parentElementId:"parent-element",tableContentId:"",showLoadingState:!1,initialState:{},LoadingCellComponent:K,getRowPreProps:function(){return{}},isEnableRowSelect:function(){return!0},selectColumnProps:{},noDataMessage:""};function ve(e){return"function"==typeof e}var Pe=function(e){var l,s=e.columns,u=e.data,d=e.totalItems,p=e.fetchData,f=e.controlledPagination,m=e.initialState,b=e.isLoading,h=e.loadingMessage,v=e.labelPerPage,P=e.footerPlacement,x=e.onSortedChange,w=e.hasDefaultPagination,y=e.onSelectRowsChange,E=e.parentElementId,S=e.tableContentId,C=e.LoadingCellComponent,k=e.PaginationComponent,z=e.getRowPreProps,R=e.getTableProps,O=e.getHeaderGroupProps,I=e.getHeaderProps,D=e.getRowProps,N=e.getCellProps,B=e.getFooterProps,G=e.getFooterGroupProps,_=e.showLoadingState,A=e.noDataMessage,q=e.rowSubComponent,Y=e.isEnableRowSelect,U=e.selectColumnProps,J=t.useMemo((function(){return s}),[s]),K=function(e,n,a,r,i){return{loadingColumns:t.useMemo((function(){return e&&n?r.map((function(e){return c({},e,{Cell:function(){return o.createElement(i,null)}})})):[]}),[r,n,e]),loadingData:t.useMemo((function(){if(e&&n&&r&&r.length>0){for(var t={},o=[],i=0;i<r.length;i+=1)t["empty_"+i]="";for(var l=0;l<a;l+=1)o.push(t);return o}return[]}),[r,n,a,e])}}(_,b,null!==(l=null==f?void 0:f.pageSize)&&void 0!==l?l:10,J,C),Q=K.loadingColumns,V=K.loadingData,W=_&&b,X=y&&ve(y),Z=x&&ve(x),$=p&&f&&Object.keys(f).length>0,ee={columns:W?Q:J,data:W?V:u,initialState:m,disableSortRemove:!0,disableMultiSort:!0,disabledMultiRemove:!0};if(Z&&(ee.manualSortBy=!0),$){var he,Pe;if(void 0===(null==f?void 0:f.pageCount))throw new Error("You have to pass pageCount in controlledPagination data");ee.initialState=c({},ee.initialState,{pageIndex:null!==(he=f.pageIndex)&&void 0!==he?he:0,pageSize:null!==(Pe=f.pageSize)&&void 0!==Pe?Pe:10}),ee.autoResetPage=!0,ee.manualPagination=!0,ee.pageCount=f.pageCount}var xe=a.useTable(ee,a.useFlexLayout,a.useSortBy,a.useExpanded,a.usePagination,a.useRowSelect,(function(e){if(X){var n=c({id:"selection",disableSortBy:!0,Header:function(e){var n=e.getToggleAllPageRowsSelectedProps,t=e.toggleAllPageRowsSelected,a=0===e.page.map((function(e){return e.original})).filter(Y).length;return o.createElement(i,{elementId:"all",onChange:t,isChecked:n().checked,isDisabled:a})},Cell:function(e){var n=e.row,t=n.id,a=n.original,r=n.toggleRowSelected,l=n.getToggleRowSelectedProps,s=Number.isInteger(a.id)?a.id:t,u=Y(n.original);return o.createElement(i,{elementId:s,onChange:r,isDisabled:!u,isChecked:u&&l().checked})}},U);e.visibleColumns.push((function(e){return[n].concat(e)}))}}),a.useResizeColumns),we=xe.getTableProps,ye=xe.headerGroups,Ee=xe.footerGroups,Se=xe.setHiddenColumns,Ce=xe.rows,ke=xe.prepareRow,ze=xe.visibleColumns,Re=function(e,n){if(null==e)return{};var t={};for(var o in e)if({}.hasOwnProperty.call(e,o)){if(-1!==n.indexOf(o))continue;t[o]=e[o]}return t}(xe,ne),Oe=Re.selectedFlatRows,Ie=Re.setSortBy,De=Re.page,je=Re.canPreviousPage,Me=Re.canNextPage,Te=Re.pageCount,He=Re.gotoPage,Le=Re.nextPage,Fe=Re.previousPage,Ne=Re.setPageSize,Be=Re.state,Ge=Be.selectedRowIds,_e=Be.pageIndex,Ae=Be.pageSize,qe=t.useRef(null),Ye=t.useRef(null);!function(e,n){t.useEffect((function(){var t,o=!1;function a(){o||(window.requestAnimationFrame((function(){g(e.current,n.current),o=!1})),o=!0)}return g(e.current,n.current),null==e||null===(t=e.current)||void 0===t||t.addEventListener("mousewheel",a),window.addEventListener("resize",a),function(){var n;null==e||null===(n=e.current)||void 0===n||n.removeEventListener("mousewheel",a),window.removeEventListener("resize",a)}}),[e.current,n.current])}(qe,Ye),t.useEffect((function(){null!=m&&m.hiddenColumns&&Se(m.hiddenColumns)}),[null==m?void 0:m.hiddenColumns]),t.useEffect((function(){X&&(null==y||y(null==Oe?void 0:Oe.map((function(e){return e.original})).filter(Y)))}),[Ge]);var Ue=null;if(w&&$)throw new Error("You have to pass either hasDefaultPagination true boolean prop or pass fetchData callback and controlledPagination data");if($||w){var Je={setPageSize:Ne,gotoPage:He,canNextPage:Me,canPreviousPage:je,parentElementId:E,labelPerPage:v,pageIndex:_e,previousPageHandler:Fe,nextPageHandler:Le,totalPages:Te,perPage:Ae,totalItems:null!=d?d:u.length};$&&f&&(Je.canNextPage=f.pageIndex+1!==Je.totalPages,Je.canPreviousPage=0!==f.pageIndex,Je.pageIndex=f.pageIndex,Je.perPage=f.pageSize,Je.setPageSize=function(e){null==p||p({pageIndex:Je.pageIndex,pageSize:e})},Je.gotoPage=function(e){null==p||p({pageIndex:e,pageSize:Je.perPage})},Je.nextPageHandler=function(){Je.gotoPage(Je.pageIndex+1)},Je.previousPageHandler=function(){Je.gotoPage(Je.pageIndex-1)},null!=f&&f.paginationAmount&&(Je.paginationAmount=f.paginationAmount)),Ue=o.createElement(k,Object.assign({},Je))}var Ke,Qe,Ve=$||w?De:Ce;return o.createElement(te,{className:"table-root"},o.createElement(ie,{isLoading:!_&&b,className:"table-loading"},o.createElement(le,null,h)),o.createElement(oe,{ref:Ye,className:"table-wrapper"},o.createElement(ae,{id:S,className:"table-content"},o.createElement(ue,Object.assign({},we((void 0===Qe&&(Qe=j),(Ke=R)?function(e){return c({},Qe(e),Ke(e))}:Qe)),{ref:qe}),o.createElement(ce,{className:"table-head","data-role":"table-head"},ye.map((function(e){return o.createElement(de,Object.assign({},e.getHeaderGroupProps(H(O))),e.headers.map((function(e){var n=function(e){var n=e.getSortByToggleProps&&e.getSortByToggleProps();return null==n||delete n.style,Z&&e.canSort&&n&&(n.onClick=function(){null==x||x(e.id,Boolean(e.isSortedDesc)),Ie([{id:e.id,desc:!e.isSortedDesc}])}),n}(e);return o.createElement(ge,Object.assign({},e.getHeaderProps(function(e,n,t){return void 0===t&&(t=j),n?function(o,a){return c({},t(c({},o,e),a),n(o,a))}:function(n,o){return t(c({},n,e),o)}}(n,I,T))),function(e){return e.isSorted&&e.isSortedDesc?o.createElement(re,null,e.render("Header"),o.createElement(r.ArrowUp,{size:r.Size.Small,color:r.Color.GrayDark})):e.isSorted&&!e.isSortedDesc?o.createElement(re,null,e.render("Header"),o.createElement(r.ArrowDown,{size:r.Size.Small,color:r.Color.GrayDark})):e.render("Header")}(e),function(e){return e.isResizable?o.createElement(be,Object.assign({},e.getResizerProps(),{onClick:function(e){e.preventDefault(),e.stopPropagation()}})):null}(e))})))}))),P.includes(n.TOP)&&o.createElement(me,{className:"table-footer-top","data-role":"table-footer-top"},Ee.map((function(e){return o.createElement(de,Object.assign({},e.getFooterGroupProps(H(G))),e.headers.map((function(e){return o.createElement(se,Object.assign({},e.getFooterProps(H(B,T))),e.render("Footer"))})))}))),o.createElement(pe,{className:"table-body","data-role":"table-body"},Ve.map((function(e){if(ke(e),z(e).isDelimiterTd){var n=e.cells[0].render("Cell");return o.createElement(o.Fragment,{key:"group_"+e.index},o.createElement(fe,null,o.createElement(de,Object.assign({},e.getRowProps(L(D))),o.createElement(se,Object.assign({colSpan:ze.length},e.cells[0].getCellProps(F(N,M))),o.createElement("strong",null,n)))),(null==e?void 0:e.isExpanded)&&q&&q(e))}return o.createElement(o.Fragment,{key:"group_"+e.index},o.createElement(fe,null,o.createElement(de,Object.assign({},e.getRowProps(L(D))),e.cells.map((function(e){return o.createElement(se,Object.assign({},e.getCellProps(F(N,M))),e.render("Cell"))})))),(null==e?void 0:e.isExpanded)&&q&&q(e))}))),P.includes(n.BOTTOM)&&o.createElement(me,{className:"table-footer-bottom","data-role":"table-footer-bottom"},Ee.map((function(e){return o.createElement(de,Object.assign({},e.getFooterGroupProps(H(G))),e.headers.map((function(e){return o.createElement(se,Object.assign({},e.getFooterProps(H(B,T))),e.render("Footer"))})))})))))),!b&&!u.length&&A,Ue)};Pe.defaultProps=he,exports.Table=Pe,exports.defaultProps=he;
2
2
  //# sourceMappingURL=table.cjs.production.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table.cjs.production.min.js","sources":["../src/types.tsx","../src/useTableShadow.tsx","../src/propsGetter.tsx","../src/style.tsx","../src/index.tsx","../src/useLoadingState.tsx"],"sourcesContent":["import React, {FunctionComponent, ReactElement, ReactNode} from 'react';\nimport {\n Cell,\n CellPropGetter,\n Column,\n FooterGroupPropGetter,\n FooterPropGetter,\n HeaderGroup,\n HeaderGroupPropGetter,\n Hooks,\n Meta,\n Row,\n RowPropGetter,\n TableBodyPropGetter,\n TablePropGetter,\n TableState,\n UsePaginationInstanceProps,\n UsePaginationOptions,\n UsePaginationState,\n UseRowSelectInstanceProps,\n UseRowSelectState,\n UseSortByColumnProps,\n UseRowSelectRowProps,\n UseSortByInstanceProps,\n UseSortByOptions,\n UseTableOptions,\n HeaderPropGetter,\n} from 'react-table';\n\nexport type DefaultObject = Record<string, string | number | unknown>;\n\nexport type LoadingState = {\n loadingColumns?: Column[];\n loadingData: any[];\n};\n\nexport enum FOOTER_PLACEMENT {\n TOP = 'top',\n BOTTOM = 'bottom',\n}\n\nexport type PaginationProps = {\n paginationAmount?: string | ReactNode | ReactElement;\n parentElementId: string;\n labelPerPage?: string;\n pageSizes?: Array<string | number>;\n pageIndex: number;\n perPage: number;\n totalPages: number;\n totalItems: number;\n canNextPage: boolean;\n canPreviousPage: boolean;\n nextPageHandler: () => void;\n previousPageHandler: () => void;\n setPageSize: (size: number) => void;\n gotoPage: (page: number) => void;\n};\n\nexport type ControlledPagination = {\n paginationAmount?: string | ReactNode | ReactElement;\n pageSize: number;\n pageIndex: number;\n pageCount: number;\n};\n\nexport type TableProps = {\n columns: Array<Column<DefaultObject>>;\n data: [];\n totalItems?: number;\n PaginationComponent: React.FunctionComponent<PaginationProps>;\n initialState: Partial<TableState<DefaultObject>>;\n fetchData?: (params: {pageIndex: number; pageSize: number}) => void;\n onSortedChange?: (id: string, isDesc: boolean) => void;\n isLoading?: boolean;\n footerPlacement?: Array<FOOTER_PLACEMENT>;\n hasDefaultPagination?: boolean;\n onSelectRowsChange?: (rows: Array<DefaultObject>) => void;\n controlledPagination?: ControlledPagination;\n loadingMessage?: string;\n labelPerPage?: string;\n parentElementId?: string;\n tableContentId?: string;\n getRowPreProps?: (row: Row) => DefaultObject;\n getTableProps?: TableGetter;\n getHeaderGroupProps?: ElementGetter;\n getHeaderProps?: ElementGetter;\n getRowProps?: ElementGetter;\n getCellProps?: ElementGetter;\n getFooterProps?: ElementGetter;\n getFooterGroupProps?: ElementGetter;\n showLoadingState?: boolean;\n LoadingCellComponent?: FunctionComponent<DefaultObject>;\n noDataMessage?: string | ReactElement;\n rowSubComponent?: (row: StandardRow) => ReactElement;\n isEnableRowSelect?: (original: DefaultObject) => boolean;\n};\n\nexport type TableOptions = {\n columns: Array<Column<DefaultObject>>;\n data: Array<DefaultObject>;\n initialState: {\n pageIndex?: number;\n pageSize?: number;\n };\n disableSortRemove: boolean;\n disableMultiSort: boolean;\n disableMultiRemove: boolean;\n manualSortBy?: boolean;\n autoResetPage?: boolean;\n manualPagination?: boolean;\n pageCount?: number;\n};\n\nexport type MetaProps = {\n column?: HeaderGroup<DefaultObject>;\n cell?: Cell;\n};\n\nexport type BaseMeta = Meta<DefaultObject, MetaProps>;\n\nexport type TableGetter = (props: DefaultObject) => DefaultObject;\n\nexport type ElementGetter = (props: DefaultObject, meta: BaseMeta) => DefaultObject;\n\nexport type ElementCellPropGetter = CellPropGetter<DefaultObject>;\n\nexport type ElementRowPropGetter = RowPropGetter<DefaultObject>;\n\nexport type ElementHeaderFooterPropGetter =\n | FooterGroupPropGetter<DefaultObject>\n | HeaderGroupPropGetter<DefaultObject>\n | FooterPropGetter<DefaultObject>;\n\nexport type GetTableContainerPropsGetter = (\n userGetter?: TableGetter,\n getter?: TableGetter,\n) => TablePropGetter<DefaultObject> | TableBodyPropGetter<DefaultObject>;\n\nexport type GetTableElementPropsGetter<T> = (userGetter?: ElementGetter, getter?: ElementGetter) => T;\n\nexport type GetTableElementInternalPropsGetter = (\n internalProps: DefaultObject,\n userGetter?: ElementGetter,\n getter?: ElementGetter,\n) => HeaderPropGetter<DefaultObject>;\n\nexport type ColumnWithSort = HeaderGroup<DefaultObject> & Partial<UseSortByColumnProps<DefaultObject>>;\n\nexport type StandardColumn = Column<DefaultObject>;\n\nexport type StandardRow = Row<DefaultObject> & {isExpanded?: boolean};\n\nexport type SelectableRow = Row<{id: string}> & UseRowSelectRowProps<DefaultObject>;\n\nexport type StandardCell = Cell<DefaultObject>;\n\nexport type SelectableRowInstanceProps = UseRowSelectInstanceProps<DefaultObject>;\n\nexport type StandardHooks = Hooks<DefaultObject>;\n\nexport type TableHooksInstanceProps = UseSortByInstanceProps<DefaultObject> &\n UsePaginationInstanceProps<DefaultObject> &\n UseRowSelectInstanceProps<DefaultObject> & {\n state: UseRowSelectState<DefaultObject> & UsePaginationState<DefaultObject>;\n };\n\nexport type TableOptionsProps = UseTableOptions<DefaultObject> &\n UseSortByOptions<DefaultObject> &\n UsePaginationOptions<DefaultObject> & {\n initialState: Partial<TableState<DefaultObject>> & Partial<UsePaginationState<DefaultObject>>;\n };\n\nexport class Table extends React.Component<Partial<TableProps>> {}\n","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport {useEffect} from 'react';\n\nconst TABLE_SHADOW_CLASS_NAME = {\n LEFT: 'shadow_left',\n RIGHT: 'shadow_right',\n};\n\nfunction changeClassName(tableWrapperNode: Element, newClassNameList: string[]) {\n const {classList} = tableWrapperNode;\n\n classList.remove(TABLE_SHADOW_CLASS_NAME.LEFT, TABLE_SHADOW_CLASS_NAME.RIGHT);\n classList.add(...newClassNameList);\n}\n\nfunction calculateNewClassNames(tableNode, tableWrapperNode) {\n if (!tableNode || !tableWrapperNode) {\n return;\n }\n\n const tableRect = tableNode.getBoundingClientRect();\n const tableWrapperRect = tableWrapperNode.getBoundingClientRect();\n const newClassName = [];\n\n const tableRectLeft = Math.floor(tableRect.left);\n const tableRectRight = Math.floor(tableRect.right);\n const tableWrapperRectLeft = Math.floor(tableWrapperRect.left);\n const tableWrapperRectRight = Math.floor(tableWrapperRect.right);\n\n if (tableRectLeft < tableWrapperRectLeft) {\n newClassName.push(TABLE_SHADOW_CLASS_NAME.LEFT);\n }\n\n if (tableRectRight > tableWrapperRectRight) {\n newClassName.push(TABLE_SHADOW_CLASS_NAME.RIGHT);\n }\n\n changeClassName(tableWrapperNode, newClassName);\n}\n\nexport default (tableRef, tableWrapperRef) => {\n useEffect(() => {\n let ticking = false;\n\n function onMousewheel() {\n if (ticking) {\n return;\n }\n\n window.requestAnimationFrame(() => {\n calculateNewClassNames(tableRef.current, tableWrapperRef.current);\n ticking = false;\n });\n\n ticking = true;\n }\n\n calculateNewClassNames(tableRef.current, tableWrapperRef.current);\n\n tableRef?.current?.addEventListener('mousewheel', onMousewheel);\n window.addEventListener('resize', onMousewheel);\n\n return () => {\n tableRef?.current?.removeEventListener('mousewheel', onMousewheel);\n window.removeEventListener('resize', onMousewheel);\n };\n }, [tableRef.current, tableWrapperRef.current]);\n};\n","import {\n ElementGetter,\n BaseMeta,\n TableGetter,\n ElementCellPropGetter,\n ElementRowPropGetter,\n DefaultObject,\n ElementHeaderFooterPropGetter,\n GetTableElementPropsGetter,\n GetTableContainerPropsGetter,\n GetTableElementInternalPropsGetter,\n} from './types';\n\nexport const defaultGetter: ElementGetter = (props) => props;\n\nexport const cellGetter: ElementGetter = (props, {cell}) => ({\n ...props,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n align: cell?.column?.align,\n});\nexport const mainCellGetter: ElementGetter = (props, {column}) => ({\n ...props,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n align: column?.align,\n});\n\nexport const getTableProps: GetTableContainerPropsGetter = (userGetter, getter = defaultGetter as TableGetter) => {\n if (userGetter) {\n return (props) => ({\n ...getter(props),\n ...userGetter(props),\n });\n }\n\n return getter;\n};\n\nexport const getTableElementProps: GetTableElementPropsGetter<ElementHeaderFooterPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableRowProps: GetTableElementPropsGetter<ElementRowPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableCellProps: GetTableElementPropsGetter<ElementCellPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableElementInternalProps: GetTableElementInternalPropsGetter = (\n internalProps,\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter({...props, ...internalProps}, meta),\n ...userGetter(props, meta),\n });\n }\n\n return (props: DefaultObject, meta: BaseMeta) => getter({...props, ...internalProps}, meta);\n};\n","/* eslint max-len: off */\nimport styled, {keyframes, css, CSSObject} from 'styled-components';\nimport {fontNormal, white, black, spacing, gray80, gray95} from '@propellerads/stylevariables';\n\nconst loadingAnimation = keyframes`\n from {\n background-position-x: 0;\n }\n 50% {\n background-position-x: 100%;\n }\n 100% {\n background-position-x: 0;\n }\n`;\n\nexport const TableLoading = styled.div`\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.8);\n transition: all 0.3s ease;\n z-index: -1;\n opacity: 0;\n pointer-events: none;\n\n ${(props: {isLoading: boolean}) =>\n props.isLoading &&\n css`\n opacity: 1;\n z-index: 2;\n pointer-events: all;\n `}\n`;\n\nexport const TableLoadingInner = styled.div`\n position: absolute;\n display: block;\n text-align: center;\n width: 100%;\n top: 50%;\n left: 0;\n color: rgba(0, 0, 0, 0.6);\n transform: translateY(-52%);\n transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);\n`;\n\nexport const TableWrapper = styled.div`\n position: relative;\n overflow: hidden;\n\n &::before {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n position: absolute;\n width: 10px;\n height: 100%;\n top: 0;\n left: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &::after {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n width: 10px;\n height: 100%;\n position: absolute;\n top: 0;\n right: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &.shadow_left {\n &::before {\n opacity: 1 !important;\n }\n }\n\n &.shadow_right {\n &::after {\n opacity: 1 !important;\n }\n }\n`;\n\nexport const TableRoot = styled.div`\n font-size: ${fontNormal}px;\n position: relative;\n display: flex;\n flex-direction: column;\n border: 0;\n`;\n\nexport const TableContent = styled.div`\n display: block;\n max-width: 100%;\n overflow-x: scroll;\n overflow-y: hidden;\n`;\n\nexport const TableCore = styled.div`\n flex: auto 1;\n display: flex;\n flex-direction: column;\n align-items: stretch;\n border-collapse: collapse;\n`;\n\nexport const HeadCell = styled.div`\n display: inline-flex;\n`;\n\nexport const TD = styled.div`\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: 1.3rem;\n padding: 7px 4px;\n overflow: hidden;\n transition: width 0.3s ease 0s, min-width, padding, opacity;\n\n ${({align}: {align?: CSSObject; colSpan?: number}) =>\n align &&\n css`\n text-align: ${align};\n `}\n`;\n\nexport const EmptyStateCell = styled.div`\n width: 100%;\n height: ${spacing * 4}px;\n background: linear-gradient(to left, ${gray95}, ${white}, ${gray95});\n background-size: 200% 200%;\n animation: ${loadingAnimation} 1.6s linear infinite;\n`;\n\nexport const TH = styled.div`\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;\n color: rgb(0, 0, 0);\n font-weight: 500;\n outline: none;\n`;\n\nexport const THead = styled.div`\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n user-select: none;\n\n ${TH}, ${TD} {\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);\n color: ${black};\n font-weight: 500;\n outline: none;\n }\n`;\n\nexport const TRGroup = styled.div`\n display: flex;\n flex: 1 0 auto;\n box-shadow: inset 0 -1px 0 0 ${gray95};\n min-width: 100%;\n width: max-content;\n`;\n\nexport const TR = styled.div`\n padding: 0;\n -webkit-box-align: center;\n align-items: center;\n`;\n\nexport const TBody = styled.div`\n border-top: 1px solid ${gray80};\n margin-top: ${spacing * 2}px;\n min-width: 100%;\n width: max-content;\n`;\n\nexport const TFoot = styled.div`\n background: ${gray95};\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n`;\n\nexport const TResizer = styled.div`\n display: inline-block;\n position: absolute;\n right: 5px;\n top: 0;\n z-index: 1;\n touch-action: none;\n\n &:after {\n content: '↔';\n position: absolute;\n right: 0;\n top: 0;\n }\n`;\n","import React, {FunctionComponent, useEffect, useMemo, useRef} from 'react';\nimport {\n useSortBy,\n useTable,\n useRowSelect,\n usePagination,\n useExpanded,\n useFlexLayout,\n useResizeColumns,\n Column,\n} from 'react-table';\n\nimport {ArrowDown, ArrowUp, COLOR, SIZE} from '@propellerads/icon';\nimport Checkbox from '@propellerads/input-checkbox';\n\nimport useLoadingState from './useLoadingState';\nimport useTableShadow from './useTableShadow';\n\nimport {\n FOOTER_PLACEMENT,\n TableProps,\n PaginationProps,\n StandardHooks,\n StandardColumn,\n StandardRow,\n StandardCell,\n ColumnWithSort,\n TableHooksInstanceProps,\n TableOptionsProps,\n SelectableRow,\n DefaultObject,\n} from './types';\n\nimport {\n getTableProps as getTableBodyProps,\n getTableElementProps,\n getTableElementInternalProps,\n cellGetter,\n mainCellGetter,\n getTableCellProps,\n getTableRowProps,\n} from './propsGetter';\n\nimport {\n TableRoot as _TableRoot,\n TableWrapper as _TableWrapper,\n TableContent as _TableContent,\n HeadCell as _HeadCell,\n TableLoading as _TableLoading,\n TableLoadingInner as _TableLoadingInner,\n TD as _TD,\n TableCore as _TableCore,\n THead as _THead,\n TR as _TR,\n TH as _TH,\n TBody as _TBody,\n TRGroup as _TRGroup,\n TFoot as _TFoot,\n EmptyStateCell as _EmptyStateCell,\n TResizer as _TResizer,\n} from './style';\n\nconst TableRoot = _TableRoot as unknown as React.FunctionComponent<DefaultObject>;\nconst TableWrapper = _TableWrapper as unknown as React.FunctionComponent<DefaultObject>;\nconst TableContent = _TableContent as unknown as React.FunctionComponent<DefaultObject>;\nconst HeadCell = _HeadCell as unknown as React.FunctionComponent<DefaultObject>;\nconst TableLoading = _TableLoading as unknown as React.FunctionComponent<DefaultObject>;\nconst TableLoadingInner = _TableLoadingInner as unknown as React.FunctionComponent<DefaultObject>;\nconst TD = _TD as unknown as React.FunctionComponent<DefaultObject>;\nconst TableCore = _TableCore as unknown as React.FunctionComponent<DefaultObject>;\nconst THead = _THead as unknown as React.FunctionComponent<DefaultObject>;\nconst TR = _TR as unknown as React.FunctionComponent<DefaultObject>;\nconst TH = _TH as unknown as React.FunctionComponent<DefaultObject>;\nconst TBody = _TBody as unknown as React.FunctionComponent<DefaultObject>;\nconst TRGroup = _TRGroup as unknown as React.FunctionComponent<DefaultObject>;\nconst TFoot = _TFoot as unknown as React.FunctionComponent<DefaultObject>;\nconst EmptyStateCell = _EmptyStateCell as unknown as React.FunctionComponent<DefaultObject>;\nconst TResizer = _TResizer as unknown as React.FunctionComponent<DefaultObject>;\n\nconst isEnableRowSelectDefault: () => boolean = () => true;\nconst selectColumnPropsDefault = {};\nconst getRowPrePropsDefault: () => DefaultObject = () => ({});\n\nexport const defaultProps = {\n hasDefaultPagination: false,\n isLoading: false,\n footerPlacement: [],\n loadingMessage: 'loading...',\n labelPerPage: 'Show rows',\n parentElementId: 'parent-element',\n tableContentId: '',\n showLoadingState: false,\n initialState: {},\n LoadingCellComponent: EmptyStateCell,\n getRowPreProps: getRowPrePropsDefault,\n isEnableRowSelect: isEnableRowSelectDefault,\n selectColumnProps: selectColumnPropsDefault,\n noDataMessage: '',\n};\n\ntype DefaultProps = Readonly<typeof defaultProps>;\n\nconst disableSortRemove = true;\nconst disableMultiSort = true;\nconst disabledMultiRemove = true;\n\nconst DEFAULT_PAGE_INDEX = 0;\nconst DEFAULT_PAGE_SIZE = 10;\n\nfunction isFunction(reference?: (arg1?: any, arg2?: any) => void) {\n return typeof reference === 'function';\n}\n\nfunction renderResizer(column) {\n if (column.isResizable) {\n return (\n <TResizer\n {...column.getResizerProps()}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n );\n }\n\n return null;\n}\n\nfunction getHeadContent(column: ColumnWithSort) {\n if (column.isSorted && column.isSortedDesc) {\n return (\n <HeadCell>\n {column.render('Header')}\n <ArrowDown size={SIZE.SMALL} color={COLOR.GRAY_DARK} />\n </HeadCell>\n );\n }\n\n if (column.isSorted && !column.isSortedDesc) {\n return (\n <HeadCell>\n {column.render('Header')}\n <ArrowUp size={SIZE.SMALL} color={COLOR.GRAY_DARK} />\n </HeadCell>\n );\n }\n\n return column.render('Header');\n}\n\nconst Table: FunctionComponent<TableProps & DefaultProps> = (props) => {\n const {\n columns,\n data,\n totalItems,\n fetchData,\n controlledPagination,\n initialState,\n isLoading,\n loadingMessage,\n labelPerPage,\n footerPlacement,\n onSortedChange,\n hasDefaultPagination,\n onSelectRowsChange,\n parentElementId,\n tableContentId,\n LoadingCellComponent,\n PaginationComponent,\n getRowPreProps,\n getTableProps,\n getHeaderGroupProps,\n getHeaderProps,\n getRowProps,\n getCellProps,\n getFooterProps,\n getFooterGroupProps,\n showLoadingState,\n noDataMessage,\n rowSubComponent,\n isEnableRowSelect,\n selectColumnProps,\n } = props;\n\n const memoColumns = useMemo(() => columns, [columns]);\n\n const {loadingColumns, loadingData} = useLoadingState(\n showLoadingState,\n isLoading,\n controlledPagination?.pageSize ?? DEFAULT_PAGE_SIZE,\n memoColumns,\n LoadingCellComponent,\n );\n\n const showLoading = showLoadingState && isLoading;\n const hasSelectedRowsAbility = onSelectRowsChange && isFunction(onSelectRowsChange);\n const hasManualSortBy = onSortedChange && isFunction(onSortedChange);\n const hasControlledPagination = fetchData && controlledPagination && Object.keys(controlledPagination).length > 0;\n\n const options: TableOptionsProps = {\n columns: showLoading ? (loadingColumns as Column<DefaultObject>[]) : memoColumns,\n data: showLoading ? loadingData : data,\n initialState,\n disableSortRemove,\n disableMultiSort,\n disabledMultiRemove,\n };\n\n if (hasManualSortBy) {\n options.manualSortBy = true;\n }\n\n if (hasControlledPagination) {\n if (typeof controlledPagination?.pageCount === 'undefined') {\n throw new Error('You have to pass pageCount in controlledPagination data');\n }\n\n options.initialState = {\n ...options.initialState,\n pageIndex: controlledPagination.pageIndex ?? DEFAULT_PAGE_INDEX,\n pageSize: controlledPagination.pageSize ?? DEFAULT_PAGE_SIZE,\n };\n\n options.autoResetPage = true;\n options.manualPagination = true;\n options.pageCount = controlledPagination.pageCount;\n }\n\n const useSelect = (hooks: StandardHooks) => {\n if (!hasSelectedRowsAbility) {\n return;\n }\n\n const newColumn = {\n id: 'selection',\n disableSortBy: true,\n Header: (instance: TableHooksInstanceProps & {toggleAllPageRowsSelected: () => void}) => {\n const {getToggleAllPageRowsSelectedProps, toggleAllPageRowsSelected, page} = instance;\n\n const isDisabledAllRows = page.map(({original}) => original).filter(isEnableRowSelect).length === 0;\n\n return (\n <Checkbox\n elementId=\"all\"\n onChange={toggleAllPageRowsSelected}\n isChecked={getToggleAllPageRowsSelectedProps().checked}\n isDisabled={isDisabledAllRows}\n />\n );\n },\n Cell: ({row}: {row: SelectableRow}) => {\n const {id, original, toggleRowSelected, getToggleRowSelectedProps} = row;\n\n const elementId = Number.isInteger(original.id) ? original.id : id;\n const isEnabled = isEnableRowSelect(row.original);\n\n return (\n <Checkbox\n elementId={elementId}\n onChange={toggleRowSelected}\n isDisabled={!isEnabled}\n isChecked={isEnabled && getToggleRowSelectedProps().checked}\n />\n );\n },\n ...selectColumnProps,\n };\n\n // @ts-ignore\n hooks.visibleColumns.push((tableColumns: Array<StandardColumn>) => [newColumn, ...tableColumns]);\n };\n\n const {\n getTableProps: _getTableProps,\n headerGroups,\n footerGroups,\n setHiddenColumns,\n rows,\n prepareRow,\n visibleColumns,\n ...rest\n } = useTable(\n options,\n useFlexLayout,\n useSortBy,\n useExpanded,\n usePagination,\n useRowSelect,\n useSelect,\n useResizeColumns,\n );\n\n const {\n selectedFlatRows,\n setSortBy,\n page,\n canPreviousPage,\n canNextPage,\n pageCount,\n gotoPage,\n nextPage,\n previousPage,\n setPageSize,\n state: {selectedRowIds, pageIndex, pageSize},\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n } = rest as TableHooksInstanceProps;\n\n const tableRef = useRef(null);\n const tableWrapperRef = useRef(null);\n\n useTableShadow(tableRef, tableWrapperRef);\n\n useEffect(() => {\n if (!initialState?.hiddenColumns) {\n return;\n }\n\n setHiddenColumns(initialState.hiddenColumns);\n }, [initialState?.hiddenColumns]);\n\n useEffect(() => {\n if (hasSelectedRowsAbility) {\n onSelectRowsChange?.(selectedFlatRows?.map((row: StandardRow) => row.original).filter(isEnableRowSelect));\n }\n }, [selectedRowIds]);\n\n let pagination: JSX.Element | null = null;\n\n if (hasDefaultPagination && hasControlledPagination) {\n throw new Error(\n 'You have to pass either hasDefaultPagination true boolean prop or ' +\n 'pass fetchData callback and controlledPagination data',\n );\n }\n\n if (hasControlledPagination || hasDefaultPagination) {\n const paginationData: PaginationProps = {\n setPageSize,\n gotoPage,\n canNextPage,\n canPreviousPage,\n parentElementId,\n labelPerPage,\n pageIndex,\n previousPageHandler: previousPage,\n nextPageHandler: nextPage,\n totalPages: pageCount,\n perPage: pageSize,\n totalItems: totalItems ?? data.length,\n };\n\n if (hasControlledPagination && controlledPagination) {\n paginationData.canNextPage = controlledPagination.pageIndex + 1 !== paginationData.totalPages;\n paginationData.canPreviousPage = controlledPagination.pageIndex !== 0;\n paginationData.pageIndex = controlledPagination.pageIndex;\n paginationData.perPage = controlledPagination.pageSize;\n\n paginationData.setPageSize = (newPageSize: number) => {\n fetchData?.({\n pageIndex: paginationData.pageIndex,\n pageSize: newPageSize,\n });\n };\n\n paginationData.gotoPage = (newPageIndex: number) => {\n fetchData?.({\n pageIndex: newPageIndex,\n pageSize: paginationData.perPage,\n });\n };\n\n paginationData.nextPageHandler = () => {\n const newPageIndex = paginationData.pageIndex + 1;\n paginationData.gotoPage(newPageIndex);\n };\n\n paginationData.previousPageHandler = () => {\n const newPageIndex = paginationData.pageIndex - 1;\n paginationData.gotoPage(newPageIndex);\n };\n\n if (controlledPagination?.paginationAmount) {\n paginationData.paginationAmount = controlledPagination.paginationAmount;\n }\n }\n\n pagination = <PaginationComponent {...paginationData} />;\n }\n\n function extendSortByProps(column: ColumnWithSort) {\n const headerProps = column.getSortByToggleProps && column.getSortByToggleProps();\n\n delete headerProps?.style;\n\n if (hasManualSortBy && column.canSort && headerProps) {\n headerProps.onClick = () => {\n onSortedChange?.(column.id, Boolean(column.isSortedDesc));\n setSortBy([\n {\n id: column.id,\n desc: !column.isSortedDesc,\n },\n ]);\n };\n }\n\n return headerProps;\n }\n\n const tBodyTr = hasControlledPagination || hasDefaultPagination ? page : rows;\n\n return (\n <TableRoot className=\"table-root\">\n <TableLoading isLoading={!showLoadingState && isLoading} className=\"table-loading\">\n <TableLoadingInner>{loadingMessage}</TableLoadingInner>\n </TableLoading>\n <TableWrapper ref={tableWrapperRef} className=\"table-wrapper\">\n <TableContent id={tableContentId} className=\"table-content\">\n <TableCore {..._getTableProps(getTableBodyProps(getTableProps))} ref={tableRef}>\n <THead className=\"table-head\" data-role=\"table-head\">\n {headerGroups.map((headerGroup) => (\n <TR {...headerGroup.getHeaderGroupProps(getTableElementProps(getHeaderGroupProps))}>\n {headerGroup.headers.map((column) => {\n const headerProps = extendSortByProps(column) as DefaultObject;\n\n return (\n <TH\n {...column.getHeaderProps(\n getTableElementInternalProps(headerProps, getHeaderProps, mainCellGetter),\n )}\n >\n {getHeadContent(column)}\n {renderResizer(column)}\n </TH>\n );\n })}\n </TR>\n ))}\n </THead>\n {footerPlacement.includes(FOOTER_PLACEMENT.TOP) && (\n <TFoot className=\"table-footer-top\" data-role=\"table-footer-top\">\n {footerGroups.map((group) => (\n <TR {...group.getFooterGroupProps(getTableElementProps(getFooterGroupProps))}>\n {group.headers.map((column) => (\n <TD {...column.getFooterProps(getTableElementProps(getFooterProps, mainCellGetter))}>\n {column.render('Footer')}\n </TD>\n ))}\n </TR>\n ))}\n </TFoot>\n )}\n <TBody className=\"table-body\" data-role=\"table-body\">\n {tBodyTr.map((row: StandardRow) => {\n prepareRow(row);\n const {isDelimiterTd} = getRowPreProps(row);\n\n if (isDelimiterTd) {\n const cell = row.cells[0].render('Cell') as React.ReactNode;\n\n return (\n <React.Fragment key={`group_${row.index}`}>\n <TRGroup>\n <TR {...row.getRowProps(getTableRowProps(getRowProps))}>\n <TD\n colSpan={visibleColumns.length}\n {...row.cells[0].getCellProps(getTableCellProps(getCellProps, cellGetter))}\n >\n <strong>{cell}</strong>\n </TD>\n </TR>\n </TRGroup>\n {row?.isExpanded && rowSubComponent && rowSubComponent(row)}\n </React.Fragment>\n );\n }\n\n return (\n <React.Fragment key={`group_${row.index}`}>\n <TRGroup>\n <TR {...row.getRowProps(getTableRowProps(getRowProps))}>\n {row.cells.map((cell: StandardCell) => (\n <TD {...cell.getCellProps(getTableCellProps(getCellProps, cellGetter))}>\n {cell.render('Cell')}\n </TD>\n ))}\n </TR>\n </TRGroup>\n {row?.isExpanded && rowSubComponent && rowSubComponent(row)}\n </React.Fragment>\n );\n })}\n </TBody>\n {footerPlacement.includes(FOOTER_PLACEMENT.BOTTOM) && (\n <TFoot className=\"table-footer-bottom\" data-role=\"table-footer-bottom\">\n {footerGroups.map((group) => (\n <TR {...group.getFooterGroupProps(getTableElementProps(getFooterGroupProps))}>\n {group.headers.map((column) => (\n <TD {...column.getFooterProps(getTableElementProps(getFooterProps, mainCellGetter))}>\n {column.render('Footer')}\n </TD>\n ))}\n </TR>\n ))}\n </TFoot>\n )}\n </TableCore>\n </TableContent>\n </TableWrapper>\n {!isLoading && !data.length && noDataMessage}\n {pagination}\n </TableRoot>\n );\n};\n\nTable.defaultProps = defaultProps;\n\nexport {Table};\n","import React, {FunctionComponent, useMemo} from 'react';\nimport {Column} from 'react-table';\nimport {DefaultObject, LoadingState} from './types';\n\nconst useLoadingState = (\n showLoadingState: boolean,\n loading: boolean,\n pageSize: number,\n columns: Column<DefaultObject>[],\n LoadingCellComponent: FunctionComponent<DefaultObject>,\n): LoadingState => {\n const loadingColumns: Column<DefaultObject>[] | undefined = useMemo(\n () =>\n showLoadingState && loading\n ? columns.map((column: Column<DefaultObject>) => {\n const loadingColumn: Column<DefaultObject> = {\n ...column,\n Cell: () => <LoadingCellComponent />,\n };\n\n return loadingColumn;\n })\n : [],\n [columns, loading, showLoadingState],\n );\n\n const loadingData = useMemo(() => {\n if (showLoadingState && loading && columns && columns.length > 0) {\n const dataObject: DefaultObject = {};\n const dataArray: DefaultObject[] = [];\n\n for (let i = 0; i < columns.length; i += 1) {\n dataObject[`empty_${i}`] = '';\n }\n for (let i = 0; i < pageSize; i += 1) {\n dataArray.push(dataObject);\n }\n\n return dataArray;\n }\n\n return [];\n }, [columns, loading, pageSize, showLoadingState]);\n\n return {\n // @ts-ignore\n loadingColumns,\n loadingData,\n };\n};\n\nexport default useLoadingState;\n"],"names":["FOOTER_PLACEMENT","calculateNewClassNames","tableNode","tableWrapperNode","tableRect","getBoundingClientRect","tableWrapperRect","newClassName","tableRectLeft","Math","floor","left","tableRectRight","right","tableWrapperRectLeft","tableWrapperRectRight","push","newClassNameList","classList","remove","add","apply","changeClassName","defaultGetter","props","cellGetter","_ref","_cell$column","cell","_extends","align","column","mainCellGetter","_ref2","getTableElementProps","userGetter","getter","meta","getTableRowProps","getTableCellProps","loadingAnimation","keyframes","_templateObject","_taggedTemplateLiteralLoose","TableLoading","styled","div","_templateObject2","isLoading","css","_templateObject3","TableLoadingInner","_templateObject4","TableWrapper","_templateObject5","TableRoot","_templateObject6","fontNormal","TableContent","_templateObject7","TableCore","_templateObject8","HeadCell","_templateObject9","TD","_templateObject0","_templateObject1","EmptyStateCell","_templateObject10","spacing","gray95","white","TH","_templateObject11","THead","_templateObject12","black","TRGroup","_templateObject13","TR","_templateObject14","TBody","_templateObject15","gray80","TFoot","_templateObject16","TResizer","_templateObject17","_TableRoot","_TableWrapper","_TableContent","_HeadCell","_TableLoading","_TableLoadingInner","_TD","_TableCore","_THead","_TR","_TH","_TBody","_TRGroup","_TFoot","_TResizer","defaultProps","hasDefaultPagination","footerPlacement","loadingMessage","labelPerPage","parentElementId","tableContentId","showLoadingState","initialState","LoadingCellComponent","_EmptyStateCell","getRowPreProps","isEnableRowSelect","selectColumnProps","noDataMessage","isFunction","reference","Table","columns","data","totalItems","fetchData","controlledPagination","onSortedChange","onSelectRowsChange","PaginationComponent","getTableProps","getHeaderGroupProps","getHeaderProps","getRowProps","getCellProps","getFooterProps","getFooterGroupProps","rowSubComponent","memoColumns","useMemo","_useLoadingState","loading","pageSize","loadingColumns","map","Cell","React","loadingData","length","dataObject","dataArray","i","useLoadingState","_controlledPagination","showLoading","hasSelectedRowsAbility","hasManualSortBy","hasControlledPagination","Object","keys","options","disableSortRemove","disableMultiSort","disabledMultiRemove","manualSortBy","_controlledPagination2","_controlledPagination3","pageCount","Error","pageIndex","autoResetPage","manualPagination","_useTable","useTable","useFlexLayout","useSortBy","useExpanded","usePagination","useRowSelect","hooks","newColumn","id","disableSortBy","Header","instance","getToggleAllPageRowsSelectedProps","toggleAllPageRowsSelected","isDisabledAllRows","page","original","filter","Checkbox","elementId","onChange","isChecked","checked","isDisabled","row","toggleRowSelected","getToggleRowSelectedProps","Number","isInteger","isEnabled","visibleColumns","tableColumns","concat","useResizeColumns","_getTableProps","headerGroups","footerGroups","setHiddenColumns","rows","prepareRow","rest","_objectWithoutPropertiesLoose","_excluded","selectedFlatRows","setSortBy","canPreviousPage","canNextPage","gotoPage","nextPage","previousPage","setPageSize","_rest$state","state","selectedRowIds","tableRef","useRef","tableWrapperRef","useEffect","ticking","onMousewheel","window","requestAnimationFrame","current","_tableRef$current","addEventListener","_tableRef$current2","removeEventListener","useTableShadow","hiddenColumns","pagination","paginationData","previousPageHandler","nextPageHandler","totalPages","perPage","newPageSize","newPageIndex","paginationAmount","tBodyTr","className","ref","headerGroup","headers","headerProps","getSortByToggleProps","style","canSort","onClick","Boolean","isSortedDesc","desc","extendSortByProps","internalProps","getTableElementInternalProps","isSorted","render","ArrowDown","size","SIZE","SMALL","color","COLOR","GRAY_DARK","ArrowUp","getHeadContent","isResizable","getResizerProps","e","preventDefault","stopPropagation","renderResizer","includes","TOP","group","isDelimiterTd","cells","Fragment","key","index","colSpan","isExpanded","BOTTOM"],"mappings":"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"}
1
+ {"version":3,"file":"table.cjs.production.min.js","sources":["../src/types.tsx","../src/useTableShadow.tsx","../src/propsGetter.tsx","../src/style.tsx","../src/index.tsx","../src/useLoadingState.tsx"],"sourcesContent":["import React, {FunctionComponent, ReactElement, ReactNode} from 'react';\nimport {\n Cell,\n CellPropGetter,\n Column,\n FooterGroupPropGetter,\n FooterPropGetter,\n HeaderGroup,\n HeaderGroupPropGetter,\n Hooks,\n Meta,\n Row,\n RowPropGetter,\n TableBodyPropGetter,\n TablePropGetter,\n TableState,\n UsePaginationInstanceProps,\n UsePaginationOptions,\n UsePaginationState,\n UseRowSelectInstanceProps,\n UseRowSelectState,\n UseSortByColumnProps,\n UseRowSelectRowProps,\n UseSortByInstanceProps,\n UseSortByOptions,\n UseTableOptions,\n HeaderPropGetter,\n} from 'react-table';\n\nexport type DefaultObject = Record<string, string | number | unknown>;\n\nexport type LoadingState = {\n loadingColumns?: Column[];\n loadingData: any[];\n};\n\nexport enum FOOTER_PLACEMENT {\n TOP = 'top',\n BOTTOM = 'bottom',\n}\n\nexport type PaginationProps = {\n paginationAmount?: string | ReactNode | ReactElement;\n parentElementId: string;\n labelPerPage?: string;\n pageSizes?: Array<string | number>;\n pageIndex: number;\n perPage: number;\n totalPages: number;\n totalItems: number;\n canNextPage: boolean;\n canPreviousPage: boolean;\n nextPageHandler: () => void;\n previousPageHandler: () => void;\n setPageSize: (size: number) => void;\n gotoPage: (page: number) => void;\n};\n\nexport type ControlledPagination = {\n paginationAmount?: string | ReactNode | ReactElement;\n pageSize: number;\n pageIndex: number;\n pageCount: number;\n};\n\nexport type TableProps = {\n columns: Array<Column<DefaultObject>>;\n data: [];\n totalItems?: number;\n PaginationComponent: React.FunctionComponent<PaginationProps>;\n initialState: Partial<TableState<DefaultObject>>;\n fetchData?: (params: {pageIndex: number; pageSize: number}) => void;\n onSortedChange?: (id: string, isDesc: boolean) => void;\n isLoading?: boolean;\n footerPlacement?: Array<FOOTER_PLACEMENT>;\n hasDefaultPagination?: boolean;\n onSelectRowsChange?: (rows: Array<DefaultObject>) => void;\n controlledPagination?: ControlledPagination;\n loadingMessage?: string;\n labelPerPage?: string;\n parentElementId?: string;\n tableContentId?: string;\n getRowPreProps?: (row: Row) => DefaultObject;\n getTableProps?: TableGetter;\n getHeaderGroupProps?: ElementGetter;\n getHeaderProps?: ElementGetter;\n getRowProps?: ElementGetter;\n getCellProps?: ElementGetter;\n getFooterProps?: ElementGetter;\n getFooterGroupProps?: ElementGetter;\n showLoadingState?: boolean;\n LoadingCellComponent?: FunctionComponent<DefaultObject>;\n noDataMessage?: string | ReactElement;\n rowSubComponent?: (row: StandardRow) => ReactElement;\n isEnableRowSelect?: (original: DefaultObject) => boolean;\n};\n\nexport type TableOptions = {\n columns: Array<Column<DefaultObject>>;\n data: Array<DefaultObject>;\n initialState: {\n pageIndex?: number;\n pageSize?: number;\n };\n disableSortRemove: boolean;\n disableMultiSort: boolean;\n disableMultiRemove: boolean;\n manualSortBy?: boolean;\n autoResetPage?: boolean;\n manualPagination?: boolean;\n pageCount?: number;\n};\n\nexport type MetaProps = {\n column?: HeaderGroup<DefaultObject>;\n cell?: Cell;\n};\n\nexport type BaseMeta = Meta<DefaultObject, MetaProps>;\n\nexport type TableGetter = (props: DefaultObject) => DefaultObject;\n\nexport type ElementGetter = (props: DefaultObject, meta: BaseMeta) => DefaultObject;\n\nexport type ElementCellPropGetter = CellPropGetter<DefaultObject>;\n\nexport type ElementRowPropGetter = RowPropGetter<DefaultObject>;\n\nexport type ElementHeaderFooterPropGetter =\n | FooterGroupPropGetter<DefaultObject>\n | HeaderGroupPropGetter<DefaultObject>\n | FooterPropGetter<DefaultObject>;\n\nexport type GetTableContainerPropsGetter = (\n userGetter?: TableGetter,\n getter?: TableGetter,\n) => TablePropGetter<DefaultObject> | TableBodyPropGetter<DefaultObject>;\n\nexport type GetTableElementPropsGetter<T> = (userGetter?: ElementGetter, getter?: ElementGetter) => T;\n\nexport type GetTableElementInternalPropsGetter = (\n internalProps: DefaultObject,\n userGetter?: ElementGetter,\n getter?: ElementGetter,\n) => HeaderPropGetter<DefaultObject>;\n\nexport type ColumnWithSort = HeaderGroup<DefaultObject> & Partial<UseSortByColumnProps<DefaultObject>>;\n\nexport type StandardColumn = Column<DefaultObject>;\n\nexport type StandardRow = Row<DefaultObject> & {isExpanded?: boolean};\n\nexport type SelectableRow = Row<{id: string}> & UseRowSelectRowProps<DefaultObject>;\n\nexport type StandardCell = Cell<DefaultObject>;\n\nexport type SelectableRowInstanceProps = UseRowSelectInstanceProps<DefaultObject>;\n\nexport type StandardHooks = Hooks<DefaultObject>;\n\nexport type TableHooksInstanceProps = UseSortByInstanceProps<DefaultObject> &\n UsePaginationInstanceProps<DefaultObject> &\n UseRowSelectInstanceProps<DefaultObject> & {\n state: UseRowSelectState<DefaultObject> & UsePaginationState<DefaultObject>;\n };\n\nexport type TableOptionsProps = UseTableOptions<DefaultObject> &\n UseSortByOptions<DefaultObject> &\n UsePaginationOptions<DefaultObject> & {\n initialState: Partial<TableState<DefaultObject>> & Partial<UsePaginationState<DefaultObject>>;\n };\n\nexport class Table extends React.Component<Partial<TableProps>> {}\n","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport {useEffect} from 'react';\n\nconst TABLE_SHADOW_CLASS_NAME = {\n LEFT: 'shadow_left',\n RIGHT: 'shadow_right',\n};\n\nfunction changeClassName(tableWrapperNode: Element, newClassNameList: string[]) {\n const {classList} = tableWrapperNode;\n\n classList.remove(TABLE_SHADOW_CLASS_NAME.LEFT, TABLE_SHADOW_CLASS_NAME.RIGHT);\n classList.add(...newClassNameList);\n}\n\nfunction calculateNewClassNames(tableNode, tableWrapperNode) {\n if (!tableNode || !tableWrapperNode) {\n return;\n }\n\n const tableRect = tableNode.getBoundingClientRect();\n const tableWrapperRect = tableWrapperNode.getBoundingClientRect();\n const newClassName = [];\n\n const tableRectLeft = Math.floor(tableRect.left);\n const tableRectRight = Math.floor(tableRect.right);\n const tableWrapperRectLeft = Math.floor(tableWrapperRect.left);\n const tableWrapperRectRight = Math.floor(tableWrapperRect.right);\n\n if (tableRectLeft < tableWrapperRectLeft) {\n newClassName.push(TABLE_SHADOW_CLASS_NAME.LEFT);\n }\n\n if (tableRectRight > tableWrapperRectRight) {\n newClassName.push(TABLE_SHADOW_CLASS_NAME.RIGHT);\n }\n\n changeClassName(tableWrapperNode, newClassName);\n}\n\nexport default (tableRef, tableWrapperRef) => {\n useEffect(() => {\n let ticking = false;\n\n function onMousewheel() {\n if (ticking) {\n return;\n }\n\n window.requestAnimationFrame(() => {\n calculateNewClassNames(tableRef.current, tableWrapperRef.current);\n ticking = false;\n });\n\n ticking = true;\n }\n\n calculateNewClassNames(tableRef.current, tableWrapperRef.current);\n\n tableRef?.current?.addEventListener('mousewheel', onMousewheel);\n window.addEventListener('resize', onMousewheel);\n\n return () => {\n tableRef?.current?.removeEventListener('mousewheel', onMousewheel);\n window.removeEventListener('resize', onMousewheel);\n };\n }, [tableRef.current, tableWrapperRef.current]);\n};\n","import {\n ElementGetter,\n BaseMeta,\n TableGetter,\n ElementCellPropGetter,\n ElementRowPropGetter,\n DefaultObject,\n ElementHeaderFooterPropGetter,\n GetTableElementPropsGetter,\n GetTableContainerPropsGetter,\n GetTableElementInternalPropsGetter,\n} from './types';\n\nexport const defaultGetter: ElementGetter = (props) => props;\n\nexport const cellGetter: ElementGetter = (props, {cell}) => ({\n ...props,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n align: cell?.column?.align,\n});\nexport const mainCellGetter: ElementGetter = (props, {column}) => ({\n ...props,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n align: column?.align,\n});\n\nexport const getTableProps: GetTableContainerPropsGetter = (userGetter, getter = defaultGetter as TableGetter) => {\n if (userGetter) {\n return (props) => ({\n ...getter(props),\n ...userGetter(props),\n });\n }\n\n return getter;\n};\n\nexport const getTableElementProps: GetTableElementPropsGetter<ElementHeaderFooterPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableRowProps: GetTableElementPropsGetter<ElementRowPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableCellProps: GetTableElementPropsGetter<ElementCellPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableElementInternalProps: GetTableElementInternalPropsGetter = (\n internalProps,\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter({...props, ...internalProps}, meta),\n ...userGetter(props, meta),\n });\n }\n\n return (props: DefaultObject, meta: BaseMeta) => getter({...props, ...internalProps}, meta);\n};\n","/* eslint max-len: off */\nimport styled, {keyframes, css, CSSObject} from 'styled-components';\nimport {fontNormal, white, black, spacing, gray80, gray95} from '@propellerads/stylevariables';\n\nconst loadingAnimation = keyframes`\n from {\n background-position-x: 0;\n }\n 50% {\n background-position-x: 100%;\n }\n 100% {\n background-position-x: 0;\n }\n`;\n\nexport const TableLoading = styled.div`\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.8);\n transition: all 0.3s ease;\n z-index: -1;\n opacity: 0;\n pointer-events: none;\n\n ${(props: {isLoading: boolean}) =>\n props.isLoading &&\n css`\n opacity: 1;\n z-index: 2;\n pointer-events: all;\n `}\n`;\n\nexport const TableLoadingInner = styled.div`\n position: absolute;\n display: block;\n text-align: center;\n width: 100%;\n top: 50%;\n left: 0;\n color: rgba(0, 0, 0, 0.6);\n transform: translateY(-52%);\n transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);\n`;\n\nexport const TableWrapper = styled.div`\n position: relative;\n overflow: hidden;\n\n &::before {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n position: absolute;\n width: 10px;\n height: 100%;\n top: 0;\n left: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &::after {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n width: 10px;\n height: 100%;\n position: absolute;\n top: 0;\n right: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &.shadow_left {\n &::before {\n opacity: 1 !important;\n }\n }\n\n &.shadow_right {\n &::after {\n opacity: 1 !important;\n }\n }\n`;\n\nexport const TableRoot = styled.div`\n font-size: ${fontNormal}px;\n position: relative;\n display: flex;\n flex-direction: column;\n border: 0;\n`;\n\nexport const TableContent = styled.div`\n display: block;\n max-width: 100%;\n overflow-x: scroll;\n overflow-y: hidden;\n`;\n\nexport const TableCore = styled.div`\n flex: auto 1;\n display: flex;\n flex-direction: column;\n align-items: stretch;\n border-collapse: collapse;\n`;\n\nexport const HeadCell = styled.div`\n display: inline-flex;\n`;\n\nexport const TD = styled.div`\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: 1.3rem;\n padding: 7px 4px;\n overflow: hidden;\n transition: width 0.3s ease 0s, min-width, padding, opacity;\n\n ${({align}: {align?: CSSObject; colSpan?: number}) =>\n align &&\n css`\n text-align: ${align};\n `}\n`;\n\nexport const EmptyStateCell = styled.div`\n width: 100%;\n height: ${spacing * 4}px;\n background: linear-gradient(to left, ${gray95}, ${white}, ${gray95});\n background-size: 200% 200%;\n animation: ${loadingAnimation} 1.6s linear infinite;\n`;\n\nexport const TH = styled.div`\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;\n color: rgb(0, 0, 0);\n font-weight: 500;\n outline: none;\n`;\n\nexport const THead = styled.div`\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n user-select: none;\n\n ${TH}, ${TD} {\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);\n color: ${black};\n font-weight: 500;\n outline: none;\n }\n`;\n\nexport const TRGroup = styled.div`\n display: flex;\n flex: 1 0 auto;\n box-shadow: inset 0 -1px 0 0 ${gray95};\n min-width: 100%;\n width: max-content;\n`;\n\nexport const TR = styled.div`\n padding: 0;\n -webkit-box-align: center;\n align-items: center;\n`;\n\nexport const TBody = styled.div`\n border-top: 1px solid ${gray80};\n margin-top: ${spacing * 2}px;\n min-width: 100%;\n width: max-content;\n`;\n\nexport const TFoot = styled.div`\n background: ${gray95};\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n`;\n\nexport const TResizer = styled.div`\n display: inline-block;\n position: absolute;\n right: 5px;\n top: 0;\n z-index: 1;\n touch-action: none;\n\n &:after {\n content: '↔';\n position: absolute;\n right: 0;\n top: 0;\n }\n`;\n","import React, {FunctionComponent, useEffect, useMemo, useRef} from 'react';\nimport {\n useSortBy,\n useTable,\n useRowSelect,\n usePagination,\n useExpanded,\n useFlexLayout,\n useResizeColumns,\n Column,\n} from 'react-table';\n\nimport {ArrowDown, ArrowUp, Color, Size} from '@propellerads/icon';\nimport Checkbox from '@propellerads/input-checkbox';\n\nimport useLoadingState from './useLoadingState';\nimport useTableShadow from './useTableShadow';\n\nimport {\n FOOTER_PLACEMENT,\n TableProps,\n PaginationProps,\n StandardHooks,\n StandardColumn,\n StandardRow,\n StandardCell,\n ColumnWithSort,\n TableHooksInstanceProps,\n TableOptionsProps,\n SelectableRow,\n DefaultObject,\n} from './types';\n\nimport {\n getTableProps as getTableBodyProps,\n getTableElementProps,\n getTableElementInternalProps,\n cellGetter,\n mainCellGetter,\n getTableCellProps,\n getTableRowProps,\n} from './propsGetter';\n\nimport {\n TableRoot as _TableRoot,\n TableWrapper as _TableWrapper,\n TableContent as _TableContent,\n HeadCell as _HeadCell,\n TableLoading as _TableLoading,\n TableLoadingInner as _TableLoadingInner,\n TD as _TD,\n TableCore as _TableCore,\n THead as _THead,\n TR as _TR,\n TH as _TH,\n TBody as _TBody,\n TRGroup as _TRGroup,\n TFoot as _TFoot,\n EmptyStateCell as _EmptyStateCell,\n TResizer as _TResizer,\n} from './style';\n\nconst TableRoot = _TableRoot as unknown as React.FunctionComponent<DefaultObject>;\nconst TableWrapper = _TableWrapper as unknown as React.FunctionComponent<DefaultObject>;\nconst TableContent = _TableContent as unknown as React.FunctionComponent<DefaultObject>;\nconst HeadCell = _HeadCell as unknown as React.FunctionComponent<DefaultObject>;\nconst TableLoading = _TableLoading as unknown as React.FunctionComponent<DefaultObject>;\nconst TableLoadingInner = _TableLoadingInner as unknown as React.FunctionComponent<DefaultObject>;\nconst TD = _TD as unknown as React.FunctionComponent<DefaultObject>;\nconst TableCore = _TableCore as unknown as React.FunctionComponent<DefaultObject>;\nconst THead = _THead as unknown as React.FunctionComponent<DefaultObject>;\nconst TR = _TR as unknown as React.FunctionComponent<DefaultObject>;\nconst TH = _TH as unknown as React.FunctionComponent<DefaultObject>;\nconst TBody = _TBody as unknown as React.FunctionComponent<DefaultObject>;\nconst TRGroup = _TRGroup as unknown as React.FunctionComponent<DefaultObject>;\nconst TFoot = _TFoot as unknown as React.FunctionComponent<DefaultObject>;\nconst EmptyStateCell = _EmptyStateCell as unknown as React.FunctionComponent<DefaultObject>;\nconst TResizer = _TResizer as unknown as React.FunctionComponent<DefaultObject>;\n\nconst isEnableRowSelectDefault: () => boolean = () => true;\nconst selectColumnPropsDefault = {};\nconst getRowPrePropsDefault: () => DefaultObject = () => ({});\n\nexport const defaultProps = {\n hasDefaultPagination: false,\n isLoading: false,\n footerPlacement: [],\n loadingMessage: 'loading...',\n labelPerPage: 'Show rows',\n parentElementId: 'parent-element',\n tableContentId: '',\n showLoadingState: false,\n initialState: {},\n LoadingCellComponent: EmptyStateCell,\n getRowPreProps: getRowPrePropsDefault,\n isEnableRowSelect: isEnableRowSelectDefault,\n selectColumnProps: selectColumnPropsDefault,\n noDataMessage: '',\n};\n\ntype DefaultProps = Readonly<typeof defaultProps>;\n\nconst disableSortRemove = true;\nconst disableMultiSort = true;\nconst disabledMultiRemove = true;\n\nconst DEFAULT_PAGE_INDEX = 0;\nconst DEFAULT_PAGE_SIZE = 10;\n\nfunction isFunction(reference?: (arg1?: any, arg2?: any) => void) {\n return typeof reference === 'function';\n}\n\nfunction renderResizer(column) {\n if (column.isResizable) {\n return (\n <TResizer\n {...column.getResizerProps()}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n );\n }\n\n return null;\n}\n\nfunction getHeadContent(column: ColumnWithSort) {\n if (column.isSorted && column.isSortedDesc) {\n return (\n <HeadCell>\n {column.render('Header')}\n <ArrowUp size={Size.Small} color={Color.GrayDark} />\n </HeadCell>\n );\n }\n\n if (column.isSorted && !column.isSortedDesc) {\n return (\n <HeadCell>\n {column.render('Header')}\n <ArrowDown size={Size.Small} color={Color.GrayDark} />\n </HeadCell>\n );\n }\n\n return column.render('Header');\n}\n\nconst Table: FunctionComponent<TableProps & DefaultProps> = (props) => {\n const {\n columns,\n data,\n totalItems,\n fetchData,\n controlledPagination,\n initialState,\n isLoading,\n loadingMessage,\n labelPerPage,\n footerPlacement,\n onSortedChange,\n hasDefaultPagination,\n onSelectRowsChange,\n parentElementId,\n tableContentId,\n LoadingCellComponent,\n PaginationComponent,\n getRowPreProps,\n getTableProps,\n getHeaderGroupProps,\n getHeaderProps,\n getRowProps,\n getCellProps,\n getFooterProps,\n getFooterGroupProps,\n showLoadingState,\n noDataMessage,\n rowSubComponent,\n isEnableRowSelect,\n selectColumnProps,\n } = props;\n\n const memoColumns = useMemo(() => columns, [columns]);\n\n const {loadingColumns, loadingData} = useLoadingState(\n showLoadingState,\n isLoading,\n controlledPagination?.pageSize ?? DEFAULT_PAGE_SIZE,\n memoColumns,\n LoadingCellComponent,\n );\n\n const showLoading = showLoadingState && isLoading;\n const hasSelectedRowsAbility = onSelectRowsChange && isFunction(onSelectRowsChange);\n const hasManualSortBy = onSortedChange && isFunction(onSortedChange);\n const hasControlledPagination = fetchData && controlledPagination && Object.keys(controlledPagination).length > 0;\n\n const options: TableOptionsProps = {\n columns: showLoading ? (loadingColumns as Column<DefaultObject>[]) : memoColumns,\n data: showLoading ? loadingData : data,\n initialState,\n disableSortRemove,\n disableMultiSort,\n disabledMultiRemove,\n };\n\n if (hasManualSortBy) {\n options.manualSortBy = true;\n }\n\n if (hasControlledPagination) {\n if (typeof controlledPagination?.pageCount === 'undefined') {\n throw new Error('You have to pass pageCount in controlledPagination data');\n }\n\n options.initialState = {\n ...options.initialState,\n pageIndex: controlledPagination.pageIndex ?? DEFAULT_PAGE_INDEX,\n pageSize: controlledPagination.pageSize ?? DEFAULT_PAGE_SIZE,\n };\n\n options.autoResetPage = true;\n options.manualPagination = true;\n options.pageCount = controlledPagination.pageCount;\n }\n\n const useSelect = (hooks: StandardHooks) => {\n if (!hasSelectedRowsAbility) {\n return;\n }\n\n const newColumn = {\n id: 'selection',\n disableSortBy: true,\n Header: (instance: TableHooksInstanceProps & {toggleAllPageRowsSelected: () => void}) => {\n const {getToggleAllPageRowsSelectedProps, toggleAllPageRowsSelected, page} = instance;\n\n const isDisabledAllRows = page.map(({original}) => original).filter(isEnableRowSelect).length === 0;\n\n return (\n <Checkbox\n elementId=\"all\"\n onChange={toggleAllPageRowsSelected}\n isChecked={getToggleAllPageRowsSelectedProps().checked}\n isDisabled={isDisabledAllRows}\n />\n );\n },\n Cell: ({row}: {row: SelectableRow}) => {\n const {id, original, toggleRowSelected, getToggleRowSelectedProps} = row;\n\n const elementId = Number.isInteger(original.id) ? original.id : id;\n const isEnabled = isEnableRowSelect(row.original);\n\n return (\n <Checkbox\n elementId={elementId}\n onChange={toggleRowSelected}\n isDisabled={!isEnabled}\n isChecked={isEnabled && getToggleRowSelectedProps().checked}\n />\n );\n },\n ...selectColumnProps,\n };\n\n // @ts-ignore\n hooks.visibleColumns.push((tableColumns: Array<StandardColumn>) => [newColumn, ...tableColumns]);\n };\n\n const {\n getTableProps: _getTableProps,\n headerGroups,\n footerGroups,\n setHiddenColumns,\n rows,\n prepareRow,\n visibleColumns,\n ...rest\n } = useTable(\n options,\n useFlexLayout,\n useSortBy,\n useExpanded,\n usePagination,\n useRowSelect,\n useSelect,\n useResizeColumns,\n );\n\n const {\n selectedFlatRows,\n setSortBy,\n page,\n canPreviousPage,\n canNextPage,\n pageCount,\n gotoPage,\n nextPage,\n previousPage,\n setPageSize,\n state: {selectedRowIds, pageIndex, pageSize},\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n } = rest as TableHooksInstanceProps;\n\n const tableRef = useRef(null);\n const tableWrapperRef = useRef(null);\n\n useTableShadow(tableRef, tableWrapperRef);\n\n useEffect(() => {\n if (!initialState?.hiddenColumns) {\n return;\n }\n\n setHiddenColumns(initialState.hiddenColumns);\n }, [initialState?.hiddenColumns]);\n\n useEffect(() => {\n if (hasSelectedRowsAbility) {\n onSelectRowsChange?.(selectedFlatRows?.map((row: StandardRow) => row.original).filter(isEnableRowSelect));\n }\n }, [selectedRowIds]);\n\n let pagination: JSX.Element | null = null;\n\n if (hasDefaultPagination && hasControlledPagination) {\n throw new Error(\n 'You have to pass either hasDefaultPagination true boolean prop or ' +\n 'pass fetchData callback and controlledPagination data',\n );\n }\n\n if (hasControlledPagination || hasDefaultPagination) {\n const paginationData: PaginationProps = {\n setPageSize,\n gotoPage,\n canNextPage,\n canPreviousPage,\n parentElementId,\n labelPerPage,\n pageIndex,\n previousPageHandler: previousPage,\n nextPageHandler: nextPage,\n totalPages: pageCount,\n perPage: pageSize,\n totalItems: totalItems ?? data.length,\n };\n\n if (hasControlledPagination && controlledPagination) {\n paginationData.canNextPage = controlledPagination.pageIndex + 1 !== paginationData.totalPages;\n paginationData.canPreviousPage = controlledPagination.pageIndex !== 0;\n paginationData.pageIndex = controlledPagination.pageIndex;\n paginationData.perPage = controlledPagination.pageSize;\n\n paginationData.setPageSize = (newPageSize: number) => {\n fetchData?.({\n pageIndex: paginationData.pageIndex,\n pageSize: newPageSize,\n });\n };\n\n paginationData.gotoPage = (newPageIndex: number) => {\n fetchData?.({\n pageIndex: newPageIndex,\n pageSize: paginationData.perPage,\n });\n };\n\n paginationData.nextPageHandler = () => {\n const newPageIndex = paginationData.pageIndex + 1;\n paginationData.gotoPage(newPageIndex);\n };\n\n paginationData.previousPageHandler = () => {\n const newPageIndex = paginationData.pageIndex - 1;\n paginationData.gotoPage(newPageIndex);\n };\n\n if (controlledPagination?.paginationAmount) {\n paginationData.paginationAmount = controlledPagination.paginationAmount;\n }\n }\n\n pagination = <PaginationComponent {...paginationData} />;\n }\n\n function extendSortByProps(column: ColumnWithSort) {\n const headerProps = column.getSortByToggleProps && column.getSortByToggleProps();\n\n delete headerProps?.style;\n\n if (hasManualSortBy && column.canSort && headerProps) {\n headerProps.onClick = () => {\n onSortedChange?.(column.id, Boolean(column.isSortedDesc));\n setSortBy([\n {\n id: column.id,\n desc: !column.isSortedDesc,\n },\n ]);\n };\n }\n\n return headerProps;\n }\n\n const tBodyTr = hasControlledPagination || hasDefaultPagination ? page : rows;\n\n return (\n <TableRoot className=\"table-root\">\n <TableLoading isLoading={!showLoadingState && isLoading} className=\"table-loading\">\n <TableLoadingInner>{loadingMessage}</TableLoadingInner>\n </TableLoading>\n <TableWrapper ref={tableWrapperRef} className=\"table-wrapper\">\n <TableContent id={tableContentId} className=\"table-content\">\n <TableCore {..._getTableProps(getTableBodyProps(getTableProps))} ref={tableRef}>\n <THead className=\"table-head\" data-role=\"table-head\">\n {headerGroups.map((headerGroup) => (\n <TR {...headerGroup.getHeaderGroupProps(getTableElementProps(getHeaderGroupProps))}>\n {headerGroup.headers.map((column) => {\n const headerProps = extendSortByProps(column) as DefaultObject;\n\n return (\n <TH\n {...column.getHeaderProps(\n getTableElementInternalProps(headerProps, getHeaderProps, mainCellGetter),\n )}\n >\n {getHeadContent(column)}\n {renderResizer(column)}\n </TH>\n );\n })}\n </TR>\n ))}\n </THead>\n {footerPlacement.includes(FOOTER_PLACEMENT.TOP) && (\n <TFoot className=\"table-footer-top\" data-role=\"table-footer-top\">\n {footerGroups.map((group) => (\n <TR {...group.getFooterGroupProps(getTableElementProps(getFooterGroupProps))}>\n {group.headers.map((column) => (\n <TD {...column.getFooterProps(getTableElementProps(getFooterProps, mainCellGetter))}>\n {column.render('Footer')}\n </TD>\n ))}\n </TR>\n ))}\n </TFoot>\n )}\n <TBody className=\"table-body\" data-role=\"table-body\">\n {tBodyTr.map((row: StandardRow) => {\n prepareRow(row);\n const {isDelimiterTd} = getRowPreProps(row);\n\n if (isDelimiterTd) {\n const cell = row.cells[0].render('Cell') as React.ReactNode;\n\n return (\n <React.Fragment key={`group_${row.index}`}>\n <TRGroup>\n <TR {...row.getRowProps(getTableRowProps(getRowProps))}>\n <TD\n colSpan={visibleColumns.length}\n {...row.cells[0].getCellProps(getTableCellProps(getCellProps, cellGetter))}\n >\n <strong>{cell}</strong>\n </TD>\n </TR>\n </TRGroup>\n {row?.isExpanded && rowSubComponent && rowSubComponent(row)}\n </React.Fragment>\n );\n }\n\n return (\n <React.Fragment key={`group_${row.index}`}>\n <TRGroup>\n <TR {...row.getRowProps(getTableRowProps(getRowProps))}>\n {row.cells.map((cell: StandardCell) => (\n <TD {...cell.getCellProps(getTableCellProps(getCellProps, cellGetter))}>\n {cell.render('Cell')}\n </TD>\n ))}\n </TR>\n </TRGroup>\n {row?.isExpanded && rowSubComponent && rowSubComponent(row)}\n </React.Fragment>\n );\n })}\n </TBody>\n {footerPlacement.includes(FOOTER_PLACEMENT.BOTTOM) && (\n <TFoot className=\"table-footer-bottom\" data-role=\"table-footer-bottom\">\n {footerGroups.map((group) => (\n <TR {...group.getFooterGroupProps(getTableElementProps(getFooterGroupProps))}>\n {group.headers.map((column) => (\n <TD {...column.getFooterProps(getTableElementProps(getFooterProps, mainCellGetter))}>\n {column.render('Footer')}\n </TD>\n ))}\n </TR>\n ))}\n </TFoot>\n )}\n </TableCore>\n </TableContent>\n </TableWrapper>\n {!isLoading && !data.length && noDataMessage}\n {pagination}\n </TableRoot>\n );\n};\n\nTable.defaultProps = defaultProps;\n\nexport {Table};\n","import React, {FunctionComponent, useMemo} from 'react';\nimport {Column} from 'react-table';\nimport {DefaultObject, LoadingState} from './types';\n\nconst useLoadingState = (\n showLoadingState: boolean,\n loading: boolean,\n pageSize: number,\n columns: Column<DefaultObject>[],\n LoadingCellComponent: FunctionComponent<DefaultObject>,\n): LoadingState => {\n const loadingColumns: Column<DefaultObject>[] | undefined = useMemo(\n () =>\n showLoadingState && loading\n ? columns.map((column: Column<DefaultObject>) => {\n const loadingColumn: Column<DefaultObject> = {\n ...column,\n Cell: () => <LoadingCellComponent />,\n };\n\n return loadingColumn;\n })\n : [],\n [columns, loading, showLoadingState],\n );\n\n const loadingData = useMemo(() => {\n if (showLoadingState && loading && columns && columns.length > 0) {\n const dataObject: DefaultObject = {};\n const dataArray: DefaultObject[] = [];\n\n for (let i = 0; i < columns.length; i += 1) {\n dataObject[`empty_${i}`] = '';\n }\n for (let i = 0; i < pageSize; i += 1) {\n dataArray.push(dataObject);\n }\n\n return dataArray;\n }\n\n return [];\n }, [columns, loading, pageSize, showLoadingState]);\n\n return {\n // @ts-ignore\n loadingColumns,\n loadingData,\n };\n};\n\nexport default useLoadingState;\n"],"names":["FOOTER_PLACEMENT","calculateNewClassNames","tableNode","tableWrapperNode","tableRect","getBoundingClientRect","tableWrapperRect","newClassName","tableRectLeft","Math","floor","left","tableRectRight","right","tableWrapperRectLeft","tableWrapperRectRight","push","newClassNameList","classList","remove","add","apply","changeClassName","defaultGetter","props","cellGetter","_ref","_cell$column","cell","_extends","align","column","mainCellGetter","_ref2","getTableElementProps","userGetter","getter","meta","getTableRowProps","getTableCellProps","loadingAnimation","keyframes","_templateObject","_taggedTemplateLiteralLoose","TableLoading","styled","div","_templateObject2","isLoading","css","_templateObject3","TableLoadingInner","_templateObject4","TableWrapper","_templateObject5","TableRoot","_templateObject6","fontNormal","TableContent","_templateObject7","TableCore","_templateObject8","HeadCell","_templateObject9","TD","_templateObject0","_templateObject1","EmptyStateCell","_templateObject10","spacing","gray95","white","TH","_templateObject11","THead","_templateObject12","black","TRGroup","_templateObject13","TR","_templateObject14","TBody","_templateObject15","gray80","TFoot","_templateObject16","TResizer","_templateObject17","_TableRoot","_TableWrapper","_TableContent","_HeadCell","_TableLoading","_TableLoadingInner","_TD","_TableCore","_THead","_TR","_TH","_TBody","_TRGroup","_TFoot","_TResizer","defaultProps","hasDefaultPagination","footerPlacement","loadingMessage","labelPerPage","parentElementId","tableContentId","showLoadingState","initialState","LoadingCellComponent","_EmptyStateCell","getRowPreProps","isEnableRowSelect","selectColumnProps","noDataMessage","isFunction","reference","Table","columns","data","totalItems","fetchData","controlledPagination","onSortedChange","onSelectRowsChange","PaginationComponent","getTableProps","getHeaderGroupProps","getHeaderProps","getRowProps","getCellProps","getFooterProps","getFooterGroupProps","rowSubComponent","memoColumns","useMemo","_useLoadingState","loading","pageSize","loadingColumns","map","Cell","React","loadingData","length","dataObject","dataArray","i","useLoadingState","_controlledPagination","showLoading","hasSelectedRowsAbility","hasManualSortBy","hasControlledPagination","Object","keys","options","disableSortRemove","disableMultiSort","disabledMultiRemove","manualSortBy","_controlledPagination2","_controlledPagination3","pageCount","Error","pageIndex","autoResetPage","manualPagination","_useTable","useTable","useFlexLayout","useSortBy","useExpanded","usePagination","useRowSelect","hooks","newColumn","id","disableSortBy","Header","instance","getToggleAllPageRowsSelectedProps","toggleAllPageRowsSelected","isDisabledAllRows","page","original","filter","Checkbox","elementId","onChange","isChecked","checked","isDisabled","row","toggleRowSelected","getToggleRowSelectedProps","Number","isInteger","isEnabled","visibleColumns","tableColumns","concat","useResizeColumns","_getTableProps","headerGroups","footerGroups","setHiddenColumns","rows","prepareRow","rest","_objectWithoutPropertiesLoose","_excluded","selectedFlatRows","setSortBy","canPreviousPage","canNextPage","gotoPage","nextPage","previousPage","setPageSize","_rest$state","state","selectedRowIds","tableRef","useRef","tableWrapperRef","useEffect","ticking","onMousewheel","window","requestAnimationFrame","current","_tableRef$current","addEventListener","_tableRef$current2","removeEventListener","useTableShadow","hiddenColumns","pagination","paginationData","previousPageHandler","nextPageHandler","totalPages","perPage","newPageSize","newPageIndex","paginationAmount","tBodyTr","className","ref","headerGroup","headers","headerProps","getSortByToggleProps","style","canSort","onClick","Boolean","isSortedDesc","desc","extendSortByProps","internalProps","getTableElementInternalProps","isSorted","render","ArrowUp","size","Size","Small","color","Color","GrayDark","ArrowDown","getHeadContent","isResizable","getResizerProps","e","preventDefault","stopPropagation","renderResizer","includes","TOP","group","isDelimiterTd","cells","Fragment","key","index","colSpan","isExpanded","BOTTOM"],"mappings":"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"}
package/dist/table.esm.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import React, { useMemo, useEffect, useRef } from 'react';
2
2
  import { useTable, useFlexLayout, useSortBy, useExpanded, usePagination, useRowSelect, useResizeColumns } from 'react-table';
3
- import { ArrowDown, SIZE, COLOR, ArrowUp } from '@propellerads/icon';
3
+ import { ArrowUp, Size, Color, ArrowDown } from '@propellerads/icon';
4
4
  import Checkbox from '@propellerads/input-checkbox';
5
5
  import styled, { css, keyframes } from 'styled-components';
6
6
  import { fontNormal, spacing, gray95, white, black, gray80 } from '@propellerads/stylevariables';
@@ -282,15 +282,15 @@ function renderResizer(column) {
282
282
  }
283
283
  function getHeadContent(column) {
284
284
  if (column.isSorted && column.isSortedDesc) {
285
- return React.createElement(HeadCell$1, null, column.render('Header'), React.createElement(ArrowDown, {
286
- size: SIZE.SMALL,
287
- color: COLOR.GRAY_DARK
285
+ return React.createElement(HeadCell$1, null, column.render('Header'), React.createElement(ArrowUp, {
286
+ size: Size.Small,
287
+ color: Color.GrayDark
288
288
  }));
289
289
  }
290
290
  if (column.isSorted && !column.isSortedDesc) {
291
- return React.createElement(HeadCell$1, null, column.render('Header'), React.createElement(ArrowUp, {
292
- size: SIZE.SMALL,
293
- color: COLOR.GRAY_DARK
291
+ return React.createElement(HeadCell$1, null, column.render('Header'), React.createElement(ArrowDown, {
292
+ size: Size.Small,
293
+ color: Color.GrayDark
294
294
  }));
295
295
  }
296
296
  return column.render('Header');
@@ -1 +1 @@
1
- {"version":3,"file":"table.esm.js","sources":["../src/useLoadingState.tsx","../src/useTableShadow.tsx","../src/types.tsx","../src/propsGetter.tsx","../src/style.tsx","../src/index.tsx"],"sourcesContent":["import React, {FunctionComponent, useMemo} from 'react';\nimport {Column} from 'react-table';\nimport {DefaultObject, LoadingState} from './types';\n\nconst useLoadingState = (\n showLoadingState: boolean,\n loading: boolean,\n pageSize: number,\n columns: Column<DefaultObject>[],\n LoadingCellComponent: FunctionComponent<DefaultObject>,\n): LoadingState => {\n const loadingColumns: Column<DefaultObject>[] | undefined = useMemo(\n () =>\n showLoadingState && loading\n ? columns.map((column: Column<DefaultObject>) => {\n const loadingColumn: Column<DefaultObject> = {\n ...column,\n Cell: () => <LoadingCellComponent />,\n };\n\n return loadingColumn;\n })\n : [],\n [columns, loading, showLoadingState],\n );\n\n const loadingData = useMemo(() => {\n if (showLoadingState && loading && columns && columns.length > 0) {\n const dataObject: DefaultObject = {};\n const dataArray: DefaultObject[] = [];\n\n for (let i = 0; i < columns.length; i += 1) {\n dataObject[`empty_${i}`] = '';\n }\n for (let i = 0; i < pageSize; i += 1) {\n dataArray.push(dataObject);\n }\n\n return dataArray;\n }\n\n return [];\n }, [columns, loading, pageSize, showLoadingState]);\n\n return {\n // @ts-ignore\n loadingColumns,\n loadingData,\n };\n};\n\nexport default useLoadingState;\n","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport {useEffect} from 'react';\n\nconst TABLE_SHADOW_CLASS_NAME = {\n LEFT: 'shadow_left',\n RIGHT: 'shadow_right',\n};\n\nfunction changeClassName(tableWrapperNode: Element, newClassNameList: string[]) {\n const {classList} = tableWrapperNode;\n\n classList.remove(TABLE_SHADOW_CLASS_NAME.LEFT, TABLE_SHADOW_CLASS_NAME.RIGHT);\n classList.add(...newClassNameList);\n}\n\nfunction calculateNewClassNames(tableNode, tableWrapperNode) {\n if (!tableNode || !tableWrapperNode) {\n return;\n }\n\n const tableRect = tableNode.getBoundingClientRect();\n const tableWrapperRect = tableWrapperNode.getBoundingClientRect();\n const newClassName = [];\n\n const tableRectLeft = Math.floor(tableRect.left);\n const tableRectRight = Math.floor(tableRect.right);\n const tableWrapperRectLeft = Math.floor(tableWrapperRect.left);\n const tableWrapperRectRight = Math.floor(tableWrapperRect.right);\n\n if (tableRectLeft < tableWrapperRectLeft) {\n newClassName.push(TABLE_SHADOW_CLASS_NAME.LEFT);\n }\n\n if (tableRectRight > tableWrapperRectRight) {\n newClassName.push(TABLE_SHADOW_CLASS_NAME.RIGHT);\n }\n\n changeClassName(tableWrapperNode, newClassName);\n}\n\nexport default (tableRef, tableWrapperRef) => {\n useEffect(() => {\n let ticking = false;\n\n function onMousewheel() {\n if (ticking) {\n return;\n }\n\n window.requestAnimationFrame(() => {\n calculateNewClassNames(tableRef.current, tableWrapperRef.current);\n ticking = false;\n });\n\n ticking = true;\n }\n\n calculateNewClassNames(tableRef.current, tableWrapperRef.current);\n\n tableRef?.current?.addEventListener('mousewheel', onMousewheel);\n window.addEventListener('resize', onMousewheel);\n\n return () => {\n tableRef?.current?.removeEventListener('mousewheel', onMousewheel);\n window.removeEventListener('resize', onMousewheel);\n };\n }, [tableRef.current, tableWrapperRef.current]);\n};\n","import React, {FunctionComponent, ReactElement, ReactNode} from 'react';\nimport {\n Cell,\n CellPropGetter,\n Column,\n FooterGroupPropGetter,\n FooterPropGetter,\n HeaderGroup,\n HeaderGroupPropGetter,\n Hooks,\n Meta,\n Row,\n RowPropGetter,\n TableBodyPropGetter,\n TablePropGetter,\n TableState,\n UsePaginationInstanceProps,\n UsePaginationOptions,\n UsePaginationState,\n UseRowSelectInstanceProps,\n UseRowSelectState,\n UseSortByColumnProps,\n UseRowSelectRowProps,\n UseSortByInstanceProps,\n UseSortByOptions,\n UseTableOptions,\n HeaderPropGetter,\n} from 'react-table';\n\nexport type DefaultObject = Record<string, string | number | unknown>;\n\nexport type LoadingState = {\n loadingColumns?: Column[];\n loadingData: any[];\n};\n\nexport enum FOOTER_PLACEMENT {\n TOP = 'top',\n BOTTOM = 'bottom',\n}\n\nexport type PaginationProps = {\n paginationAmount?: string | ReactNode | ReactElement;\n parentElementId: string;\n labelPerPage?: string;\n pageSizes?: Array<string | number>;\n pageIndex: number;\n perPage: number;\n totalPages: number;\n totalItems: number;\n canNextPage: boolean;\n canPreviousPage: boolean;\n nextPageHandler: () => void;\n previousPageHandler: () => void;\n setPageSize: (size: number) => void;\n gotoPage: (page: number) => void;\n};\n\nexport type ControlledPagination = {\n paginationAmount?: string | ReactNode | ReactElement;\n pageSize: number;\n pageIndex: number;\n pageCount: number;\n};\n\nexport type TableProps = {\n columns: Array<Column<DefaultObject>>;\n data: [];\n totalItems?: number;\n PaginationComponent: React.FunctionComponent<PaginationProps>;\n initialState: Partial<TableState<DefaultObject>>;\n fetchData?: (params: {pageIndex: number; pageSize: number}) => void;\n onSortedChange?: (id: string, isDesc: boolean) => void;\n isLoading?: boolean;\n footerPlacement?: Array<FOOTER_PLACEMENT>;\n hasDefaultPagination?: boolean;\n onSelectRowsChange?: (rows: Array<DefaultObject>) => void;\n controlledPagination?: ControlledPagination;\n loadingMessage?: string;\n labelPerPage?: string;\n parentElementId?: string;\n tableContentId?: string;\n getRowPreProps?: (row: Row) => DefaultObject;\n getTableProps?: TableGetter;\n getHeaderGroupProps?: ElementGetter;\n getHeaderProps?: ElementGetter;\n getRowProps?: ElementGetter;\n getCellProps?: ElementGetter;\n getFooterProps?: ElementGetter;\n getFooterGroupProps?: ElementGetter;\n showLoadingState?: boolean;\n LoadingCellComponent?: FunctionComponent<DefaultObject>;\n noDataMessage?: string | ReactElement;\n rowSubComponent?: (row: StandardRow) => ReactElement;\n isEnableRowSelect?: (original: DefaultObject) => boolean;\n};\n\nexport type TableOptions = {\n columns: Array<Column<DefaultObject>>;\n data: Array<DefaultObject>;\n initialState: {\n pageIndex?: number;\n pageSize?: number;\n };\n disableSortRemove: boolean;\n disableMultiSort: boolean;\n disableMultiRemove: boolean;\n manualSortBy?: boolean;\n autoResetPage?: boolean;\n manualPagination?: boolean;\n pageCount?: number;\n};\n\nexport type MetaProps = {\n column?: HeaderGroup<DefaultObject>;\n cell?: Cell;\n};\n\nexport type BaseMeta = Meta<DefaultObject, MetaProps>;\n\nexport type TableGetter = (props: DefaultObject) => DefaultObject;\n\nexport type ElementGetter = (props: DefaultObject, meta: BaseMeta) => DefaultObject;\n\nexport type ElementCellPropGetter = CellPropGetter<DefaultObject>;\n\nexport type ElementRowPropGetter = RowPropGetter<DefaultObject>;\n\nexport type ElementHeaderFooterPropGetter =\n | FooterGroupPropGetter<DefaultObject>\n | HeaderGroupPropGetter<DefaultObject>\n | FooterPropGetter<DefaultObject>;\n\nexport type GetTableContainerPropsGetter = (\n userGetter?: TableGetter,\n getter?: TableGetter,\n) => TablePropGetter<DefaultObject> | TableBodyPropGetter<DefaultObject>;\n\nexport type GetTableElementPropsGetter<T> = (userGetter?: ElementGetter, getter?: ElementGetter) => T;\n\nexport type GetTableElementInternalPropsGetter = (\n internalProps: DefaultObject,\n userGetter?: ElementGetter,\n getter?: ElementGetter,\n) => HeaderPropGetter<DefaultObject>;\n\nexport type ColumnWithSort = HeaderGroup<DefaultObject> & Partial<UseSortByColumnProps<DefaultObject>>;\n\nexport type StandardColumn = Column<DefaultObject>;\n\nexport type StandardRow = Row<DefaultObject> & {isExpanded?: boolean};\n\nexport type SelectableRow = Row<{id: string}> & UseRowSelectRowProps<DefaultObject>;\n\nexport type StandardCell = Cell<DefaultObject>;\n\nexport type SelectableRowInstanceProps = UseRowSelectInstanceProps<DefaultObject>;\n\nexport type StandardHooks = Hooks<DefaultObject>;\n\nexport type TableHooksInstanceProps = UseSortByInstanceProps<DefaultObject> &\n UsePaginationInstanceProps<DefaultObject> &\n UseRowSelectInstanceProps<DefaultObject> & {\n state: UseRowSelectState<DefaultObject> & UsePaginationState<DefaultObject>;\n };\n\nexport type TableOptionsProps = UseTableOptions<DefaultObject> &\n UseSortByOptions<DefaultObject> &\n UsePaginationOptions<DefaultObject> & {\n initialState: Partial<TableState<DefaultObject>> & Partial<UsePaginationState<DefaultObject>>;\n };\n\nexport class Table extends React.Component<Partial<TableProps>> {}\n","import {\n ElementGetter,\n BaseMeta,\n TableGetter,\n ElementCellPropGetter,\n ElementRowPropGetter,\n DefaultObject,\n ElementHeaderFooterPropGetter,\n GetTableElementPropsGetter,\n GetTableContainerPropsGetter,\n GetTableElementInternalPropsGetter,\n} from './types';\n\nexport const defaultGetter: ElementGetter = (props) => props;\n\nexport const cellGetter: ElementGetter = (props, {cell}) => ({\n ...props,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n align: cell?.column?.align,\n});\nexport const mainCellGetter: ElementGetter = (props, {column}) => ({\n ...props,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n align: column?.align,\n});\n\nexport const getTableProps: GetTableContainerPropsGetter = (userGetter, getter = defaultGetter as TableGetter) => {\n if (userGetter) {\n return (props) => ({\n ...getter(props),\n ...userGetter(props),\n });\n }\n\n return getter;\n};\n\nexport const getTableElementProps: GetTableElementPropsGetter<ElementHeaderFooterPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableRowProps: GetTableElementPropsGetter<ElementRowPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableCellProps: GetTableElementPropsGetter<ElementCellPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableElementInternalProps: GetTableElementInternalPropsGetter = (\n internalProps,\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter({...props, ...internalProps}, meta),\n ...userGetter(props, meta),\n });\n }\n\n return (props: DefaultObject, meta: BaseMeta) => getter({...props, ...internalProps}, meta);\n};\n","/* eslint max-len: off */\nimport styled, {keyframes, css, CSSObject} from 'styled-components';\nimport {fontNormal, white, black, spacing, gray80, gray95} from '@propellerads/stylevariables';\n\nconst loadingAnimation = keyframes`\n from {\n background-position-x: 0;\n }\n 50% {\n background-position-x: 100%;\n }\n 100% {\n background-position-x: 0;\n }\n`;\n\nexport const TableLoading = styled.div`\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.8);\n transition: all 0.3s ease;\n z-index: -1;\n opacity: 0;\n pointer-events: none;\n\n ${(props: {isLoading: boolean}) =>\n props.isLoading &&\n css`\n opacity: 1;\n z-index: 2;\n pointer-events: all;\n `}\n`;\n\nexport const TableLoadingInner = styled.div`\n position: absolute;\n display: block;\n text-align: center;\n width: 100%;\n top: 50%;\n left: 0;\n color: rgba(0, 0, 0, 0.6);\n transform: translateY(-52%);\n transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);\n`;\n\nexport const TableWrapper = styled.div`\n position: relative;\n overflow: hidden;\n\n &::before {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n position: absolute;\n width: 10px;\n height: 100%;\n top: 0;\n left: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &::after {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n width: 10px;\n height: 100%;\n position: absolute;\n top: 0;\n right: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &.shadow_left {\n &::before {\n opacity: 1 !important;\n }\n }\n\n &.shadow_right {\n &::after {\n opacity: 1 !important;\n }\n }\n`;\n\nexport const TableRoot = styled.div`\n font-size: ${fontNormal}px;\n position: relative;\n display: flex;\n flex-direction: column;\n border: 0;\n`;\n\nexport const TableContent = styled.div`\n display: block;\n max-width: 100%;\n overflow-x: scroll;\n overflow-y: hidden;\n`;\n\nexport const TableCore = styled.div`\n flex: auto 1;\n display: flex;\n flex-direction: column;\n align-items: stretch;\n border-collapse: collapse;\n`;\n\nexport const HeadCell = styled.div`\n display: inline-flex;\n`;\n\nexport const TD = styled.div`\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: 1.3rem;\n padding: 7px 4px;\n overflow: hidden;\n transition: width 0.3s ease 0s, min-width, padding, opacity;\n\n ${({align}: {align?: CSSObject; colSpan?: number}) =>\n align &&\n css`\n text-align: ${align};\n `}\n`;\n\nexport const EmptyStateCell = styled.div`\n width: 100%;\n height: ${spacing * 4}px;\n background: linear-gradient(to left, ${gray95}, ${white}, ${gray95});\n background-size: 200% 200%;\n animation: ${loadingAnimation} 1.6s linear infinite;\n`;\n\nexport const TH = styled.div`\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;\n color: rgb(0, 0, 0);\n font-weight: 500;\n outline: none;\n`;\n\nexport const THead = styled.div`\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n user-select: none;\n\n ${TH}, ${TD} {\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);\n color: ${black};\n font-weight: 500;\n outline: none;\n }\n`;\n\nexport const TRGroup = styled.div`\n display: flex;\n flex: 1 0 auto;\n box-shadow: inset 0 -1px 0 0 ${gray95};\n min-width: 100%;\n width: max-content;\n`;\n\nexport const TR = styled.div`\n padding: 0;\n -webkit-box-align: center;\n align-items: center;\n`;\n\nexport const TBody = styled.div`\n border-top: 1px solid ${gray80};\n margin-top: ${spacing * 2}px;\n min-width: 100%;\n width: max-content;\n`;\n\nexport const TFoot = styled.div`\n background: ${gray95};\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n`;\n\nexport const TResizer = styled.div`\n display: inline-block;\n position: absolute;\n right: 5px;\n top: 0;\n z-index: 1;\n touch-action: none;\n\n &:after {\n content: '↔';\n position: absolute;\n right: 0;\n top: 0;\n }\n`;\n","import React, {FunctionComponent, useEffect, useMemo, useRef} from 'react';\nimport {\n useSortBy,\n useTable,\n useRowSelect,\n usePagination,\n useExpanded,\n useFlexLayout,\n useResizeColumns,\n Column,\n} from 'react-table';\n\nimport {ArrowDown, ArrowUp, COLOR, SIZE} from '@propellerads/icon';\nimport Checkbox from '@propellerads/input-checkbox';\n\nimport useLoadingState from './useLoadingState';\nimport useTableShadow from './useTableShadow';\n\nimport {\n FOOTER_PLACEMENT,\n TableProps,\n PaginationProps,\n StandardHooks,\n StandardColumn,\n StandardRow,\n StandardCell,\n ColumnWithSort,\n TableHooksInstanceProps,\n TableOptionsProps,\n SelectableRow,\n DefaultObject,\n} from './types';\n\nimport {\n getTableProps as getTableBodyProps,\n getTableElementProps,\n getTableElementInternalProps,\n cellGetter,\n mainCellGetter,\n getTableCellProps,\n getTableRowProps,\n} from './propsGetter';\n\nimport {\n TableRoot as _TableRoot,\n TableWrapper as _TableWrapper,\n TableContent as _TableContent,\n HeadCell as _HeadCell,\n TableLoading as _TableLoading,\n TableLoadingInner as _TableLoadingInner,\n TD as _TD,\n TableCore as _TableCore,\n THead as _THead,\n TR as _TR,\n TH as _TH,\n TBody as _TBody,\n TRGroup as _TRGroup,\n TFoot as _TFoot,\n EmptyStateCell as _EmptyStateCell,\n TResizer as _TResizer,\n} from './style';\n\nconst TableRoot = _TableRoot as unknown as React.FunctionComponent<DefaultObject>;\nconst TableWrapper = _TableWrapper as unknown as React.FunctionComponent<DefaultObject>;\nconst TableContent = _TableContent as unknown as React.FunctionComponent<DefaultObject>;\nconst HeadCell = _HeadCell as unknown as React.FunctionComponent<DefaultObject>;\nconst TableLoading = _TableLoading as unknown as React.FunctionComponent<DefaultObject>;\nconst TableLoadingInner = _TableLoadingInner as unknown as React.FunctionComponent<DefaultObject>;\nconst TD = _TD as unknown as React.FunctionComponent<DefaultObject>;\nconst TableCore = _TableCore as unknown as React.FunctionComponent<DefaultObject>;\nconst THead = _THead as unknown as React.FunctionComponent<DefaultObject>;\nconst TR = _TR as unknown as React.FunctionComponent<DefaultObject>;\nconst TH = _TH as unknown as React.FunctionComponent<DefaultObject>;\nconst TBody = _TBody as unknown as React.FunctionComponent<DefaultObject>;\nconst TRGroup = _TRGroup as unknown as React.FunctionComponent<DefaultObject>;\nconst TFoot = _TFoot as unknown as React.FunctionComponent<DefaultObject>;\nconst EmptyStateCell = _EmptyStateCell as unknown as React.FunctionComponent<DefaultObject>;\nconst TResizer = _TResizer as unknown as React.FunctionComponent<DefaultObject>;\n\nconst isEnableRowSelectDefault: () => boolean = () => true;\nconst selectColumnPropsDefault = {};\nconst getRowPrePropsDefault: () => DefaultObject = () => ({});\n\nexport const defaultProps = {\n hasDefaultPagination: false,\n isLoading: false,\n footerPlacement: [],\n loadingMessage: 'loading...',\n labelPerPage: 'Show rows',\n parentElementId: 'parent-element',\n tableContentId: '',\n showLoadingState: false,\n initialState: {},\n LoadingCellComponent: EmptyStateCell,\n getRowPreProps: getRowPrePropsDefault,\n isEnableRowSelect: isEnableRowSelectDefault,\n selectColumnProps: selectColumnPropsDefault,\n noDataMessage: '',\n};\n\ntype DefaultProps = Readonly<typeof defaultProps>;\n\nconst disableSortRemove = true;\nconst disableMultiSort = true;\nconst disabledMultiRemove = true;\n\nconst DEFAULT_PAGE_INDEX = 0;\nconst DEFAULT_PAGE_SIZE = 10;\n\nfunction isFunction(reference?: (arg1?: any, arg2?: any) => void) {\n return typeof reference === 'function';\n}\n\nfunction renderResizer(column) {\n if (column.isResizable) {\n return (\n <TResizer\n {...column.getResizerProps()}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n );\n }\n\n return null;\n}\n\nfunction getHeadContent(column: ColumnWithSort) {\n if (column.isSorted && column.isSortedDesc) {\n return (\n <HeadCell>\n {column.render('Header')}\n <ArrowDown size={SIZE.SMALL} color={COLOR.GRAY_DARK} />\n </HeadCell>\n );\n }\n\n if (column.isSorted && !column.isSortedDesc) {\n return (\n <HeadCell>\n {column.render('Header')}\n <ArrowUp size={SIZE.SMALL} color={COLOR.GRAY_DARK} />\n </HeadCell>\n );\n }\n\n return column.render('Header');\n}\n\nconst Table: FunctionComponent<TableProps & DefaultProps> = (props) => {\n const {\n columns,\n data,\n totalItems,\n fetchData,\n controlledPagination,\n initialState,\n isLoading,\n loadingMessage,\n labelPerPage,\n footerPlacement,\n onSortedChange,\n hasDefaultPagination,\n onSelectRowsChange,\n parentElementId,\n tableContentId,\n LoadingCellComponent,\n PaginationComponent,\n getRowPreProps,\n getTableProps,\n getHeaderGroupProps,\n getHeaderProps,\n getRowProps,\n getCellProps,\n getFooterProps,\n getFooterGroupProps,\n showLoadingState,\n noDataMessage,\n rowSubComponent,\n isEnableRowSelect,\n selectColumnProps,\n } = props;\n\n const memoColumns = useMemo(() => columns, [columns]);\n\n const {loadingColumns, loadingData} = useLoadingState(\n showLoadingState,\n isLoading,\n controlledPagination?.pageSize ?? DEFAULT_PAGE_SIZE,\n memoColumns,\n LoadingCellComponent,\n );\n\n const showLoading = showLoadingState && isLoading;\n const hasSelectedRowsAbility = onSelectRowsChange && isFunction(onSelectRowsChange);\n const hasManualSortBy = onSortedChange && isFunction(onSortedChange);\n const hasControlledPagination = fetchData && controlledPagination && Object.keys(controlledPagination).length > 0;\n\n const options: TableOptionsProps = {\n columns: showLoading ? (loadingColumns as Column<DefaultObject>[]) : memoColumns,\n data: showLoading ? loadingData : data,\n initialState,\n disableSortRemove,\n disableMultiSort,\n disabledMultiRemove,\n };\n\n if (hasManualSortBy) {\n options.manualSortBy = true;\n }\n\n if (hasControlledPagination) {\n if (typeof controlledPagination?.pageCount === 'undefined') {\n throw new Error('You have to pass pageCount in controlledPagination data');\n }\n\n options.initialState = {\n ...options.initialState,\n pageIndex: controlledPagination.pageIndex ?? DEFAULT_PAGE_INDEX,\n pageSize: controlledPagination.pageSize ?? DEFAULT_PAGE_SIZE,\n };\n\n options.autoResetPage = true;\n options.manualPagination = true;\n options.pageCount = controlledPagination.pageCount;\n }\n\n const useSelect = (hooks: StandardHooks) => {\n if (!hasSelectedRowsAbility) {\n return;\n }\n\n const newColumn = {\n id: 'selection',\n disableSortBy: true,\n Header: (instance: TableHooksInstanceProps & {toggleAllPageRowsSelected: () => void}) => {\n const {getToggleAllPageRowsSelectedProps, toggleAllPageRowsSelected, page} = instance;\n\n const isDisabledAllRows = page.map(({original}) => original).filter(isEnableRowSelect).length === 0;\n\n return (\n <Checkbox\n elementId=\"all\"\n onChange={toggleAllPageRowsSelected}\n isChecked={getToggleAllPageRowsSelectedProps().checked}\n isDisabled={isDisabledAllRows}\n />\n );\n },\n Cell: ({row}: {row: SelectableRow}) => {\n const {id, original, toggleRowSelected, getToggleRowSelectedProps} = row;\n\n const elementId = Number.isInteger(original.id) ? original.id : id;\n const isEnabled = isEnableRowSelect(row.original);\n\n return (\n <Checkbox\n elementId={elementId}\n onChange={toggleRowSelected}\n isDisabled={!isEnabled}\n isChecked={isEnabled && getToggleRowSelectedProps().checked}\n />\n );\n },\n ...selectColumnProps,\n };\n\n // @ts-ignore\n hooks.visibleColumns.push((tableColumns: Array<StandardColumn>) => [newColumn, ...tableColumns]);\n };\n\n const {\n getTableProps: _getTableProps,\n headerGroups,\n footerGroups,\n setHiddenColumns,\n rows,\n prepareRow,\n visibleColumns,\n ...rest\n } = useTable(\n options,\n useFlexLayout,\n useSortBy,\n useExpanded,\n usePagination,\n useRowSelect,\n useSelect,\n useResizeColumns,\n );\n\n const {\n selectedFlatRows,\n setSortBy,\n page,\n canPreviousPage,\n canNextPage,\n pageCount,\n gotoPage,\n nextPage,\n previousPage,\n setPageSize,\n state: {selectedRowIds, pageIndex, pageSize},\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n } = rest as TableHooksInstanceProps;\n\n const tableRef = useRef(null);\n const tableWrapperRef = useRef(null);\n\n useTableShadow(tableRef, tableWrapperRef);\n\n useEffect(() => {\n if (!initialState?.hiddenColumns) {\n return;\n }\n\n setHiddenColumns(initialState.hiddenColumns);\n }, [initialState?.hiddenColumns]);\n\n useEffect(() => {\n if (hasSelectedRowsAbility) {\n onSelectRowsChange?.(selectedFlatRows?.map((row: StandardRow) => row.original).filter(isEnableRowSelect));\n }\n }, [selectedRowIds]);\n\n let pagination: JSX.Element | null = null;\n\n if (hasDefaultPagination && hasControlledPagination) {\n throw new Error(\n 'You have to pass either hasDefaultPagination true boolean prop or ' +\n 'pass fetchData callback and controlledPagination data',\n );\n }\n\n if (hasControlledPagination || hasDefaultPagination) {\n const paginationData: PaginationProps = {\n setPageSize,\n gotoPage,\n canNextPage,\n canPreviousPage,\n parentElementId,\n labelPerPage,\n pageIndex,\n previousPageHandler: previousPage,\n nextPageHandler: nextPage,\n totalPages: pageCount,\n perPage: pageSize,\n totalItems: totalItems ?? data.length,\n };\n\n if (hasControlledPagination && controlledPagination) {\n paginationData.canNextPage = controlledPagination.pageIndex + 1 !== paginationData.totalPages;\n paginationData.canPreviousPage = controlledPagination.pageIndex !== 0;\n paginationData.pageIndex = controlledPagination.pageIndex;\n paginationData.perPage = controlledPagination.pageSize;\n\n paginationData.setPageSize = (newPageSize: number) => {\n fetchData?.({\n pageIndex: paginationData.pageIndex,\n pageSize: newPageSize,\n });\n };\n\n paginationData.gotoPage = (newPageIndex: number) => {\n fetchData?.({\n pageIndex: newPageIndex,\n pageSize: paginationData.perPage,\n });\n };\n\n paginationData.nextPageHandler = () => {\n const newPageIndex = paginationData.pageIndex + 1;\n paginationData.gotoPage(newPageIndex);\n };\n\n paginationData.previousPageHandler = () => {\n const newPageIndex = paginationData.pageIndex - 1;\n paginationData.gotoPage(newPageIndex);\n };\n\n if (controlledPagination?.paginationAmount) {\n paginationData.paginationAmount = controlledPagination.paginationAmount;\n }\n }\n\n pagination = <PaginationComponent {...paginationData} />;\n }\n\n function extendSortByProps(column: ColumnWithSort) {\n const headerProps = column.getSortByToggleProps && column.getSortByToggleProps();\n\n delete headerProps?.style;\n\n if (hasManualSortBy && column.canSort && headerProps) {\n headerProps.onClick = () => {\n onSortedChange?.(column.id, Boolean(column.isSortedDesc));\n setSortBy([\n {\n id: column.id,\n desc: !column.isSortedDesc,\n },\n ]);\n };\n }\n\n return headerProps;\n }\n\n const tBodyTr = hasControlledPagination || hasDefaultPagination ? page : rows;\n\n return (\n <TableRoot className=\"table-root\">\n <TableLoading isLoading={!showLoadingState && isLoading} className=\"table-loading\">\n <TableLoadingInner>{loadingMessage}</TableLoadingInner>\n </TableLoading>\n <TableWrapper ref={tableWrapperRef} className=\"table-wrapper\">\n <TableContent id={tableContentId} className=\"table-content\">\n <TableCore {..._getTableProps(getTableBodyProps(getTableProps))} ref={tableRef}>\n <THead className=\"table-head\" data-role=\"table-head\">\n {headerGroups.map((headerGroup) => (\n <TR {...headerGroup.getHeaderGroupProps(getTableElementProps(getHeaderGroupProps))}>\n {headerGroup.headers.map((column) => {\n const headerProps = extendSortByProps(column) as DefaultObject;\n\n return (\n <TH\n {...column.getHeaderProps(\n getTableElementInternalProps(headerProps, getHeaderProps, mainCellGetter),\n )}\n >\n {getHeadContent(column)}\n {renderResizer(column)}\n </TH>\n );\n })}\n </TR>\n ))}\n </THead>\n {footerPlacement.includes(FOOTER_PLACEMENT.TOP) && (\n <TFoot className=\"table-footer-top\" data-role=\"table-footer-top\">\n {footerGroups.map((group) => (\n <TR {...group.getFooterGroupProps(getTableElementProps(getFooterGroupProps))}>\n {group.headers.map((column) => (\n <TD {...column.getFooterProps(getTableElementProps(getFooterProps, mainCellGetter))}>\n {column.render('Footer')}\n </TD>\n ))}\n </TR>\n ))}\n </TFoot>\n )}\n <TBody className=\"table-body\" data-role=\"table-body\">\n {tBodyTr.map((row: StandardRow) => {\n prepareRow(row);\n const {isDelimiterTd} = getRowPreProps(row);\n\n if (isDelimiterTd) {\n const cell = row.cells[0].render('Cell') as React.ReactNode;\n\n return (\n <React.Fragment key={`group_${row.index}`}>\n <TRGroup>\n <TR {...row.getRowProps(getTableRowProps(getRowProps))}>\n <TD\n colSpan={visibleColumns.length}\n {...row.cells[0].getCellProps(getTableCellProps(getCellProps, cellGetter))}\n >\n <strong>{cell}</strong>\n </TD>\n </TR>\n </TRGroup>\n {row?.isExpanded && rowSubComponent && rowSubComponent(row)}\n </React.Fragment>\n );\n }\n\n return (\n <React.Fragment key={`group_${row.index}`}>\n <TRGroup>\n <TR {...row.getRowProps(getTableRowProps(getRowProps))}>\n {row.cells.map((cell: StandardCell) => (\n <TD {...cell.getCellProps(getTableCellProps(getCellProps, cellGetter))}>\n {cell.render('Cell')}\n </TD>\n ))}\n </TR>\n </TRGroup>\n {row?.isExpanded && rowSubComponent && rowSubComponent(row)}\n </React.Fragment>\n );\n })}\n </TBody>\n {footerPlacement.includes(FOOTER_PLACEMENT.BOTTOM) && (\n <TFoot className=\"table-footer-bottom\" data-role=\"table-footer-bottom\">\n {footerGroups.map((group) => (\n <TR {...group.getFooterGroupProps(getTableElementProps(getFooterGroupProps))}>\n {group.headers.map((column) => (\n <TD {...column.getFooterProps(getTableElementProps(getFooterProps, mainCellGetter))}>\n {column.render('Footer')}\n </TD>\n ))}\n </TR>\n ))}\n </TFoot>\n )}\n </TableCore>\n </TableContent>\n </TableWrapper>\n {!isLoading && !data.length && noDataMessage}\n {pagination}\n </TableRoot>\n );\n};\n\nTable.defaultProps = defaultProps;\n\nexport {Table};\n"],"names":["useLoadingState","showLoadingState","loading","pageSize","columns","LoadingCellComponent","loadingColumns","useMemo","map","column","loadingColumn","_extends","Cell","React","loadingData","length","dataObject","dataArray","i","push","TABLE_SHADOW_CLASS_NAME","LEFT","RIGHT","changeClassName","tableWrapperNode","newClassNameList","classList","remove","add","apply","calculateNewClassNames","tableNode","tableRect","getBoundingClientRect","tableWrapperRect","newClassName","tableRectLeft","Math","floor","left","tableRectRight","right","tableWrapperRectLeft","tableWrapperRectRight","tableRef","tableWrapperRef","useEffect","ticking","onMousewheel","window","requestAnimationFrame","current","_tableRef$current","addEventListener","_tableRef$current2","removeEventListener","FOOTER_PLACEMENT","defaultGetter","props","cellGetter","_ref","_cell$column","cell","align","mainCellGetter","_ref2","getTableProps","userGetter","getter","getTableElementProps","meta","getTableRowProps","getTableCellProps","getTableElementInternalProps","internalProps","loadingAnimation","keyframes","_templateObject","_taggedTemplateLiteralLoose","TableLoading","styled","div","_templateObject2","isLoading","css","_templateObject3","TableLoadingInner","_templateObject4","TableWrapper","_templateObject5","TableRoot","_templateObject6","fontNormal","TableContent","_templateObject7","TableCore","_templateObject8","HeadCell","_templateObject9","TD","_templateObject0","_templateObject1","EmptyStateCell","_templateObject10","spacing","gray95","white","TH","_templateObject11","THead","_templateObject12","black","TRGroup","_templateObject13","TR","_templateObject14","TBody","_templateObject15","gray80","TFoot","_templateObject16","TResizer","_templateObject17","_TableRoot","_TableWrapper","_TableContent","_HeadCell","_TableLoading","_TableLoadingInner","_TD","_TableCore","_THead","_TR","_TH","_TBody","_TRGroup","_TFoot","_EmptyStateCell","_TResizer","isEnableRowSelectDefault","selectColumnPropsDefault","getRowPrePropsDefault","defaultProps","hasDefaultPagination","footerPlacement","loadingMessage","labelPerPage","parentElementId","tableContentId","initialState","getRowPreProps","isEnableRowSelect","selectColumnProps","noDataMessage","disableSortRemove","disableMultiSort","disabledMultiRemove","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","isFunction","reference","renderResizer","isResizable","getResizerProps","onClick","e","preventDefault","stopPropagation","getHeadContent","isSorted","isSortedDesc","render","ArrowDown","size","SIZE","SMALL","color","COLOR","GRAY_DARK","ArrowUp","Table","data","totalItems","fetchData","controlledPagination","onSortedChange","onSelectRowsChange","PaginationComponent","getHeaderGroupProps","getHeaderProps","getRowProps","getCellProps","getFooterProps","getFooterGroupProps","rowSubComponent","memoColumns","_useLoadingState","_controlledPagination","showLoading","hasSelectedRowsAbility","hasManualSortBy","hasControlledPagination","Object","keys","options","manualSortBy","_controlledPagination2","_controlledPagination3","pageCount","Error","pageIndex","autoResetPage","manualPagination","useSelect","hooks","newColumn","id","disableSortBy","Header","instance","getToggleAllPageRowsSelectedProps","toggleAllPageRowsSelected","page","isDisabledAllRows","original","filter","Checkbox","elementId","onChange","isChecked","checked","isDisabled","row","toggleRowSelected","getToggleRowSelectedProps","Number","isInteger","isEnabled","visibleColumns","tableColumns","concat","_useTable","useTable","useFlexLayout","useSortBy","useExpanded","usePagination","useRowSelect","useResizeColumns","_getTableProps","headerGroups","footerGroups","setHiddenColumns","rows","prepareRow","rest","_objectWithoutPropertiesLoose","_excluded","selectedFlatRows","setSortBy","canPreviousPage","canNextPage","gotoPage","nextPage","previousPage","setPageSize","_rest$state","state","selectedRowIds","useRef","useTableShadow","hiddenColumns","pagination","paginationData","previousPageHandler","nextPageHandler","totalPages","perPage","newPageSize","newPageIndex","paginationAmount","extendSortByProps","headerProps","getSortByToggleProps","style","canSort","Boolean","desc","tBodyTr","className","ref","getTableBodyProps","headerGroup","headers","includes","TOP","group","_getRowPreProps","isDelimiterTd","cells","Fragment","key","index","colSpan","isExpanded","BOTTOM"],"mappings":"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"}
1
+ {"version":3,"file":"table.esm.js","sources":["../src/useLoadingState.tsx","../src/useTableShadow.tsx","../src/types.tsx","../src/propsGetter.tsx","../src/style.tsx","../src/index.tsx"],"sourcesContent":["import React, {FunctionComponent, useMemo} from 'react';\nimport {Column} from 'react-table';\nimport {DefaultObject, LoadingState} from './types';\n\nconst useLoadingState = (\n showLoadingState: boolean,\n loading: boolean,\n pageSize: number,\n columns: Column<DefaultObject>[],\n LoadingCellComponent: FunctionComponent<DefaultObject>,\n): LoadingState => {\n const loadingColumns: Column<DefaultObject>[] | undefined = useMemo(\n () =>\n showLoadingState && loading\n ? columns.map((column: Column<DefaultObject>) => {\n const loadingColumn: Column<DefaultObject> = {\n ...column,\n Cell: () => <LoadingCellComponent />,\n };\n\n return loadingColumn;\n })\n : [],\n [columns, loading, showLoadingState],\n );\n\n const loadingData = useMemo(() => {\n if (showLoadingState && loading && columns && columns.length > 0) {\n const dataObject: DefaultObject = {};\n const dataArray: DefaultObject[] = [];\n\n for (let i = 0; i < columns.length; i += 1) {\n dataObject[`empty_${i}`] = '';\n }\n for (let i = 0; i < pageSize; i += 1) {\n dataArray.push(dataObject);\n }\n\n return dataArray;\n }\n\n return [];\n }, [columns, loading, pageSize, showLoadingState]);\n\n return {\n // @ts-ignore\n loadingColumns,\n loadingData,\n };\n};\n\nexport default useLoadingState;\n","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport {useEffect} from 'react';\n\nconst TABLE_SHADOW_CLASS_NAME = {\n LEFT: 'shadow_left',\n RIGHT: 'shadow_right',\n};\n\nfunction changeClassName(tableWrapperNode: Element, newClassNameList: string[]) {\n const {classList} = tableWrapperNode;\n\n classList.remove(TABLE_SHADOW_CLASS_NAME.LEFT, TABLE_SHADOW_CLASS_NAME.RIGHT);\n classList.add(...newClassNameList);\n}\n\nfunction calculateNewClassNames(tableNode, tableWrapperNode) {\n if (!tableNode || !tableWrapperNode) {\n return;\n }\n\n const tableRect = tableNode.getBoundingClientRect();\n const tableWrapperRect = tableWrapperNode.getBoundingClientRect();\n const newClassName = [];\n\n const tableRectLeft = Math.floor(tableRect.left);\n const tableRectRight = Math.floor(tableRect.right);\n const tableWrapperRectLeft = Math.floor(tableWrapperRect.left);\n const tableWrapperRectRight = Math.floor(tableWrapperRect.right);\n\n if (tableRectLeft < tableWrapperRectLeft) {\n newClassName.push(TABLE_SHADOW_CLASS_NAME.LEFT);\n }\n\n if (tableRectRight > tableWrapperRectRight) {\n newClassName.push(TABLE_SHADOW_CLASS_NAME.RIGHT);\n }\n\n changeClassName(tableWrapperNode, newClassName);\n}\n\nexport default (tableRef, tableWrapperRef) => {\n useEffect(() => {\n let ticking = false;\n\n function onMousewheel() {\n if (ticking) {\n return;\n }\n\n window.requestAnimationFrame(() => {\n calculateNewClassNames(tableRef.current, tableWrapperRef.current);\n ticking = false;\n });\n\n ticking = true;\n }\n\n calculateNewClassNames(tableRef.current, tableWrapperRef.current);\n\n tableRef?.current?.addEventListener('mousewheel', onMousewheel);\n window.addEventListener('resize', onMousewheel);\n\n return () => {\n tableRef?.current?.removeEventListener('mousewheel', onMousewheel);\n window.removeEventListener('resize', onMousewheel);\n };\n }, [tableRef.current, tableWrapperRef.current]);\n};\n","import React, {FunctionComponent, ReactElement, ReactNode} from 'react';\nimport {\n Cell,\n CellPropGetter,\n Column,\n FooterGroupPropGetter,\n FooterPropGetter,\n HeaderGroup,\n HeaderGroupPropGetter,\n Hooks,\n Meta,\n Row,\n RowPropGetter,\n TableBodyPropGetter,\n TablePropGetter,\n TableState,\n UsePaginationInstanceProps,\n UsePaginationOptions,\n UsePaginationState,\n UseRowSelectInstanceProps,\n UseRowSelectState,\n UseSortByColumnProps,\n UseRowSelectRowProps,\n UseSortByInstanceProps,\n UseSortByOptions,\n UseTableOptions,\n HeaderPropGetter,\n} from 'react-table';\n\nexport type DefaultObject = Record<string, string | number | unknown>;\n\nexport type LoadingState = {\n loadingColumns?: Column[];\n loadingData: any[];\n};\n\nexport enum FOOTER_PLACEMENT {\n TOP = 'top',\n BOTTOM = 'bottom',\n}\n\nexport type PaginationProps = {\n paginationAmount?: string | ReactNode | ReactElement;\n parentElementId: string;\n labelPerPage?: string;\n pageSizes?: Array<string | number>;\n pageIndex: number;\n perPage: number;\n totalPages: number;\n totalItems: number;\n canNextPage: boolean;\n canPreviousPage: boolean;\n nextPageHandler: () => void;\n previousPageHandler: () => void;\n setPageSize: (size: number) => void;\n gotoPage: (page: number) => void;\n};\n\nexport type ControlledPagination = {\n paginationAmount?: string | ReactNode | ReactElement;\n pageSize: number;\n pageIndex: number;\n pageCount: number;\n};\n\nexport type TableProps = {\n columns: Array<Column<DefaultObject>>;\n data: [];\n totalItems?: number;\n PaginationComponent: React.FunctionComponent<PaginationProps>;\n initialState: Partial<TableState<DefaultObject>>;\n fetchData?: (params: {pageIndex: number; pageSize: number}) => void;\n onSortedChange?: (id: string, isDesc: boolean) => void;\n isLoading?: boolean;\n footerPlacement?: Array<FOOTER_PLACEMENT>;\n hasDefaultPagination?: boolean;\n onSelectRowsChange?: (rows: Array<DefaultObject>) => void;\n controlledPagination?: ControlledPagination;\n loadingMessage?: string;\n labelPerPage?: string;\n parentElementId?: string;\n tableContentId?: string;\n getRowPreProps?: (row: Row) => DefaultObject;\n getTableProps?: TableGetter;\n getHeaderGroupProps?: ElementGetter;\n getHeaderProps?: ElementGetter;\n getRowProps?: ElementGetter;\n getCellProps?: ElementGetter;\n getFooterProps?: ElementGetter;\n getFooterGroupProps?: ElementGetter;\n showLoadingState?: boolean;\n LoadingCellComponent?: FunctionComponent<DefaultObject>;\n noDataMessage?: string | ReactElement;\n rowSubComponent?: (row: StandardRow) => ReactElement;\n isEnableRowSelect?: (original: DefaultObject) => boolean;\n};\n\nexport type TableOptions = {\n columns: Array<Column<DefaultObject>>;\n data: Array<DefaultObject>;\n initialState: {\n pageIndex?: number;\n pageSize?: number;\n };\n disableSortRemove: boolean;\n disableMultiSort: boolean;\n disableMultiRemove: boolean;\n manualSortBy?: boolean;\n autoResetPage?: boolean;\n manualPagination?: boolean;\n pageCount?: number;\n};\n\nexport type MetaProps = {\n column?: HeaderGroup<DefaultObject>;\n cell?: Cell;\n};\n\nexport type BaseMeta = Meta<DefaultObject, MetaProps>;\n\nexport type TableGetter = (props: DefaultObject) => DefaultObject;\n\nexport type ElementGetter = (props: DefaultObject, meta: BaseMeta) => DefaultObject;\n\nexport type ElementCellPropGetter = CellPropGetter<DefaultObject>;\n\nexport type ElementRowPropGetter = RowPropGetter<DefaultObject>;\n\nexport type ElementHeaderFooterPropGetter =\n | FooterGroupPropGetter<DefaultObject>\n | HeaderGroupPropGetter<DefaultObject>\n | FooterPropGetter<DefaultObject>;\n\nexport type GetTableContainerPropsGetter = (\n userGetter?: TableGetter,\n getter?: TableGetter,\n) => TablePropGetter<DefaultObject> | TableBodyPropGetter<DefaultObject>;\n\nexport type GetTableElementPropsGetter<T> = (userGetter?: ElementGetter, getter?: ElementGetter) => T;\n\nexport type GetTableElementInternalPropsGetter = (\n internalProps: DefaultObject,\n userGetter?: ElementGetter,\n getter?: ElementGetter,\n) => HeaderPropGetter<DefaultObject>;\n\nexport type ColumnWithSort = HeaderGroup<DefaultObject> & Partial<UseSortByColumnProps<DefaultObject>>;\n\nexport type StandardColumn = Column<DefaultObject>;\n\nexport type StandardRow = Row<DefaultObject> & {isExpanded?: boolean};\n\nexport type SelectableRow = Row<{id: string}> & UseRowSelectRowProps<DefaultObject>;\n\nexport type StandardCell = Cell<DefaultObject>;\n\nexport type SelectableRowInstanceProps = UseRowSelectInstanceProps<DefaultObject>;\n\nexport type StandardHooks = Hooks<DefaultObject>;\n\nexport type TableHooksInstanceProps = UseSortByInstanceProps<DefaultObject> &\n UsePaginationInstanceProps<DefaultObject> &\n UseRowSelectInstanceProps<DefaultObject> & {\n state: UseRowSelectState<DefaultObject> & UsePaginationState<DefaultObject>;\n };\n\nexport type TableOptionsProps = UseTableOptions<DefaultObject> &\n UseSortByOptions<DefaultObject> &\n UsePaginationOptions<DefaultObject> & {\n initialState: Partial<TableState<DefaultObject>> & Partial<UsePaginationState<DefaultObject>>;\n };\n\nexport class Table extends React.Component<Partial<TableProps>> {}\n","import {\n ElementGetter,\n BaseMeta,\n TableGetter,\n ElementCellPropGetter,\n ElementRowPropGetter,\n DefaultObject,\n ElementHeaderFooterPropGetter,\n GetTableElementPropsGetter,\n GetTableContainerPropsGetter,\n GetTableElementInternalPropsGetter,\n} from './types';\n\nexport const defaultGetter: ElementGetter = (props) => props;\n\nexport const cellGetter: ElementGetter = (props, {cell}) => ({\n ...props,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n align: cell?.column?.align,\n});\nexport const mainCellGetter: ElementGetter = (props, {column}) => ({\n ...props,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n align: column?.align,\n});\n\nexport const getTableProps: GetTableContainerPropsGetter = (userGetter, getter = defaultGetter as TableGetter) => {\n if (userGetter) {\n return (props) => ({\n ...getter(props),\n ...userGetter(props),\n });\n }\n\n return getter;\n};\n\nexport const getTableElementProps: GetTableElementPropsGetter<ElementHeaderFooterPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableRowProps: GetTableElementPropsGetter<ElementRowPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableCellProps: GetTableElementPropsGetter<ElementCellPropGetter> = (\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter(props, meta),\n ...userGetter(props, meta),\n });\n }\n\n return getter;\n};\n\nexport const getTableElementInternalProps: GetTableElementInternalPropsGetter = (\n internalProps,\n userGetter,\n getter = defaultGetter,\n) => {\n if (userGetter) {\n return (props, meta) => ({\n ...getter({...props, ...internalProps}, meta),\n ...userGetter(props, meta),\n });\n }\n\n return (props: DefaultObject, meta: BaseMeta) => getter({...props, ...internalProps}, meta);\n};\n","/* eslint max-len: off */\nimport styled, {keyframes, css, CSSObject} from 'styled-components';\nimport {fontNormal, white, black, spacing, gray80, gray95} from '@propellerads/stylevariables';\n\nconst loadingAnimation = keyframes`\n from {\n background-position-x: 0;\n }\n 50% {\n background-position-x: 100%;\n }\n 100% {\n background-position-x: 0;\n }\n`;\n\nexport const TableLoading = styled.div`\n display: block;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.8);\n transition: all 0.3s ease;\n z-index: -1;\n opacity: 0;\n pointer-events: none;\n\n ${(props: {isLoading: boolean}) =>\n props.isLoading &&\n css`\n opacity: 1;\n z-index: 2;\n pointer-events: all;\n `}\n`;\n\nexport const TableLoadingInner = styled.div`\n position: absolute;\n display: block;\n text-align: center;\n width: 100%;\n top: 50%;\n left: 0;\n color: rgba(0, 0, 0, 0.6);\n transform: translateY(-52%);\n transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);\n`;\n\nexport const TableWrapper = styled.div`\n position: relative;\n overflow: hidden;\n\n &::before {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n position: absolute;\n width: 10px;\n height: 100%;\n top: 0;\n left: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &::after {\n bottom: 10px;\n content: '';\n opacity: 0;\n pointer-events: none;\n width: 10px;\n height: 100%;\n position: absolute;\n top: 0;\n right: -10px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);\n transition: 0.3s opacity;\n }\n\n &.shadow_left {\n &::before {\n opacity: 1 !important;\n }\n }\n\n &.shadow_right {\n &::after {\n opacity: 1 !important;\n }\n }\n`;\n\nexport const TableRoot = styled.div`\n font-size: ${fontNormal}px;\n position: relative;\n display: flex;\n flex-direction: column;\n border: 0;\n`;\n\nexport const TableContent = styled.div`\n display: block;\n max-width: 100%;\n overflow-x: scroll;\n overflow-y: hidden;\n`;\n\nexport const TableCore = styled.div`\n flex: auto 1;\n display: flex;\n flex-direction: column;\n align-items: stretch;\n border-collapse: collapse;\n`;\n\nexport const HeadCell = styled.div`\n display: inline-flex;\n`;\n\nexport const TD = styled.div`\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: 1.3rem;\n padding: 7px 4px;\n overflow: hidden;\n transition: width 0.3s ease 0s, min-width, padding, opacity;\n\n ${({align}: {align?: CSSObject; colSpan?: number}) =>\n align &&\n css`\n text-align: ${align};\n `}\n`;\n\nexport const EmptyStateCell = styled.div`\n width: 100%;\n height: ${spacing * 4}px;\n background: linear-gradient(to left, ${gray95}, ${white}, ${gray95});\n background-size: 200% 200%;\n animation: ${loadingAnimation} 1.6s linear infinite;\n`;\n\nexport const TH = styled.div`\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;\n color: rgb(0, 0, 0);\n font-weight: 500;\n outline: none;\n`;\n\nexport const THead = styled.div`\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n user-select: none;\n\n ${TH}, ${TD} {\n padding: 0 4px;\n line-height: normal;\n position: relative;\n transition: box-shadow 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);\n color: ${black};\n font-weight: 500;\n outline: none;\n }\n`;\n\nexport const TRGroup = styled.div`\n display: flex;\n flex: 1 0 auto;\n box-shadow: inset 0 -1px 0 0 ${gray95};\n min-width: 100%;\n width: max-content;\n`;\n\nexport const TR = styled.div`\n padding: 0;\n -webkit-box-align: center;\n align-items: center;\n`;\n\nexport const TBody = styled.div`\n border-top: 1px solid ${gray80};\n margin-top: ${spacing * 2}px;\n min-width: 100%;\n width: max-content;\n`;\n\nexport const TFoot = styled.div`\n background: ${gray95};\n flex: 1 0 auto;\n display: flex;\n flex-direction: column;\n`;\n\nexport const TResizer = styled.div`\n display: inline-block;\n position: absolute;\n right: 5px;\n top: 0;\n z-index: 1;\n touch-action: none;\n\n &:after {\n content: '↔';\n position: absolute;\n right: 0;\n top: 0;\n }\n`;\n","import React, {FunctionComponent, useEffect, useMemo, useRef} from 'react';\nimport {\n useSortBy,\n useTable,\n useRowSelect,\n usePagination,\n useExpanded,\n useFlexLayout,\n useResizeColumns,\n Column,\n} from 'react-table';\n\nimport {ArrowDown, ArrowUp, Color, Size} from '@propellerads/icon';\nimport Checkbox from '@propellerads/input-checkbox';\n\nimport useLoadingState from './useLoadingState';\nimport useTableShadow from './useTableShadow';\n\nimport {\n FOOTER_PLACEMENT,\n TableProps,\n PaginationProps,\n StandardHooks,\n StandardColumn,\n StandardRow,\n StandardCell,\n ColumnWithSort,\n TableHooksInstanceProps,\n TableOptionsProps,\n SelectableRow,\n DefaultObject,\n} from './types';\n\nimport {\n getTableProps as getTableBodyProps,\n getTableElementProps,\n getTableElementInternalProps,\n cellGetter,\n mainCellGetter,\n getTableCellProps,\n getTableRowProps,\n} from './propsGetter';\n\nimport {\n TableRoot as _TableRoot,\n TableWrapper as _TableWrapper,\n TableContent as _TableContent,\n HeadCell as _HeadCell,\n TableLoading as _TableLoading,\n TableLoadingInner as _TableLoadingInner,\n TD as _TD,\n TableCore as _TableCore,\n THead as _THead,\n TR as _TR,\n TH as _TH,\n TBody as _TBody,\n TRGroup as _TRGroup,\n TFoot as _TFoot,\n EmptyStateCell as _EmptyStateCell,\n TResizer as _TResizer,\n} from './style';\n\nconst TableRoot = _TableRoot as unknown as React.FunctionComponent<DefaultObject>;\nconst TableWrapper = _TableWrapper as unknown as React.FunctionComponent<DefaultObject>;\nconst TableContent = _TableContent as unknown as React.FunctionComponent<DefaultObject>;\nconst HeadCell = _HeadCell as unknown as React.FunctionComponent<DefaultObject>;\nconst TableLoading = _TableLoading as unknown as React.FunctionComponent<DefaultObject>;\nconst TableLoadingInner = _TableLoadingInner as unknown as React.FunctionComponent<DefaultObject>;\nconst TD = _TD as unknown as React.FunctionComponent<DefaultObject>;\nconst TableCore = _TableCore as unknown as React.FunctionComponent<DefaultObject>;\nconst THead = _THead as unknown as React.FunctionComponent<DefaultObject>;\nconst TR = _TR as unknown as React.FunctionComponent<DefaultObject>;\nconst TH = _TH as unknown as React.FunctionComponent<DefaultObject>;\nconst TBody = _TBody as unknown as React.FunctionComponent<DefaultObject>;\nconst TRGroup = _TRGroup as unknown as React.FunctionComponent<DefaultObject>;\nconst TFoot = _TFoot as unknown as React.FunctionComponent<DefaultObject>;\nconst EmptyStateCell = _EmptyStateCell as unknown as React.FunctionComponent<DefaultObject>;\nconst TResizer = _TResizer as unknown as React.FunctionComponent<DefaultObject>;\n\nconst isEnableRowSelectDefault: () => boolean = () => true;\nconst selectColumnPropsDefault = {};\nconst getRowPrePropsDefault: () => DefaultObject = () => ({});\n\nexport const defaultProps = {\n hasDefaultPagination: false,\n isLoading: false,\n footerPlacement: [],\n loadingMessage: 'loading...',\n labelPerPage: 'Show rows',\n parentElementId: 'parent-element',\n tableContentId: '',\n showLoadingState: false,\n initialState: {},\n LoadingCellComponent: EmptyStateCell,\n getRowPreProps: getRowPrePropsDefault,\n isEnableRowSelect: isEnableRowSelectDefault,\n selectColumnProps: selectColumnPropsDefault,\n noDataMessage: '',\n};\n\ntype DefaultProps = Readonly<typeof defaultProps>;\n\nconst disableSortRemove = true;\nconst disableMultiSort = true;\nconst disabledMultiRemove = true;\n\nconst DEFAULT_PAGE_INDEX = 0;\nconst DEFAULT_PAGE_SIZE = 10;\n\nfunction isFunction(reference?: (arg1?: any, arg2?: any) => void) {\n return typeof reference === 'function';\n}\n\nfunction renderResizer(column) {\n if (column.isResizable) {\n return (\n <TResizer\n {...column.getResizerProps()}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n );\n }\n\n return null;\n}\n\nfunction getHeadContent(column: ColumnWithSort) {\n if (column.isSorted && column.isSortedDesc) {\n return (\n <HeadCell>\n {column.render('Header')}\n <ArrowUp size={Size.Small} color={Color.GrayDark} />\n </HeadCell>\n );\n }\n\n if (column.isSorted && !column.isSortedDesc) {\n return (\n <HeadCell>\n {column.render('Header')}\n <ArrowDown size={Size.Small} color={Color.GrayDark} />\n </HeadCell>\n );\n }\n\n return column.render('Header');\n}\n\nconst Table: FunctionComponent<TableProps & DefaultProps> = (props) => {\n const {\n columns,\n data,\n totalItems,\n fetchData,\n controlledPagination,\n initialState,\n isLoading,\n loadingMessage,\n labelPerPage,\n footerPlacement,\n onSortedChange,\n hasDefaultPagination,\n onSelectRowsChange,\n parentElementId,\n tableContentId,\n LoadingCellComponent,\n PaginationComponent,\n getRowPreProps,\n getTableProps,\n getHeaderGroupProps,\n getHeaderProps,\n getRowProps,\n getCellProps,\n getFooterProps,\n getFooterGroupProps,\n showLoadingState,\n noDataMessage,\n rowSubComponent,\n isEnableRowSelect,\n selectColumnProps,\n } = props;\n\n const memoColumns = useMemo(() => columns, [columns]);\n\n const {loadingColumns, loadingData} = useLoadingState(\n showLoadingState,\n isLoading,\n controlledPagination?.pageSize ?? DEFAULT_PAGE_SIZE,\n memoColumns,\n LoadingCellComponent,\n );\n\n const showLoading = showLoadingState && isLoading;\n const hasSelectedRowsAbility = onSelectRowsChange && isFunction(onSelectRowsChange);\n const hasManualSortBy = onSortedChange && isFunction(onSortedChange);\n const hasControlledPagination = fetchData && controlledPagination && Object.keys(controlledPagination).length > 0;\n\n const options: TableOptionsProps = {\n columns: showLoading ? (loadingColumns as Column<DefaultObject>[]) : memoColumns,\n data: showLoading ? loadingData : data,\n initialState,\n disableSortRemove,\n disableMultiSort,\n disabledMultiRemove,\n };\n\n if (hasManualSortBy) {\n options.manualSortBy = true;\n }\n\n if (hasControlledPagination) {\n if (typeof controlledPagination?.pageCount === 'undefined') {\n throw new Error('You have to pass pageCount in controlledPagination data');\n }\n\n options.initialState = {\n ...options.initialState,\n pageIndex: controlledPagination.pageIndex ?? DEFAULT_PAGE_INDEX,\n pageSize: controlledPagination.pageSize ?? DEFAULT_PAGE_SIZE,\n };\n\n options.autoResetPage = true;\n options.manualPagination = true;\n options.pageCount = controlledPagination.pageCount;\n }\n\n const useSelect = (hooks: StandardHooks) => {\n if (!hasSelectedRowsAbility) {\n return;\n }\n\n const newColumn = {\n id: 'selection',\n disableSortBy: true,\n Header: (instance: TableHooksInstanceProps & {toggleAllPageRowsSelected: () => void}) => {\n const {getToggleAllPageRowsSelectedProps, toggleAllPageRowsSelected, page} = instance;\n\n const isDisabledAllRows = page.map(({original}) => original).filter(isEnableRowSelect).length === 0;\n\n return (\n <Checkbox\n elementId=\"all\"\n onChange={toggleAllPageRowsSelected}\n isChecked={getToggleAllPageRowsSelectedProps().checked}\n isDisabled={isDisabledAllRows}\n />\n );\n },\n Cell: ({row}: {row: SelectableRow}) => {\n const {id, original, toggleRowSelected, getToggleRowSelectedProps} = row;\n\n const elementId = Number.isInteger(original.id) ? original.id : id;\n const isEnabled = isEnableRowSelect(row.original);\n\n return (\n <Checkbox\n elementId={elementId}\n onChange={toggleRowSelected}\n isDisabled={!isEnabled}\n isChecked={isEnabled && getToggleRowSelectedProps().checked}\n />\n );\n },\n ...selectColumnProps,\n };\n\n // @ts-ignore\n hooks.visibleColumns.push((tableColumns: Array<StandardColumn>) => [newColumn, ...tableColumns]);\n };\n\n const {\n getTableProps: _getTableProps,\n headerGroups,\n footerGroups,\n setHiddenColumns,\n rows,\n prepareRow,\n visibleColumns,\n ...rest\n } = useTable(\n options,\n useFlexLayout,\n useSortBy,\n useExpanded,\n usePagination,\n useRowSelect,\n useSelect,\n useResizeColumns,\n );\n\n const {\n selectedFlatRows,\n setSortBy,\n page,\n canPreviousPage,\n canNextPage,\n pageCount,\n gotoPage,\n nextPage,\n previousPage,\n setPageSize,\n state: {selectedRowIds, pageIndex, pageSize},\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n } = rest as TableHooksInstanceProps;\n\n const tableRef = useRef(null);\n const tableWrapperRef = useRef(null);\n\n useTableShadow(tableRef, tableWrapperRef);\n\n useEffect(() => {\n if (!initialState?.hiddenColumns) {\n return;\n }\n\n setHiddenColumns(initialState.hiddenColumns);\n }, [initialState?.hiddenColumns]);\n\n useEffect(() => {\n if (hasSelectedRowsAbility) {\n onSelectRowsChange?.(selectedFlatRows?.map((row: StandardRow) => row.original).filter(isEnableRowSelect));\n }\n }, [selectedRowIds]);\n\n let pagination: JSX.Element | null = null;\n\n if (hasDefaultPagination && hasControlledPagination) {\n throw new Error(\n 'You have to pass either hasDefaultPagination true boolean prop or ' +\n 'pass fetchData callback and controlledPagination data',\n );\n }\n\n if (hasControlledPagination || hasDefaultPagination) {\n const paginationData: PaginationProps = {\n setPageSize,\n gotoPage,\n canNextPage,\n canPreviousPage,\n parentElementId,\n labelPerPage,\n pageIndex,\n previousPageHandler: previousPage,\n nextPageHandler: nextPage,\n totalPages: pageCount,\n perPage: pageSize,\n totalItems: totalItems ?? data.length,\n };\n\n if (hasControlledPagination && controlledPagination) {\n paginationData.canNextPage = controlledPagination.pageIndex + 1 !== paginationData.totalPages;\n paginationData.canPreviousPage = controlledPagination.pageIndex !== 0;\n paginationData.pageIndex = controlledPagination.pageIndex;\n paginationData.perPage = controlledPagination.pageSize;\n\n paginationData.setPageSize = (newPageSize: number) => {\n fetchData?.({\n pageIndex: paginationData.pageIndex,\n pageSize: newPageSize,\n });\n };\n\n paginationData.gotoPage = (newPageIndex: number) => {\n fetchData?.({\n pageIndex: newPageIndex,\n pageSize: paginationData.perPage,\n });\n };\n\n paginationData.nextPageHandler = () => {\n const newPageIndex = paginationData.pageIndex + 1;\n paginationData.gotoPage(newPageIndex);\n };\n\n paginationData.previousPageHandler = () => {\n const newPageIndex = paginationData.pageIndex - 1;\n paginationData.gotoPage(newPageIndex);\n };\n\n if (controlledPagination?.paginationAmount) {\n paginationData.paginationAmount = controlledPagination.paginationAmount;\n }\n }\n\n pagination = <PaginationComponent {...paginationData} />;\n }\n\n function extendSortByProps(column: ColumnWithSort) {\n const headerProps = column.getSortByToggleProps && column.getSortByToggleProps();\n\n delete headerProps?.style;\n\n if (hasManualSortBy && column.canSort && headerProps) {\n headerProps.onClick = () => {\n onSortedChange?.(column.id, Boolean(column.isSortedDesc));\n setSortBy([\n {\n id: column.id,\n desc: !column.isSortedDesc,\n },\n ]);\n };\n }\n\n return headerProps;\n }\n\n const tBodyTr = hasControlledPagination || hasDefaultPagination ? page : rows;\n\n return (\n <TableRoot className=\"table-root\">\n <TableLoading isLoading={!showLoadingState && isLoading} className=\"table-loading\">\n <TableLoadingInner>{loadingMessage}</TableLoadingInner>\n </TableLoading>\n <TableWrapper ref={tableWrapperRef} className=\"table-wrapper\">\n <TableContent id={tableContentId} className=\"table-content\">\n <TableCore {..._getTableProps(getTableBodyProps(getTableProps))} ref={tableRef}>\n <THead className=\"table-head\" data-role=\"table-head\">\n {headerGroups.map((headerGroup) => (\n <TR {...headerGroup.getHeaderGroupProps(getTableElementProps(getHeaderGroupProps))}>\n {headerGroup.headers.map((column) => {\n const headerProps = extendSortByProps(column) as DefaultObject;\n\n return (\n <TH\n {...column.getHeaderProps(\n getTableElementInternalProps(headerProps, getHeaderProps, mainCellGetter),\n )}\n >\n {getHeadContent(column)}\n {renderResizer(column)}\n </TH>\n );\n })}\n </TR>\n ))}\n </THead>\n {footerPlacement.includes(FOOTER_PLACEMENT.TOP) && (\n <TFoot className=\"table-footer-top\" data-role=\"table-footer-top\">\n {footerGroups.map((group) => (\n <TR {...group.getFooterGroupProps(getTableElementProps(getFooterGroupProps))}>\n {group.headers.map((column) => (\n <TD {...column.getFooterProps(getTableElementProps(getFooterProps, mainCellGetter))}>\n {column.render('Footer')}\n </TD>\n ))}\n </TR>\n ))}\n </TFoot>\n )}\n <TBody className=\"table-body\" data-role=\"table-body\">\n {tBodyTr.map((row: StandardRow) => {\n prepareRow(row);\n const {isDelimiterTd} = getRowPreProps(row);\n\n if (isDelimiterTd) {\n const cell = row.cells[0].render('Cell') as React.ReactNode;\n\n return (\n <React.Fragment key={`group_${row.index}`}>\n <TRGroup>\n <TR {...row.getRowProps(getTableRowProps(getRowProps))}>\n <TD\n colSpan={visibleColumns.length}\n {...row.cells[0].getCellProps(getTableCellProps(getCellProps, cellGetter))}\n >\n <strong>{cell}</strong>\n </TD>\n </TR>\n </TRGroup>\n {row?.isExpanded && rowSubComponent && rowSubComponent(row)}\n </React.Fragment>\n );\n }\n\n return (\n <React.Fragment key={`group_${row.index}`}>\n <TRGroup>\n <TR {...row.getRowProps(getTableRowProps(getRowProps))}>\n {row.cells.map((cell: StandardCell) => (\n <TD {...cell.getCellProps(getTableCellProps(getCellProps, cellGetter))}>\n {cell.render('Cell')}\n </TD>\n ))}\n </TR>\n </TRGroup>\n {row?.isExpanded && rowSubComponent && rowSubComponent(row)}\n </React.Fragment>\n );\n })}\n </TBody>\n {footerPlacement.includes(FOOTER_PLACEMENT.BOTTOM) && (\n <TFoot className=\"table-footer-bottom\" data-role=\"table-footer-bottom\">\n {footerGroups.map((group) => (\n <TR {...group.getFooterGroupProps(getTableElementProps(getFooterGroupProps))}>\n {group.headers.map((column) => (\n <TD {...column.getFooterProps(getTableElementProps(getFooterProps, mainCellGetter))}>\n {column.render('Footer')}\n </TD>\n ))}\n </TR>\n ))}\n </TFoot>\n )}\n </TableCore>\n </TableContent>\n </TableWrapper>\n {!isLoading && !data.length && noDataMessage}\n {pagination}\n </TableRoot>\n );\n};\n\nTable.defaultProps = defaultProps;\n\nexport {Table};\n"],"names":["useLoadingState","showLoadingState","loading","pageSize","columns","LoadingCellComponent","loadingColumns","useMemo","map","column","loadingColumn","_extends","Cell","React","loadingData","length","dataObject","dataArray","i","push","TABLE_SHADOW_CLASS_NAME","LEFT","RIGHT","changeClassName","tableWrapperNode","newClassNameList","classList","remove","add","apply","calculateNewClassNames","tableNode","tableRect","getBoundingClientRect","tableWrapperRect","newClassName","tableRectLeft","Math","floor","left","tableRectRight","right","tableWrapperRectLeft","tableWrapperRectRight","tableRef","tableWrapperRef","useEffect","ticking","onMousewheel","window","requestAnimationFrame","current","_tableRef$current","addEventListener","_tableRef$current2","removeEventListener","FOOTER_PLACEMENT","defaultGetter","props","cellGetter","_ref","_cell$column","cell","align","mainCellGetter","_ref2","getTableProps","userGetter","getter","getTableElementProps","meta","getTableRowProps","getTableCellProps","getTableElementInternalProps","internalProps","loadingAnimation","keyframes","_templateObject","_taggedTemplateLiteralLoose","TableLoading","styled","div","_templateObject2","isLoading","css","_templateObject3","TableLoadingInner","_templateObject4","TableWrapper","_templateObject5","TableRoot","_templateObject6","fontNormal","TableContent","_templateObject7","TableCore","_templateObject8","HeadCell","_templateObject9","TD","_templateObject0","_templateObject1","EmptyStateCell","_templateObject10","spacing","gray95","white","TH","_templateObject11","THead","_templateObject12","black","TRGroup","_templateObject13","TR","_templateObject14","TBody","_templateObject15","gray80","TFoot","_templateObject16","TResizer","_templateObject17","_TableRoot","_TableWrapper","_TableContent","_HeadCell","_TableLoading","_TableLoadingInner","_TD","_TableCore","_THead","_TR","_TH","_TBody","_TRGroup","_TFoot","_EmptyStateCell","_TResizer","isEnableRowSelectDefault","selectColumnPropsDefault","getRowPrePropsDefault","defaultProps","hasDefaultPagination","footerPlacement","loadingMessage","labelPerPage","parentElementId","tableContentId","initialState","getRowPreProps","isEnableRowSelect","selectColumnProps","noDataMessage","disableSortRemove","disableMultiSort","disabledMultiRemove","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","isFunction","reference","renderResizer","isResizable","getResizerProps","onClick","e","preventDefault","stopPropagation","getHeadContent","isSorted","isSortedDesc","render","ArrowUp","size","Size","Small","color","Color","GrayDark","ArrowDown","Table","data","totalItems","fetchData","controlledPagination","onSortedChange","onSelectRowsChange","PaginationComponent","getHeaderGroupProps","getHeaderProps","getRowProps","getCellProps","getFooterProps","getFooterGroupProps","rowSubComponent","memoColumns","_useLoadingState","_controlledPagination","showLoading","hasSelectedRowsAbility","hasManualSortBy","hasControlledPagination","Object","keys","options","manualSortBy","_controlledPagination2","_controlledPagination3","pageCount","Error","pageIndex","autoResetPage","manualPagination","useSelect","hooks","newColumn","id","disableSortBy","Header","instance","getToggleAllPageRowsSelectedProps","toggleAllPageRowsSelected","page","isDisabledAllRows","original","filter","Checkbox","elementId","onChange","isChecked","checked","isDisabled","row","toggleRowSelected","getToggleRowSelectedProps","Number","isInteger","isEnabled","visibleColumns","tableColumns","concat","_useTable","useTable","useFlexLayout","useSortBy","useExpanded","usePagination","useRowSelect","useResizeColumns","_getTableProps","headerGroups","footerGroups","setHiddenColumns","rows","prepareRow","rest","_objectWithoutPropertiesLoose","_excluded","selectedFlatRows","setSortBy","canPreviousPage","canNextPage","gotoPage","nextPage","previousPage","setPageSize","_rest$state","state","selectedRowIds","useRef","useTableShadow","hiddenColumns","pagination","paginationData","previousPageHandler","nextPageHandler","totalPages","perPage","newPageSize","newPageIndex","paginationAmount","extendSortByProps","headerProps","getSortByToggleProps","style","canSort","Boolean","desc","tBodyTr","className","ref","getTableBodyProps","headerGroup","headers","includes","TOP","group","_getRowPreProps","isDelimiterTd","cells","Fragment","key","index","colSpan","isExpanded","BOTTOM"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@propellerads/table",
3
- "version": "5.0.2",
3
+ "version": "5.0.4",
4
4
  "repository": "https://github.com/propellerads/ui-components",
5
5
  "author": "i.pasyuk@propellerads.net",
6
6
  "license": "MIT",
@@ -33,8 +33,8 @@
33
33
  "dependencies": {
34
34
  "@types/react-table": "7.7.12",
35
35
  "@propellerads/stylevariables": "^2.0.1",
36
- "@propellerads/icon": "^6.0.2",
37
- "@propellerads/input-checkbox": "^3.1.1",
36
+ "@propellerads/icon": "^7.0.0",
37
+ "@propellerads/input-checkbox": "^3.1.2",
38
38
  "react-table": "7.8.0"
39
39
  }
40
40
  }
package/src/index.tsx CHANGED
@@ -10,7 +10,7 @@ import {
10
10
  Column,
11
11
  } from 'react-table';
12
12
 
13
- import {ArrowDown, ArrowUp, COLOR, SIZE} from '@propellerads/icon';
13
+ import {ArrowDown, ArrowUp, Color, Size} from '@propellerads/icon';
14
14
  import Checkbox from '@propellerads/input-checkbox';
15
15
 
16
16
  import useLoadingState from './useLoadingState';
@@ -132,7 +132,7 @@ function getHeadContent(column: ColumnWithSort) {
132
132
  return (
133
133
  <HeadCell>
134
134
  {column.render('Header')}
135
- <ArrowDown size={SIZE.SMALL} color={COLOR.GRAY_DARK} />
135
+ <ArrowUp size={Size.Small} color={Color.GrayDark} />
136
136
  </HeadCell>
137
137
  );
138
138
  }
@@ -141,7 +141,7 @@ function getHeadContent(column: ColumnWithSort) {
141
141
  return (
142
142
  <HeadCell>
143
143
  {column.render('Header')}
144
- <ArrowUp size={SIZE.SMALL} color={COLOR.GRAY_DARK} />
144
+ <ArrowDown size={Size.Small} color={Color.GrayDark} />
145
145
  </HeadCell>
146
146
  );
147
147
  }