) => void;\n\tdefaultValue: string | number;\n\tchildren: React.ReactNode;\n};\n\nconst Select = ({ defaultValue, onChange, ...rest }: SelectProps): JSX.Element => (\n\t\n\t\t \n\t\t \n\t \n);\n\nexport default Select;\n","import React from 'react';\nimport FirstPageIcon from '../icons/FirstPage';\nimport LastPageIcon from '../icons/LastPage';\nimport LeftIcon from '../icons/Left';\nimport RightIcon from '../icons/Right';\nimport ExpanderCollapsedIcon from '../icons/ExpanderCollapsedIcon';\nimport ExpanderExpandedIcon from '../icons/ExpanderExpandedIcon';\nimport { noop } from './util';\nimport { Alignment, Direction } from './constants';\n\nexport const defaultProps = {\n\tcolumns: [],\n\tdata: [],\n\ttitle: '',\n\tkeyField: 'id',\n\tselectableRows: false,\n\tselectableRowsHighlight: false,\n\tselectableRowsNoSelectAll: false,\n\tselectableRowSelected: null,\n\tselectableRowDisabled: null,\n\tselectableRowsComponent: 'input' as const,\n\tselectableRowsComponentProps: {},\n\tselectableRowsVisibleOnly: false,\n\tselectableRowsSingle: false,\n\tclearSelectedRows: false,\n\texpandableRows: false,\n\texpandableRowDisabled: null,\n\texpandableRowExpanded: null,\n\texpandOnRowClicked: false,\n\texpandableRowsHideExpander: false,\n\texpandOnRowDoubleClicked: false,\n\texpandableInheritConditionalStyles: false,\n\texpandableRowsComponent: function DefaultExpander(): JSX.Element {\n\t\treturn (\n\t\t\t\n\t\t\t\tTo add an expander pass in a component instance via expandableRowsComponent . You can then\n\t\t\t\taccess props.data from this component.\n\t\t\t
\n\t\t);\n\t},\n\texpandableIcon: {\n\t\tcollapsed: ,\n\t\texpanded: ,\n\t},\n\texpandableRowsComponentProps: {},\n\tprogressPending: false,\n\tprogressComponent: Loading...
,\n\tpersistTableHead: false,\n\tsortIcon: null,\n\tsortFunction: null,\n\tsortServer: false,\n\tstriped: false,\n\thighlightOnHover: false,\n\tpointerOnHover: false,\n\tnoContextMenu: false,\n\tcontextMessage: { singular: 'item', plural: 'items', message: 'selected' },\n\tactions: null,\n\tcontextActions: null,\n\tcontextComponent: null,\n\tdefaultSortFieldId: null,\n\tdefaultSortAsc: true,\n\tresponsive: true,\n\tnoDataComponent: There are no records to display
,\n\tdisabled: false,\n\tnoTableHead: false,\n\tnoHeader: false,\n\tsubHeader: false,\n\tsubHeaderAlign: Alignment.RIGHT,\n\tsubHeaderWrap: true,\n\tsubHeaderComponent: null,\n\tfixedHeader: false,\n\tfixedHeaderScrollHeight: '100vh',\n\tpagination: false,\n\tpaginationServer: false,\n\tpaginationServerOptions: {\n\t\tpersistSelectedOnSort: false,\n\t\tpersistSelectedOnPageChange: false,\n\t},\n\tpaginationDefaultPage: 1,\n\tpaginationResetDefaultPage: false,\n\tpaginationTotalRows: 0,\n\tpaginationPerPage: 10,\n\tpaginationRowsPerPageOptions: [10, 15, 20, 25, 30],\n\tpaginationComponent: null,\n\tpaginationComponentOptions: {},\n\tpaginationIconFirstPage: ,\n\tpaginationIconLastPage: ,\n\tpaginationIconNext: ,\n\tpaginationIconPrevious: ,\n\tdense: false,\n\tconditionalRowStyles: [],\n\ttheme: 'default' as const,\n\tcustomStyles: {},\n\tdirection: Direction.AUTO,\n\tonChangePage: noop,\n\tonChangeRowsPerPage: noop,\n\tonRowClicked: noop,\n\tonRowDoubleClicked: noop,\n\tonRowMouseEnter: noop,\n\tonRowMouseLeave: noop,\n\tonRowExpandToggled: noop,\n\tonSelectedRowsChange: noop,\n\tonSort: noop,\n\tonColumnOrderChange: noop,\n};\n","import React from 'react';\n\nconst ExpanderCollapsedIcon: React.FC = () => (\n\t\n\t\t \n\t\t \n\t \n);\n\nexport default ExpanderCollapsedIcon;\n","import React from 'react';\n\nconst ExpanderExpandedIcon: React.FC = () => (\n\t\n\t\t \n\t\t \n\t \n);\n\nexport default ExpanderExpandedIcon;\n","import React from 'react';\n\nconst FirstPage: React.FC = () => (\n\t\n\t\t \n\t\t \n\t \n);\n\nexport default FirstPage;\n","import React from 'react';\n\nconst LastPage: React.FC = () => (\n\t\n\t\t \n\t\t \n\t \n);\n\nexport default LastPage;\n","import React from 'react';\n\nconst Right: React.FC = () => (\n\t\n\t\t \n\t\t \n\t \n);\n\nexport default Right;\n","import React from 'react';\n\nconst Left: React.FC = () => (\n\t\n\t\t \n\t\t \n\t \n);\n\nexport default Left;\n","import * as React from 'react';\nimport styled from 'styled-components';\nimport Select from './Select';\nimport { getNumberOfPages } from './util';\nimport useWindowSize from '../hooks/useWindowSize';\nimport useRTL from '../hooks/useRTL';\nimport { media, SMALL } from './media';\nimport { Direction } from './constants';\nimport { PaginationOptions } from './types';\nimport { defaultProps } from './defaultProps';\n\nconst defaultComponentOptions = {\n\trowsPerPageText: 'Rows per page:',\n\trangeSeparatorText: 'of',\n\tnoRowsPerPage: false,\n\tselectAllRowsItem: false,\n\tselectAllRowsItemText: 'All',\n};\n\nconst PaginationWrapper = styled.nav`\n\tdisplay: flex;\n\tflex: 1 1 auto;\n\tjustify-content: flex-end;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding-right: 8px;\n\tpadding-left: 8px;\n\twidth: 100%;\n\t${({ theme }) => theme.pagination.style};\n`;\n\nconst Button = styled.button<{\n\t$isRTL: boolean;\n}>`\n\tposition: relative;\n\tdisplay: block;\n\tuser-select: none;\n\tborder: none;\n\t${({ theme }) => theme.pagination.pageButtonsStyle};\n\t${({ $isRTL }) => $isRTL && 'transform: scale(-1, -1)'};\n`;\n\nconst PageList = styled.div`\n\tdisplay: flex;\n\talign-items: center;\n\tborder-radius: 4px;\n\twhite-space: nowrap;\n\t${media.sm`\n width: 100%;\n justify-content: space-around;\n `};\n`;\n\nconst Span = styled.span`\n\tflex-shrink: 1;\n\tuser-select: none;\n`;\n\nconst Range = styled(Span)`\n\tmargin: 0 24px;\n`;\n\nconst RowLabel = styled(Span)`\n\tmargin: 0 4px;\n`;\n\ninterface PaginationProps {\n\trowsPerPage: number;\n\trowCount: number;\n\tcurrentPage: number;\n\tdirection?: Direction;\n\tpaginationRowsPerPageOptions?: number[];\n\tpaginationIconLastPage?: React.ReactNode;\n\tpaginationIconFirstPage?: React.ReactNode;\n\tpaginationIconNext?: React.ReactNode;\n\tpaginationIconPrevious?: React.ReactNode;\n\tpaginationComponentOptions?: PaginationOptions;\n\tonChangePage: (page: number) => void;\n\tonChangeRowsPerPage: (numRows: number, currentPage: number) => void;\n}\n\nfunction Pagination({\n\trowsPerPage,\n\trowCount,\n\tcurrentPage,\n\tdirection = defaultProps.direction,\n\tpaginationRowsPerPageOptions = defaultProps.paginationRowsPerPageOptions,\n\tpaginationIconLastPage = defaultProps.paginationIconLastPage,\n\tpaginationIconFirstPage = defaultProps.paginationIconFirstPage,\n\tpaginationIconNext = defaultProps.paginationIconNext,\n\tpaginationIconPrevious = defaultProps.paginationIconPrevious,\n\tpaginationComponentOptions = defaultProps.paginationComponentOptions,\n\tonChangeRowsPerPage = defaultProps.onChangeRowsPerPage,\n\tonChangePage = defaultProps.onChangePage,\n}: PaginationProps): JSX.Element {\n\tconst windowSize = useWindowSize();\n\tconst isRTL = useRTL(direction);\n\tconst shouldShow = windowSize.width && windowSize.width > SMALL;\n\t// const isRTL = detectRTL(direction);\n\tconst numPages = getNumberOfPages(rowCount, rowsPerPage);\n\tconst lastIndex = currentPage * rowsPerPage;\n\tconst firstIndex = lastIndex - rowsPerPage + 1;\n\tconst disabledLesser = currentPage === 1;\n\tconst disabledGreater = currentPage === numPages;\n\tconst options = { ...defaultComponentOptions, ...paginationComponentOptions };\n\tconst range =\n\t\tcurrentPage === numPages\n\t\t\t? `${firstIndex}-${rowCount} ${options.rangeSeparatorText} ${rowCount}`\n\t\t\t: `${firstIndex}-${lastIndex} ${options.rangeSeparatorText} ${rowCount}`;\n\n\tconst handlePrevious = React.useCallback(() => onChangePage(currentPage - 1), [currentPage, onChangePage]);\n\tconst handleNext = React.useCallback(() => onChangePage(currentPage + 1), [currentPage, onChangePage]);\n\tconst handleFirst = React.useCallback(() => onChangePage(1), [onChangePage]);\n\tconst handleLast = React.useCallback(\n\t\t() => onChangePage(getNumberOfPages(rowCount, rowsPerPage)),\n\t\t[onChangePage, rowCount, rowsPerPage],\n\t);\n\tconst handleRowsPerPage = React.useCallback(\n\t\t(e: React.ChangeEvent) => onChangeRowsPerPage(Number(e.target.value), currentPage),\n\t\t[currentPage, onChangeRowsPerPage],\n\t);\n\n\tconst selectOptions = paginationRowsPerPageOptions.map((num: number) => (\n\t\t\n\t\t\t{num}\n\t\t \n\t));\n\n\tif (options.selectAllRowsItem) {\n\t\tselectOptions.push(\n\t\t\t\n\t\t\t\t{options.selectAllRowsItemText}\n\t\t\t ,\n\t\t);\n\t}\n\n\tconst select = (\n\t\t\n\t\t\t{selectOptions}\n\t\t \n\t);\n\n\treturn (\n\t\t\n\t\t\t{!options.noRowsPerPage && shouldShow && (\n\t\t\t\t<>\n\t\t\t\t\t{options.rowsPerPageText} \n\t\t\t\t\t{select}\n\t\t\t\t>\n\t\t\t)}\n\t\t\t{shouldShow && {range} }\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{paginationIconFirstPage}\n\t\t\t\t \n\n\t\t\t\t\n\t\t\t\t\t{paginationIconPrevious}\n\t\t\t\t \n\n\t\t\t\t{!options.noRowsPerPage && !shouldShow && select}\n\n\t\t\t\t\n\t\t\t\t\t{paginationIconNext}\n\t\t\t\t \n\n\t\t\t\t\n\t\t\t\t\t{paginationIconLastPage}\n\t\t\t\t \n\t\t\t \n\t\t \n\t);\n}\n\nexport default React.memo(Pagination);\n","// Credit: https://usehooks.com/useWindowSize/\nimport * as React from 'react';\n\ntype Hook = () => {\n\twidth: number | undefined;\n\theight: number | undefined;\n};\n\nconst useWindowSize: Hook = () => {\n\tconst isClient = typeof window === 'object';\n\n\tfunction getSize() {\n\t\treturn {\n\t\t\twidth: isClient ? window.innerWidth : undefined,\n\t\t\theight: isClient ? window.innerHeight : undefined,\n\t\t};\n\t}\n\n\tconst [windowSize, setWindowSize] = React.useState(getSize);\n\n\tReact.useEffect(() => {\n\t\tif (!isClient) {\n\t\t\treturn () => null;\n\t\t}\n\n\t\tfunction handleResize() {\n\t\t\tsetWindowSize(getSize());\n\t\t}\n\n\t\twindow.addEventListener('resize', handleResize);\n\t\treturn () => window.removeEventListener('resize', handleResize);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\treturn windowSize;\n};\n\nexport default useWindowSize;\n","import * as React from 'react';\n\ntype Hook = (fn: () => void, inputs: unknown[]) => void;\n\nconst useFirstUpdate: Hook = (fn, inputs) => {\n\tconst firstUpdate = React.useRef(true);\n\n\tReact.useEffect(() => {\n\t\tif (firstUpdate.current) {\n\t\t\tfirstUpdate.current = false;\n\t\t\treturn;\n\t\t}\n\n\t\tfn();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, inputs);\n};\n\nexport default useFirstUpdate;\n","'use strict';\n\nvar isMergeableObject = function isMergeableObject(value) {\n\treturn isNonNullObject(value)\n\t\t&& !isSpecial(value)\n};\n\nfunction isNonNullObject(value) {\n\treturn !!value && typeof value === 'object'\n}\n\nfunction isSpecial(value) {\n\tvar stringValue = Object.prototype.toString.call(value);\n\n\treturn stringValue === '[object RegExp]'\n\t\t|| stringValue === '[object Date]'\n\t\t|| isReactElement(value)\n}\n\n// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25\nvar canUseSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;\n\nfunction isReactElement(value) {\n\treturn value.$$typeof === REACT_ELEMENT_TYPE\n}\n\nfunction emptyTarget(val) {\n\treturn Array.isArray(val) ? [] : {}\n}\n\nfunction cloneUnlessOtherwiseSpecified(value, options) {\n\treturn (options.clone !== false && options.isMergeableObject(value))\n\t\t? deepmerge(emptyTarget(value), value, options)\n\t\t: value\n}\n\nfunction defaultArrayMerge(target, source, options) {\n\treturn target.concat(source).map(function(element) {\n\t\treturn cloneUnlessOtherwiseSpecified(element, options)\n\t})\n}\n\nfunction getMergeFunction(key, options) {\n\tif (!options.customMerge) {\n\t\treturn deepmerge\n\t}\n\tvar customMerge = options.customMerge(key);\n\treturn typeof customMerge === 'function' ? customMerge : deepmerge\n}\n\nfunction getEnumerableOwnPropertySymbols(target) {\n\treturn Object.getOwnPropertySymbols\n\t\t? Object.getOwnPropertySymbols(target).filter(function(symbol) {\n\t\t\treturn Object.propertyIsEnumerable.call(target, symbol)\n\t\t})\n\t\t: []\n}\n\nfunction getKeys(target) {\n\treturn Object.keys(target).concat(getEnumerableOwnPropertySymbols(target))\n}\n\nfunction propertyIsOnObject(object, property) {\n\ttry {\n\t\treturn property in object\n\t} catch(_) {\n\t\treturn false\n\t}\n}\n\n// Protects from prototype poisoning and unexpected merging up the prototype chain.\nfunction propertyIsUnsafe(target, key) {\n\treturn propertyIsOnObject(target, key) // Properties are safe to merge if they don't exist in the target yet,\n\t\t&& !(Object.hasOwnProperty.call(target, key) // unsafe if they exist up the prototype chain,\n\t\t\t&& Object.propertyIsEnumerable.call(target, key)) // and also unsafe if they're nonenumerable.\n}\n\nfunction mergeObject(target, source, options) {\n\tvar destination = {};\n\tif (options.isMergeableObject(target)) {\n\t\tgetKeys(target).forEach(function(key) {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(target[key], options);\n\t\t});\n\t}\n\tgetKeys(source).forEach(function(key) {\n\t\tif (propertyIsUnsafe(target, key)) {\n\t\t\treturn\n\t\t}\n\n\t\tif (propertyIsOnObject(target, key) && options.isMergeableObject(source[key])) {\n\t\t\tdestination[key] = getMergeFunction(key, options)(target[key], source[key], options);\n\t\t} else {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(source[key], options);\n\t\t}\n\t});\n\treturn destination\n}\n\nfunction deepmerge(target, source, options) {\n\toptions = options || {};\n\toptions.arrayMerge = options.arrayMerge || defaultArrayMerge;\n\toptions.isMergeableObject = options.isMergeableObject || isMergeableObject;\n\t// cloneUnlessOtherwiseSpecified is added to `options` so that custom arrayMerge()\n\t// implementations can use it. The caller may not replace it.\n\toptions.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;\n\n\tvar sourceIsArray = Array.isArray(source);\n\tvar targetIsArray = Array.isArray(target);\n\tvar sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;\n\n\tif (!sourceAndTargetTypesMatch) {\n\t\treturn cloneUnlessOtherwiseSpecified(source, options)\n\t} else if (sourceIsArray) {\n\t\treturn options.arrayMerge(target, source, options)\n\t} else {\n\t\treturn mergeObject(target, source, options)\n\t}\n}\n\ndeepmerge.all = function deepmergeAll(array, options) {\n\tif (!Array.isArray(array)) {\n\t\tthrow new Error('first argument should be an array')\n\t}\n\n\treturn array.reduce(function(prev, next) {\n\t\treturn deepmerge(prev, next, options)\n\t}, {})\n};\n\nvar deepmerge_1 = deepmerge;\n\nmodule.exports = deepmerge_1;\n","import merge from 'deepmerge';\nimport { Theme, Themes } from './types';\n\ntype ThemeMapping = {\n\t[propertyName: string]: Theme;\n};\n\nconst defaultTheme = {\n\ttext: {\n\t\tprimary: 'rgba(0, 0, 0, 0.87)',\n\t\tsecondary: 'rgba(0, 0, 0, 0.54)',\n\t\tdisabled: 'rgba(0, 0, 0, 0.38)',\n\t},\n\tbackground: {\n\t\tdefault: '#FFFFFF',\n\t},\n\tcontext: {\n\t\tbackground: '#e3f2fd',\n\t\ttext: 'rgba(0, 0, 0, 0.87)',\n\t},\n\tdivider: {\n\t\tdefault: 'rgba(0,0,0,.12)',\n\t},\n\tbutton: {\n\t\tdefault: 'rgba(0,0,0,.54)',\n\t\tfocus: 'rgba(0,0,0,.12)',\n\t\thover: 'rgba(0,0,0,.12)',\n\t\tdisabled: 'rgba(0, 0, 0, .18)',\n\t},\n\tselected: {\n\t\tdefault: '#e3f2fd',\n\t\ttext: 'rgba(0, 0, 0, 0.87)',\n\t},\n\thighlightOnHover: {\n\t\tdefault: '#EEEEEE',\n\t\ttext: 'rgba(0, 0, 0, 0.87)',\n\t},\n\tstriped: {\n\t\tdefault: '#FAFAFA',\n\t\ttext: 'rgba(0, 0, 0, 0.87)',\n\t},\n};\n\nexport const defaultThemes: ThemeMapping = {\n\tdefault: defaultTheme,\n\tlight: defaultTheme,\n\tdark: {\n\t\ttext: {\n\t\t\tprimary: '#FFFFFF',\n\t\t\tsecondary: 'rgba(255, 255, 255, 0.7)',\n\t\t\tdisabled: 'rgba(0,0,0,.12)',\n\t\t},\n\t\tbackground: {\n\t\t\tdefault: '#424242',\n\t\t},\n\t\tcontext: {\n\t\t\tbackground: '#E91E63',\n\t\t\ttext: '#FFFFFF',\n\t\t},\n\t\tdivider: {\n\t\t\tdefault: 'rgba(81, 81, 81, 1)',\n\t\t},\n\t\tbutton: {\n\t\t\tdefault: '#FFFFFF',\n\t\t\tfocus: 'rgba(255, 255, 255, .54)',\n\t\t\thover: 'rgba(255, 255, 255, .12)',\n\t\t\tdisabled: 'rgba(255, 255, 255, .18)',\n\t\t},\n\t\tselected: {\n\t\t\tdefault: 'rgba(0, 0, 0, .7)',\n\t\t\ttext: '#FFFFFF',\n\t\t},\n\t\thighlightOnHover: {\n\t\t\tdefault: 'rgba(0, 0, 0, .7)',\n\t\t\ttext: '#FFFFFF',\n\t\t},\n\t\tstriped: {\n\t\t\tdefault: 'rgba(0, 0, 0, .87)',\n\t\t\ttext: '#FFFFFF',\n\t\t},\n\t},\n};\n\nexport function createTheme(name = 'default', customTheme?: T, inherit: Themes = 'default'): Theme {\n\tif (!defaultThemes[name]) {\n\t\tdefaultThemes[name] = merge(defaultThemes[inherit], customTheme || {});\n\t}\n\n\t// allow tweaking default or light themes if the theme passed in matches\n\tdefaultThemes[name] = merge(defaultThemes[name], customTheme || {});\n\n\treturn defaultThemes[name];\n}\n","import * as React from 'react';\nimport { decorateColumns, findColumnIndexById, getSortDirection } from '../DataTable/util';\nimport useDidUpdateEffect from '../hooks/useDidUpdateEffect';\nimport { SortOrder, TableColumn } from '../DataTable/types';\n\ntype ColumnsHook = {\n\ttableColumns: TableColumn[];\n\tdraggingColumnId: string;\n\thandleDragStart: (e: React.DragEvent) => void;\n\thandleDragEnter: (e: React.DragEvent) => void;\n\thandleDragOver: (e: React.DragEvent) => void;\n\thandleDragLeave: (e: React.DragEvent) => void;\n\thandleDragEnd: (e: React.DragEvent) => void;\n\tdefaultSortDirection: SortOrder;\n\tdefaultSortColumn: TableColumn;\n};\n\nfunction useColumns(\n\tcolumns: TableColumn[],\n\tonColumnOrderChange: (nextOrder: TableColumn[]) => void,\n\tdefaultSortFieldId: string | number | null | undefined,\n\tdefaultSortAsc: boolean,\n): ColumnsHook {\n\tconst [tableColumns, setTableColumns] = React.useState[]>(() => decorateColumns(columns));\n\tconst [draggingColumnId, setDraggingColumn] = React.useState('');\n\tconst sourceColumnId = React.useRef('');\n\n\tuseDidUpdateEffect(() => {\n\t\tsetTableColumns(decorateColumns(columns));\n\t}, [columns]);\n\n\tconst handleDragStart = React.useCallback(\n\t\t(e: React.DragEvent) => {\n\t\t\tconst { attributes } = e.target as HTMLDivElement;\n\t\t\tconst id = attributes.getNamedItem('data-column-id')?.value;\n\n\t\t\tif (id) {\n\t\t\t\tsourceColumnId.current = tableColumns[findColumnIndexById(tableColumns, id)]?.id?.toString() || '';\n\n\t\t\t\tsetDraggingColumn(sourceColumnId.current);\n\t\t\t}\n\t\t},\n\t\t[tableColumns],\n\t);\n\n\tconst handleDragEnter = React.useCallback(\n\t\t(e: React.DragEvent) => {\n\t\t\tconst { attributes } = e.target as HTMLDivElement;\n\t\t\tconst id = attributes.getNamedItem('data-column-id')?.value;\n\n\t\t\tif (id && sourceColumnId.current && id !== sourceColumnId.current) {\n\t\t\t\tconst selectedColIndex = findColumnIndexById(tableColumns, sourceColumnId.current);\n\t\t\t\tconst targetColIndex = findColumnIndexById(tableColumns, id);\n\t\t\t\tconst reorderedCols = [...tableColumns];\n\n\t\t\t\treorderedCols[selectedColIndex] = tableColumns[targetColIndex];\n\t\t\t\treorderedCols[targetColIndex] = tableColumns[selectedColIndex];\n\n\t\t\t\tsetTableColumns(reorderedCols);\n\n\t\t\t\tonColumnOrderChange(reorderedCols);\n\t\t\t}\n\t\t},\n\t\t[onColumnOrderChange, tableColumns],\n\t);\n\n\tconst handleDragOver = React.useCallback((e: React.DragEvent) => {\n\t\te.preventDefault();\n\t}, []);\n\n\tconst handleDragLeave = React.useCallback((e: React.DragEvent) => {\n\t\te.preventDefault();\n\t}, []);\n\n\tconst handleDragEnd = React.useCallback((e: React.DragEvent) => {\n\t\te.preventDefault();\n\n\t\tsourceColumnId.current = '';\n\n\t\tsetDraggingColumn('');\n\t}, []);\n\n\tconst defaultSortDirection = getSortDirection(defaultSortAsc);\n\tconst defaultSortColumn = React.useMemo(\n\t\t() => tableColumns[findColumnIndexById(tableColumns, defaultSortFieldId?.toString())] || {},\n\t\t[defaultSortFieldId, tableColumns],\n\t);\n\n\treturn {\n\t\ttableColumns,\n\t\tdraggingColumnId,\n\t\thandleDragStart,\n\t\thandleDragEnter,\n\t\thandleDragOver,\n\t\thandleDragLeave,\n\t\thandleDragEnd,\n\t\tdefaultSortDirection,\n\t\tdefaultSortColumn,\n\t};\n}\n\nexport default useColumns;\n","import * as React from 'react';\nimport { ThemeProvider } from 'styled-components';\nimport { tableReducer } from './tableReducer';\nimport Table from './Table';\nimport Head from './TableHead';\nimport HeadRow from './TableHeadRow';\nimport Row from './TableRow';\nimport Column from './TableCol';\nimport ColumnCheckbox from './TableColCheckbox';\nimport Header from './TableHeader';\nimport Subheader from './TableSubheader';\nimport Body from './TableBody';\nimport ResponsiveWrapper from './ResponsiveWrapper';\nimport ProgressWrapper from './ProgressWrapper';\nimport Wrapper from './TableWrapper';\nimport ColumnExpander from './TableColExpander';\nimport { CellBase } from './Cell';\nimport NoData from './NoDataWrapper';\nimport NativePagination from './Pagination';\nimport useDidUpdateEffect from '../hooks/useDidUpdateEffect';\nimport { prop, getNumberOfPages, sort, isEmpty, isRowSelected, recalculatePage } from './util';\nimport { defaultProps } from './defaultProps';\nimport { createStyles } from './styles';\nimport {\n\tAction,\n\tAllRowsAction,\n\tSingleRowAction,\n\tTableRow,\n\tSortAction,\n\tTableProps,\n\tTableState,\n\tSortOrder,\n} from './types';\nimport useColumns from '../hooks/useColumns';\n\nfunction DataTable(props: TableProps): JSX.Element {\n\tconst {\n\t\tdata = defaultProps.data,\n\t\tcolumns = defaultProps.columns,\n\t\ttitle = defaultProps.title,\n\t\tactions = defaultProps.actions,\n\t\tkeyField = defaultProps.keyField,\n\t\tstriped = defaultProps.striped,\n\t\thighlightOnHover = defaultProps.highlightOnHover,\n\t\tpointerOnHover = defaultProps.pointerOnHover,\n\t\tdense = defaultProps.dense,\n\t\tselectableRows = defaultProps.selectableRows,\n\t\tselectableRowsSingle = defaultProps.selectableRowsSingle,\n\t\tselectableRowsHighlight = defaultProps.selectableRowsHighlight,\n\t\tselectableRowsNoSelectAll = defaultProps.selectableRowsNoSelectAll,\n\t\tselectableRowsVisibleOnly = defaultProps.selectableRowsVisibleOnly,\n\t\tselectableRowSelected = defaultProps.selectableRowSelected,\n\t\tselectableRowDisabled = defaultProps.selectableRowDisabled,\n\t\tselectableRowsComponent = defaultProps.selectableRowsComponent,\n\t\tselectableRowsComponentProps = defaultProps.selectableRowsComponentProps,\n\t\tonRowExpandToggled = defaultProps.onRowExpandToggled,\n\t\tonSelectedRowsChange = defaultProps.onSelectedRowsChange,\n\t\texpandableIcon = defaultProps.expandableIcon,\n\t\tonChangeRowsPerPage = defaultProps.onChangeRowsPerPage,\n\t\tonChangePage = defaultProps.onChangePage,\n\t\tpaginationServer = defaultProps.paginationServer,\n\t\tpaginationServerOptions = defaultProps.paginationServerOptions,\n\t\tpaginationTotalRows = defaultProps.paginationTotalRows,\n\t\tpaginationDefaultPage = defaultProps.paginationDefaultPage,\n\t\tpaginationResetDefaultPage = defaultProps.paginationResetDefaultPage,\n\t\tpaginationPerPage = defaultProps.paginationPerPage,\n\t\tpaginationRowsPerPageOptions = defaultProps.paginationRowsPerPageOptions,\n\t\tpaginationIconLastPage = defaultProps.paginationIconLastPage,\n\t\tpaginationIconFirstPage = defaultProps.paginationIconFirstPage,\n\t\tpaginationIconNext = defaultProps.paginationIconNext,\n\t\tpaginationIconPrevious = defaultProps.paginationIconPrevious,\n\t\tpaginationComponent = defaultProps.paginationComponent,\n\t\tpaginationComponentOptions = defaultProps.paginationComponentOptions,\n\t\tresponsive = defaultProps.responsive,\n\t\tprogressPending = defaultProps.progressPending,\n\t\tprogressComponent = defaultProps.progressComponent,\n\t\tpersistTableHead = defaultProps.persistTableHead,\n\t\tnoDataComponent = defaultProps.noDataComponent,\n\t\tdisabled = defaultProps.disabled,\n\t\tnoTableHead = defaultProps.noTableHead,\n\t\tnoHeader = defaultProps.noHeader,\n\t\tfixedHeader = defaultProps.fixedHeader,\n\t\tfixedHeaderScrollHeight = defaultProps.fixedHeaderScrollHeight,\n\t\tpagination = defaultProps.pagination,\n\t\tsubHeader = defaultProps.subHeader,\n\t\tsubHeaderAlign = defaultProps.subHeaderAlign,\n\t\tsubHeaderWrap = defaultProps.subHeaderWrap,\n\t\tsubHeaderComponent = defaultProps.subHeaderComponent,\n\t\tnoContextMenu = defaultProps.noContextMenu,\n\t\tcontextMessage = defaultProps.contextMessage,\n\t\tcontextActions = defaultProps.contextActions,\n\t\tcontextComponent = defaultProps.contextComponent,\n\t\texpandableRows = defaultProps.expandableRows,\n\t\tonRowClicked = defaultProps.onRowClicked,\n\t\tonRowDoubleClicked = defaultProps.onRowDoubleClicked,\n\t\tonRowMouseEnter = defaultProps.onRowMouseEnter,\n\t\tonRowMouseLeave = defaultProps.onRowMouseLeave,\n\t\tsortIcon = defaultProps.sortIcon,\n\t\tonSort = defaultProps.onSort,\n\t\tsortFunction = defaultProps.sortFunction,\n\t\tsortServer = defaultProps.sortServer,\n\t\texpandableRowsComponent = defaultProps.expandableRowsComponent,\n\t\texpandableRowsComponentProps = defaultProps.expandableRowsComponentProps,\n\t\texpandableRowDisabled = defaultProps.expandableRowDisabled,\n\t\texpandableRowsHideExpander = defaultProps.expandableRowsHideExpander,\n\t\texpandOnRowClicked = defaultProps.expandOnRowClicked,\n\t\texpandOnRowDoubleClicked = defaultProps.expandOnRowDoubleClicked,\n\t\texpandableRowExpanded = defaultProps.expandableRowExpanded,\n\t\texpandableInheritConditionalStyles = defaultProps.expandableInheritConditionalStyles,\n\t\tdefaultSortFieldId = defaultProps.defaultSortFieldId,\n\t\tdefaultSortAsc = defaultProps.defaultSortAsc,\n\t\tclearSelectedRows = defaultProps.clearSelectedRows,\n\t\tconditionalRowStyles = defaultProps.conditionalRowStyles,\n\t\ttheme = defaultProps.theme,\n\t\tcustomStyles = defaultProps.customStyles,\n\t\tdirection = defaultProps.direction,\n\t\tonColumnOrderChange = defaultProps.onColumnOrderChange,\n\t\tclassName,\n\t} = props;\n\n\tconst {\n\t\ttableColumns,\n\t\tdraggingColumnId,\n\t\thandleDragStart,\n\t\thandleDragEnter,\n\t\thandleDragOver,\n\t\thandleDragLeave,\n\t\thandleDragEnd,\n\t\tdefaultSortDirection,\n\t\tdefaultSortColumn,\n\t} = useColumns(columns, onColumnOrderChange, defaultSortFieldId, defaultSortAsc);\n\n\tconst [\n\t\t{\n\t\t\trowsPerPage,\n\t\t\tcurrentPage,\n\t\t\tselectedRows,\n\t\t\tallSelected,\n\t\t\tselectedCount,\n\t\t\tselectedColumn,\n\t\t\tsortDirection,\n\t\t\ttoggleOnSelectedRowsChange,\n\t\t},\n\t\tdispatch,\n\t] = React.useReducer, Action>>(tableReducer, {\n\t\tallSelected: false,\n\t\tselectedCount: 0,\n\t\tselectedRows: [],\n\t\tselectedColumn: defaultSortColumn,\n\t\ttoggleOnSelectedRowsChange: false,\n\t\tsortDirection: defaultSortDirection,\n\t\tcurrentPage: paginationDefaultPage,\n\t\trowsPerPage: paginationPerPage,\n\t\tselectedRowsFlag: false,\n\t\tcontextMessage: defaultProps.contextMessage,\n\t});\n\n\tconst { persistSelectedOnSort = false, persistSelectedOnPageChange = false } = paginationServerOptions;\n\tconst mergeSelections = !!(paginationServer && (persistSelectedOnPageChange || persistSelectedOnSort));\n\tconst enabledPagination = pagination && !progressPending && data.length > 0;\n\tconst Pagination = paginationComponent || NativePagination;\n\n\tconst currentTheme = React.useMemo(() => createStyles(customStyles, theme), [customStyles, theme]);\n\tconst wrapperProps = React.useMemo(() => ({ ...(direction !== 'auto' && { dir: direction }) }), [direction]);\n\n\tconst sortedData = React.useMemo(() => {\n\t\t// server-side sorting bypasses internal sorting\n\t\tif (sortServer) {\n\t\t\treturn data;\n\t\t}\n\n\t\tif (selectedColumn?.sortFunction && typeof selectedColumn.sortFunction === 'function') {\n\t\t\tconst sortFn = selectedColumn.sortFunction;\n\t\t\tconst customSortFunction = sortDirection === SortOrder.ASC ? sortFn : (a: T, b: T) => sortFn(a, b) * -1;\n\n\t\t\treturn [...data].sort(customSortFunction);\n\t\t}\n\n\t\treturn sort(data, selectedColumn?.selector, sortDirection, sortFunction);\n\t}, [sortServer, selectedColumn, sortDirection, data, sortFunction]);\n\n\tconst tableRows = React.useMemo(() => {\n\t\tif (pagination && !paginationServer) {\n\t\t\t// when using client-side pagination we can just slice the rows set\n\t\t\tconst lastIndex = currentPage * rowsPerPage;\n\t\t\tconst firstIndex = lastIndex - rowsPerPage;\n\n\t\t\treturn sortedData.slice(firstIndex, lastIndex);\n\t\t}\n\n\t\treturn sortedData;\n\t}, [currentPage, pagination, paginationServer, rowsPerPage, sortedData]);\n\n\tconst handleSort = React.useCallback((action: SortAction) => {\n\t\tdispatch(action);\n\t}, []);\n\n\tconst handleSelectAllRows = React.useCallback((action: AllRowsAction) => {\n\t\tdispatch(action);\n\t}, []);\n\n\tconst handleSelectedRow = React.useCallback((action: SingleRowAction) => {\n\t\tdispatch(action);\n\t}, []);\n\n\tconst handleRowClicked = React.useCallback(\n\t\t(row: T, e: React.MouseEvent) => onRowClicked(row, e),\n\t\t[onRowClicked],\n\t);\n\n\tconst handleRowDoubleClicked = React.useCallback(\n\t\t(row: T, e: React.MouseEvent) => onRowDoubleClicked(row, e),\n\t\t[onRowDoubleClicked],\n\t);\n\n\tconst handleRowMouseEnter = React.useCallback(\n\t\t(row: T, e: React.MouseEvent) => onRowMouseEnter(row, e),\n\t\t[onRowMouseEnter],\n\t);\n\n\tconst handleRowMouseLeave = React.useCallback(\n\t\t(row: T, e: React.MouseEvent) => onRowMouseLeave(row, e),\n\t\t[onRowMouseLeave],\n\t);\n\n\tconst handleChangePage = React.useCallback(\n\t\t(page: number) =>\n\t\t\tdispatch({\n\t\t\t\ttype: 'CHANGE_PAGE',\n\t\t\t\tpage,\n\t\t\t\tpaginationServer,\n\t\t\t\tvisibleOnly: selectableRowsVisibleOnly,\n\t\t\t\tpersistSelectedOnPageChange,\n\t\t\t}),\n\t\t[paginationServer, persistSelectedOnPageChange, selectableRowsVisibleOnly],\n\t);\n\n\tconst handleChangeRowsPerPage = React.useCallback(\n\t\t(newRowsPerPage: number) => {\n\t\t\tconst rowCount = paginationTotalRows || tableRows.length;\n\t\t\tconst updatedPage = getNumberOfPages(rowCount, newRowsPerPage);\n\t\t\tconst recalculatedPage = recalculatePage(currentPage, updatedPage);\n\n\t\t\t// update the currentPage for client-side pagination\n\t\t\t// server - side should be handled by onChangeRowsPerPage\n\t\t\tif (!paginationServer) {\n\t\t\t\thandleChangePage(recalculatedPage);\n\t\t\t}\n\n\t\t\tdispatch({ type: 'CHANGE_ROWS_PER_PAGE', page: recalculatedPage, rowsPerPage: newRowsPerPage });\n\t\t},\n\t\t[currentPage, handleChangePage, paginationServer, paginationTotalRows, tableRows.length],\n\t);\n\n\tconst showTableHead = () => {\n\t\tif (noTableHead) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (persistTableHead) {\n\t\t\treturn true;\n\t\t}\n\n\t\treturn sortedData.length > 0 && !progressPending;\n\t};\n\n\tconst showHeader = () => {\n\t\tif (noHeader) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (title) {\n\t\t\treturn true;\n\t\t}\n\n\t\tif (actions) {\n\t\t\treturn true;\n\t\t}\n\n\t\treturn false;\n\t};\n\n\t// recalculate the pagination and currentPage if the rows length changes\n\tif (pagination && !paginationServer && sortedData.length > 0 && tableRows.length === 0) {\n\t\tconst updatedPage = getNumberOfPages(sortedData.length, rowsPerPage);\n\t\tconst recalculatedPage = recalculatePage(currentPage, updatedPage);\n\n\t\thandleChangePage(recalculatedPage);\n\t}\n\n\tuseDidUpdateEffect(() => {\n\t\tonSelectedRowsChange({ allSelected, selectedCount, selectedRows: selectedRows.slice(0) });\n\t\t// onSelectedRowsChange trigger is controlled by toggleOnSelectedRowsChange state\n\t}, [toggleOnSelectedRowsChange]);\n\n\tuseDidUpdateEffect(() => {\n\t\tonSort(selectedColumn, sortDirection, sortedData.slice(0));\n\t\t// do not update on sortedData\n\t}, [selectedColumn, sortDirection]);\n\n\tuseDidUpdateEffect(() => {\n\t\tonChangePage(currentPage, paginationTotalRows || sortedData.length);\n\t}, [currentPage]);\n\n\tuseDidUpdateEffect(() => {\n\t\tonChangeRowsPerPage(rowsPerPage, currentPage);\n\t}, [rowsPerPage]);\n\n\tuseDidUpdateEffect(() => {\n\t\thandleChangePage(paginationDefaultPage);\n\t}, [paginationDefaultPage, paginationResetDefaultPage]);\n\n\tuseDidUpdateEffect(() => {\n\t\tif (pagination && paginationServer && paginationTotalRows > 0) {\n\t\t\tconst updatedPage = getNumberOfPages(paginationTotalRows, rowsPerPage);\n\t\t\tconst recalculatedPage = recalculatePage(currentPage, updatedPage);\n\n\t\t\tif (currentPage !== recalculatedPage) {\n\t\t\t\thandleChangePage(recalculatedPage);\n\t\t\t}\n\t\t}\n\t}, [paginationTotalRows]);\n\n\tReact.useEffect(() => {\n\t\tdispatch({ type: 'CLEAR_SELECTED_ROWS', selectedRowsFlag: clearSelectedRows });\n\t}, [selectableRowsSingle, clearSelectedRows]);\n\n\tReact.useEffect(() => {\n\t\tif (!selectableRowSelected) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst preSelectedRows = sortedData.filter(row => selectableRowSelected(row));\n\t\t// if selectableRowsSingle mode then return the first match\n\t\tconst selected = selectableRowsSingle ? preSelectedRows.slice(0, 1) : preSelectedRows;\n\n\t\tdispatch({\n\t\t\ttype: 'SELECT_MULTIPLE_ROWS',\n\t\t\tkeyField,\n\t\t\tselectedRows: selected,\n\t\t\ttotalRows: sortedData.length,\n\t\t\tmergeSelections,\n\t\t});\n\n\t\t// We only want to update the selectedRowState if data changes\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [data, selectableRowSelected]);\n\n\tconst visibleRows = selectableRowsVisibleOnly ? tableRows : sortedData;\n\tconst showSelectAll = persistSelectedOnPageChange || selectableRowsSingle || selectableRowsNoSelectAll;\n\n\treturn (\n\t\t\n\t\t\t{showHeader() && (\n\t\t\t\t\n\t\t\t)}\n\n\t\t\t{subHeader && (\n\t\t\t\t\n\t\t\t\t\t{subHeaderComponent}\n\t\t\t\t \n\t\t\t)}\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{progressPending && !persistTableHead && {progressComponent} }\n\n\t\t\t\t\t\n\t\t\t\t\t\t{showTableHead() && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{selectableRows &&\n\t\t\t\t\t\t\t\t\t\t(showSelectAll ? (\n\t\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t{expandableRows && !expandableRowsHideExpander && }\n\t\t\t\t\t\t\t\t\t{tableColumns.map(column => (\n\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{!sortedData.length && !progressPending && {noDataComponent} }\n\n\t\t\t\t\t\t{progressPending && persistTableHead && {progressComponent} }\n\n\t\t\t\t\t\t{!progressPending && sortedData.length > 0 && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{tableRows.map((row, i) => {\n\t\t\t\t\t\t\t\t\tconst key = prop(row as TableRow, keyField) as string | number;\n\t\t\t\t\t\t\t\t\tconst id = isEmpty(key) ? i : key;\n\t\t\t\t\t\t\t\t\tconst selected = isRowSelected(row, selectedRows, keyField);\n\t\t\t\t\t\t\t\t\tconst expanderExpander = !!(expandableRows && expandableRowExpanded && expandableRowExpanded(row));\n\t\t\t\t\t\t\t\t\tconst expanderDisabled = !!(expandableRows && expandableRowDisabled && expandableRowDisabled(row));\n\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t
\n\t\t\t\t \n\t\t\t \n\n\t\t\t{enabledPagination && (\n\t\t\t\t\n\t\t\t)}\n\t\t \n\t);\n}\n\nexport default React.memo(DataTable) as typeof DataTable;\n","import merge from 'deepmerge';\nimport { defaultThemes } from './themes';\nimport { TableStyles, Theme, Themes } from './types';\n\nexport const defaultStyles = (theme: Theme): TableStyles => ({\n\ttable: {\n\t\tstyle: {\n\t\t\tcolor: theme.text.primary,\n\t\t\tbackgroundColor: theme.background.default,\n\t\t},\n\t},\n\ttableWrapper: {\n\t\tstyle: {\n\t\t\tdisplay: 'table',\n\t\t},\n\t},\n\tresponsiveWrapper: {\n\t\tstyle: {},\n\t},\n\theader: {\n\t\tstyle: {\n\t\t\tfontSize: '22px',\n\t\t\tcolor: theme.text.primary,\n\t\t\tbackgroundColor: theme.background.default,\n\t\t\tminHeight: '56px',\n\t\t\tpaddingLeft: '16px',\n\t\t\tpaddingRight: '8px',\n\t\t},\n\t},\n\tsubHeader: {\n\t\tstyle: {\n\t\t\tbackgroundColor: theme.background.default,\n\t\t\tminHeight: '52px',\n\t\t},\n\t},\n\thead: {\n\t\tstyle: {\n\t\t\tcolor: theme.text.primary,\n\t\t\tfontSize: '12px',\n\t\t\tfontWeight: 500,\n\t\t},\n\t},\n\theadRow: {\n\t\tstyle: {\n\t\t\tbackgroundColor: theme.background.default,\n\t\t\tminHeight: '52px',\n\t\t\tborderBottomWidth: '1px',\n\t\t\tborderBottomColor: theme.divider.default,\n\t\t\tborderBottomStyle: 'solid',\n\t\t},\n\t\tdenseStyle: {\n\t\t\tminHeight: '32px',\n\t\t},\n\t},\n\theadCells: {\n\t\tstyle: {\n\t\t\tpaddingLeft: '16px',\n\t\t\tpaddingRight: '16px',\n\t\t},\n\t\tdraggingStyle: {\n\t\t\tcursor: 'move',\n\t\t},\n\t},\n\tcontextMenu: {\n\t\tstyle: {\n\t\t\tbackgroundColor: theme.context.background,\n\t\t\tfontSize: '18px',\n\t\t\tfontWeight: 400,\n\t\t\tcolor: theme.context.text,\n\t\t\tpaddingLeft: '16px',\n\t\t\tpaddingRight: '8px',\n\t\t\ttransform: 'translate3d(0, -100%, 0)',\n\t\t\ttransitionDuration: '125ms',\n\t\t\ttransitionTimingFunction: 'cubic-bezier(0, 0, 0.2, 1)',\n\t\t\twillChange: 'transform',\n\t\t},\n\t\tactiveStyle: {\n\t\t\ttransform: 'translate3d(0, 0, 0)',\n\t\t},\n\t},\n\tcells: {\n\t\tstyle: {\n\t\t\tpaddingLeft: '16px',\n\t\t\tpaddingRight: '16px',\n\t\t\twordBreak: 'break-word',\n\t\t},\n\t\tdraggingStyle: {},\n\t},\n\trows: {\n\t\tstyle: {\n\t\t\tfontSize: '13px',\n\t\t\tfontWeight: 400,\n\t\t\tcolor: theme.text.primary,\n\t\t\tbackgroundColor: theme.background.default,\n\t\t\tminHeight: '48px',\n\t\t\t'&:not(:last-of-type)': {\n\t\t\t\tborderBottomStyle: 'solid',\n\t\t\t\tborderBottomWidth: '1px',\n\t\t\t\tborderBottomColor: theme.divider.default,\n\t\t\t},\n\t\t},\n\t\tdenseStyle: {\n\t\t\tminHeight: '32px',\n\t\t},\n\t\tselectedHighlightStyle: {\n\t\t\t// use nth-of-type(n) to override other nth selectors\n\t\t\t'&:nth-of-type(n)': {\n\t\t\t\tcolor: theme.selected.text,\n\t\t\t\tbackgroundColor: theme.selected.default,\n\t\t\t\tborderBottomColor: theme.background.default,\n\t\t\t},\n\t\t},\n\t\thighlightOnHoverStyle: {\n\t\t\tcolor: theme.highlightOnHover.text,\n\t\t\tbackgroundColor: theme.highlightOnHover.default,\n\t\t\ttransitionDuration: '0.15s',\n\t\t\ttransitionProperty: 'background-color',\n\t\t\tborderBottomColor: theme.background.default,\n\t\t\toutlineStyle: 'solid',\n\t\t\toutlineWidth: '1px',\n\t\t\toutlineColor: theme.background.default,\n\t\t},\n\t\tstripedStyle: {\n\t\t\tcolor: theme.striped.text,\n\t\t\tbackgroundColor: theme.striped.default,\n\t\t},\n\t},\n\texpanderRow: {\n\t\tstyle: {\n\t\t\tcolor: theme.text.primary,\n\t\t\tbackgroundColor: theme.background.default,\n\t\t},\n\t},\n\texpanderCell: {\n\t\tstyle: {\n\t\t\tflex: '0 0 48px',\n\t\t},\n\t},\n\texpanderButton: {\n\t\tstyle: {\n\t\t\tcolor: theme.button.default,\n\t\t\tfill: theme.button.default,\n\t\t\tbackgroundColor: 'transparent',\n\t\t\tborderRadius: '2px',\n\t\t\ttransition: '0.25s',\n\t\t\theight: '100%',\n\t\t\twidth: '100%',\n\t\t\t'&:hover:enabled': {\n\t\t\t\tcursor: 'pointer',\n\t\t\t},\n\t\t\t'&:disabled': {\n\t\t\t\tcolor: theme.button.disabled,\n\t\t\t},\n\t\t\t'&:hover:not(:disabled)': {\n\t\t\t\tcursor: 'pointer',\n\t\t\t\tbackgroundColor: theme.button.hover,\n\t\t\t},\n\t\t\t'&:focus': {\n\t\t\t\toutline: 'none',\n\t\t\t\tbackgroundColor: theme.button.focus,\n\t\t\t},\n\t\t\tsvg: {\n\t\t\t\tmargin: 'auto',\n\t\t\t},\n\t\t},\n\t},\n\tpagination: {\n\t\tstyle: {\n\t\t\tcolor: theme.text.secondary,\n\t\t\tfontSize: '13px',\n\t\t\tminHeight: '56px',\n\t\t\tbackgroundColor: theme.background.default,\n\t\t\tborderTopStyle: 'solid',\n\t\t\tborderTopWidth: '1px',\n\t\t\tborderTopColor: theme.divider.default,\n\t\t},\n\t\tpageButtonsStyle: {\n\t\t\tborderRadius: '50%',\n\t\t\theight: '40px',\n\t\t\twidth: '40px',\n\t\t\tpadding: '8px',\n\t\t\tmargin: 'px',\n\t\t\tcursor: 'pointer',\n\t\t\ttransition: '0.4s',\n\t\t\tcolor: theme.button.default,\n\t\t\tfill: theme.button.default,\n\t\t\tbackgroundColor: 'transparent',\n\t\t\t'&:disabled': {\n\t\t\t\tcursor: 'unset',\n\t\t\t\tcolor: theme.button.disabled,\n\t\t\t\tfill: theme.button.disabled,\n\t\t\t},\n\t\t\t'&:hover:not(:disabled)': {\n\t\t\t\tbackgroundColor: theme.button.hover,\n\t\t\t},\n\t\t\t'&:focus': {\n\t\t\t\toutline: 'none',\n\t\t\t\tbackgroundColor: theme.button.focus,\n\t\t\t},\n\t\t},\n\t},\n\tnoData: {\n\t\tstyle: {\n\t\t\tdisplay: 'flex',\n\t\t\talignItems: 'center',\n\t\t\tjustifyContent: 'center',\n\t\t\tcolor: theme.text.primary,\n\t\t\tbackgroundColor: theme.background.default,\n\t\t},\n\t},\n\tprogress: {\n\t\tstyle: {\n\t\t\tdisplay: 'flex',\n\t\t\talignItems: 'center',\n\t\t\tjustifyContent: 'center',\n\t\t\tcolor: theme.text.primary,\n\t\t\tbackgroundColor: theme.background.default,\n\t\t},\n\t},\n});\n\nexport const createStyles = (\n\tcustomStyles: TableStyles = {},\n\tthemeName = 'default',\n\tinherit: Themes = 'default',\n): TableStyles => {\n\tconst themeType = defaultThemes[themeName] ? themeName : inherit;\n\n\treturn merge(defaultStyles(defaultThemes[themeType]), customStyles);\n};\n","/**\n * @license React\n * react-dom.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n'use strict';var aa=require(\"react\"),ca=require(\"scheduler\");function p(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;cb}return!1}function v(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}var z={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){z[a]=new v(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];z[b]=new v(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){z[a]=new v(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){z[a]=new v(a,2,!1,a,null,!1,!1)});\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach(function(a){z[a]=new v(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){z[a]=new v(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){z[a]=new v(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){z[a]=new v(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){z[a]=new v(a,5,!1,a.toLowerCase(),null,!1,!1)});var ra=/[\\-:]([a-z])/g;function sa(a){return a[1].toUpperCase()}\n\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach(function(a){var b=a.replace(ra,\nsa);z[b]=new v(b,1,!1,a,null,!1,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1,!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!1,!1)});\nz.xlinkHref=new v(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction ta(a,b,c,d){var e=z.hasOwnProperty(b)?z[b]:null;if(null!==e?0!==e.type:d||!(2h||e[g]!==f[h]){var k=\"\\n\"+e[g].replace(\" at new \",\" at \");a.displayName&&k.includes(\"\")&&(k=k.replace(\"\",a.displayName));return k}while(1<=g&&0<=h)}break}}}finally{Na=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Ma(a):\"\"}\nfunction Pa(a){switch(a.tag){case 5:return Ma(a.type);case 16:return Ma(\"Lazy\");case 13:return Ma(\"Suspense\");case 19:return Ma(\"SuspenseList\");case 0:case 2:case 15:return a=Oa(a.type,!1),a;case 11:return a=Oa(a.type.render,!1),a;case 1:return a=Oa(a.type,!0),a;default:return\"\"}}\nfunction Qa(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ya:return\"Fragment\";case wa:return\"Portal\";case Aa:return\"Profiler\";case za:return\"StrictMode\";case Ea:return\"Suspense\";case Fa:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case Ca:return(a.displayName||\"Context\")+\".Consumer\";case Ba:return(a._context.displayName||\"Context\")+\".Provider\";case Da:var b=a.render;a=a.displayName;a||(a=b.displayName||\nb.name||\"\",a=\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");return a;case Ga:return b=a.displayName||null,null!==b?b:Qa(a.type)||\"Memo\";case Ha:b=a._payload;a=a._init;try{return Qa(a(b))}catch(c){}}return null}\nfunction Ra(a){var b=a.type;switch(a.tag){case 24:return\"Cache\";case 9:return(b.displayName||\"Context\")+\".Consumer\";case 10:return(b._context.displayName||\"Context\")+\".Provider\";case 18:return\"DehydratedFragment\";case 11:return a=b.render,a=a.displayName||a.name||\"\",b.displayName||(\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");case 7:return\"Fragment\";case 5:return b;case 4:return\"Portal\";case 3:return\"Root\";case 6:return\"Text\";case 16:return Qa(b);case 8:return b===za?\"StrictMode\":\"Mode\";case 22:return\"Offscreen\";\ncase 12:return\"Profiler\";case 21:return\"Scope\";case 13:return\"Suspense\";case 19:return\"SuspenseList\";case 25:return\"TracingMarker\";case 1:case 0:case 17:case 2:case 14:case 15:if(\"function\"===typeof b)return b.displayName||b.name||null;if(\"string\"===typeof b)return b}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"string\":case \"undefined\":return a;case \"object\":return a;default:return\"\"}}\nfunction Ta(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction Ua(a){var b=Ta(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function Va(a){a._valueTracker||(a._valueTracker=Ua(a))}function Wa(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=Ta(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Xa(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}\nfunction Ya(a,b){var c=b.checked;return A({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function Za(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function ab(a,b){b=b.checked;null!=b&&ta(a,\"checked\",b,!1)}\nfunction bb(a,b){ab(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?cb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&cb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction db(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction cb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}var eb=Array.isArray;\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e\"+b.valueOf().toString()+\"\";for(b=mb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction ob(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar pb={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,\nzoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},qb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(pb).forEach(function(a){qb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);pb[b]=pb[a]})});function rb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||pb.hasOwnProperty(a)&&pb[a]?(\"\"+b).trim():b+\"px\"}\nfunction sb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=rb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var tb=A({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});\nfunction ub(a,b){if(b){if(tb[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(p(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(p(60));if(\"object\"!==typeof b.dangerouslySetInnerHTML||!(\"__html\"in b.dangerouslySetInnerHTML))throw Error(p(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(p(62));}}\nfunction vb(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){case \"annotation-xml\":case \"color-profile\":case \"font-face\":case \"font-face-src\":case \"font-face-uri\":case \"font-face-format\":case \"font-face-name\":case \"missing-glyph\":return!1;default:return!0}}var wb=null;function xb(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}var yb=null,zb=null,Ab=null;\nfunction Bb(a){if(a=Cb(a)){if(\"function\"!==typeof yb)throw Error(p(280));var b=a.stateNode;b&&(b=Db(b),yb(a.stateNode,a.type,b))}}function Eb(a){zb?Ab?Ab.push(a):Ab=[a]:zb=a}function Fb(){if(zb){var a=zb,b=Ab;Ab=zb=null;Bb(a);if(b)for(a=0;a>>=0;return 0===a?32:31-(pc(a)/qc|0)|0}var rc=64,sc=4194304;\nfunction tc(a){switch(a&-a){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return a&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return a&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;\ndefault:return a}}function uc(a,b){var c=a.pendingLanes;if(0===c)return 0;var d=0,e=a.suspendedLanes,f=a.pingedLanes,g=c&268435455;if(0!==g){var h=g&~e;0!==h?d=tc(h):(f&=g,0!==f&&(d=tc(f)))}else g=c&~e,0!==g?d=tc(g):0!==f&&(d=tc(f));if(0===d)return 0;if(0!==b&&b!==d&&0===(b&e)&&(e=d&-d,f=b&-b,e>=f||16===e&&0!==(f&4194240)))return b;0!==(d&4)&&(d|=c&16);b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0c;c++)b.push(a);return b}\nfunction Ac(a,b,c){a.pendingLanes|=b;536870912!==b&&(a.suspendedLanes=0,a.pingedLanes=0);a=a.eventTimes;b=31-oc(b);a[b]=c}function Bc(a,b){var c=a.pendingLanes&~b;a.pendingLanes=b;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=b;a.mutableReadLanes&=b;a.entangledLanes&=b;b=a.entanglements;var d=a.eventTimes;for(a=a.expirationTimes;0=be),ee=String.fromCharCode(32),fe=!1;\nfunction ge(a,b){switch(a){case \"keyup\":return-1!==$d.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"focusout\":return!0;default:return!1}}function he(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var ie=!1;function je(a,b){switch(a){case \"compositionend\":return he(b);case \"keypress\":if(32!==b.which)return null;fe=!0;return ee;case \"textInput\":return a=b.data,a===ee&&fe?null:a;default:return null}}\nfunction ke(a,b){if(ie)return\"compositionend\"===a||!ae&&ge(a,b)?(a=nd(),md=ld=kd=null,ie=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Je(c)}}function Le(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Le(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Me(){for(var a=window,b=Xa();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=Xa(a.document)}return b}function Ne(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}\nfunction Oe(a){var b=Me(),c=a.focusedElem,d=a.selectionRange;if(b!==c&&c&&c.ownerDocument&&Le(c.ownerDocument.documentElement,c)){if(null!==d&&Ne(c))if(b=d.start,a=d.end,void 0===a&&(a=b),\"selectionStart\"in c)c.selectionStart=b,c.selectionEnd=Math.min(a,c.value.length);else if(a=(b=c.ownerDocument||document)&&b.defaultView||window,a.getSelection){a=a.getSelection();var e=c.textContent.length,f=Math.min(d.start,e);d=void 0===d.end?f:Math.min(d.end,e);!a.extend&&f>d&&(e=d,d=f,f=e);e=Ke(c,f);var g=Ke(c,\nd);e&&g&&(1!==a.rangeCount||a.anchorNode!==e.node||a.anchorOffset!==e.offset||a.focusNode!==g.node||a.focusOffset!==g.offset)&&(b=b.createRange(),b.setStart(e.node,e.offset),a.removeAllRanges(),f>d?(a.addRange(b),a.extend(g.node,g.offset)):(b.setEnd(g.node,g.offset),a.addRange(b)))}b=[];for(a=c;a=a.parentNode;)1===a.nodeType&&b.push({element:a,left:a.scrollLeft,top:a.scrollTop});\"function\"===typeof c.focus&&c.focus();for(c=0;c=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;\nfunction Ue(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;Te||null==Qe||Qe!==Xa(d)||(d=Qe,\"selectionStart\"in d&&Ne(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),Se&&Ie(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0Tf||(a.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G(a,b){Tf++;Sf[Tf]=a.current;a.current=b}var Vf={},H=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(a,b){var c=a.type.contextTypes;if(!c)return Vf;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}\nfunction Zf(a){a=a.childContextTypes;return null!==a&&void 0!==a}function $f(){E(Wf);E(H)}function ag(a,b,c){if(H.current!==Vf)throw Error(p(168));G(H,b);G(Wf,c)}function bg(a,b,c){var d=a.stateNode;b=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in b))throw Error(p(108,Ra(a)||\"Unknown\",e));return A({},c,d)}\nfunction cg(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Vf;Xf=H.current;G(H,a);G(Wf,Wf.current);return!0}function dg(a,b,c){var d=a.stateNode;if(!d)throw Error(p(169));c?(a=bg(a,b,Xf),d.__reactInternalMemoizedMergedChildContext=a,E(Wf),E(H),G(H,a)):E(Wf);G(Wf,c)}var eg=null,fg=!1,gg=!1;function hg(a){null===eg?eg=[a]:eg.push(a)}function ig(a){fg=!0;hg(a)}\nfunction jg(){if(!gg&&null!==eg){gg=!0;var a=0,b=C;try{var c=eg;for(C=1;a>=g;e-=g;rg=1<<32-oc(b)+e|c<w?(x=u,u=null):x=u.sibling;var n=r(e,u,h[w],k);if(null===n){null===u&&(u=x);break}a&&u&&null===n.alternate&&b(e,u);g=f(n,g,w);null===m?l=n:m.sibling=n;m=n;u=x}if(w===h.length)return c(e,u),I&&tg(e,w),l;if(null===u){for(;ww?(x=m,m=null):x=m.sibling;var t=r(e,m,n.value,k);if(null===t){null===m&&(m=x);break}a&&m&&null===t.alternate&&b(e,m);g=f(t,g,w);null===u?l=t:u.sibling=t;u=t;m=x}if(n.done)return c(e,\nm),I&&tg(e,w),l;if(null===m){for(;!n.done;w++,n=h.next())n=q(e,n.value,k),null!==n&&(g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);I&&tg(e,w);return l}for(m=d(e,m);!n.done;w++,n=h.next())n=y(m,e,w,n.value,k),null!==n&&(a&&null!==n.alternate&&m.delete(null===n.key?w:n.key),g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);a&&m.forEach(function(a){return b(e,a)});I&&tg(e,w);return l}function J(a,d,f,h){\"object\"===typeof f&&null!==f&&f.type===ya&&null===f.key&&(f=f.props.children);if(\"object\"===typeof f&&null!==f){switch(f.$$typeof){case va:a:{for(var k=\nf.key,l=d;null!==l;){if(l.key===k){k=f.type;if(k===ya){if(7===l.tag){c(a,l.sibling);d=e(l,f.props.children);d.return=a;a=d;break a}}else if(l.elementType===k||\"object\"===typeof k&&null!==k&&k.$$typeof===Ha&&Ng(k)===l.type){c(a,l.sibling);d=e(l,f.props);d.ref=Lg(a,l,f);d.return=a;a=d;break a}c(a,l);break}else b(a,l);l=l.sibling}f.type===ya?(d=Tg(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=Rg(f.type,f.key,f.props,null,a.mode,h),h.ref=Lg(a,d,f),h.return=a,a=h)}return g(a);case wa:a:{for(l=f.key;null!==\nd;){if(d.key===l)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=Sg(f,a.mode,h);d.return=a;a=d}return g(a);case Ha:return l=f._init,J(a,d,l(f._payload),h)}if(eb(f))return n(a,d,f,h);if(Ka(f))return t(a,d,f,h);Mg(a,f)}return\"string\"===typeof f&&\"\"!==f||\"number\"===typeof f?(f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):\n(c(a,d),d=Qg(f,a.mode,h),d.return=a,a=d),g(a)):c(a,d)}return J}var Ug=Og(!0),Vg=Og(!1),Wg=Uf(null),Xg=null,Yg=null,Zg=null;function $g(){Zg=Yg=Xg=null}function ah(a){var b=Wg.current;E(Wg);a._currentValue=b}function bh(a,b,c){for(;null!==a;){var d=a.alternate;(a.childLanes&b)!==b?(a.childLanes|=b,null!==d&&(d.childLanes|=b)):null!==d&&(d.childLanes&b)!==b&&(d.childLanes|=b);if(a===c)break;a=a.return}}\nfunction ch(a,b){Xg=a;Zg=Yg=null;a=a.dependencies;null!==a&&null!==a.firstContext&&(0!==(a.lanes&b)&&(dh=!0),a.firstContext=null)}function eh(a){var b=a._currentValue;if(Zg!==a)if(a={context:a,memoizedValue:b,next:null},null===Yg){if(null===Xg)throw Error(p(308));Yg=a;Xg.dependencies={lanes:0,firstContext:a}}else Yg=Yg.next=a;return b}var fh=null;function gh(a){null===fh?fh=[a]:fh.push(a)}\nfunction hh(a,b,c,d){var e=b.interleaved;null===e?(c.next=c,gh(b)):(c.next=e.next,e.next=c);b.interleaved=c;return ih(a,d)}function ih(a,b){a.lanes|=b;var c=a.alternate;null!==c&&(c.lanes|=b);c=a;for(a=a.return;null!==a;)a.childLanes|=b,c=a.alternate,null!==c&&(c.childLanes|=b),c=a,a=a.return;return 3===c.tag?c.stateNode:null}var jh=!1;function kh(a){a.updateQueue={baseState:a.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}\nfunction lh(a,b){a=a.updateQueue;b.updateQueue===a&&(b.updateQueue={baseState:a.baseState,firstBaseUpdate:a.firstBaseUpdate,lastBaseUpdate:a.lastBaseUpdate,shared:a.shared,effects:a.effects})}function mh(a,b){return{eventTime:a,lane:b,tag:0,payload:null,callback:null,next:null}}\nfunction nh(a,b,c){var d=a.updateQueue;if(null===d)return null;d=d.shared;if(0!==(K&2)){var e=d.pending;null===e?b.next=b:(b.next=e.next,e.next=b);d.pending=b;return ih(a,c)}e=d.interleaved;null===e?(b.next=b,gh(d)):(b.next=e.next,e.next=b);d.interleaved=b;return ih(a,c)}function oh(a,b,c){b=b.updateQueue;if(null!==b&&(b=b.shared,0!==(c&4194240))){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nfunction ph(a,b){var c=a.updateQueue,d=a.alternate;if(null!==d&&(d=d.updateQueue,c===d)){var e=null,f=null;c=c.firstBaseUpdate;if(null!==c){do{var g={eventTime:c.eventTime,lane:c.lane,tag:c.tag,payload:c.payload,callback:c.callback,next:null};null===f?e=f=g:f=f.next=g;c=c.next}while(null!==c);null===f?e=f=b:f=f.next=b}else e=f=b;c={baseState:d.baseState,firstBaseUpdate:e,lastBaseUpdate:f,shared:d.shared,effects:d.effects};a.updateQueue=c;return}a=c.lastBaseUpdate;null===a?c.firstBaseUpdate=b:a.next=\nb;c.lastBaseUpdate=b}\nfunction qh(a,b,c,d){var e=a.updateQueue;jh=!1;var f=e.firstBaseUpdate,g=e.lastBaseUpdate,h=e.shared.pending;if(null!==h){e.shared.pending=null;var k=h,l=k.next;k.next=null;null===g?f=l:g.next=l;g=k;var m=a.alternate;null!==m&&(m=m.updateQueue,h=m.lastBaseUpdate,h!==g&&(null===h?m.firstBaseUpdate=l:h.next=l,m.lastBaseUpdate=k))}if(null!==f){var q=e.baseState;g=0;m=l=k=null;h=f;do{var r=h.lane,y=h.eventTime;if((d&r)===r){null!==m&&(m=m.next={eventTime:y,lane:0,tag:h.tag,payload:h.payload,callback:h.callback,\nnext:null});a:{var n=a,t=h;r=b;y=c;switch(t.tag){case 1:n=t.payload;if(\"function\"===typeof n){q=n.call(y,q,r);break a}q=n;break a;case 3:n.flags=n.flags&-65537|128;case 0:n=t.payload;r=\"function\"===typeof n?n.call(y,q,r):n;if(null===r||void 0===r)break a;q=A({},q,r);break a;case 2:jh=!0}}null!==h.callback&&0!==h.lane&&(a.flags|=64,r=e.effects,null===r?e.effects=[h]:r.push(h))}else y={eventTime:y,lane:r,tag:h.tag,payload:h.payload,callback:h.callback,next:null},null===m?(l=m=y,k=q):m=m.next=y,g|=r;\nh=h.next;if(null===h)if(h=e.shared.pending,null===h)break;else r=h,h=r.next,r.next=null,e.lastBaseUpdate=r,e.shared.pending=null}while(1);null===m&&(k=q);e.baseState=k;e.firstBaseUpdate=l;e.lastBaseUpdate=m;b=e.shared.interleaved;if(null!==b){e=b;do g|=e.lane,e=e.next;while(e!==b)}else null===f&&(e.shared.lanes=0);rh|=g;a.lanes=g;a.memoizedState=q}}\nfunction sh(a,b,c){a=b.effects;b.effects=null;if(null!==a)for(b=0;bc?c:4;a(!0);var d=Gh.transition;Gh.transition={};try{a(!1),b()}finally{C=c,Gh.transition=d}}function wi(){return Uh().memoizedState}\nfunction xi(a,b,c){var d=yi(a);c={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(zi(a))Ai(b,c);else if(c=hh(a,b,c,d),null!==c){var e=R();gi(c,a,d,e);Bi(c,b,d)}}\nfunction ii(a,b,c){var d=yi(a),e={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(zi(a))Ai(b,e);else{var f=a.alternate;if(0===a.lanes&&(null===f||0===f.lanes)&&(f=b.lastRenderedReducer,null!==f))try{var g=b.lastRenderedState,h=f(g,c);e.hasEagerState=!0;e.eagerState=h;if(He(h,g)){var k=b.interleaved;null===k?(e.next=e,gh(b)):(e.next=k.next,k.next=e);b.interleaved=e;return}}catch(l){}finally{}c=hh(a,b,e,d);null!==c&&(e=R(),gi(c,a,d,e),Bi(c,b,d))}}\nfunction zi(a){var b=a.alternate;return a===M||null!==b&&b===M}function Ai(a,b){Jh=Ih=!0;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}function Bi(a,b,c){if(0!==(c&4194240)){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nvar Rh={readContext:eh,useCallback:P,useContext:P,useEffect:P,useImperativeHandle:P,useInsertionEffect:P,useLayoutEffect:P,useMemo:P,useReducer:P,useRef:P,useState:P,useDebugValue:P,useDeferredValue:P,useTransition:P,useMutableSource:P,useSyncExternalStore:P,useId:P,unstable_isNewReconciler:!1},Oh={readContext:eh,useCallback:function(a,b){Th().memoizedState=[a,void 0===b?null:b];return a},useContext:eh,useEffect:mi,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return ki(4194308,\n4,pi.bind(null,b,a),c)},useLayoutEffect:function(a,b){return ki(4194308,4,a,b)},useInsertionEffect:function(a,b){return ki(4,2,a,b)},useMemo:function(a,b){var c=Th();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=Th();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};d.queue=a;a=a.dispatch=xi.bind(null,M,a);return[d.memoizedState,a]},useRef:function(a){var b=\nTh();a={current:a};return b.memoizedState=a},useState:hi,useDebugValue:ri,useDeferredValue:function(a){return Th().memoizedState=a},useTransition:function(){var a=hi(!1),b=a[0];a=vi.bind(null,a[1]);Th().memoizedState=a;return[b,a]},useMutableSource:function(){},useSyncExternalStore:function(a,b,c){var d=M,e=Th();if(I){if(void 0===c)throw Error(p(407));c=c()}else{c=b();if(null===Q)throw Error(p(349));0!==(Hh&30)||di(d,b,c)}e.memoizedState=c;var f={value:c,getSnapshot:b};e.queue=f;mi(ai.bind(null,d,\nf,a),[a]);d.flags|=2048;bi(9,ci.bind(null,d,f,c,b),void 0,null);return c},useId:function(){var a=Th(),b=Q.identifierPrefix;if(I){var c=sg;var d=rg;c=(d&~(1<<32-oc(d)-1)).toString(32)+c;b=\":\"+b+\"R\"+c;c=Kh++;0