@consta/uikit 4.3.0 → 4.4.0

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.
Files changed (57) hide show
  1. package/__internal__/src/components/AutoCompleteCanary/AutoCompleteCanary.js +1 -1
  2. package/__internal__/src/components/AutoCompleteCanary/AutoCompleteCanary.js.map +1 -1
  3. package/__internal__/src/components/Collapse/Collapse.css +1 -1
  4. package/__internal__/src/components/Collapse/Collapse.js +1 -1
  5. package/__internal__/src/components/Collapse/Collapse.js.map +1 -1
  6. package/__internal__/src/components/Collapse/types.d.ts +1 -0
  7. package/__internal__/src/components/Collapse/types.js.map +1 -1
  8. package/__internal__/src/components/DatePicker/DatePicker.js +1 -1
  9. package/__internal__/src/components/DatePicker/DatePicker.js.map +1 -1
  10. package/__internal__/src/components/ProgressLine/ProgressLine.css +1 -1
  11. package/__internal__/src/components/ProgressLine/ProgressLine.js +1 -1
  12. package/__internal__/src/components/ProgressLine/ProgressLine.js.map +1 -1
  13. package/__internal__/src/components/ProgressLine/helpers.d.ts +9 -1
  14. package/__internal__/src/components/ProgressLine/helpers.js +1 -1
  15. package/__internal__/src/components/ProgressLine/helpers.js.map +1 -1
  16. package/__internal__/src/components/Table/Cell/TableCell.css +1 -1
  17. package/__internal__/src/components/Table/RowsCollapse/TableRowsCollapse.js +1 -1
  18. package/__internal__/src/components/Table/RowsCollapse/TableRowsCollapse.js.map +1 -1
  19. package/__internal__/src/components/Table/Table.d.ts +1 -0
  20. package/__internal__/src/components/Table/Table.js +1 -1
  21. package/__internal__/src/components/Table/Table.js.map +1 -1
  22. package/__internal__/src/components/Table/__mock__/data.mock.d.ts +19 -0
  23. package/__internal__/src/components/Table/__mock__/data.mock.js +1 -1
  24. package/__internal__/src/components/Table/__mock__/data.mock.js.map +1 -1
  25. package/__internal__/src/components/Table/helpers.d.ts +1 -0
  26. package/__internal__/src/components/Table/helpers.js +1 -1
  27. package/__internal__/src/components/Table/helpers.js.map +1 -1
  28. package/__internal__/src/hooks/useBreakpoints/getLastPoint.d.ts +1 -0
  29. package/__internal__/src/hooks/useBreakpoints/getLastPoint.js +2 -0
  30. package/__internal__/src/hooks/useBreakpoints/getLastPoint.js.map +1 -0
  31. package/__internal__/src/hooks/useBreakpoints/index.d.ts +1 -0
  32. package/__internal__/src/hooks/useBreakpoints/index.js +1 -1
  33. package/__internal__/src/hooks/useBreakpoints/index.js.map +1 -1
  34. package/__internal__/src/hooks/useBreakpoints/isEq.d.ts +2 -0
  35. package/__internal__/src/hooks/useBreakpoints/isEq.js +2 -0
  36. package/__internal__/src/hooks/useBreakpoints/isEq.js.map +1 -0
  37. package/__internal__/src/hooks/useBreakpoints/mapping.d.ts +2 -0
  38. package/__internal__/src/hooks/useBreakpoints/mapping.js +2 -0
  39. package/__internal__/src/hooks/useBreakpoints/mapping.js.map +1 -0
  40. package/__internal__/src/hooks/useBreakpoints/types.d.ts +2 -0
  41. package/__internal__/src/hooks/useBreakpoints/types.js +2 -0
  42. package/__internal__/src/hooks/useBreakpoints/types.js.map +1 -0
  43. package/__internal__/src/hooks/useBreakpoints/useBreakpoints.d.ts +2 -4
  44. package/__internal__/src/hooks/useBreakpoints/useBreakpoints.js +1 -1
  45. package/__internal__/src/hooks/useBreakpoints/useBreakpoints.js.map +1 -1
  46. package/__internal__/src/hooks/useComponentBreakpoints/index.d.ts +2 -0
  47. package/__internal__/src/hooks/useComponentBreakpoints/index.js +2 -0
  48. package/__internal__/src/hooks/useComponentBreakpoints/index.js.map +1 -0
  49. package/__internal__/src/hooks/useComponentBreakpoints/useComponentBreakpoints.d.ts +4 -0
  50. package/__internal__/src/hooks/useComponentBreakpoints/useComponentBreakpoints.js +2 -0
  51. package/__internal__/src/hooks/useComponentBreakpoints/useComponentBreakpoints.js.map +1 -0
  52. package/__internal__/src/utils/generateMask.d.ts +1 -0
  53. package/__internal__/src/utils/generateMask.js +2 -0
  54. package/__internal__/src/utils/generateMask.js.map +1 -0
  55. package/package.json +1 -1
  56. package/useComponentBreakpoints/index.d.ts +1 -0
  57. package/useComponentBreakpoints/index.js +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","names":["React","useEffect","useMemo","useComponentSize","useForkRef","IconSortDown","IconSortUp","IconUnsort","sortBy","sortByDefault","updateAt","cn","setRef","isNotNil","isString","Button","Text","TableCell","fieldFiltersPresent","filterTableData","getSelectedFiltersList","isSelectedFiltersPresent","useSelectedFilters","TableHeader","createSortingState","getColumnLeftOffset","getColumnsSize","getMergedArray","getNewSorting","Order","transformRows","useHeaderData","useLazyLoadData","TableResizer","TableRowsCollapse","TableSelectedOptionsList","TableTextFilter","TableFilterContainer","TableNumberFilter","TableChoiceGroupFilter","cnTable","sizes","zebraStriped","headerVerticalAligns","createButtonSizeMap","s","m","l","getColumnSortByField","column","sortable","sortByField","accessor","sortingData","rows","sorting","onSortBy","sortedRows","by","order","sortFn","some","row","length","map","defaultEmptyRowsPlaceholder","InternalTable","props","ref","columns","size","rawFilters","filters","isResizable","stickyHeader","stickyColumns","minColumnWidth","activeRow","verticalAlign","headerVerticalAlign","borderBetweenRows","borderBetweenColumns","emptyRowsPlaceholder","defaultExpandAll","className","onRowHover","onRowClick","onRowCreate","onCellClick","getAdditionalClassName","rowCreateText","lazyLoad","onFiltersUpdated","getTagLabel","getCellWrap","isExpandedRowsByDefault","otherProps","headers","flattenedHeaders","lowHeaders","headerRowsRefs","headerRowsHeights","resizerTopOffsets","stickyColumnsGrid","position","gridIndex","colSpan","getColumnsWidth","width","useState","resizedColumnWidths","setResizedColumnWidths","filter","id","field","initialColumnWidths","setInitialColumnWidths","setSorting","visibleFilter","setVisibleFilter","top","left","tableScroll","setTableScroll","tableRef","useRef","columnsRefs","cellsRefs","selectedFilters","updateSelectedFilters","removeOneSelectedFilter","removeAllSelectedFilters","expandedRowIds","setExpandedRowIds","sortingColumn","find","col","Object","prototype","hasOwnProperty","call","sortingState","tableHeight","current","clientHeight","tableWidth","clientWidth","showVerticalCellShadow","showHorizontalCellShadow","isRowsClickable","onChange","updateColumnWidth","idx","newWidth","overallColumnsWidth","columnsElements","values","columnsElementsWidths","el","getBoundingClientRect","resultArr","reduce","a","b","useLayoutEffect","isSortedByColumn","getStickyLeftOffset","columnIndex","topHeaderGridIndex","handleSelectRow","e","handleRowHover","handleRowCreate","index","handleColumnResize","delta","columnMinWidth","Math","min","prevColumnWidth","newColumnWidth","max","containerEl","scrollBy","stickyColumnsWidth","columnsWithMetaData","resizedColumnWidth","initialColumnWidth","columnWidth","columnLeftOffset","isSticky","showResizer","isFilterActive","selected","filterable","isSortingActive","isResized","headersWithMetaData","hasNestedRows","sortedTableData","filteredData","data","maxVisibleRows","scrollableEl","getSlicedRows","setBoundaryRef","flatRowsData","rowsData","tableStyle","hasMergedCells","header","mergeCells","handleExpandRow","includes","prevState","rowId","getCollapseRollProps","columnIdx","withCollapseButton","baseProps","level","options","isExpandedByDefault","isExpanded","toggleCollapse","getExpandedRows","expandedIds","forEach","defaultExpand","push","ids","indexOf","renderCell","cellContent","collapseRollProps","bottomCreateRowButton","rowsLength","slice","pop","lastRowId","getTableCellProps","rowIdx","getComparisonValue","previousCell","currentCell","result","rowSpan","show","style","nextCell","i","handleCellClick","params","withBorderBottom","handleScroll","target","HTMLElement","scrollTop","scrollLeft","type","getSortIcon","handleSortClick","newSorting","sortProps","sortingBy","sortOrder","handleFilterTogglerClick","handleTooltipSave","tooltipSelectedFilters","value","removeSelectedFilter","tableFilters","resetSelectedFilters","nth","withMergedCells","isActive","isDarkned","isMerged","renderEmptyRowsPlaceholder","placeholder","Table","forwardRef"],"sources":["../../../../../src/components/Table/Table.tsx"],"sourcesContent":["import './Table.css';\n\nimport React, { useEffect, useMemo } from 'react';\n\nimport { useComponentSize } from '../../hooks/useComponentSize/useComponentSize';\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { IconSortDown } from '../../icons/IconSortDown/IconSortDown';\nimport { IconSortUp } from '../../icons/IconSortUp/IconSortUp';\nimport { IconUnsort } from '../../icons/IconUnsort/IconUnsort';\nimport { sortBy as sortByDefault, updateAt } from '../../utils/array';\nimport { cn } from '../../utils/bem';\nimport { setRef } from '../../utils/setRef';\nimport { isNotNil, isString } from '../../utils/type-guards';\nimport { Button, ButtonPropSize } from '../Button/Button';\nimport { Text } from '../Text/Text';\nimport { HorizontalAlign, TableCell, VerticalAlign } from './Cell/TableCell';\nimport {\n fieldFiltersPresent,\n FieldSelectedValues,\n Filters,\n filterTableData,\n getSelectedFiltersList,\n isSelectedFiltersPresent,\n onSortBy,\n SelectedFilters,\n useSelectedFilters,\n} from './filtering';\nimport { TableHeader } from './Header/TableHeader';\nimport {\n createSortingState,\n getColumnLeftOffset,\n getColumnsSize,\n getMergedArray,\n getNewSorting,\n Header,\n Order,\n OrderType,\n Position,\n transformRows,\n useHeaderData,\n useLazyLoadData,\n} from './helpers';\nimport { TableResizer } from './Resizer/TableResizer';\nimport {\n Props as TableRowsCollapseProps,\n TableRowsCollapse,\n} from './RowsCollapse/TableRowsCollapse';\nimport {\n GetTagLabel,\n TableSelectedOptionsList,\n} from './SelectedOptionsList/TableSelectedOptionsList';\n\nexport { TableTextFilter } from './TextFilter/TableTextFilter';\nexport { TableFilterContainer } from './FilterContainer/TableFilterContainer';\nexport { TableNumberFilter } from './NumberFilter/TableNumberFilter';\nexport { TableChoiceGroupFilter } from './ChoiceGroupFilter/TableChoiceGroupFilter';\n\nconst cnTable = cn('Table');\n\nexport const sizes = ['s', 'm', 'l'] as const;\ntype Size = typeof sizes[number];\n\nexport const zebraStriped = ['odd', 'even'] as const;\ntype ZebraStriped = typeof zebraStriped[number];\n\nexport const headerVerticalAligns = ['center', 'bottom'] as const;\nexport type HeaderVerticalAlign = typeof headerVerticalAligns[number];\n\nconst createButtonSizeMap: Record<Size, ButtonPropSize> = {\n s: 'xs',\n m: 's',\n l: 'm',\n};\n\ntype TableCSSCustomProperty = {\n '--table-width': string;\n '--table-grid-template-columns': string;\n};\n\nexport type LazyLoad =\n | {\n maxVisibleRows?: number;\n scrollableEl?: HTMLDivElement | Window;\n }\n | undefined;\n\ntype ActiveRow = {\n id: string | undefined;\n onChange: ({\n id,\n e,\n }: {\n id: string | undefined;\n e?: React.SyntheticEvent;\n }) => void;\n};\n\ntype onRowHover = ({\n id,\n e,\n}: {\n id: string | undefined;\n e: React.MouseEvent;\n}) => void;\n\ntype onRowClick = ({ id, e }: { id: string; e: React.MouseEvent }) => void;\n\ntype onRowCreate = ({\n id,\n index,\n e,\n}: {\n id?: string;\n index: number;\n e: React.MouseEvent;\n}) => void;\n\nexport type CellClickType = 'click' | 'contextMenu';\n\nexport type onCellClick = ({\n e,\n type,\n rowId,\n columnIdx,\n ref,\n}: {\n e: React.SyntheticEvent;\n type: CellClickType;\n columnIdx: number;\n ref: React.RefObject<HTMLDivElement>;\n rowId?: string;\n}) => void;\n\nexport type TableRow = {\n id: string;\n defaultExpand?: boolean;\n rows?: TableRow[];\n};\n\nexport type TableTreeRow<T extends TableRow> = {\n options: {\n level: number;\n };\n} & T;\n\nexport type TableFilters<T extends TableRow> = Filters<T>;\n\nexport type RowField<T extends TableRow> = Exclude<keyof T, symbol | number>;\n\nexport type ColumnWidth = number | undefined;\n\nexport type ValueOf<T> = T[keyof T];\n\ntype ColumnBase<T extends TableRow> = ValueOf<{\n [K in keyof T]: {\n accessor: K extends string ? K : never;\n sortable?: boolean;\n sortByField?: keyof T;\n order?: OrderType;\n sortFn?(a: T[K], b: T[K]): number;\n renderCell?: (row: T) => React.ReactNode;\n getComparisonValue?: (cell: T[K]) => number | string;\n };\n}>;\ntype SingleColumnAddition<T extends TableRow> = ColumnBase<T> & {\n columns?: never;\n};\ntype GroupColumnAddition<T extends TableRow> = {\n columns: TableColumn<T>[];\n} & {\n // eslint-disable-next-line no-unused-vars\n [K in keyof ColumnBase<T>]?: never;\n};\nexport interface TableControl<T extends TableRow> {\n column: Header<T> & ColumnMetaData;\n}\n\nexport type SortByProps<T extends TableRow> = {\n sortingBy: keyof T;\n sortOrder: 'asc' | 'desc';\n};\n\nexport type TableColumn<T extends TableRow> = {\n title: React.ReactNode;\n align?: HorizontalAlign;\n withoutPadding?: boolean;\n width?: ColumnWidth;\n mergeCells?: boolean;\n position?: Position;\n hidden?: boolean;\n control?: ({ column }: TableControl<T>) => React.ReactNode;\n} & (GroupColumnAddition<T> | SingleColumnAddition<T>);\n\nexport type TableProps<T extends TableRow> = {\n columns: TableColumn<T>[];\n rows: T[];\n isResizable?: boolean;\n filters?: Filters<T>;\n onSortBy?: onSortBy<T>;\n size?: Size;\n stickyHeader?: boolean;\n stickyColumns?: number;\n minColumnWidth?: number;\n activeRow?: ActiveRow;\n verticalAlign?: VerticalAlign;\n headerVerticalAlign?: HeaderVerticalAlign;\n zebraStriped?: ZebraStriped;\n borderBetweenRows?: boolean;\n defaultExpandAll?: boolean;\n borderBetweenColumns?: boolean;\n emptyRowsPlaceholder?: React.ReactNode;\n className?: string;\n onRowHover?: onRowHover;\n onRowClick?: onRowClick;\n onRowCreate?: onRowCreate;\n onCellClick?: onCellClick;\n getAdditionalClassName?: (props: {\n column: TableColumn<T>;\n row: T;\n isActive: boolean;\n }) => string;\n rowCreateText?: string;\n lazyLoad?: LazyLoad;\n onFiltersUpdated?: (filters: SelectedFilters) => void;\n getTagLabel?: GetTagLabel;\n isExpandedRowsByDefault?: boolean;\n getCellWrap?: (row: T) => 'truncate' | 'break';\n};\n\ntype Table = <T extends TableRow>(\n props: TableProps<T> & { ref?: React.Ref<HTMLDivElement> },\n) => React.ReactElement | null;\n\nexport type ColumnMetaData = {\n filterable: boolean;\n isSortingActive: boolean;\n isFilterActive: boolean;\n isResized: boolean;\n isSticky: boolean;\n showResizer: boolean;\n columnWidth: number;\n columnLeftOffset: number;\n};\n\nexport type SortingState<T extends TableRow> = {\n by: keyof T;\n order: 'asc' | 'desc';\n sortFn?: (a: T[keyof T], b: T[keyof T]) => number;\n} | null;\n\ntype GetTableCellProps = {\n show: boolean;\n rowSpan: number;\n style: {\n 'left'?: number;\n '--row-span'?: string;\n };\n};\n\nconst getColumnSortByField = <T extends TableRow>(\n column: TableColumn<T>,\n): keyof T => (column.sortable && column.sortByField) || column.accessor!;\n\nconst sortingData = <T extends TableRow>(\n rows: T[],\n sorting: SortingState<T>,\n onSortBy?: onSortBy<T>,\n): T[] => {\n if (onSortBy) {\n return rows;\n }\n\n if (!sorting) {\n return rows;\n }\n const sortedRows = sortByDefault(\n rows,\n sorting.by,\n sorting.order,\n sorting.sortFn,\n );\n\n if (sortedRows.some((row) => row.rows?.length)) {\n return sortedRows.map((row) => {\n return row.rows\n ? { ...row, rows: sortingData(row.rows as T[], sorting, onSortBy) }\n : row;\n });\n }\n\n return sortedRows;\n};\n\nconst defaultEmptyRowsPlaceholder = (\n <Text as=\"span\" view=\"primary\" size=\"s\" lineHeight=\"s\">\n Нет данных\n </Text>\n);\n\nconst InternalTable = <T extends TableRow>(\n props: TableProps<T>,\n ref?: React.Ref<HTMLDivElement>,\n) => {\n const {\n columns,\n rows,\n size = 'l',\n filters: rawFilters,\n isResizable = false,\n stickyHeader = false,\n stickyColumns = 0,\n minColumnWidth = 150,\n activeRow,\n verticalAlign = 'top',\n headerVerticalAlign = 'center',\n zebraStriped,\n borderBetweenRows = false,\n borderBetweenColumns = false,\n emptyRowsPlaceholder = defaultEmptyRowsPlaceholder,\n defaultExpandAll,\n className,\n onRowHover,\n onRowClick,\n onRowCreate,\n onCellClick,\n getAdditionalClassName,\n rowCreateText = '+ Добавить строку',\n lazyLoad,\n onSortBy,\n onFiltersUpdated,\n getTagLabel,\n getCellWrap,\n isExpandedRowsByDefault = false,\n ...otherProps\n } = props;\n const {\n headers,\n flattenedHeaders,\n lowHeaders,\n headerRowsRefs,\n headerRowsHeights,\n resizerTopOffsets,\n } = useHeaderData(columns);\n const stickyColumnsGrid =\n // eslint-disable-next-line no-unsafe-optional-chaining\n headers[0][stickyColumns - 1]?.position.gridIndex! +\n (headers[0][stickyColumns - 1]?.position.colSpan || 1);\n\n const getColumnsWidth = () =>\n lowHeaders.map((column: TableColumn<T>) => column.width);\n const [resizedColumnWidths, setResizedColumnWidths] = React.useState<\n ColumnWidth[]\n >(getColumnsWidth());\n\n const filters = React.useMemo(() => {\n return (\n rawFilters && rawFilters.filter((filter) => filter.id && filter.field)\n );\n }, [rawFilters]);\n\n React.useEffect(() => {\n setResizedColumnWidths(getColumnsWidth());\n }, [lowHeaders.length]);\n\n const [initialColumnWidths, setInitialColumnWidths] = React.useState<\n number[]\n >([]);\n const [sorting, setSorting] = React.useState<SortingState<T>>(null);\n const [visibleFilter, setVisibleFilter] = React.useState<string | null>(null);\n const [tableScroll, setTableScroll] = React.useState({ top: 0, left: 0 });\n\n const tableRef = React.useRef<HTMLDivElement>(null);\n const columnsRefs = React.useRef<Record<number, HTMLDivElement | null>>({});\n const cellsRefs = React.useRef<Record<string, HTMLDivElement | null>>({});\n const {\n selectedFilters,\n updateSelectedFilters,\n removeOneSelectedFilter,\n removeAllSelectedFilters,\n } = useSelectedFilters(filters, onFiltersUpdated);\n const [expandedRowIds, setExpandedRowIds] = React.useState<string[]>([]);\n\n // установка сортировки по умолчанию\n\n React.useEffect(() => {\n const sortingColumn = columns.find(\n (col) =>\n isString(col.order) &&\n Object.prototype.hasOwnProperty.call(Order, col.order),\n );\n if (sortingColumn) {\n const sortingState = createSortingState(\n getColumnSortByField(sortingColumn),\n sortingColumn.order,\n sortingColumn.sortFn,\n );\n setSorting(sortingState);\n }\n }, [columns]);\n\n /*\n Подписываемся на изменения размеров таблицы, но не используем значения из\n хука так как нам нужна ширина и высота таблицы без размера скролла. Этот хук\n использует значения `offsetWidth` и `offsetHeight` которые включают размер\n скролл бара.\n */\n useComponentSize(tableRef);\n const tableHeight = tableRef.current?.clientHeight || 0;\n const tableWidth = tableRef.current?.clientWidth || 0;\n\n const showVerticalCellShadow = tableScroll.left > 0;\n const showHorizontalCellShadow = tableScroll.top > 0;\n const isRowsClickable = activeRow && activeRow.onChange;\n\n const updateColumnWidth = (idx: number, newWidth: number): void => {\n setResizedColumnWidths(updateAt(resizedColumnWidths, idx, newWidth));\n };\n\n const overallColumnsWidth = useMemo(() => {\n const columnsElements = Object.values(columnsRefs.current).filter(isNotNil);\n const columnsElementsWidths = columnsElements.map(\n (el) => el.getBoundingClientRect().width,\n );\n const resultArr = getMergedArray(\n columnsElementsWidths,\n resizedColumnWidths,\n );\n return resultArr.reduce((a, b) => (a ?? 0) + (b ?? 0));\n }, [resizedColumnWidths, isResizable]);\n\n React.useLayoutEffect(() => {\n const columnsElements = Object.values(columnsRefs.current).filter(isNotNil);\n if (columnsElements.length === 0) return;\n\n const columnsElementsWidths = columnsElements.map(\n (el) => el.getBoundingClientRect().width,\n );\n setInitialColumnWidths(columnsElementsWidths);\n\n // Проверяем, что таблица отрисовалась корректно, и устанавливаем значения ширин колонок после 1го и последующих рендера\n if (\n columnsElements[0].getBoundingClientRect().left !==\n columnsElements[columnsElements.length - 1].getBoundingClientRect().left\n ) {\n const resultArr = getMergedArray(\n columnsElementsWidths,\n resizedColumnWidths,\n );\n // Выставляю в undefined так как если вычеслять значение для последней колонки так,\n // чтобы заполнялось все свободное пространство, при изменении ширины таблицы в меньшую сторону\n // ширина последней колонки изменяться не будет, а так она будет css'ом проставляться в auto\n if ((overallColumnsWidth ?? tableWidth) < tableWidth) {\n resultArr[resultArr.length - 1] = undefined;\n }\n return setResizedColumnWidths(resultArr);\n }\n\n // условие изменения ширины колонок при изменении ширины экрана (контейнера таблицы)\n if (tableWidth > 0 && !isResizable) {\n return setResizedColumnWidths(getColumnsWidth());\n }\n }, [tableWidth, overallColumnsWidth]);\n\n const isSortedByColumn = (column: TableColumn<T>): boolean =>\n getColumnSortByField(column) === sorting?.by;\n\n const getSortIcon = (column: TableColumn<T>) => {\n return (\n (isSortedByColumn(column) &&\n (sorting?.order === 'desc' ? IconSortDown : IconSortUp)) ||\n IconUnsort\n );\n };\n\n const handleSortClick = (column: TableColumn<T>): void => {\n const newSorting = getNewSorting(\n sorting,\n getColumnSortByField(column),\n (column.sortable && column?.sortFn) || undefined,\n );\n\n const sortProps = newSorting\n ? {\n sortingBy: newSorting.by,\n sortOrder: newSorting.order,\n }\n : null;\n onSortBy && onSortBy(sortProps);\n setSorting(newSorting);\n };\n\n const handleFilterTogglerClick = (id: string) => (): void => {\n setVisibleFilter(visibleFilter === id ? null : id);\n };\n\n const handleTooltipSave = (\n field: string,\n tooltipSelectedFilters: FieldSelectedValues,\n value?: unknown,\n ): void => {\n updateSelectedFilters(field, tooltipSelectedFilters, value);\n };\n\n const removeSelectedFilter =\n (tableFilters: Filters<T>) =>\n (filter: string): void => {\n removeOneSelectedFilter(tableFilters, filter);\n };\n\n const resetSelectedFilters = (): void => {\n if (filters && filters.length) {\n removeAllSelectedFilters(filters);\n }\n };\n\n const getStickyLeftOffset = (\n columnIndex: number,\n topHeaderGridIndex: number,\n ): number | undefined => {\n if (topHeaderGridIndex >= stickyColumns) {\n return;\n }\n\n return getColumnLeftOffset({\n columnIndex,\n resizedColumnWidths,\n initialColumnWidths,\n });\n };\n\n const handleScroll: React.UIEventHandler = (e) => {\n if (!(e.target instanceof HTMLElement) || e.target !== tableRef.current) {\n return;\n }\n\n setTableScroll({\n top: e.target.scrollTop,\n left: e.target.scrollLeft,\n });\n };\n\n const handleSelectRow = ({\n id,\n e,\n }: {\n id: string;\n e: React.SyntheticEvent;\n }): void | undefined => {\n if (!activeRow || !activeRow.onChange) {\n return;\n }\n\n activeRow.onChange({ id: activeRow.id === id ? undefined : id, e });\n };\n\n const handleRowHover = (id?: string) => (e: React.MouseEvent) =>\n onRowHover && onRowHover({ id, e });\n\n const handleRowCreate =\n (index: number, id?: string) => (e: React.MouseEvent) =>\n onRowCreate && onRowCreate({ e, id, index });\n\n const handleColumnResize = (idx: number, delta: number): void => {\n const columnMinWidth = Math.min(minColumnWidth, initialColumnWidths[idx]);\n const prevColumnWidth =\n resizedColumnWidths[idx] || initialColumnWidths[idx];\n const newColumnWidth = Math.max(columnMinWidth, prevColumnWidth + delta);\n\n updateColumnWidth(idx, newColumnWidth);\n\n // При расширении последней колонки скроллим таблицу вправо\n const containerEl = tableRef.current;\n if (idx === resizedColumnWidths.length - 1 && delta > 0 && containerEl) {\n containerEl.scrollBy(delta, 0);\n }\n };\n\n const stickyColumnsWidth = getColumnLeftOffset({\n columnIndex: stickyColumns,\n resizedColumnWidths,\n initialColumnWidths,\n });\n\n const columnsWithMetaData = (columns: Array<Header<T>>) => {\n return columns.map((column: Header<T>) => {\n const columnIndex = column.position.gridIndex;\n const resizedColumnWidth = resizedColumnWidths[columnIndex];\n const initialColumnWidth = initialColumnWidths[columnIndex];\n const columnWidth = resizedColumnWidth || initialColumnWidth;\n const columnLeftOffset = getColumnLeftOffset({\n columnIndex,\n resizedColumnWidths,\n initialColumnWidths,\n });\n const isResized = !!columnWidth && columnWidth !== initialColumnWidth;\n const isSticky = stickyColumns > column.position!.topHeaderGridIndex;\n const showResizer =\n stickyColumns > columnIndex ||\n stickyColumnsWidth + tableScroll.left < columnLeftOffset + columnWidth;\n const isFilterActive =\n (selectedFilters[column.accessor!]?.selected || []).length > 0;\n\n return {\n ...column,\n filterable: Boolean(\n filters && fieldFiltersPresent(filters, column.accessor!),\n ),\n isSortingActive: isSortedByColumn(column),\n isFilterActive,\n isResized,\n isSticky,\n showResizer,\n columnWidth,\n columnLeftOffset,\n };\n });\n };\n\n const headersWithMetaData: Array<Header<T> & ColumnMetaData> =\n columnsWithMetaData(flattenedHeaders);\n\n const hasNestedRows = React.useMemo(\n () => rows.some((row) => Boolean(row.rows?.length)),\n [rows],\n );\n\n const sortedTableData = sortingData(rows, sorting, onSortBy);\n\n const filteredData =\n filters && isSelectedFiltersPresent(selectedFilters)\n ? filterTableData({\n data: sortedTableData,\n filters: filters || [],\n selectedFilters,\n })\n : sortedTableData;\n\n const { maxVisibleRows = 210, scrollableEl = tableRef.current } =\n lazyLoad || {};\n\n const { getSlicedRows, setBoundaryRef } = useLazyLoadData(\n maxVisibleRows,\n scrollableEl,\n !!lazyLoad,\n );\n\n const flatRowsData = transformRows(\n filteredData,\n expandedRowIds,\n isExpandedRowsByDefault,\n );\n const rowsData = getSlicedRows(flatRowsData);\n\n const tableStyle: React.CSSProperties & TableCSSCustomProperty = {\n '--table-grid-template-columns': getColumnsSize(resizedColumnWidths),\n '--table-width': `${tableWidth}px`,\n };\n\n const hasMergedCells: boolean = columnsWithMetaData(lowHeaders).some(\n (header) => header.mergeCells,\n );\n\n const handleExpandRow = (id: string): (() => void) => {\n return (): void => {\n if (expandedRowIds.includes(id)) {\n setExpandedRowIds((prevState) =>\n prevState.filter((rowId) => rowId !== id),\n );\n return;\n }\n setExpandedRowIds((prevState) => [...prevState, id]);\n };\n };\n\n const getCollapseRollProps = (\n row: TableTreeRow<T>,\n columnIdx: number,\n ): TableRowsCollapseProps => {\n const withCollapseButton = Boolean(row.rows?.length) && columnIdx === 0;\n\n const baseProps = {\n level: row.options.level,\n isExpandedByDefault: isExpandedRowsByDefault,\n };\n\n if (!withCollapseButton || isExpandedRowsByDefault) {\n return baseProps;\n }\n\n const isExpanded = expandedRowIds.includes(row.id);\n const toggleCollapse = handleExpandRow(row.id);\n\n return {\n ...baseProps,\n withCollapseButton,\n isExpanded,\n toggleCollapse,\n };\n };\n\n const getExpandedRows = (rows: T[], defaultExpandAll?: boolean): string[] => {\n let expandedIds: string[] = [];\n rows.forEach((row) => {\n if (\n row.defaultExpand ||\n ((row.rows?.length ?? 0) > 0 && defaultExpandAll)\n ) {\n expandedIds.push(row.id);\n }\n if (row.rows) {\n const ids = getExpandedRows(row.rows as T[], defaultExpandAll);\n expandedIds = [...expandedIds, ...ids];\n if (ids.length > 0 && expandedIds.indexOf(row.id) === -1) {\n expandedIds.push(row.id);\n }\n }\n });\n return expandedIds;\n };\n\n useEffect(() => {\n if (rows) {\n setExpandedRowIds(getExpandedRows(rows, defaultExpandAll));\n }\n }, [rows, defaultExpandAll]);\n\n const renderCell = (\n column: TableColumn<T>,\n row: T,\n columnIdx: number,\n ): React.ReactNode => {\n const cellContent = column.renderCell\n ? column.renderCell(row)\n : row[column.accessor!];\n\n if (!hasNestedRows || columnIdx !== 0) {\n return cellContent as React.ReactNode;\n }\n\n const collapseRollProps = getCollapseRollProps(\n row as TableTreeRow<T>,\n columnIdx,\n );\n\n return (\n <TableRowsCollapse {...collapseRollProps}>\n {cellContent as React.ReactNode}\n </TableRowsCollapse>\n );\n };\n\n const renderEmptyRowsPlaceholder = (\n placeholder: React.ReactNode,\n ): React.ReactNode => {\n return typeof placeholder === 'string' ? (\n <Text size=\"s\">{placeholder}</Text>\n ) : (\n placeholder\n );\n };\n\n const bottomCreateRowButton = useMemo(() => {\n const rowsLength = rowsData.length;\n /* Можно и rowsData[rowsLength - 1], но в таком случае TS не подскажет,\n что мы будем искать id в undefined это может привести к ошибке */\n const { id: lastRowId } = rowsData.slice(-1).pop() ?? {};\n\n if (!onRowCreate) {\n return null;\n }\n\n return (\n <div className={cnTable(rowsLength ? 'CreatRowCell' : 'RowWithoutCells')}>\n <Button\n size={createButtonSizeMap[size]}\n form=\"brick\"\n label={rowCreateText}\n view=\"clear\"\n className={cnTable('CreateRowButton')}\n onClick={handleRowCreate(rowsLength, lastRowId)}\n width=\"full\"\n />\n </div>\n );\n }, [rowCreateText, rowsData.length, onRowCreate]);\n\n const getTableCellProps = (\n row: TableTreeRow<T>,\n rowIdx: number,\n column: TableColumn<T>,\n columnIdx: number,\n ): GetTableCellProps => {\n const {\n mergeCells,\n accessor,\n position,\n getComparisonValue = (e) => e,\n } = column;\n\n const previousCell =\n rowsData[rowIdx - 1] &&\n getComparisonValue(rowsData[rowIdx - 1][accessor!]);\n const currentCell = getComparisonValue(row[accessor!]);\n\n const result: GetTableCellProps = {\n rowSpan: 1,\n show: false,\n style: {\n left: getStickyLeftOffset(columnIdx, position!.topHeaderGridIndex),\n },\n };\n\n if (\n mergeCells &&\n ((rowsData[rowIdx - 1] && previousCell !== currentCell) || rowIdx === 0)\n ) {\n for (let i = rowIdx; i < rowsData.length; i++) {\n if (rowsData[i + 1]) {\n const nextCell = getComparisonValue(rowsData[i + 1][accessor!]);\n\n if (currentCell === nextCell) {\n result.rowSpan++;\n } else {\n break;\n }\n } else {\n break;\n }\n }\n\n if (result.rowSpan > 1) {\n result.style['--row-span'] = `span ${result.rowSpan}`;\n }\n\n result.show = true;\n }\n\n if (!mergeCells) {\n result.show = true;\n }\n\n return result;\n };\n\n const handleCellClick: onCellClick = (params) => {\n onCellClick?.(params);\n };\n\n return (\n <div\n {...otherProps}\n ref={useForkRef([tableRef, ref])}\n className={cnTable(\n {\n size,\n isResizable,\n zebraStriped,\n withBorderBottom: !filteredData.length,\n },\n [className],\n )}\n style={tableStyle}\n onScroll={handleScroll}\n >\n {/*\n Элементы Resizer рендерятся в отдельных ячейках нулевой высоты с шириной\n равной ширине колонки сетки, при этом у ячейки самый большой z-index в\n таблице чтобы элементы Resizer могли перекрывать ячейки заголовка и\n контента. Кроме того это позволяет зафиксировать вертикальное и\n горизонтальное положение Resizer, а также его высоту.\n\n Получение высоты Resizer элементов через свойство элемента таблицы\n scrollHeight не подходило, так как в таком случае Resizer растягивал\n таблицу по высоте, поэтому от этого способа отказались.\n */}\n {columnsWithMetaData(lowHeaders).map(\n (\n column: TableColumn<T> & { showResizer: boolean },\n columnIdx: number,\n ) => (\n <TableCell\n type=\"resizer\"\n key={columnIdx}\n ref={(ref: HTMLDivElement | null): void => {\n columnsRefs.current[columnIdx] = ref;\n }}\n style={{\n left: getStickyLeftOffset(columnIdx, columnIdx),\n }}\n onContextMenu={(e: React.SyntheticEvent) =>\n handleCellClick({\n e,\n type: 'contextMenu',\n columnIdx,\n ref: { current: columnsRefs.current[columnIdx] },\n })\n }\n onClick={(e: React.SyntheticEvent) =>\n handleCellClick({\n e,\n type: 'click',\n columnIdx,\n ref: { current: columnsRefs.current[columnIdx] },\n })\n }\n column={column}\n showVerticalShadow={showVerticalCellShadow}\n >\n {isResizable && (\n <TableResizer\n height={tableHeight - resizerTopOffsets[columnIdx]}\n top={resizerTopOffsets[columnIdx]}\n isVisible={column.showResizer}\n onResize={(delta): void => handleColumnResize(columnIdx, delta)}\n onDoubleClick={(): void =>\n updateColumnWidth(columnIdx, initialColumnWidths[columnIdx])\n }\n />\n )}\n </TableCell>\n ),\n )}\n <TableHeader\n isStickyHeader={stickyHeader}\n headersWithMetaData={headersWithMetaData}\n headerRowsHeights={headerRowsHeights}\n headerRowsRefs={headerRowsRefs}\n getStickyLeftOffset={getStickyLeftOffset}\n stickyColumnsGrid={stickyColumnsGrid}\n showVerticalCellShadow={showVerticalCellShadow}\n headerVerticalAlign={headerVerticalAlign}\n getSortIcon={getSortIcon}\n handleSortClick={handleSortClick}\n handleFilterTogglerClick={handleFilterTogglerClick}\n handleCellClick={handleCellClick}\n handleTooltipSave={handleTooltipSave}\n filters={filters}\n visibleFilter={visibleFilter}\n selectedFilters={selectedFilters}\n showHorizontalCellShadow={showHorizontalCellShadow}\n borderBetweenColumns={borderBetweenColumns}\n />\n {filters && isSelectedFiltersPresent(selectedFilters) && (\n <div className={cnTable('RowWithoutCells')}>\n <TableSelectedOptionsList\n values={getSelectedFiltersList({\n filters,\n selectedFilters,\n columns: lowHeaders,\n })}\n getTagLabel={getTagLabel}\n onRemove={removeSelectedFilter(filters)}\n onReset={resetSelectedFilters}\n />\n </div>\n )}\n {rowsData.length > 0 ? (\n rowsData.map((row, rowIdx) => {\n const nth = (rowIdx + 1) % 2 === 0 ? 'even' : 'odd';\n return (\n <div\n key={row.id}\n role=\"presentation\"\n className={cnTable('CellsRow', {\n nth,\n withMergedCells: hasMergedCells,\n })}\n onMouseEnter={handleRowHover(row.id)}\n onMouseLeave={handleRowHover(undefined)}\n onClick={(e) => onRowClick && onRowClick({ id: row.id, e })}\n >\n {columnsWithMetaData(lowHeaders).map(\n (column: TableColumn<T>, columnIdx: number) => {\n const { show, style, rowSpan } = getTableCellProps(\n row,\n rowIdx,\n column,\n columnIdx,\n );\n if (show) {\n return (\n <TableCell\n type=\"content\"\n key={column.accessor}\n ref={(ref: HTMLDivElement | null) => {\n cellsRefs.current[`${columnIdx}-${row.id}`] = ref;\n setRef(setBoundaryRef(columnIdx, rowIdx), ref);\n }}\n style={style}\n wrapperClassName={cnTable('ContentCell', {\n isActive: activeRow ? activeRow.id === row.id : false,\n isDarkned: activeRow\n ? activeRow.id !== undefined &&\n activeRow.id !== row.id\n : false,\n isMerged: column.mergeCells && rowSpan > 1,\n })}\n className={getAdditionalClassName?.({\n column,\n row,\n isActive: activeRow ? activeRow.id === row.id : false,\n })}\n wrap={getCellWrap?.(row)}\n onContextMenu={(e: React.SyntheticEvent) =>\n handleCellClick({\n e,\n type: 'contextMenu',\n columnIdx,\n rowId: row.id,\n ref: {\n current:\n cellsRefs.current[`${columnIdx}-${row.id}`],\n },\n })\n }\n onClick={(e: React.SyntheticEvent): void => {\n handleSelectRow({ id: row.id, e });\n\n handleCellClick({\n e,\n type: 'click',\n columnIdx,\n rowId: row.id,\n ref: {\n current:\n cellsRefs.current[`${columnIdx}-${row.id}`],\n },\n });\n }}\n column={column}\n verticalAlign={verticalAlign}\n isClickable={!!isRowsClickable}\n showVerticalShadow={\n showVerticalCellShadow &&\n // eslint-disable-next-line no-unsafe-optional-chaining\n column?.position!.gridIndex! +\n (column?.position!.colSpan || 1) ===\n stickyColumnsGrid\n }\n isBorderTop={rowIdx > 0 && borderBetweenRows}\n isBorderLeft={columnIdx > 0 && borderBetweenColumns}\n >\n {renderCell(column, row, columnIdx)}\n </TableCell>\n );\n }\n return null;\n },\n )}\n </div>\n );\n })\n ) : (\n <div className={cnTable('RowWithoutCells')}>\n <div className={cnTable('EmptyCell')}>\n {renderEmptyRowsPlaceholder(emptyRowsPlaceholder)}\n </div>\n </div>\n )}\n {bottomCreateRowButton}\n </div>\n );\n};\n\nexport const Table = React.forwardRef(InternalTable) as Table;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Table.js","names":["React","useEffect","useMemo","useComponentSize","useForkRef","IconSortDown","IconSortUp","IconUnsort","sortBy","sortByDefault","updateAt","cn","setRef","isNotNil","isString","Button","Text","TableCell","fieldFiltersPresent","filterTableData","getSelectedFiltersList","isSelectedFiltersPresent","useSelectedFilters","TableHeader","calulateColSpans","createSortingState","getColumnLeftOffset","getColumnsSize","getMergedArray","getNewSorting","Order","transformRows","useHeaderData","useLazyLoadData","TableResizer","TableRowsCollapse","TableSelectedOptionsList","TableTextFilter","TableFilterContainer","TableNumberFilter","TableChoiceGroupFilter","cnTable","sizes","zebraStriped","headerVerticalAligns","createButtonSizeMap","s","m","l","getColumnSortByField","column","sortable","sortByField","accessor","sortingData","rows","sorting","onSortBy","sortedRows","by","order","sortFn","some","row","length","map","defaultEmptyRowsPlaceholder","InternalTable","props","ref","columns","size","rawFilters","filters","isResizable","stickyHeader","stickyColumns","minColumnWidth","activeRow","verticalAlign","headerVerticalAlign","borderBetweenRows","borderBetweenColumns","emptyRowsPlaceholder","defaultExpandAll","className","onRowHover","onRowClick","onRowCreate","onCellClick","getAdditionalClassName","rowCreateText","lazyLoad","onFiltersUpdated","getTagLabel","getCellWrap","isExpandedRowsByDefault","otherProps","headers","flattenedHeaders","lowHeaders","headerRowsRefs","headerRowsHeights","resizerTopOffsets","stickyColumnsGrid","position","gridIndex","colSpan","getColumnsWidth","width","useState","resizedColumnWidths","setResizedColumnWidths","filter","id","field","initialColumnWidths","setInitialColumnWidths","setSorting","visibleFilter","setVisibleFilter","top","left","tableScroll","setTableScroll","tableRef","useRef","columnsRefs","cellsRefs","selectedFilters","updateSelectedFilters","removeOneSelectedFilter","removeAllSelectedFilters","expandedRowIds","setExpandedRowIds","sortingColumn","find","col","Object","prototype","hasOwnProperty","call","sortingState","tableHeight","current","clientHeight","tableWidth","clientWidth","showVerticalCellShadow","showHorizontalCellShadow","isRowsClickable","onChange","updateColumnWidth","idx","newWidth","overallColumnsWidth","columnsElements","values","columnsElementsWidths","el","getBoundingClientRect","resultArr","reduce","a","b","useLayoutEffect","isSortedByColumn","getStickyLeftOffset","columnIndex","topHeaderGridIndex","handleSelectRow","e","handleRowHover","handleRowCreate","index","handleColumnResize","delta","columnMinWidth","Math","min","prevColumnWidth","newColumnWidth","max","containerEl","scrollBy","stickyColumnsWidth","columnsWithMetaData","resizedColumnWidth","initialColumnWidth","columnWidth","columnLeftOffset","isSticky","showResizer","isFilterActive","selected","filterable","isSortingActive","isResized","headersWithMetaData","hasNestedRows","sortedTableData","filteredData","data","maxVisibleRows","scrollableEl","getSlicedRows","setBoundaryRef","flatRowsData","rowsData","tableStyle","hasMergedCells","header","mergeCells","handleExpandRow","includes","prevState","rowId","getCollapseRollProps","columnIdx","withCollapseButton","baseProps","level","options","isExpandedByDefault","isExpanded","toggleCollapse","getExpandedRows","expandedIds","forEach","defaultExpand","push","ids","indexOf","renderCell","cellContent","collapseRollProps","bottomCreateRowButton","rowsLength","slice","pop","lastRowId","getTableCellProps","rowIdx","getComparisonValue","previousCell","currentCell","result","rowSpan","show","style","nextCell","i","handleCellClick","params","withBorderBottom","handleScroll","target","HTMLElement","scrollTop","scrollLeft","type","getSortIcon","handleSortClick","newSorting","sortProps","sortingBy","sortOrder","handleFilterTogglerClick","handleTooltipSave","tooltipSelectedFilters","value","removeSelectedFilter","tableFilters","resetSelectedFilters","nth","spans","withMergedCells","start","isActive","isDarkned","isMerged","renderEmptyRowsPlaceholder","placeholder","Table","forwardRef"],"sources":["../../../../../src/components/Table/Table.tsx"],"sourcesContent":["import './Table.css';\n\nimport React, { useEffect, useMemo } from 'react';\n\nimport { useComponentSize } from '../../hooks/useComponentSize/useComponentSize';\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { IconSortDown } from '../../icons/IconSortDown/IconSortDown';\nimport { IconSortUp } from '../../icons/IconSortUp/IconSortUp';\nimport { IconUnsort } from '../../icons/IconUnsort/IconUnsort';\nimport { sortBy as sortByDefault, updateAt } from '../../utils/array';\nimport { cn } from '../../utils/bem';\nimport { setRef } from '../../utils/setRef';\nimport { isNotNil, isString } from '../../utils/type-guards';\nimport { Button, ButtonPropSize } from '../Button/Button';\nimport { Text } from '../Text/Text';\nimport { HorizontalAlign, TableCell, VerticalAlign } from './Cell/TableCell';\nimport {\n fieldFiltersPresent,\n FieldSelectedValues,\n Filters,\n filterTableData,\n getSelectedFiltersList,\n isSelectedFiltersPresent,\n onSortBy,\n SelectedFilters,\n useSelectedFilters,\n} from './filtering';\nimport { TableHeader } from './Header/TableHeader';\nimport {\n calulateColSpans,\n createSortingState,\n getColumnLeftOffset,\n getColumnsSize,\n getMergedArray,\n getNewSorting,\n Header,\n Order,\n OrderType,\n Position,\n transformRows,\n useHeaderData,\n useLazyLoadData,\n} from './helpers';\nimport { TableResizer } from './Resizer/TableResizer';\nimport {\n Props as TableRowsCollapseProps,\n TableRowsCollapse,\n} from './RowsCollapse/TableRowsCollapse';\nimport {\n GetTagLabel,\n TableSelectedOptionsList,\n} from './SelectedOptionsList/TableSelectedOptionsList';\n\nexport { TableTextFilter } from './TextFilter/TableTextFilter';\nexport { TableFilterContainer } from './FilterContainer/TableFilterContainer';\nexport { TableNumberFilter } from './NumberFilter/TableNumberFilter';\nexport { TableChoiceGroupFilter } from './ChoiceGroupFilter/TableChoiceGroupFilter';\n\nconst cnTable = cn('Table');\n\nexport const sizes = ['s', 'm', 'l'] as const;\ntype Size = typeof sizes[number];\n\nexport const zebraStriped = ['odd', 'even'] as const;\ntype ZebraStriped = typeof zebraStriped[number];\n\nexport const headerVerticalAligns = ['center', 'bottom'] as const;\nexport type HeaderVerticalAlign = typeof headerVerticalAligns[number];\n\nconst createButtonSizeMap: Record<Size, ButtonPropSize> = {\n s: 'xs',\n m: 's',\n l: 'm',\n};\n\ntype TableCSSCustomProperty = {\n '--table-width': string;\n '--table-grid-template-columns': string;\n};\n\nexport type LazyLoad =\n | {\n maxVisibleRows?: number;\n scrollableEl?: HTMLDivElement | Window;\n }\n | undefined;\n\ntype ActiveRow = {\n id: string | undefined;\n onChange: ({\n id,\n e,\n }: {\n id: string | undefined;\n e?: React.SyntheticEvent;\n }) => void;\n};\n\ntype onRowHover = ({\n id,\n e,\n}: {\n id: string | undefined;\n e: React.MouseEvent;\n}) => void;\n\ntype onRowClick = ({ id, e }: { id: string; e: React.MouseEvent }) => void;\n\ntype onRowCreate = ({\n id,\n index,\n e,\n}: {\n id?: string;\n index: number;\n e: React.MouseEvent;\n}) => void;\n\nexport type CellClickType = 'click' | 'contextMenu';\n\nexport type onCellClick = ({\n e,\n type,\n rowId,\n columnIdx,\n ref,\n}: {\n e: React.SyntheticEvent;\n type: CellClickType;\n columnIdx: number;\n ref: React.RefObject<HTMLDivElement>;\n rowId?: string;\n}) => void;\n\nexport type TableRow = {\n id: string;\n defaultExpand?: boolean;\n rows?: TableRow[];\n};\n\nexport type TableTreeRow<T extends TableRow> = {\n options: {\n level: number;\n };\n} & T;\n\nexport type TableFilters<T extends TableRow> = Filters<T>;\n\nexport type RowField<T extends TableRow> = Exclude<keyof T, symbol | number>;\n\nexport type ColumnWidth = number | undefined;\n\nexport type ValueOf<T> = T[keyof T];\n\ntype ColumnBase<T extends TableRow> = ValueOf<{\n [K in keyof T]: {\n accessor: K extends string ? K : never;\n sortable?: boolean;\n colSpan?: number | ((row: T) => number);\n sortByField?: keyof T;\n order?: OrderType;\n sortFn?(a: T[K], b: T[K]): number;\n renderCell?: (row: T) => React.ReactNode;\n getComparisonValue?: (cell: T[K]) => number | string;\n };\n}>;\ntype SingleColumnAddition<T extends TableRow> = ColumnBase<T> & {\n columns?: never;\n};\ntype GroupColumnAddition<T extends TableRow> = {\n columns: TableColumn<T>[];\n} & {\n // eslint-disable-next-line no-unused-vars\n [K in keyof ColumnBase<T>]?: never;\n};\nexport interface TableControl<T extends TableRow> {\n column: Header<T> & ColumnMetaData;\n}\n\nexport type SortByProps<T extends TableRow> = {\n sortingBy: keyof T;\n sortOrder: 'asc' | 'desc';\n};\n\nexport type TableColumn<T extends TableRow> = {\n title: React.ReactNode;\n align?: HorizontalAlign;\n withoutPadding?: boolean;\n width?: ColumnWidth;\n mergeCells?: boolean;\n position?: Position;\n hidden?: boolean;\n control?: ({ column }: TableControl<T>) => React.ReactNode;\n} & (GroupColumnAddition<T> | SingleColumnAddition<T>);\n\nexport type TableProps<T extends TableRow> = {\n columns: TableColumn<T>[];\n rows: T[];\n isResizable?: boolean;\n filters?: Filters<T>;\n onSortBy?: onSortBy<T>;\n size?: Size;\n stickyHeader?: boolean;\n stickyColumns?: number;\n minColumnWidth?: number;\n activeRow?: ActiveRow;\n verticalAlign?: VerticalAlign;\n headerVerticalAlign?: HeaderVerticalAlign;\n zebraStriped?: ZebraStriped;\n borderBetweenRows?: boolean;\n defaultExpandAll?: boolean;\n borderBetweenColumns?: boolean;\n emptyRowsPlaceholder?: React.ReactNode;\n className?: string;\n onRowHover?: onRowHover;\n onRowClick?: onRowClick;\n onRowCreate?: onRowCreate;\n onCellClick?: onCellClick;\n getAdditionalClassName?: (props: {\n column: TableColumn<T>;\n row: T;\n isActive: boolean;\n }) => string;\n rowCreateText?: string;\n lazyLoad?: LazyLoad;\n onFiltersUpdated?: (filters: SelectedFilters) => void;\n getTagLabel?: GetTagLabel;\n isExpandedRowsByDefault?: boolean;\n getCellWrap?: (row: T) => 'truncate' | 'break';\n};\n\ntype Table = <T extends TableRow>(\n props: TableProps<T> & { ref?: React.Ref<HTMLDivElement> },\n) => React.ReactElement | null;\n\nexport type ColumnMetaData = {\n filterable: boolean;\n isSortingActive: boolean;\n isFilterActive: boolean;\n isResized: boolean;\n isSticky: boolean;\n showResizer: boolean;\n columnWidth: number;\n columnLeftOffset: number;\n};\n\nexport type SortingState<T extends TableRow> = {\n by: keyof T;\n order: 'asc' | 'desc';\n sortFn?: (a: T[keyof T], b: T[keyof T]) => number;\n} | null;\n\ntype GetTableCellProps = {\n show: boolean;\n rowSpan: number;\n style: {\n 'left'?: number;\n '--row-span'?: string;\n };\n};\n\nconst getColumnSortByField = <T extends TableRow>(\n column: TableColumn<T>,\n): keyof T => (column.sortable && column.sortByField) || column.accessor!;\n\nconst sortingData = <T extends TableRow>(\n rows: T[],\n sorting: SortingState<T>,\n onSortBy?: onSortBy<T>,\n): T[] => {\n if (onSortBy) {\n return rows;\n }\n\n if (!sorting) {\n return rows;\n }\n const sortedRows = sortByDefault(\n rows,\n sorting.by,\n sorting.order,\n sorting.sortFn,\n );\n\n if (sortedRows.some((row) => row.rows?.length)) {\n return sortedRows.map((row) => {\n return row.rows\n ? { ...row, rows: sortingData(row.rows as T[], sorting, onSortBy) }\n : row;\n });\n }\n\n return sortedRows;\n};\n\nconst defaultEmptyRowsPlaceholder = (\n <Text as=\"span\" view=\"primary\" size=\"s\" lineHeight=\"s\">\n Нет данных\n </Text>\n);\n\nconst InternalTable = <T extends TableRow>(\n props: TableProps<T>,\n ref?: React.Ref<HTMLDivElement>,\n) => {\n const {\n columns,\n rows,\n size = 'l',\n filters: rawFilters,\n isResizable = false,\n stickyHeader = false,\n stickyColumns = 0,\n minColumnWidth = 150,\n activeRow,\n verticalAlign = 'top',\n headerVerticalAlign = 'center',\n zebraStriped,\n borderBetweenRows = false,\n borderBetweenColumns = false,\n emptyRowsPlaceholder = defaultEmptyRowsPlaceholder,\n defaultExpandAll,\n className,\n onRowHover,\n onRowClick,\n onRowCreate,\n onCellClick,\n getAdditionalClassName,\n rowCreateText = '+ Добавить строку',\n lazyLoad,\n onSortBy,\n onFiltersUpdated,\n getTagLabel,\n getCellWrap,\n isExpandedRowsByDefault = false,\n ...otherProps\n } = props;\n const {\n headers,\n flattenedHeaders,\n lowHeaders,\n headerRowsRefs,\n headerRowsHeights,\n resizerTopOffsets,\n } = useHeaderData(columns);\n const stickyColumnsGrid =\n // eslint-disable-next-line no-unsafe-optional-chaining\n headers[0][stickyColumns - 1]?.position.gridIndex! +\n (headers[0][stickyColumns - 1]?.position.colSpan || 1);\n\n const getColumnsWidth = () =>\n lowHeaders.map((column: TableColumn<T>) => column.width);\n const [resizedColumnWidths, setResizedColumnWidths] = React.useState<\n ColumnWidth[]\n >(getColumnsWidth());\n\n const filters = React.useMemo(() => {\n return (\n rawFilters && rawFilters.filter((filter) => filter.id && filter.field)\n );\n }, [rawFilters]);\n\n React.useEffect(() => {\n setResizedColumnWidths(getColumnsWidth());\n }, [lowHeaders.length]);\n\n const [initialColumnWidths, setInitialColumnWidths] = React.useState<\n number[]\n >([]);\n const [sorting, setSorting] = React.useState<SortingState<T>>(null);\n const [visibleFilter, setVisibleFilter] = React.useState<string | null>(null);\n const [tableScroll, setTableScroll] = React.useState({ top: 0, left: 0 });\n\n const tableRef = React.useRef<HTMLDivElement>(null);\n const columnsRefs = React.useRef<Record<number, HTMLDivElement | null>>({});\n const cellsRefs = React.useRef<Record<string, HTMLDivElement | null>>({});\n const {\n selectedFilters,\n updateSelectedFilters,\n removeOneSelectedFilter,\n removeAllSelectedFilters,\n } = useSelectedFilters(filters, onFiltersUpdated);\n const [expandedRowIds, setExpandedRowIds] = React.useState<string[]>([]);\n\n // установка сортировки по умолчанию\n\n React.useEffect(() => {\n const sortingColumn = columns.find(\n (col) =>\n isString(col.order) &&\n Object.prototype.hasOwnProperty.call(Order, col.order),\n );\n if (sortingColumn) {\n const sortingState = createSortingState(\n getColumnSortByField(sortingColumn),\n sortingColumn.order,\n sortingColumn.sortFn,\n );\n setSorting(sortingState);\n }\n }, [columns]);\n\n /*\n Подписываемся на изменения размеров таблицы, но не используем значения из\n хука так как нам нужна ширина и высота таблицы без размера скролла. Этот хук\n использует значения `offsetWidth` и `offsetHeight` которые включают размер\n скролл бара.\n */\n useComponentSize(tableRef);\n const tableHeight = tableRef.current?.clientHeight || 0;\n const tableWidth = tableRef.current?.clientWidth || 0;\n\n const showVerticalCellShadow = tableScroll.left > 0;\n const showHorizontalCellShadow = tableScroll.top > 0;\n const isRowsClickable = activeRow && activeRow.onChange;\n\n const updateColumnWidth = (idx: number, newWidth: number): void => {\n setResizedColumnWidths(updateAt(resizedColumnWidths, idx, newWidth));\n };\n\n const overallColumnsWidth = useMemo(() => {\n const columnsElements = Object.values(columnsRefs.current).filter(isNotNil);\n const columnsElementsWidths = columnsElements.map(\n (el) => el.getBoundingClientRect().width,\n );\n const resultArr = getMergedArray(\n columnsElementsWidths,\n resizedColumnWidths,\n );\n return resultArr.reduce((a, b) => (a ?? 0) + (b ?? 0));\n }, [resizedColumnWidths, isResizable]);\n\n React.useLayoutEffect(() => {\n const columnsElements = Object.values(columnsRefs.current).filter(isNotNil);\n if (columnsElements.length === 0) return;\n\n const columnsElementsWidths = columnsElements.map(\n (el) => el.getBoundingClientRect().width,\n );\n setInitialColumnWidths(columnsElementsWidths);\n\n // Проверяем, что таблица отрисовалась корректно, и устанавливаем значения ширин колонок после 1го и последующих рендера\n if (\n columnsElements[0].getBoundingClientRect().left !==\n columnsElements[columnsElements.length - 1].getBoundingClientRect().left\n ) {\n const resultArr = getMergedArray(\n columnsElementsWidths,\n resizedColumnWidths,\n );\n // Выставляю в undefined так как если вычеслять значение для последней колонки так,\n // чтобы заполнялось все свободное пространство, при изменении ширины таблицы в меньшую сторону\n // ширина последней колонки изменяться не будет, а так она будет css'ом проставляться в auto\n if ((overallColumnsWidth ?? tableWidth) < tableWidth) {\n resultArr[resultArr.length - 1] = undefined;\n }\n return setResizedColumnWidths(resultArr);\n }\n\n // условие изменения ширины колонок при изменении ширины экрана (контейнера таблицы)\n if (tableWidth > 0 && !isResizable) {\n return setResizedColumnWidths(getColumnsWidth());\n }\n }, [tableWidth, overallColumnsWidth]);\n\n const isSortedByColumn = (column: TableColumn<T>): boolean =>\n getColumnSortByField(column) === sorting?.by;\n\n const getSortIcon = (column: TableColumn<T>) => {\n return (\n (isSortedByColumn(column) &&\n (sorting?.order === 'desc' ? IconSortDown : IconSortUp)) ||\n IconUnsort\n );\n };\n\n const handleSortClick = (column: TableColumn<T>): void => {\n const newSorting = getNewSorting(\n sorting,\n getColumnSortByField(column),\n (column.sortable && column?.sortFn) || undefined,\n );\n\n const sortProps = newSorting\n ? {\n sortingBy: newSorting.by,\n sortOrder: newSorting.order,\n }\n : null;\n onSortBy && onSortBy(sortProps);\n setSorting(newSorting);\n };\n\n const handleFilterTogglerClick = (id: string) => (): void => {\n setVisibleFilter(visibleFilter === id ? null : id);\n };\n\n const handleTooltipSave = (\n field: string,\n tooltipSelectedFilters: FieldSelectedValues,\n value?: unknown,\n ): void => {\n updateSelectedFilters(field, tooltipSelectedFilters, value);\n };\n\n const removeSelectedFilter =\n (tableFilters: Filters<T>) =>\n (filter: string): void => {\n removeOneSelectedFilter(tableFilters, filter);\n };\n\n const resetSelectedFilters = (): void => {\n if (filters && filters.length) {\n removeAllSelectedFilters(filters);\n }\n };\n\n const getStickyLeftOffset = (\n columnIndex: number,\n topHeaderGridIndex: number,\n ): number | undefined => {\n if (topHeaderGridIndex >= stickyColumns) {\n return;\n }\n\n return getColumnLeftOffset({\n columnIndex,\n resizedColumnWidths,\n initialColumnWidths,\n });\n };\n\n const handleScroll: React.UIEventHandler = (e) => {\n if (!(e.target instanceof HTMLElement) || e.target !== tableRef.current) {\n return;\n }\n\n setTableScroll({\n top: e.target.scrollTop,\n left: e.target.scrollLeft,\n });\n };\n\n const handleSelectRow = ({\n id,\n e,\n }: {\n id: string;\n e: React.SyntheticEvent;\n }): void | undefined => {\n if (!activeRow || !activeRow.onChange) {\n return;\n }\n\n activeRow.onChange({ id: activeRow.id === id ? undefined : id, e });\n };\n\n const handleRowHover = (id?: string) => (e: React.MouseEvent) =>\n onRowHover && onRowHover({ id, e });\n\n const handleRowCreate =\n (index: number, id?: string) => (e: React.MouseEvent) =>\n onRowCreate && onRowCreate({ e, id, index });\n\n const handleColumnResize = (idx: number, delta: number): void => {\n const columnMinWidth = Math.min(minColumnWidth, initialColumnWidths[idx]);\n const prevColumnWidth =\n resizedColumnWidths[idx] || initialColumnWidths[idx];\n const newColumnWidth = Math.max(columnMinWidth, prevColumnWidth + delta);\n\n updateColumnWidth(idx, newColumnWidth);\n\n // При расширении последней колонки скроллим таблицу вправо\n const containerEl = tableRef.current;\n if (idx === resizedColumnWidths.length - 1 && delta > 0 && containerEl) {\n containerEl.scrollBy(delta, 0);\n }\n };\n\n const stickyColumnsWidth = getColumnLeftOffset({\n columnIndex: stickyColumns,\n resizedColumnWidths,\n initialColumnWidths,\n });\n\n const columnsWithMetaData = (columns: Array<Header<T>>) => {\n return columns.map((column: Header<T>) => {\n const columnIndex = column.position.gridIndex;\n const resizedColumnWidth = resizedColumnWidths[columnIndex];\n const initialColumnWidth = initialColumnWidths[columnIndex];\n const columnWidth = resizedColumnWidth || initialColumnWidth;\n const columnLeftOffset = getColumnLeftOffset({\n columnIndex,\n resizedColumnWidths,\n initialColumnWidths,\n });\n const isResized = !!columnWidth && columnWidth !== initialColumnWidth;\n const isSticky = stickyColumns > column.position!.topHeaderGridIndex;\n const showResizer =\n stickyColumns > columnIndex ||\n stickyColumnsWidth + tableScroll.left < columnLeftOffset + columnWidth;\n const isFilterActive =\n (selectedFilters[column.accessor!]?.selected || []).length > 0;\n\n return {\n ...column,\n filterable: Boolean(\n filters && fieldFiltersPresent(filters, column.accessor!),\n ),\n isSortingActive: isSortedByColumn(column),\n isFilterActive,\n isResized,\n isSticky,\n showResizer,\n columnWidth,\n columnLeftOffset,\n };\n });\n };\n\n const headersWithMetaData: Array<Header<T> & ColumnMetaData> =\n columnsWithMetaData(flattenedHeaders);\n\n const hasNestedRows = React.useMemo(\n () => rows.some((row) => Boolean(row.rows?.length)),\n [rows],\n );\n\n const sortedTableData = sortingData(rows, sorting, onSortBy);\n\n const filteredData =\n filters && isSelectedFiltersPresent(selectedFilters)\n ? filterTableData({\n data: sortedTableData,\n filters: filters || [],\n selectedFilters,\n })\n : sortedTableData;\n\n const { maxVisibleRows = 210, scrollableEl = tableRef.current } =\n lazyLoad || {};\n\n const { getSlicedRows, setBoundaryRef } = useLazyLoadData(\n maxVisibleRows,\n scrollableEl,\n !!lazyLoad,\n );\n\n const flatRowsData = transformRows(\n filteredData,\n expandedRowIds,\n isExpandedRowsByDefault,\n );\n const rowsData = getSlicedRows(flatRowsData);\n\n const tableStyle: React.CSSProperties & TableCSSCustomProperty = {\n '--table-grid-template-columns': getColumnsSize(resizedColumnWidths),\n '--table-width': `${tableWidth}px`,\n };\n\n const hasMergedCells: boolean = columnsWithMetaData(lowHeaders).some(\n (header) => header.mergeCells,\n );\n\n const handleExpandRow = (id: string): (() => void) => {\n return (): void => {\n if (expandedRowIds.includes(id)) {\n setExpandedRowIds((prevState) =>\n prevState.filter((rowId) => rowId !== id),\n );\n return;\n }\n setExpandedRowIds((prevState) => [...prevState, id]);\n };\n };\n\n const getCollapseRollProps = (\n row: TableTreeRow<T>,\n columnIdx: number,\n ): TableRowsCollapseProps => {\n const withCollapseButton = Boolean(row.rows?.length) && columnIdx === 0;\n\n const baseProps = {\n level: row.options.level,\n isExpandedByDefault: isExpandedRowsByDefault,\n };\n\n if (!withCollapseButton || isExpandedRowsByDefault) {\n return baseProps;\n }\n\n const isExpanded = expandedRowIds.includes(row.id);\n const toggleCollapse = handleExpandRow(row.id);\n\n return {\n ...baseProps,\n withCollapseButton,\n isExpanded,\n toggleCollapse,\n };\n };\n\n const getExpandedRows = (rows: T[], defaultExpandAll?: boolean): string[] => {\n let expandedIds: string[] = [];\n rows.forEach((row) => {\n if (\n row.defaultExpand ||\n ((row.rows?.length ?? 0) > 0 && defaultExpandAll)\n ) {\n expandedIds.push(row.id);\n }\n if (row.rows) {\n const ids = getExpandedRows(row.rows as T[], defaultExpandAll);\n expandedIds = [...expandedIds, ...ids];\n if (ids.length > 0 && expandedIds.indexOf(row.id) === -1) {\n expandedIds.push(row.id);\n }\n }\n });\n return expandedIds;\n };\n\n useEffect(() => {\n if (rows) {\n setExpandedRowIds(getExpandedRows(rows, defaultExpandAll));\n }\n }, [rows, defaultExpandAll]);\n\n const renderCell = (\n column: TableColumn<T>,\n row: T,\n columnIdx: number,\n ): React.ReactNode => {\n const cellContent = column.renderCell\n ? column.renderCell(row)\n : row[column.accessor!];\n\n if (!hasNestedRows || columnIdx !== 0) {\n return cellContent as React.ReactNode;\n }\n\n const collapseRollProps = getCollapseRollProps(\n row as TableTreeRow<T>,\n columnIdx,\n );\n\n return (\n <TableRowsCollapse {...collapseRollProps}>\n {cellContent as React.ReactNode}\n </TableRowsCollapse>\n );\n };\n\n const renderEmptyRowsPlaceholder = (\n placeholder: React.ReactNode,\n ): React.ReactNode => {\n return typeof placeholder === 'string' ? (\n <Text size=\"s\">{placeholder}</Text>\n ) : (\n placeholder\n );\n };\n\n const bottomCreateRowButton = useMemo(() => {\n const rowsLength = rowsData.length;\n /* Можно и rowsData[rowsLength - 1], но в таком случае TS не подскажет,\n что мы будем искать id в undefined это может привести к ошибке */\n const { id: lastRowId } = rowsData.slice(-1).pop() ?? {};\n\n if (!onRowCreate) {\n return null;\n }\n\n return (\n <div className={cnTable(rowsLength ? 'CreatRowCell' : 'RowWithoutCells')}>\n <Button\n size={createButtonSizeMap[size]}\n form=\"brick\"\n label={rowCreateText}\n view=\"clear\"\n className={cnTable('CreateRowButton')}\n onClick={handleRowCreate(rowsLength, lastRowId)}\n width=\"full\"\n />\n </div>\n );\n }, [rowCreateText, rowsData.length, onRowCreate]);\n\n const getTableCellProps = (\n row: TableTreeRow<T>,\n rowIdx: number,\n column: TableColumn<T>,\n columnIdx: number,\n ): GetTableCellProps => {\n const {\n mergeCells,\n accessor,\n position,\n getComparisonValue = (e) => e,\n } = column;\n\n const previousCell =\n rowsData[rowIdx - 1] &&\n getComparisonValue(rowsData[rowIdx - 1][accessor!]);\n const currentCell = getComparisonValue(row[accessor!]);\n\n const result: GetTableCellProps = {\n rowSpan: 1,\n show: false,\n style: {\n left: getStickyLeftOffset(columnIdx, position!.topHeaderGridIndex),\n },\n };\n\n if (\n mergeCells &&\n ((rowsData[rowIdx - 1] && previousCell !== currentCell) || rowIdx === 0)\n ) {\n for (let i = rowIdx; i < rowsData.length; i++) {\n if (rowsData[i + 1]) {\n const nextCell = getComparisonValue(rowsData[i + 1][accessor!]);\n\n if (currentCell === nextCell) {\n result.rowSpan++;\n } else {\n break;\n }\n } else {\n break;\n }\n }\n\n if (result.rowSpan > 1) {\n result.style['--row-span'] = `span ${result.rowSpan}`;\n }\n\n result.show = true;\n }\n\n if (!mergeCells) {\n result.show = true;\n }\n\n return result;\n };\n\n const handleCellClick: onCellClick = (params) => {\n onCellClick?.(params);\n };\n\n return (\n <div\n {...otherProps}\n ref={useForkRef([tableRef, ref])}\n className={cnTable(\n {\n size,\n isResizable,\n zebraStriped,\n withBorderBottom: !filteredData.length,\n },\n [className],\n )}\n style={tableStyle}\n onScroll={handleScroll}\n >\n {/*\n Элементы Resizer рендерятся в отдельных ячейках нулевой высоты с шириной\n равной ширине колонки сетки, при этом у ячейки самый большой z-index в\n таблице чтобы элементы Resizer могли перекрывать ячейки заголовка и\n контента. Кроме того это позволяет зафиксировать вертикальное и\n горизонтальное положение Resizer, а также его высоту.\n\n Получение высоты Resizer элементов через свойство элемента таблицы\n scrollHeight не подходило, так как в таком случае Resizer растягивал\n таблицу по высоте, поэтому от этого способа отказались.\n */}\n {columnsWithMetaData(lowHeaders).map(\n (\n column: TableColumn<T> & { showResizer: boolean },\n columnIdx: number,\n ) => (\n <TableCell\n type=\"resizer\"\n key={columnIdx}\n ref={(ref: HTMLDivElement | null): void => {\n columnsRefs.current[columnIdx] = ref;\n }}\n style={{\n left: getStickyLeftOffset(columnIdx, columnIdx),\n }}\n onContextMenu={(e: React.SyntheticEvent) =>\n handleCellClick({\n e,\n type: 'contextMenu',\n columnIdx,\n ref: { current: columnsRefs.current[columnIdx] },\n })\n }\n onClick={(e: React.SyntheticEvent) =>\n handleCellClick({\n e,\n type: 'click',\n columnIdx,\n ref: { current: columnsRefs.current[columnIdx] },\n })\n }\n column={column}\n showVerticalShadow={showVerticalCellShadow}\n >\n {isResizable && (\n <TableResizer\n height={tableHeight - resizerTopOffsets[columnIdx]}\n top={resizerTopOffsets[columnIdx]}\n isVisible={column.showResizer}\n onResize={(delta): void => handleColumnResize(columnIdx, delta)}\n onDoubleClick={(): void =>\n updateColumnWidth(columnIdx, initialColumnWidths[columnIdx])\n }\n />\n )}\n </TableCell>\n ),\n )}\n <TableHeader\n isStickyHeader={stickyHeader}\n headersWithMetaData={headersWithMetaData}\n headerRowsHeights={headerRowsHeights}\n headerRowsRefs={headerRowsRefs}\n getStickyLeftOffset={getStickyLeftOffset}\n stickyColumnsGrid={stickyColumnsGrid}\n showVerticalCellShadow={showVerticalCellShadow}\n headerVerticalAlign={headerVerticalAlign}\n getSortIcon={getSortIcon}\n handleSortClick={handleSortClick}\n handleFilterTogglerClick={handleFilterTogglerClick}\n handleCellClick={handleCellClick}\n handleTooltipSave={handleTooltipSave}\n filters={filters}\n visibleFilter={visibleFilter}\n selectedFilters={selectedFilters}\n showHorizontalCellShadow={showHorizontalCellShadow}\n borderBetweenColumns={borderBetweenColumns}\n />\n {filters && isSelectedFiltersPresent(selectedFilters) && (\n <div className={cnTable('RowWithoutCells')}>\n <TableSelectedOptionsList\n values={getSelectedFiltersList({\n filters,\n selectedFilters,\n columns: lowHeaders,\n })}\n getTagLabel={getTagLabel}\n onRemove={removeSelectedFilter(filters)}\n onReset={resetSelectedFilters}\n />\n </div>\n )}\n {rowsData.length > 0 ? (\n rowsData.map((row, rowIdx) => {\n const nth = (rowIdx + 1) % 2 === 0 ? 'even' : 'odd';\n const columns = columnsWithMetaData(lowHeaders);\n const spans = calulateColSpans(columns, row);\n return (\n <div\n key={row.id}\n role=\"presentation\"\n className={cnTable('CellsRow', {\n nth,\n withMergedCells: hasMergedCells,\n })}\n onMouseEnter={handleRowHover(row.id)}\n onMouseLeave={handleRowHover(undefined)}\n onClick={(e) => onRowClick && onRowClick({ id: row.id, e })}\n >\n {columns.map((column: TableColumn<T>, columnIdx: number) => {\n const { show, style, rowSpan } = getTableCellProps(\n row,\n rowIdx,\n column,\n columnIdx,\n );\n const colSpan = spans[columnIdx];\n const start =\n columnIdx > 0\n ? spans.slice(0, columnIdx).reduce((a, b) => a + b) + 1\n : 1;\n if (show && colSpan > 0) {\n return (\n <TableCell\n type=\"content\"\n key={column.accessor}\n ref={(ref: HTMLDivElement | null) => {\n cellsRefs.current[`${columnIdx}-${row.id}`] = ref;\n setRef(setBoundaryRef(columnIdx, rowIdx), ref);\n }}\n style={{\n ...style,\n ['--table-cell-col-start' as string]: start,\n ['--table-cell-col-end' as string]: start + colSpan,\n }}\n wrapperClassName={cnTable('ContentCell', {\n isActive: activeRow ? activeRow.id === row.id : false,\n isDarkned: activeRow\n ? activeRow.id !== undefined &&\n activeRow.id !== row.id\n : false,\n isMerged: column.mergeCells && rowSpan > 1,\n })}\n className={getAdditionalClassName?.({\n column,\n row,\n isActive: activeRow ? activeRow.id === row.id : false,\n })}\n wrap={getCellWrap?.(row)}\n onContextMenu={(e: React.SyntheticEvent) =>\n handleCellClick({\n e,\n type: 'contextMenu',\n columnIdx,\n rowId: row.id,\n ref: {\n current:\n cellsRefs.current[`${columnIdx}-${row.id}`],\n },\n })\n }\n onClick={(e: React.SyntheticEvent): void => {\n handleSelectRow({ id: row.id, e });\n\n handleCellClick({\n e,\n type: 'click',\n columnIdx,\n rowId: row.id,\n ref: {\n current:\n cellsRefs.current[`${columnIdx}-${row.id}`],\n },\n });\n }}\n column={column}\n verticalAlign={verticalAlign}\n isClickable={!!isRowsClickable}\n showVerticalShadow={\n showVerticalCellShadow &&\n // eslint-disable-next-line no-unsafe-optional-chaining\n column?.position!.gridIndex! +\n (column?.position!.colSpan || 1) ===\n stickyColumnsGrid\n }\n isBorderTop={rowIdx > 0 && borderBetweenRows}\n isBorderLeft={columnIdx > 0 && borderBetweenColumns}\n >\n {renderCell(column, row, columnIdx)}\n </TableCell>\n );\n }\n return null;\n })}\n </div>\n );\n })\n ) : (\n <div className={cnTable('RowWithoutCells')}>\n <div className={cnTable('EmptyCell')}>\n {renderEmptyRowsPlaceholder(emptyRowsPlaceholder)}\n </div>\n </div>\n )}\n {bottomCreateRowButton}\n </div>\n );\n};\n\nexport const Table = React.forwardRef(InternalTable) as Table;\n"],"mappings":"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"}
@@ -380,3 +380,22 @@ export declare const partOfTableDataForCustomTagLabelFunction: {
380
380
  };
381
381
  export declare const withControlTableMock: TableProps<typeof rowsForCustomTagLabelFunction[number]>;
382
382
  export declare const withHiddenColumnTableMock: TableProps<typeof rowsForCustomTagLabelFunction[number]>;
383
+ declare const rowsWithColSpan: {
384
+ id: string;
385
+ name: string;
386
+ street: undefined;
387
+ building: undefined;
388
+ age: undefined;
389
+ number: undefined;
390
+ gender: undefined;
391
+ rows: {
392
+ id: string;
393
+ name: string;
394
+ street: string;
395
+ building: number;
396
+ age: number;
397
+ number: number;
398
+ gender: string;
399
+ }[];
400
+ }[];
401
+ export declare const withColSpan: TableProps<typeof rowsWithColSpan[number]>;
@@ -1,2 +1,2 @@
1
- import _defineProperty from"@babel/runtime/helpers/defineProperty";var _ref2,_ref3,_ref4,_ref5;import React from"react";import{IconAdd}from"../../../icons/IconAdd/IconAdd";import{IconRemove}from"../../../icons/IconRemove/IconRemove";import{cn}from"../../../utils/bem";import{isNotNil}from"../../../utils/type-guards";import{Badge}from"../../Badge/Badge";import{Button}from"../../Button/Button";import{TableChoiceGroupFilter}from"../ChoiceGroupFilter/TableChoiceGroupFilter";import{TableNumberFilter}from"../NumberFilter/TableNumberFilter";import{TableTextFilter}from"../TextFilter/TableTextFilter";export var rangeFilterer=function(a,b){var c=isNotNil(b.min),d=isNotNil(b.max);return c&&!d?+a>=+b.min:!c&&d?+a<=+b.max:!(c||d)||+a<=+b.max&&+a>=+b.min};export var rows=[{id:"row1",field:"\u0421\u0435\u0432\u0435\u0440\u043D\u043E\u0435",year:1982,type:"\u041D\u0435\u0444\u0442\u044C",estimatedReserves:5e3,remainingReserves:1700,production:33,total:313},{id:"row2",field:"\u042E\u0436\u043D\u043E\u0435",year:2001,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:7540,remainingReserves:7540,production:363,total:88},{id:"row3",field:"\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435",year:1985,type:"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435",estimatedReserves:8766,remainingReserves:3374,production:256,total:434},{id:"row4",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435",year:1989,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:1697,remainingReserves:4818,production:250,total:236},{id:"row5",field:"\u0426\u0435\u043D\u0442\u0440\u0430\u043B\u044C\u043D\u043E\u0435",year:1997,type:"\u041D\u0435\u0444\u0442\u044C",estimatedReserves:5169,remainingReserves:3712,production:292,total:417}];export var filters=[{id:"olderThan2018",name:"\u0421\u0442\u0430\u0440\u0448\u0435 2018 \u0433\u043E\u0434\u0430",filterer:function filterer(a){return 2018<a},field:"year"},{id:"olderThan2000",name:"\u0421\u0442\u0430\u0440\u0448\u0435 2000 \u0433\u043E\u0434\u0430",filterer:function filterer(a){return 2e3<a},field:"year"},{id:"inRangeOf90s",name:"\u0414\u0430\u0442\u0438\u0440\u0443\u0435\u043C\u044B\u0435 90-\u043C\u0438 \u0433\u043E\u0434\u0430\u043C\u0438",filterer:function filterer(a){return 1990<=a&&1999>=a},field:"year"},{id:"equalOrOlder80s",name:"\u0414\u0430\u0442\u0438\u0440\u0443\u0435\u043C\u044B\u0435 80-\u043C\u0438 \u0433\u043E\u0434\u0430\u043C\u0438 \u0438 \u0441\u0442\u0430\u0440\u0448\u0435",filterer:function filterer(a){return 1989>=a},field:"year"},{id:"oil",name:"\u041D\u0435\u0444\u0442\u044C",filterer:function filterer(a){return"\u041D\u0435\u0444\u0442\u044C"===a},field:"type"},{id:"condensated",name:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",filterer:function filterer(a){return"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442"===a},field:"type"},{id:"combined",name:"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435",filterer:function filterer(a){return"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435"===a},field:"type"},{id:"priobskoye",name:"\u0421\u0435\u0432\u0435\u0440\u043D\u043E\u0435",filterer:function filterer(a){return"\u0421\u0435\u0432\u0435\u0440\u043D\u043E\u0435"===a},field:"field"},{id:"urengoyskoye",name:"\u042E\u0436\u043D\u043E\u0435",filterer:function filterer(a){return"\u042E\u0436\u043D\u043E\u0435"===a},field:"field"},{id:"krasnoleninskaya",name:"\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435",filterer:function filterer(a){return"\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435"===a},field:"field"},{id:"velikoye",name:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435",filterer:function filterer(a){return"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435"===a},field:"field"},{id:"rusGasoil",name:"\u0426\u0435\u043D\u0442\u0440\u0430\u043B\u044C\u043D\u043E\u0435",filterer:function filterer(a){return"\u0426\u0435\u043D\u0442\u0440\u0430\u043B\u044C\u043D\u043E\u0435"===a},field:"field"},{id:"estimatedReservesLessThan1000",name:"\u041C\u0435\u043D\u044C\u0448\u0435 1000",filterer:function filterer(a){return 1e3>a},field:"estimatedReserves"},{id:"estimatedReservesFrom1000To5000",name:"\u041E\u0442 1000 (\u0432\u043A\u043B.) \u0434\u043E 5000 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 1e3<=a&&5e3>a},field:"estimatedReserves"},{id:"estimatedReservesFrom5000To8000",name:"\u041E\u0442 5000 (\u0432\u043A\u043B.) \u0434\u043E 8000 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 5e3<=a&&8e3>a},field:"estimatedReserves"},{id:"estimatedReserves8000AndMore",name:"8000 \u0438 \u0431\u043E\u043B\u0435\u0435",filterer:function filterer(a){return 8e3<=a},field:"estimatedReserves"},{id:"remainingReservesLessThan1000",name:"\u041C\u0435\u043D\u044C\u0448\u0435 1000",filterer:function filterer(a){return 1e3>a},field:"remainingReserves"},{id:"remainingReservesFrom1000To5000",name:"\u041E\u0442 1000 (\u0432\u043A\u043B.) \u0434\u043E 5000 (\u043D\u0435 \u0432\u043A\u043B)",filterer:function filterer(a){return 1e3<=a&&5e3>a},field:"remainingReserves"},{id:"remainingReservesFrom5000To8000",name:"\u041E\u0442 5000 (\u0432\u043A\u043B.) \u0434\u043E 8000 (\u043D\u0435 \u0432\u043A\u043B)",filterer:function filterer(a){return 5e3<=a&&8e3>a},field:"remainingReserves"},{id:"remainingReserves8000AndMore",name:"8000 \u0438 \u0431\u043E\u043B\u0435\u0435",filterer:function filterer(a){return 8e3<=a},field:"remainingReserves"},{id:"productionLessThan100",name:"\u041C\u0435\u043D\u044C\u0448\u0435 100",filterer:function filterer(a){return 100>a},field:"production"},{id:"productionFrom100To200",name:"\u041E\u0442 100 (\u0432\u043A\u043B.) \u0434\u043E 200 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 100<=a&&200>a},field:"production"},{id:"productionFrom200To300",name:"\u041E\u0442 200 (\u0432\u043A\u043B.) \u0434\u043E 300 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 200<=a&&300>a},field:"production"},{id:"productionMoreThan300",name:"300 \u0438 \u0431\u043E\u043B\u0435\u0435",filterer:function filterer(a){return 300<=a},field:"production"},{id:"totalLessThan100",name:"\u041C\u0435\u043D\u044C\u0448\u0435 100",filterer:function filterer(a){return 100>a},field:"total"},{id:"totalFrom100To200",name:"\u041E\u0442 100 (\u0432\u043A\u043B.) \u0434\u043E 200 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 100<=a&&200>a},field:"total"},{id:"totalFrom200To300",name:"\u041E\u0442 200 (\u0432\u043A\u043B.) \u0434\u043E 300 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 200<=a&&300>a},field:"total"},{id:"totalMoreThan300",name:"300 \u0438 \u0431\u043E\u043B\u0435\u0435",filterer:function filterer(a){return 300<=a},field:"total"}];export var customFilters=[{id:"field",name:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435: ",field:"field",filterer:function filterer(a,b){return b.some(function(b){return b&&b.value===a})},component:{name:TableTextFilter,props:{withSearch:!0,items:[{name:"\u0421\u0435\u0432\u0435\u0440\u043D\u043E\u0435",value:"\u0421\u0435\u0432\u0435\u0440\u043D\u043E\u0435"},{name:"\u042E\u0436\u043D\u043E\u0435",value:"\u042E\u0436\u043D\u043E\u0435"},{name:"\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435",value:"\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435"},{name:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435",value:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435"},{name:"\u0426\u0435\u043D\u0442\u0440\u0430\u043B\u044C\u043D\u043E\u0435",value:"\u0426\u0435\u043D\u0442\u0440\u0430\u043B\u044C\u043D\u043E\u0435"}]}}},{id:"years",name:"\u0414\u0438\u0430\u043F\u0430\u0437\u043E\u043D \u043B\u0435\u0442: ",filterer:rangeFilterer,field:"year",component:{name:TableNumberFilter}},{id:"oil",name:"\u041D\u0435\u0444\u0442\u044C",filterer:function filterer(a){return"\u041D\u0435\u0444\u0442\u044C"===a},field:"type"},{id:"condensated",name:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",filterer:function filterer(a){return"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442"===a},field:"type"},{id:"combined",name:"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435",filterer:function filterer(a){return"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435"===a},field:"type"},{id:"reserves",name:"\u0417\u0430\u043F\u0430\u0441\u044B: ",field:"estimatedReserves",filterer:function filterer(a,b){return!isNotNil(b.value)||a>b.value},component:{name:TableChoiceGroupFilter,props:{items:[{name:"> 5k",value:5e3}]}}}];export var tableData={columns:[{title:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",accessor:"field",align:"left",sortable:!0},{title:"\u0413\u043E\u0434 \u043E\u0442\u043A\u0440\u044B\u0442\u0438\u044F",accessor:"year",align:"center",sortable:!0},{title:"\u0422\u0438\u043F",accessor:"type",align:"left"},{title:"\u041F\u043E\u043B\u043D\u044B\u0435 \u0437\u0430\u043F\u0430\u0441\u044B, \u043C\u043B\u043D.\xA0\u0442.",accessor:"estimatedReserves",align:"right",sortable:!0},{title:"\u041E\u0441\u0442\u0430\u0442\u043E\u0447\u043D\u044B\u0435 \u0438\u0437\u0432\u043B\u0435\u043A\u0430\u0435\u043C\u044B\u0435 \u0437\u0430\u043F\u0430\u0441\u044B, \u043C\u043B\u043D.\xA0\u0442.",accessor:"remainingReserves",align:"right",sortable:!0},{title:"\u0414\u043E\u0431\u044B\u0447\u0430 \u0442\u044B\u0441.\xA0\u0442/\u0441\u0443\u0442.",accessor:"production",align:"right",sortable:!0},{title:"\u0412\u0441\u0435\u0433\u043E \u0434\u043E\u0431\u044B\u0442\u043E, \u043C\u043B\u043D.\xA0\u0442.",accessor:"total",align:"right",sortable:!0}],rows:rows,filters:filters};var rowsForMultiLevelHeadersData=[{id:"row1",weightG:"1.398",weightKg:"~ 0",year:2007,distribution:"\u041E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442",dispatch:"12.09.2020",arrival:"18.09.2020",responsible1:"\u0418\u0432\u0430\u043D\u043E\u0432 \u0418.\u0418.",responsible2:"\u0421\u0438\u0434\u043E\u0440\u043E\u0432 \u0418.\u0418."},{id:"row2",weightG:"2.398",weightKg:"~ 0",year:2017,distribution:"\u0412 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435",dispatch:"1.09.2020",arrival:"8.09.2020",responsible1:"\u0418\u0432\u0430\u043D\u043E\u0432 \u041F.\u041F.",responsible2:"\u041F\u0435\u0442\u0440\u043E\u0432 \u041F.\u041F."},{id:"row3",weightG:"3.398",weightKg:"~ 0",year:2020,distribution:"\u0412 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435",dispatch:"11.09.2020",arrival:"28.10.2020",responsible1:"\u0421\u0438\u0434\u043E\u0440\u043E\u0432 \u0421.\u0421.",responsible2:"\u0418\u0432\u0430\u043D\u043E\u0432 \u0421.\u0421."},{id:"row4",weightG:"4.398",weightKg:"\u0434\u043E 10",year:2010,distribution:"\u0415\u0441\u0442\u044C",dispatch:"9.09.2020",arrival:"13.09.2020",responsible1:"\u041F\u0435\u0442\u0440\u043E\u0432 \u0418.\u0418.",responsible2:"\u0418\u0432\u0430\u043D\u043E\u0432 \u0418.\u0418."},{id:"row5",weightG:"1.398",weightKg:"~ 0",year:2007,distribution:"\u041E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442",dispatch:"12.09.2020",arrival:"18.09.2020",responsible1:"\u041F\u0435\u0442\u0440\u043E\u0432 \u0418.\u0418.",responsible2:"\u0421\u0438\u0434\u043E\u0440\u043E\u0432 \u0418.\u0418."},{id:"row6",weightG:"2.398",weightKg:"~ 0",year:2017,distribution:"\u0412 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435",dispatch:"1.09.2020",arrival:"8.09.2020",responsible1:"\u041F\u0435\u0442\u0440\u043E\u0432 \u0418.\u0418.",responsible2:"\u041F\u0435\u0442\u0440\u043E\u0432 \u041F.\u041F."},{id:"row7",weightG:"3.398",weightKg:"\u0434\u043E 1",year:2020,distribution:"\u0412 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435",dispatch:"11.09.2020",arrival:"28.10.2020",responsible1:"\u0421\u0438\u0434\u043E\u0440\u043E\u0432 \u0421.\u0421.",responsible2:"\u0418\u0432\u0430\u043D\u043E\u0432 \u0421.\u0421."},{id:"row8",weightG:"4.398",weightKg:"\u0434\u043E 10",year:2010,distribution:"\u0415\u0441\u0442\u044C",dispatch:"9.09.2020",arrival:"13.09.2020",responsible1:"\u041F\u0435\u0442\u0440\u043E\u0432 \u0418.\u0418.",responsible2:"\u0418\u0432\u0430\u043D\u043E\u0432 \u0418.\u0418."}],expandableRowsData=[{id:"row1",field:"\u0421\u0435\u0432\u0435\u0440\u043D\u043E\u0435",year:1982,type:"\u041D\u0435\u0444\u0442\u044C",estimatedReserves:5e3,remainingReserves:1700,production:33,total:313,rows:[{id:"row1.1",field:"\u0421\u0435\u0432\u0435\u0440\u043E-\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435",year:1985,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:2e3,remainingReserves:1300,production:320,total:143},{id:"row1.2",field:"\u0421\u0435\u0432\u0435\u0440\u043E-\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435",year:1983,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:3e3,remainingReserves:1e3,production:310,total:140}]},{id:"row2",field:"\u042E\u0436\u043D\u043E\u0435",year:2001,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:7540,remainingReserves:7540,production:363,total:88},{id:"row3",field:"\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435",year:1985,type:"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435",estimatedReserves:8766,remainingReserves:3374,production:256,total:434},{id:"row4",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435",year:1989,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:1697,remainingReserves:4818,production:321,total:236,rows:[{id:"row4.1",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435-1",year:1989,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:1697,remainingReserves:4818,production:452,total:819},{id:"row4.2",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435-2",year:1989,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:680,remainingReserves:5321,production:90,total:112,rows:[{id:"row4.2.1",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435-3",year:1989,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:1203,remainingReserves:9832,production:511,total:295,rows:[{id:"row4.2.1.1",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435-8",year:1989,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:1203,remainingReserves:9832,production:293,total:222},{id:"row4.2.1.2",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435-7",year:1993,type:"\u041D\u0435\u0444\u0442\u044C",estimatedReserves:1203,remainingReserves:9832,production:250,total:236}]},{id:"row4.2.2",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435-4",year:2001,type:"\u041D\u0435\u0444\u0442\u044C",estimatedReserves:2121,remainingReserves:1253,production:411,total:334}]}]},{id:"row5",field:"\u0426\u0435\u043D\u0442\u0440\u0430\u043B\u044C\u043D\u043E\u0435",year:1997,type:"\u041D\u0435\u0444\u0442\u044C",estimatedReserves:5169,remainingReserves:3712,production:292,total:417}];export var tableWithExpandableRowsData={rows:expandableRowsData,borderBetweenRows:!0};export var tableWithMultiLevelHeadersData={columns:[{title:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",columns:[{title:"\u0412\u0435\u0441 \u043E\u0431\u0449\u0438\u0439",columns:[{title:"\u0412\u0435\u0441, \u0433.",accessor:"weightG",align:"center"},{title:"\u0412\u0435\u0441, \u043A\u0433.",accessor:"weightKg",align:"center"}]},{title:"\u0413\u043E\u0434",accessor:"year",align:"center"},{title:"\u0420\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u0438\u0435",accessor:"distribution",align:"left"}]},{title:"\u041E\u0442\u043F\u0440\u0430\u0432\u043A\u0430",accessor:"dispatch",align:"left"},{title:"\u041F\u0440\u0438\u0445\u043E\u0434",accessor:"arrival",align:"left"},{title:"\u041E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0439",columns:[{title:"\u0421\u043C\u0435\u043D\u0430 1",accessor:"responsible1",align:"left"},{title:"\u0421\u043C\u0435\u043D\u0430 2",accessor:"responsible2",align:"left",sortable:!0}]}],rows:rowsForMultiLevelHeadersData};var badgeParams={view:"filled",minified:!0,size:"m"},tableWithTrafficLightDataRows=[{id:"row1",field:"C\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0440\u0430\u0437\u043B\u043E\u043C",sum:20,status:React.createElement(Badge,Object.assign({},badgeParams,{status:"normal"})),statusOrder:1},{id:"row2",field:"\u042E\u0436\u043D\u044B\u0439 \u0440\u0430\u0437\u043B\u043E\u043C",sum:15,status:React.createElement(Badge,Object.assign({},badgeParams,{status:"warning"})),statusOrder:2},{id:"row3",field:"\u0417\u0430\u043F\u0430\u0434\u043D\u044B\u0439 \u0440\u0430\u0437\u043B\u043E\u043C",sum:7,status:React.createElement(Badge,Object.assign({},badgeParams,{status:"error"})),statusOrder:3},{id:"row4",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u044B\u0439 \u0440\u0430\u0437\u043B\u043E\u043C",sum:1,status:React.createElement(Badge,Object.assign({},badgeParams,{status:"normal"})),statusOrder:1}];export var tableWithBagdeData={columns:[{title:"\u041B\u043E\u043A\u0430\u0446\u0438\u044F",accessor:"field",align:"left",sortable:!0},{title:"\u0421\u0443\u043C\u043C\u0430 \u0441\u043A\u0432\u0430\u0436\u0438\u043D \u0431\u0435\u0437 \u041C\u0413\u0420\u041F",accessor:"sum",align:"right",sortable:!0},{title:"\u0421\u0442\u0430\u0442\u0443\u0441",accessor:"status",align:"center",sortable:!0,sortByField:"statusOrder"}],rows:tableWithTrafficLightDataRows,filters:[{id:"fieldNorthDrill",name:"\u0421\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0431\u0443\u0440",filterer:function filterer(a){return"\u0421\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0431\u0443\u0440"===a},field:"field"},{id:"fieldSouthWell",name:"\u042E\u0436\u043D\u043E\u0435 \u043C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",filterer:function filterer(a){return"\u042E\u0436\u043D\u043E\u0435 \u043C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435"===a},field:"field"},{id:"fieldWestCrack",name:"\u0417\u0430\u043F\u0430\u0434\u043D\u044B\u0439 \u0440\u0430\u0437\u043B\u043E\u043C",filterer:function filterer(a){return"\u0417\u0430\u043F\u0430\u0434\u043D\u044B\u0439 \u0440\u0430\u0437\u043B\u043E\u043C"===a},field:"field"},{id:"sumLess10",name:"\u041C\u0435\u043D\u0435\u0435 10",filterer:function filterer(a){return 10>a},field:"sum"},{id:"sumFrom10To20",name:"\u041E\u0442 10 (\u0432\u043A\u043B.) \u0434\u043E 20 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 10<=a&&20>a},field:"sum"},{id:"sum20AndMore",name:"20 \u0438 \u0431\u043E\u043B\u0435\u0435",filterer:function filterer(a){return 20<=a},field:"sum"}]};export var COLUMNS=[{title:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",columns:[{title:"\u0412\u0435\u0441 \u043E\u0431\u0449\u0438\u0439",columns:[{title:"\u0412\u0435\u0441, \u0433.",accessor:"weightG",align:"center"},{title:"\u0412\u0435\u0441, \u043A\u0433.",accessor:"weightKg",align:"center"}]},{title:"\u0413\u043E\u0434",accessor:"year",align:"center"},{title:"\u0420\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u0438\u0435",accessor:"distribution",align:"left"}]},{title:"\u041E\u0442\u043F\u0440\u0430\u0432\u043A\u0430",accessor:"dispatch",align:"left"},{title:"\u041F\u0440\u0438\u0445\u043E\u0434",accessor:"arrival",align:"left"},{title:"\u041E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0439",columns:[{title:"\u0421\u043C\u0435\u043D\u0430 1",accessor:"responsible1",align:"left"},{title:"\u0421\u043C\u0435\u043D\u0430 2",accessor:"responsible2",align:"left",sortable:!0}]}];export var TRANSFORMED_COLUMNS=[[{title:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",columns:[{title:"\u0412\u0435\u0441 \u043E\u0431\u0449\u0438\u0439",columns:[{title:"\u0412\u0435\u0441, \u0433.",accessor:"weightG",align:"center"},{title:"\u0412\u0435\u0441, \u043A\u0433.",accessor:"weightKg",align:"center"}]},{title:"\u0413\u043E\u0434",accessor:"year",align:"center"},{title:"\u0420\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u0438\u0435",accessor:"distribution",align:"left"}],position:{colSpan:4,topHeaderGridIndex:0,gridIndex:0,level:0}},{title:"\u041E\u0442\u043F\u0440\u0430\u0432\u043A\u0430",accessor:"dispatch",align:"left",position:{topHeaderGridIndex:1,gridIndex:4,rowSpan:3,level:0}},{title:"\u041F\u0440\u0438\u0445\u043E\u0434",accessor:"arrival",align:"left",position:{topHeaderGridIndex:2,gridIndex:5,rowSpan:3,level:0}},{title:"\u041E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0439",columns:[{title:"\u0421\u043C\u0435\u043D\u0430 1",accessor:"responsible1",align:"left"},{title:"\u0421\u043C\u0435\u043D\u0430 2",accessor:"responsible2",align:"left",sortable:!0}],position:{colSpan:2,topHeaderGridIndex:3,gridIndex:6,level:0}}],[{title:"\u0412\u0435\u0441 \u043E\u0431\u0449\u0438\u0439",columns:[{title:"\u0412\u0435\u0441, \u0433.",accessor:"weightG",align:"center"},{title:"\u0412\u0435\u0441, \u043A\u0433.",accessor:"weightKg",align:"center"}],position:{colSpan:2,topHeaderGridIndex:0,gridIndex:0,level:1}},{title:"\u0413\u043E\u0434",accessor:"year",align:"center",position:{topHeaderGridIndex:0,gridIndex:2,rowSpan:2,level:1}},{title:"\u0420\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u0438\u0435",accessor:"distribution",align:"left",position:{topHeaderGridIndex:0,gridIndex:3,rowSpan:2,level:1}},{title:"\u0421\u043C\u0435\u043D\u0430 1",accessor:"responsible1",align:"left",position:{topHeaderGridIndex:3,gridIndex:4,rowSpan:2,level:1}},{title:"\u0421\u043C\u0435\u043D\u0430 2",accessor:"responsible2",align:"left",sortable:!0,position:{topHeaderGridIndex:3,gridIndex:5,rowSpan:2,level:1}}],[{title:"\u0412\u0435\u0441, \u0433.",accessor:"weightG",align:"center",position:{topHeaderGridIndex:0,gridIndex:0,rowSpan:1,level:2}},{title:"\u0412\u0435\u0441, \u043A\u0433.",accessor:"weightKg",align:"center",position:{topHeaderGridIndex:0,gridIndex:1,rowSpan:1,level:2}}]];export var generateData=function(a,b){for(var c=[],d=[],e=1;e<=b;e++)d.push({title:"\u0437\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A ".concat(e),accessor:"column".concat(e)});for(var f,g=1;g<=a;g++){f={id:"".concat(g)};for(var h=1;h<=b;h++)f["column".concat(h)]="\u0441\u0442\u0440\u043E\u043A\u0430_".concat(g," \u0441\u0442\u043E\u043B\u0431\u0435\u0446_").concat(h);c.push(f)}return{rows:c,columns:d}};export var tableWithMergedCellsData={columns:[{title:"\u0412\u0435\u0441, \u0433.",accessor:"weightG",align:"center"},{title:"\u0412\u0435\u0441, \u043A\u0433.",accessor:"weightKg",align:"center",mergeCells:!0},{title:"\u0413\u043E\u0434",accessor:"year",align:"center"},{title:"\u0420\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u0438\u0435",accessor:"distribution",align:"left"},{title:"\u041E\u0442\u043F\u0440\u0430\u0432\u043A\u0430",accessor:"dispatch",align:"left"},{title:"\u041F\u0440\u0438\u0445\u043E\u0434",accessor:"arrival",align:"left"},{title:"\u0421\u043C\u0435\u043D\u0430 1",accessor:"responsible1",align:"left",mergeCells:!0},{title:"\u0421\u043C\u0435\u043D\u0430 2",accessor:"responsible2",align:"left",sortable:!0,mergeCells:!0}],rows:rowsForMultiLevelHeadersData};var rowsWithObjectFields=[{id:"row1",field:"\u041F\u0440\u0438\u043E\u0431\u0441\u043A\u043E\u0435",year:{value:1982},type:"\u041D\u0435\u0444\u0442\u044F\u043D\u043E\u0435",estimatedReserves:5e3,remainingReserves:1700,production:33,total:313},{id:"row2",field:"\u0423\u0440\u0435\u043D\u0433\u043E\u0439\u0441\u043A\u043E\u0435 \u0433\u0430\u0437\u043E\u043D\u0435\u0444\u0442\u0435\u043A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442\xAD\u043D\u043E\u0435",year:{value:2001},type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442\u043D\u043E\u0435",estimatedReserves:7540,remainingReserves:7540,production:363,total:88},{id:"row3",field:"\u041A\u0440\u0430\u0441\u043D\u043E\u043B\u0435\u043D\u0438\u043D\u0441\u043A\u0430\u044F \u0433\u0440\u0443\u043F\u043F\u0430",year:{value:1985},type:"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435",estimatedReserves:8766,remainingReserves:3374,production:256,total:434},{id:"row4",field:"\u0412\u0435\u043B\u0438\u043A\u043E\u0435",year:{value:1989},type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442\u043D\u043E\u0435",estimatedReserves:1697,remainingReserves:4818,production:250,total:236},{id:"row5",field:"\u0420\u0443\u0441\u0441\u043A\u043E\u0435 \u0433\u0430\u0437\u043E\u043D\u0435\u0444\u0442\u044F\u043D\u043E\u0435",year:{value:1997},type:"\u041D\u0435\u0444\u0442\u044F\u043D\u043E\u0435",estimatedReserves:5169,remainingReserves:3712,production:292,total:417}];export var tableDataWithRenderFn={columns:[{title:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",accessor:"field",align:"left",sortable:!0},{title:"\u0413\u043E\u0434 \u043E\u0442\u043A\u0440\u044B\u0442\u0438\u044F",accessor:"year",align:"center",sortable:!0,sortFn:function sortFn(c,a){return c.value-a.value},renderCell:function renderCell(a){return React.createElement("h2",null,a.year.value)}},{title:"\u0422\u0438\u043F",accessor:"type",align:"center"},{title:"\u041F\u0440\u0435\u0434\u043F\u043E\u043B\u0430\u0433\u0430\u0435\u043C\u044B\u0435 \u043F\u043E\u043B\u043D\u044B\u0435 \n\u0437\u0430\u043F\u0430\u0441\u044B, \u043C\u043B\u043D.\u0442.",accessor:"estimatedReserves",align:"right",sortable:!0},{title:"\u041E\u0441\u0442\u0430\u0442\u043E\u0447\u043D\u044B\u0435 \u0438\u0437\u0432\u043B\u0435\u043A\u0430\u0435\u043C\u044B\u0435 \n\u0437\u0430\u043F\u0430\u0441\u044B, \u043C\u043B\u043D.\u0442.",accessor:"remainingReserves",align:"right",sortable:!0},{title:"\u0414\u043E\u0431\u044B\u0447\u0430 \u0442\u044B\u0441.\u0442/\u0441\u0443\u0442.",accessor:"production",align:"right",sortable:!0},{title:"\u0412\u0441\u0435\u0433\u043E \u0434\u043E\u0431\u044B\u0442\u043E, \u043C\u043B\u043D.\u0442.",accessor:"total",align:"right",sortable:!0}],rows:rowsWithObjectFields,filters:[{id:"olderThan2018",name:"\u0421\u0442\u0430\u0440\u0448\u0435 2018 \u0433\u043E\u0434\u0430",filterer:function filterer(a){return 2018<a.value},field:"year"},{id:"olderThan2000",name:"\u0421\u0442\u0430\u0440\u0448\u0435 2000 \u0433\u043E\u0434\u0430",filterer:function filterer(a){return 2e3<a.value},field:"year"},{id:"inRangeOf90s",name:"\u0414\u0430\u0442\u0438\u0440\u0443\u0435\u043C\u044B\u0435 90-\u043C\u0438 \u0433\u043E\u0434\u0430\u043C\u0438",filterer:function filterer(a){return 1990<=a.value&&1999>=a.value},field:"year"},{id:"equalOrOlder80s",name:"\u0414\u0430\u0442\u0438\u0440\u0443\u0435\u043C\u044B\u0435 80-\u043C\u0438 \u0433\u043E\u0434\u0430\u043C\u0438 \u0438 \u0441\u0442\u0430\u0440\u0448\u0435",filterer:function filterer(a){return 1989>=a.value},field:"year"},{id:"remainingReservesLessThan1000",name:"\u041C\u0435\u043D\u044C\u0448\u0435 1000",filterer:function filterer(a){return 1e3>a},field:"remainingReserves"},{id:"remainingReservesFrom1000To5000",name:"\u041E\u0442 1000 (\u0432\u043A\u043B.) \u0434\u043E 5000 (\u043D\u0435 \u0432\u043A\u043B)",filterer:function filterer(a){return 1e3<=a&&5e3>a},field:"remainingReserves"},{id:"remainingReservesFrom5000To8000",name:"\u041E\u0442 5000 (\u0432\u043A\u043B.) \u0434\u043E 8000 (\u043D\u0435 \u0432\u043A\u043B)",filterer:function filterer(a){return 5e3<=a&&8e3>a},field:"remainingReserves"},{id:"remainingReserves8000AndMore",name:"8000 \u0438 \u0431\u043E\u043B\u0435\u0435",filterer:function filterer(a){return 8e3<=a},field:"remainingReserves"}]};var cnCustomCell=cn("CustomCell");export var tableDataWithAdditionalClassName={columns:[{title:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",accessor:"field",align:"left"},{title:"\u0422\u0438\u043F",accessor:"type",align:"center"},{title:"\u041F\u0440\u0435\u0434\u043F\u043E\u043B\u0430\u0433\u0430\u0435\u043C\u044B\u0435 \u043F\u043E\u043B\u043D\u044B\u0435 \n\u0437\u0430\u043F\u0430\u0441\u044B, \u043C\u043B\u043D.\u0442.",accessor:"estimatedReserves",align:"right"},{title:"\u041E\u0441\u0442\u0430\u0442\u043E\u0447\u043D\u044B\u0435 \u0438\u0437\u0432\u043B\u0435\u043A\u0430\u0435\u043C\u044B\u0435 \n\u0437\u0430\u043F\u0430\u0441\u044B, \u043C\u043B\u043D.\u0442.",accessor:"remainingReserves",align:"right"},{title:"\u0414\u043E\u0431\u044B\u0447\u0430 \u0442\u044B\u0441.\u0442/\u0441\u0443\u0442.",accessor:"production",align:"right",mergeCells:!0}],rows:rowsWithObjectFields,getAdditionalClassName:function getAdditionalClassName(a){var b=a.column,c=a.row,d=a.isActive;return cnCustomCell({darked:!d&&"\u041D\u0435\u0444\u0442\u044F\u043D\u043E\u0435"===c.type&&!b.mergeCells})}};var CustomIDs={fullName:"fullName",yearOfRegistration:"yearOfRegistration"};export{CustomIDs};export var rowsForCustomTagLabelFunction=[(_ref2={id:"row1"},_defineProperty(_ref2,CustomIDs.fullName,"\u0412\u043E\u0440\u043E\u043D\u0438\u043D \u042F\u043D \u0424\u0451\u0434\u043E\u0440\u043E\u0432\u0438\u0447"),_defineProperty(_ref2,CustomIDs.yearOfRegistration,2e3),_defineProperty(_ref2,"phone",79002332120),_ref2),(_ref3={id:"row2"},_defineProperty(_ref3,CustomIDs.fullName,"\u0418\u0432\u0430\u043D\u043E\u0432 \u0418\u0432\u0430\u043D \u0418\u0432\u0430\u043D\u043E\u0432\u0438\u0447"),_defineProperty(_ref3,CustomIDs.yearOfRegistration,2018),_defineProperty(_ref3,"phone",79002332120),_ref3),(_ref4={id:"row3"},_defineProperty(_ref4,CustomIDs.fullName,"\u041D\u043E\u0432\u0438\u043A\u043E\u0432 \u041D\u0438\u043A\u0438\u0442\u0430 \u041C\u0430\u043A\u0441\u0438\u043C\u043E\u0432\u0438\u0447"),_defineProperty(_ref4,CustomIDs.yearOfRegistration,2021),_defineProperty(_ref4,"phone",79002332120),_ref4),(_ref5={id:"row4"},_defineProperty(_ref5,CustomIDs.fullName,"\u041A\u0440\u0430\u0431\u043E\u0432 \u0412\u0438\u043A\u0442\u043E\u0440 \u0414\u043C\u0438\u0442\u0440\u0438\u0435\u0432\u0438\u0447"),_defineProperty(_ref5,CustomIDs.yearOfRegistration,2009),_defineProperty(_ref5,"phone",79002332120),_ref5)];export var partOfTableDataForCustomTagLabelFunction={columns:[{title:"\u0418\u043C\u044F",accessor:CustomIDs.fullName,sortable:!0},{title:"\u0413\u043E\u0434 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438",accessor:CustomIDs.yearOfRegistration,sortable:!0}],rows:rowsForCustomTagLabelFunction,filters:[{id:CustomIDs.fullName,name:"\u0412\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u0438\u043D\u0438\u0446\u0438\u0430\u043B\u044B: ",field:CustomIDs.fullName,filterer:customFilters[0].filterer,component:{name:TableTextFilter,props:{withSearch:!0,items:[{name:rowsForCustomTagLabelFunction[0].fullName,value:rowsForCustomTagLabelFunction[0].fullName},{name:rowsForCustomTagLabelFunction[1].fullName,value:rowsForCustomTagLabelFunction[1].fullName},{name:rowsForCustomTagLabelFunction[2].fullName,value:rowsForCustomTagLabelFunction[2].fullName},{name:rowsForCustomTagLabelFunction[3].fullName,value:rowsForCustomTagLabelFunction[3].fullName}]}}},{id:CustomIDs.yearOfRegistration,name:"\u0413\u043E\u0434 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438: ",field:CustomIDs.yearOfRegistration,filterer:rangeFilterer,component:{name:TableNumberFilter}}]};export var withControlTableMock={columns:[{title:"\u0418\u043C\u044F",accessor:CustomIDs.fullName,sortable:!0,align:"right",control:function control(){return React.createElement(Button,{size:"xs",iconSize:"s",view:"clear",onlyIcon:!0,iconLeft:IconAdd})}},{title:"\u0413\u043E\u0434 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438",accessor:CustomIDs.yearOfRegistration,sortable:!0,align:"right",control:function control(){return React.createElement(Button,{size:"xs",iconSize:"s",view:"clear",onlyIcon:!0,iconLeft:IconRemove})}},{title:"\u0422\u0435\u043B\u0435\u0444\u043E\u043D",align:"right",accessor:"phone",control:function control(){return React.createElement(Button,{size:"xs",iconSize:"s",view:"clear",onlyIcon:!0,iconLeft:IconAdd})}}],rows:rowsForCustomTagLabelFunction,filters:[{id:CustomIDs.yearOfRegistration,name:"\u0413\u043E\u0434 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438: ",field:CustomIDs.yearOfRegistration,filterer:rangeFilterer,component:{name:TableNumberFilter}}]};export var withHiddenColumnTableMock={columns:[{title:"\u0418\u043C\u044F",accessor:CustomIDs.fullName,sortable:!0},{title:"\u0413\u043E\u0434 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438",accessor:CustomIDs.yearOfRegistration,sortable:!0,hidden:!0}],rows:rowsForCustomTagLabelFunction};
1
+ import _defineProperty from"@babel/runtime/helpers/defineProperty";var _ref2,_ref3,_ref4,_ref5;import React from"react";import{IconAdd}from"../../../icons/IconAdd/IconAdd";import{IconRemove}from"../../../icons/IconRemove/IconRemove";import{cn}from"../../../utils/bem";import{isNotNil}from"../../../utils/type-guards";import{Badge}from"../../Badge/Badge";import{Button}from"../../Button/Button";import{TableChoiceGroupFilter}from"../ChoiceGroupFilter/TableChoiceGroupFilter";import{TableNumberFilter}from"../NumberFilter/TableNumberFilter";import{TableTextFilter}from"../TextFilter/TableTextFilter";export var rangeFilterer=function(a,b){var c=isNotNil(b.min),d=isNotNil(b.max);return c&&!d?+a>=+b.min:!c&&d?+a<=+b.max:!(c||d)||+a<=+b.max&&+a>=+b.min};export var rows=[{id:"row1",field:"\u0421\u0435\u0432\u0435\u0440\u043D\u043E\u0435",year:1982,type:"\u041D\u0435\u0444\u0442\u044C",estimatedReserves:5e3,remainingReserves:1700,production:33,total:313},{id:"row2",field:"\u042E\u0436\u043D\u043E\u0435",year:2001,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:7540,remainingReserves:7540,production:363,total:88},{id:"row3",field:"\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435",year:1985,type:"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435",estimatedReserves:8766,remainingReserves:3374,production:256,total:434},{id:"row4",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435",year:1989,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:1697,remainingReserves:4818,production:250,total:236},{id:"row5",field:"\u0426\u0435\u043D\u0442\u0440\u0430\u043B\u044C\u043D\u043E\u0435",year:1997,type:"\u041D\u0435\u0444\u0442\u044C",estimatedReserves:5169,remainingReserves:3712,production:292,total:417}];export var filters=[{id:"olderThan2018",name:"\u0421\u0442\u0430\u0440\u0448\u0435 2018 \u0433\u043E\u0434\u0430",filterer:function filterer(a){return 2018<a},field:"year"},{id:"olderThan2000",name:"\u0421\u0442\u0430\u0440\u0448\u0435 2000 \u0433\u043E\u0434\u0430",filterer:function filterer(a){return 2e3<a},field:"year"},{id:"inRangeOf90s",name:"\u0414\u0430\u0442\u0438\u0440\u0443\u0435\u043C\u044B\u0435 90-\u043C\u0438 \u0433\u043E\u0434\u0430\u043C\u0438",filterer:function filterer(a){return 1990<=a&&1999>=a},field:"year"},{id:"equalOrOlder80s",name:"\u0414\u0430\u0442\u0438\u0440\u0443\u0435\u043C\u044B\u0435 80-\u043C\u0438 \u0433\u043E\u0434\u0430\u043C\u0438 \u0438 \u0441\u0442\u0430\u0440\u0448\u0435",filterer:function filterer(a){return 1989>=a},field:"year"},{id:"oil",name:"\u041D\u0435\u0444\u0442\u044C",filterer:function filterer(a){return"\u041D\u0435\u0444\u0442\u044C"===a},field:"type"},{id:"condensated",name:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",filterer:function filterer(a){return"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442"===a},field:"type"},{id:"combined",name:"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435",filterer:function filterer(a){return"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435"===a},field:"type"},{id:"priobskoye",name:"\u0421\u0435\u0432\u0435\u0440\u043D\u043E\u0435",filterer:function filterer(a){return"\u0421\u0435\u0432\u0435\u0440\u043D\u043E\u0435"===a},field:"field"},{id:"urengoyskoye",name:"\u042E\u0436\u043D\u043E\u0435",filterer:function filterer(a){return"\u042E\u0436\u043D\u043E\u0435"===a},field:"field"},{id:"krasnoleninskaya",name:"\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435",filterer:function filterer(a){return"\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435"===a},field:"field"},{id:"velikoye",name:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435",filterer:function filterer(a){return"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435"===a},field:"field"},{id:"rusGasoil",name:"\u0426\u0435\u043D\u0442\u0440\u0430\u043B\u044C\u043D\u043E\u0435",filterer:function filterer(a){return"\u0426\u0435\u043D\u0442\u0440\u0430\u043B\u044C\u043D\u043E\u0435"===a},field:"field"},{id:"estimatedReservesLessThan1000",name:"\u041C\u0435\u043D\u044C\u0448\u0435 1000",filterer:function filterer(a){return 1e3>a},field:"estimatedReserves"},{id:"estimatedReservesFrom1000To5000",name:"\u041E\u0442 1000 (\u0432\u043A\u043B.) \u0434\u043E 5000 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 1e3<=a&&5e3>a},field:"estimatedReserves"},{id:"estimatedReservesFrom5000To8000",name:"\u041E\u0442 5000 (\u0432\u043A\u043B.) \u0434\u043E 8000 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 5e3<=a&&8e3>a},field:"estimatedReserves"},{id:"estimatedReserves8000AndMore",name:"8000 \u0438 \u0431\u043E\u043B\u0435\u0435",filterer:function filterer(a){return 8e3<=a},field:"estimatedReserves"},{id:"remainingReservesLessThan1000",name:"\u041C\u0435\u043D\u044C\u0448\u0435 1000",filterer:function filterer(a){return 1e3>a},field:"remainingReserves"},{id:"remainingReservesFrom1000To5000",name:"\u041E\u0442 1000 (\u0432\u043A\u043B.) \u0434\u043E 5000 (\u043D\u0435 \u0432\u043A\u043B)",filterer:function filterer(a){return 1e3<=a&&5e3>a},field:"remainingReserves"},{id:"remainingReservesFrom5000To8000",name:"\u041E\u0442 5000 (\u0432\u043A\u043B.) \u0434\u043E 8000 (\u043D\u0435 \u0432\u043A\u043B)",filterer:function filterer(a){return 5e3<=a&&8e3>a},field:"remainingReserves"},{id:"remainingReserves8000AndMore",name:"8000 \u0438 \u0431\u043E\u043B\u0435\u0435",filterer:function filterer(a){return 8e3<=a},field:"remainingReserves"},{id:"productionLessThan100",name:"\u041C\u0435\u043D\u044C\u0448\u0435 100",filterer:function filterer(a){return 100>a},field:"production"},{id:"productionFrom100To200",name:"\u041E\u0442 100 (\u0432\u043A\u043B.) \u0434\u043E 200 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 100<=a&&200>a},field:"production"},{id:"productionFrom200To300",name:"\u041E\u0442 200 (\u0432\u043A\u043B.) \u0434\u043E 300 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 200<=a&&300>a},field:"production"},{id:"productionMoreThan300",name:"300 \u0438 \u0431\u043E\u043B\u0435\u0435",filterer:function filterer(a){return 300<=a},field:"production"},{id:"totalLessThan100",name:"\u041C\u0435\u043D\u044C\u0448\u0435 100",filterer:function filterer(a){return 100>a},field:"total"},{id:"totalFrom100To200",name:"\u041E\u0442 100 (\u0432\u043A\u043B.) \u0434\u043E 200 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 100<=a&&200>a},field:"total"},{id:"totalFrom200To300",name:"\u041E\u0442 200 (\u0432\u043A\u043B.) \u0434\u043E 300 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 200<=a&&300>a},field:"total"},{id:"totalMoreThan300",name:"300 \u0438 \u0431\u043E\u043B\u0435\u0435",filterer:function filterer(a){return 300<=a},field:"total"}];export var customFilters=[{id:"field",name:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435: ",field:"field",filterer:function filterer(a,b){return b.some(function(b){return b&&b.value===a})},component:{name:TableTextFilter,props:{withSearch:!0,items:[{name:"\u0421\u0435\u0432\u0435\u0440\u043D\u043E\u0435",value:"\u0421\u0435\u0432\u0435\u0440\u043D\u043E\u0435"},{name:"\u042E\u0436\u043D\u043E\u0435",value:"\u042E\u0436\u043D\u043E\u0435"},{name:"\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435",value:"\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435"},{name:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435",value:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435"},{name:"\u0426\u0435\u043D\u0442\u0440\u0430\u043B\u044C\u043D\u043E\u0435",value:"\u0426\u0435\u043D\u0442\u0440\u0430\u043B\u044C\u043D\u043E\u0435"}]}}},{id:"years",name:"\u0414\u0438\u0430\u043F\u0430\u0437\u043E\u043D \u043B\u0435\u0442: ",filterer:rangeFilterer,field:"year",component:{name:TableNumberFilter}},{id:"oil",name:"\u041D\u0435\u0444\u0442\u044C",filterer:function filterer(a){return"\u041D\u0435\u0444\u0442\u044C"===a},field:"type"},{id:"condensated",name:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",filterer:function filterer(a){return"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442"===a},field:"type"},{id:"combined",name:"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435",filterer:function filterer(a){return"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435"===a},field:"type"},{id:"reserves",name:"\u0417\u0430\u043F\u0430\u0441\u044B: ",field:"estimatedReserves",filterer:function filterer(a,b){return!isNotNil(b.value)||a>b.value},component:{name:TableChoiceGroupFilter,props:{items:[{name:"> 5k",value:5e3}]}}}];export var tableData={columns:[{title:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",accessor:"field",align:"left",sortable:!0},{title:"\u0413\u043E\u0434 \u043E\u0442\u043A\u0440\u044B\u0442\u0438\u044F",accessor:"year",align:"center",sortable:!0},{title:"\u0422\u0438\u043F",accessor:"type",align:"left"},{title:"\u041F\u043E\u043B\u043D\u044B\u0435 \u0437\u0430\u043F\u0430\u0441\u044B, \u043C\u043B\u043D.\xA0\u0442.",accessor:"estimatedReserves",align:"right",sortable:!0},{title:"\u041E\u0441\u0442\u0430\u0442\u043E\u0447\u043D\u044B\u0435 \u0438\u0437\u0432\u043B\u0435\u043A\u0430\u0435\u043C\u044B\u0435 \u0437\u0430\u043F\u0430\u0441\u044B, \u043C\u043B\u043D.\xA0\u0442.",accessor:"remainingReserves",align:"right",sortable:!0},{title:"\u0414\u043E\u0431\u044B\u0447\u0430 \u0442\u044B\u0441.\xA0\u0442/\u0441\u0443\u0442.",accessor:"production",align:"right",sortable:!0},{title:"\u0412\u0441\u0435\u0433\u043E \u0434\u043E\u0431\u044B\u0442\u043E, \u043C\u043B\u043D.\xA0\u0442.",accessor:"total",align:"right",sortable:!0}],rows:rows,filters:filters};var rowsForMultiLevelHeadersData=[{id:"row1",weightG:"1.398",weightKg:"~ 0",year:2007,distribution:"\u041E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442",dispatch:"12.09.2020",arrival:"18.09.2020",responsible1:"\u0418\u0432\u0430\u043D\u043E\u0432 \u0418.\u0418.",responsible2:"\u0421\u0438\u0434\u043E\u0440\u043E\u0432 \u0418.\u0418."},{id:"row2",weightG:"2.398",weightKg:"~ 0",year:2017,distribution:"\u0412 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435",dispatch:"1.09.2020",arrival:"8.09.2020",responsible1:"\u0418\u0432\u0430\u043D\u043E\u0432 \u041F.\u041F.",responsible2:"\u041F\u0435\u0442\u0440\u043E\u0432 \u041F.\u041F."},{id:"row3",weightG:"3.398",weightKg:"~ 0",year:2020,distribution:"\u0412 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435",dispatch:"11.09.2020",arrival:"28.10.2020",responsible1:"\u0421\u0438\u0434\u043E\u0440\u043E\u0432 \u0421.\u0421.",responsible2:"\u0418\u0432\u0430\u043D\u043E\u0432 \u0421.\u0421."},{id:"row4",weightG:"4.398",weightKg:"\u0434\u043E 10",year:2010,distribution:"\u0415\u0441\u0442\u044C",dispatch:"9.09.2020",arrival:"13.09.2020",responsible1:"\u041F\u0435\u0442\u0440\u043E\u0432 \u0418.\u0418.",responsible2:"\u0418\u0432\u0430\u043D\u043E\u0432 \u0418.\u0418."},{id:"row5",weightG:"1.398",weightKg:"~ 0",year:2007,distribution:"\u041E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442",dispatch:"12.09.2020",arrival:"18.09.2020",responsible1:"\u041F\u0435\u0442\u0440\u043E\u0432 \u0418.\u0418.",responsible2:"\u0421\u0438\u0434\u043E\u0440\u043E\u0432 \u0418.\u0418."},{id:"row6",weightG:"2.398",weightKg:"~ 0",year:2017,distribution:"\u0412 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435",dispatch:"1.09.2020",arrival:"8.09.2020",responsible1:"\u041F\u0435\u0442\u0440\u043E\u0432 \u0418.\u0418.",responsible2:"\u041F\u0435\u0442\u0440\u043E\u0432 \u041F.\u041F."},{id:"row7",weightG:"3.398",weightKg:"\u0434\u043E 1",year:2020,distribution:"\u0412 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435",dispatch:"11.09.2020",arrival:"28.10.2020",responsible1:"\u0421\u0438\u0434\u043E\u0440\u043E\u0432 \u0421.\u0421.",responsible2:"\u0418\u0432\u0430\u043D\u043E\u0432 \u0421.\u0421."},{id:"row8",weightG:"4.398",weightKg:"\u0434\u043E 10",year:2010,distribution:"\u0415\u0441\u0442\u044C",dispatch:"9.09.2020",arrival:"13.09.2020",responsible1:"\u041F\u0435\u0442\u0440\u043E\u0432 \u0418.\u0418.",responsible2:"\u0418\u0432\u0430\u043D\u043E\u0432 \u0418.\u0418."}],expandableRowsData=[{id:"row1",field:"\u0421\u0435\u0432\u0435\u0440\u043D\u043E\u0435",year:1982,type:"\u041D\u0435\u0444\u0442\u044C",estimatedReserves:5e3,remainingReserves:1700,production:33,total:313,rows:[{id:"row1.1",field:"\u0421\u0435\u0432\u0435\u0440\u043E-\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435",year:1985,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:2e3,remainingReserves:1300,production:320,total:143},{id:"row1.2",field:"\u0421\u0435\u0432\u0435\u0440\u043E-\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435",year:1983,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:3e3,remainingReserves:1e3,production:310,total:140}]},{id:"row2",field:"\u042E\u0436\u043D\u043E\u0435",year:2001,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:7540,remainingReserves:7540,production:363,total:88},{id:"row3",field:"\u0417\u0430\u043F\u0430\u0434\u043D\u043E\u0435",year:1985,type:"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435",estimatedReserves:8766,remainingReserves:3374,production:256,total:434},{id:"row4",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435",year:1989,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:1697,remainingReserves:4818,production:321,total:236,rows:[{id:"row4.1",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435-1",year:1989,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:1697,remainingReserves:4818,production:452,total:819},{id:"row4.2",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435-2",year:1989,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:680,remainingReserves:5321,production:90,total:112,rows:[{id:"row4.2.1",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435-3",year:1989,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:1203,remainingReserves:9832,production:511,total:295,rows:[{id:"row4.2.1.1",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435-8",year:1989,type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442",estimatedReserves:1203,remainingReserves:9832,production:293,total:222},{id:"row4.2.1.2",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435-7",year:1993,type:"\u041D\u0435\u0444\u0442\u044C",estimatedReserves:1203,remainingReserves:9832,production:250,total:236}]},{id:"row4.2.2",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u043E\u0435-4",year:2001,type:"\u041D\u0435\u0444\u0442\u044C",estimatedReserves:2121,remainingReserves:1253,production:411,total:334}]}]},{id:"row5",field:"\u0426\u0435\u043D\u0442\u0440\u0430\u043B\u044C\u043D\u043E\u0435",year:1997,type:"\u041D\u0435\u0444\u0442\u044C",estimatedReserves:5169,remainingReserves:3712,production:292,total:417}];export var tableWithExpandableRowsData={rows:expandableRowsData,borderBetweenRows:!0};export var tableWithMultiLevelHeadersData={columns:[{title:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",columns:[{title:"\u0412\u0435\u0441 \u043E\u0431\u0449\u0438\u0439",columns:[{title:"\u0412\u0435\u0441, \u0433.",accessor:"weightG",align:"center"},{title:"\u0412\u0435\u0441, \u043A\u0433.",accessor:"weightKg",align:"center"}]},{title:"\u0413\u043E\u0434",accessor:"year",align:"center"},{title:"\u0420\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u0438\u0435",accessor:"distribution",align:"left"}]},{title:"\u041E\u0442\u043F\u0440\u0430\u0432\u043A\u0430",accessor:"dispatch",align:"left"},{title:"\u041F\u0440\u0438\u0445\u043E\u0434",accessor:"arrival",align:"left"},{title:"\u041E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0439",columns:[{title:"\u0421\u043C\u0435\u043D\u0430 1",accessor:"responsible1",align:"left"},{title:"\u0421\u043C\u0435\u043D\u0430 2",accessor:"responsible2",align:"left",sortable:!0}]}],rows:rowsForMultiLevelHeadersData};var badgeParams={view:"filled",minified:!0,size:"m"},tableWithTrafficLightDataRows=[{id:"row1",field:"C\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0440\u0430\u0437\u043B\u043E\u043C",sum:20,status:React.createElement(Badge,Object.assign({},badgeParams,{status:"normal"})),statusOrder:1},{id:"row2",field:"\u042E\u0436\u043D\u044B\u0439 \u0440\u0430\u0437\u043B\u043E\u043C",sum:15,status:React.createElement(Badge,Object.assign({},badgeParams,{status:"warning"})),statusOrder:2},{id:"row3",field:"\u0417\u0430\u043F\u0430\u0434\u043D\u044B\u0439 \u0440\u0430\u0437\u043B\u043E\u043C",sum:7,status:React.createElement(Badge,Object.assign({},badgeParams,{status:"error"})),statusOrder:3},{id:"row4",field:"\u0412\u043E\u0441\u0442\u043E\u0447\u043D\u044B\u0439 \u0440\u0430\u0437\u043B\u043E\u043C",sum:1,status:React.createElement(Badge,Object.assign({},badgeParams,{status:"normal"})),statusOrder:1}];export var tableWithBagdeData={columns:[{title:"\u041B\u043E\u043A\u0430\u0446\u0438\u044F",accessor:"field",align:"left",sortable:!0},{title:"\u0421\u0443\u043C\u043C\u0430 \u0441\u043A\u0432\u0430\u0436\u0438\u043D \u0431\u0435\u0437 \u041C\u0413\u0420\u041F",accessor:"sum",align:"right",sortable:!0},{title:"\u0421\u0442\u0430\u0442\u0443\u0441",accessor:"status",align:"center",sortable:!0,sortByField:"statusOrder"}],rows:tableWithTrafficLightDataRows,filters:[{id:"fieldNorthDrill",name:"\u0421\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0431\u0443\u0440",filterer:function filterer(a){return"\u0421\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0431\u0443\u0440"===a},field:"field"},{id:"fieldSouthWell",name:"\u042E\u0436\u043D\u043E\u0435 \u043C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",filterer:function filterer(a){return"\u042E\u0436\u043D\u043E\u0435 \u043C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435"===a},field:"field"},{id:"fieldWestCrack",name:"\u0417\u0430\u043F\u0430\u0434\u043D\u044B\u0439 \u0440\u0430\u0437\u043B\u043E\u043C",filterer:function filterer(a){return"\u0417\u0430\u043F\u0430\u0434\u043D\u044B\u0439 \u0440\u0430\u0437\u043B\u043E\u043C"===a},field:"field"},{id:"sumLess10",name:"\u041C\u0435\u043D\u0435\u0435 10",filterer:function filterer(a){return 10>a},field:"sum"},{id:"sumFrom10To20",name:"\u041E\u0442 10 (\u0432\u043A\u043B.) \u0434\u043E 20 (\u043D\u0435 \u0432\u043A\u043B.)",filterer:function filterer(a){return 10<=a&&20>a},field:"sum"},{id:"sum20AndMore",name:"20 \u0438 \u0431\u043E\u043B\u0435\u0435",filterer:function filterer(a){return 20<=a},field:"sum"}]};export var COLUMNS=[{title:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",columns:[{title:"\u0412\u0435\u0441 \u043E\u0431\u0449\u0438\u0439",columns:[{title:"\u0412\u0435\u0441, \u0433.",accessor:"weightG",align:"center"},{title:"\u0412\u0435\u0441, \u043A\u0433.",accessor:"weightKg",align:"center"}]},{title:"\u0413\u043E\u0434",accessor:"year",align:"center"},{title:"\u0420\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u0438\u0435",accessor:"distribution",align:"left"}]},{title:"\u041E\u0442\u043F\u0440\u0430\u0432\u043A\u0430",accessor:"dispatch",align:"left"},{title:"\u041F\u0440\u0438\u0445\u043E\u0434",accessor:"arrival",align:"left"},{title:"\u041E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0439",columns:[{title:"\u0421\u043C\u0435\u043D\u0430 1",accessor:"responsible1",align:"left"},{title:"\u0421\u043C\u0435\u043D\u0430 2",accessor:"responsible2",align:"left",sortable:!0}]}];export var TRANSFORMED_COLUMNS=[[{title:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",columns:[{title:"\u0412\u0435\u0441 \u043E\u0431\u0449\u0438\u0439",columns:[{title:"\u0412\u0435\u0441, \u0433.",accessor:"weightG",align:"center"},{title:"\u0412\u0435\u0441, \u043A\u0433.",accessor:"weightKg",align:"center"}]},{title:"\u0413\u043E\u0434",accessor:"year",align:"center"},{title:"\u0420\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u0438\u0435",accessor:"distribution",align:"left"}],position:{colSpan:4,topHeaderGridIndex:0,gridIndex:0,level:0}},{title:"\u041E\u0442\u043F\u0440\u0430\u0432\u043A\u0430",accessor:"dispatch",align:"left",position:{topHeaderGridIndex:1,gridIndex:4,rowSpan:3,level:0}},{title:"\u041F\u0440\u0438\u0445\u043E\u0434",accessor:"arrival",align:"left",position:{topHeaderGridIndex:2,gridIndex:5,rowSpan:3,level:0}},{title:"\u041E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0439",columns:[{title:"\u0421\u043C\u0435\u043D\u0430 1",accessor:"responsible1",align:"left"},{title:"\u0421\u043C\u0435\u043D\u0430 2",accessor:"responsible2",align:"left",sortable:!0}],position:{colSpan:2,topHeaderGridIndex:3,gridIndex:6,level:0}}],[{title:"\u0412\u0435\u0441 \u043E\u0431\u0449\u0438\u0439",columns:[{title:"\u0412\u0435\u0441, \u0433.",accessor:"weightG",align:"center"},{title:"\u0412\u0435\u0441, \u043A\u0433.",accessor:"weightKg",align:"center"}],position:{colSpan:2,topHeaderGridIndex:0,gridIndex:0,level:1}},{title:"\u0413\u043E\u0434",accessor:"year",align:"center",position:{topHeaderGridIndex:0,gridIndex:2,rowSpan:2,level:1}},{title:"\u0420\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u0438\u0435",accessor:"distribution",align:"left",position:{topHeaderGridIndex:0,gridIndex:3,rowSpan:2,level:1}},{title:"\u0421\u043C\u0435\u043D\u0430 1",accessor:"responsible1",align:"left",position:{topHeaderGridIndex:3,gridIndex:4,rowSpan:2,level:1}},{title:"\u0421\u043C\u0435\u043D\u0430 2",accessor:"responsible2",align:"left",sortable:!0,position:{topHeaderGridIndex:3,gridIndex:5,rowSpan:2,level:1}}],[{title:"\u0412\u0435\u0441, \u0433.",accessor:"weightG",align:"center",position:{topHeaderGridIndex:0,gridIndex:0,rowSpan:1,level:2}},{title:"\u0412\u0435\u0441, \u043A\u0433.",accessor:"weightKg",align:"center",position:{topHeaderGridIndex:0,gridIndex:1,rowSpan:1,level:2}}]];export var generateData=function(a,b){for(var c=[],d=[],e=1;e<=b;e++)d.push({title:"\u0437\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A ".concat(e),accessor:"column".concat(e)});for(var f,g=1;g<=a;g++){f={id:"".concat(g)};for(var h=1;h<=b;h++)f["column".concat(h)]="\u0441\u0442\u0440\u043E\u043A\u0430_".concat(g," \u0441\u0442\u043E\u043B\u0431\u0435\u0446_").concat(h);c.push(f)}return{rows:c,columns:d}};export var tableWithMergedCellsData={columns:[{title:"\u0412\u0435\u0441, \u0433.",accessor:"weightG",align:"center"},{title:"\u0412\u0435\u0441, \u043A\u0433.",accessor:"weightKg",align:"center",mergeCells:!0},{title:"\u0413\u043E\u0434",accessor:"year",align:"center"},{title:"\u0420\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u0438\u0435",accessor:"distribution",align:"left"},{title:"\u041E\u0442\u043F\u0440\u0430\u0432\u043A\u0430",accessor:"dispatch",align:"left"},{title:"\u041F\u0440\u0438\u0445\u043E\u0434",accessor:"arrival",align:"left"},{title:"\u0421\u043C\u0435\u043D\u0430 1",accessor:"responsible1",align:"left",mergeCells:!0},{title:"\u0421\u043C\u0435\u043D\u0430 2",accessor:"responsible2",align:"left",sortable:!0,mergeCells:!0}],rows:rowsForMultiLevelHeadersData};var rowsWithObjectFields=[{id:"row1",field:"\u041F\u0440\u0438\u043E\u0431\u0441\u043A\u043E\u0435",year:{value:1982},type:"\u041D\u0435\u0444\u0442\u044F\u043D\u043E\u0435",estimatedReserves:5e3,remainingReserves:1700,production:33,total:313},{id:"row2",field:"\u0423\u0440\u0435\u043D\u0433\u043E\u0439\u0441\u043A\u043E\u0435 \u0433\u0430\u0437\u043E\u043D\u0435\u0444\u0442\u0435\u043A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442\xAD\u043D\u043E\u0435",year:{value:2001},type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442\u043D\u043E\u0435",estimatedReserves:7540,remainingReserves:7540,production:363,total:88},{id:"row3",field:"\u041A\u0440\u0430\u0441\u043D\u043E\u043B\u0435\u043D\u0438\u043D\u0441\u043A\u0430\u044F \u0433\u0440\u0443\u043F\u043F\u0430",year:{value:1985},type:"\u041A\u043E\u043C\u0431\u0438\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0435",estimatedReserves:8766,remainingReserves:3374,production:256,total:434},{id:"row4",field:"\u0412\u0435\u043B\u0438\u043A\u043E\u0435",year:{value:1989},type:"\u041A\u043E\u043D\u0434\u0435\u043D\u0441\u0430\u0442\u043D\u043E\u0435",estimatedReserves:1697,remainingReserves:4818,production:250,total:236},{id:"row5",field:"\u0420\u0443\u0441\u0441\u043A\u043E\u0435 \u0433\u0430\u0437\u043E\u043D\u0435\u0444\u0442\u044F\u043D\u043E\u0435",year:{value:1997},type:"\u041D\u0435\u0444\u0442\u044F\u043D\u043E\u0435",estimatedReserves:5169,remainingReserves:3712,production:292,total:417}];export var tableDataWithRenderFn={columns:[{title:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",accessor:"field",align:"left",sortable:!0},{title:"\u0413\u043E\u0434 \u043E\u0442\u043A\u0440\u044B\u0442\u0438\u044F",accessor:"year",align:"center",sortable:!0,sortFn:function sortFn(c,a){return c.value-a.value},renderCell:function renderCell(a){return React.createElement("h2",null,a.year.value)}},{title:"\u0422\u0438\u043F",accessor:"type",align:"center"},{title:"\u041F\u0440\u0435\u0434\u043F\u043E\u043B\u0430\u0433\u0430\u0435\u043C\u044B\u0435 \u043F\u043E\u043B\u043D\u044B\u0435 \n\u0437\u0430\u043F\u0430\u0441\u044B, \u043C\u043B\u043D.\u0442.",accessor:"estimatedReserves",align:"right",sortable:!0},{title:"\u041E\u0441\u0442\u0430\u0442\u043E\u0447\u043D\u044B\u0435 \u0438\u0437\u0432\u043B\u0435\u043A\u0430\u0435\u043C\u044B\u0435 \n\u0437\u0430\u043F\u0430\u0441\u044B, \u043C\u043B\u043D.\u0442.",accessor:"remainingReserves",align:"right",sortable:!0},{title:"\u0414\u043E\u0431\u044B\u0447\u0430 \u0442\u044B\u0441.\u0442/\u0441\u0443\u0442.",accessor:"production",align:"right",sortable:!0},{title:"\u0412\u0441\u0435\u0433\u043E \u0434\u043E\u0431\u044B\u0442\u043E, \u043C\u043B\u043D.\u0442.",accessor:"total",align:"right",sortable:!0}],rows:rowsWithObjectFields,filters:[{id:"olderThan2018",name:"\u0421\u0442\u0430\u0440\u0448\u0435 2018 \u0433\u043E\u0434\u0430",filterer:function filterer(a){return 2018<a.value},field:"year"},{id:"olderThan2000",name:"\u0421\u0442\u0430\u0440\u0448\u0435 2000 \u0433\u043E\u0434\u0430",filterer:function filterer(a){return 2e3<a.value},field:"year"},{id:"inRangeOf90s",name:"\u0414\u0430\u0442\u0438\u0440\u0443\u0435\u043C\u044B\u0435 90-\u043C\u0438 \u0433\u043E\u0434\u0430\u043C\u0438",filterer:function filterer(a){return 1990<=a.value&&1999>=a.value},field:"year"},{id:"equalOrOlder80s",name:"\u0414\u0430\u0442\u0438\u0440\u0443\u0435\u043C\u044B\u0435 80-\u043C\u0438 \u0433\u043E\u0434\u0430\u043C\u0438 \u0438 \u0441\u0442\u0430\u0440\u0448\u0435",filterer:function filterer(a){return 1989>=a.value},field:"year"},{id:"remainingReservesLessThan1000",name:"\u041C\u0435\u043D\u044C\u0448\u0435 1000",filterer:function filterer(a){return 1e3>a},field:"remainingReserves"},{id:"remainingReservesFrom1000To5000",name:"\u041E\u0442 1000 (\u0432\u043A\u043B.) \u0434\u043E 5000 (\u043D\u0435 \u0432\u043A\u043B)",filterer:function filterer(a){return 1e3<=a&&5e3>a},field:"remainingReserves"},{id:"remainingReservesFrom5000To8000",name:"\u041E\u0442 5000 (\u0432\u043A\u043B.) \u0434\u043E 8000 (\u043D\u0435 \u0432\u043A\u043B)",filterer:function filterer(a){return 5e3<=a&&8e3>a},field:"remainingReserves"},{id:"remainingReserves8000AndMore",name:"8000 \u0438 \u0431\u043E\u043B\u0435\u0435",filterer:function filterer(a){return 8e3<=a},field:"remainingReserves"}]};var cnCustomCell=cn("CustomCell");export var tableDataWithAdditionalClassName={columns:[{title:"\u041C\u0435\u0441\u0442\u043E\u0440\u043E\u0436\u0434\u0435\u043D\u0438\u0435",accessor:"field",align:"left"},{title:"\u0422\u0438\u043F",accessor:"type",align:"center"},{title:"\u041F\u0440\u0435\u0434\u043F\u043E\u043B\u0430\u0433\u0430\u0435\u043C\u044B\u0435 \u043F\u043E\u043B\u043D\u044B\u0435 \n\u0437\u0430\u043F\u0430\u0441\u044B, \u043C\u043B\u043D.\u0442.",accessor:"estimatedReserves",align:"right"},{title:"\u041E\u0441\u0442\u0430\u0442\u043E\u0447\u043D\u044B\u0435 \u0438\u0437\u0432\u043B\u0435\u043A\u0430\u0435\u043C\u044B\u0435 \n\u0437\u0430\u043F\u0430\u0441\u044B, \u043C\u043B\u043D.\u0442.",accessor:"remainingReserves",align:"right"},{title:"\u0414\u043E\u0431\u044B\u0447\u0430 \u0442\u044B\u0441.\u0442/\u0441\u0443\u0442.",accessor:"production",align:"right",mergeCells:!0}],rows:rowsWithObjectFields,getAdditionalClassName:function getAdditionalClassName(a){var b=a.column,c=a.row,d=a.isActive;return cnCustomCell({darked:!d&&"\u041D\u0435\u0444\u0442\u044F\u043D\u043E\u0435"===c.type&&!b.mergeCells})}};var CustomIDs={fullName:"fullName",yearOfRegistration:"yearOfRegistration"};export{CustomIDs};export var rowsForCustomTagLabelFunction=[(_ref2={id:"row1"},_defineProperty(_ref2,CustomIDs.fullName,"\u0412\u043E\u0440\u043E\u043D\u0438\u043D \u042F\u043D \u0424\u0451\u0434\u043E\u0440\u043E\u0432\u0438\u0447"),_defineProperty(_ref2,CustomIDs.yearOfRegistration,2e3),_defineProperty(_ref2,"phone",79002332120),_ref2),(_ref3={id:"row2"},_defineProperty(_ref3,CustomIDs.fullName,"\u0418\u0432\u0430\u043D\u043E\u0432 \u0418\u0432\u0430\u043D \u0418\u0432\u0430\u043D\u043E\u0432\u0438\u0447"),_defineProperty(_ref3,CustomIDs.yearOfRegistration,2018),_defineProperty(_ref3,"phone",79002332120),_ref3),(_ref4={id:"row3"},_defineProperty(_ref4,CustomIDs.fullName,"\u041D\u043E\u0432\u0438\u043A\u043E\u0432 \u041D\u0438\u043A\u0438\u0442\u0430 \u041C\u0430\u043A\u0441\u0438\u043C\u043E\u0432\u0438\u0447"),_defineProperty(_ref4,CustomIDs.yearOfRegistration,2021),_defineProperty(_ref4,"phone",79002332120),_ref4),(_ref5={id:"row4"},_defineProperty(_ref5,CustomIDs.fullName,"\u041A\u0440\u0430\u0431\u043E\u0432 \u0412\u0438\u043A\u0442\u043E\u0440 \u0414\u043C\u0438\u0442\u0440\u0438\u0435\u0432\u0438\u0447"),_defineProperty(_ref5,CustomIDs.yearOfRegistration,2009),_defineProperty(_ref5,"phone",79002332120),_ref5)];export var partOfTableDataForCustomTagLabelFunction={columns:[{title:"\u0418\u043C\u044F",accessor:CustomIDs.fullName,sortable:!0},{title:"\u0413\u043E\u0434 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438",accessor:CustomIDs.yearOfRegistration,sortable:!0}],rows:rowsForCustomTagLabelFunction,filters:[{id:CustomIDs.fullName,name:"\u0412\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u0438\u043D\u0438\u0446\u0438\u0430\u043B\u044B: ",field:CustomIDs.fullName,filterer:customFilters[0].filterer,component:{name:TableTextFilter,props:{withSearch:!0,items:[{name:rowsForCustomTagLabelFunction[0].fullName,value:rowsForCustomTagLabelFunction[0].fullName},{name:rowsForCustomTagLabelFunction[1].fullName,value:rowsForCustomTagLabelFunction[1].fullName},{name:rowsForCustomTagLabelFunction[2].fullName,value:rowsForCustomTagLabelFunction[2].fullName},{name:rowsForCustomTagLabelFunction[3].fullName,value:rowsForCustomTagLabelFunction[3].fullName}]}}},{id:CustomIDs.yearOfRegistration,name:"\u0413\u043E\u0434 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438: ",field:CustomIDs.yearOfRegistration,filterer:rangeFilterer,component:{name:TableNumberFilter}}]};export var withControlTableMock={columns:[{title:"\u0418\u043C\u044F",accessor:CustomIDs.fullName,sortable:!0,align:"right",control:function control(){return React.createElement(Button,{size:"xs",iconSize:"s",view:"clear",onlyIcon:!0,iconLeft:IconAdd})}},{title:"\u0413\u043E\u0434 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438",accessor:CustomIDs.yearOfRegistration,sortable:!0,align:"right",control:function control(){return React.createElement(Button,{size:"xs",iconSize:"s",view:"clear",onlyIcon:!0,iconLeft:IconRemove})}},{title:"\u0422\u0435\u043B\u0435\u0444\u043E\u043D",align:"right",accessor:"phone",control:function control(){return React.createElement(Button,{size:"xs",iconSize:"s",view:"clear",onlyIcon:!0,iconLeft:IconAdd})}}],rows:rowsForCustomTagLabelFunction,filters:[{id:CustomIDs.yearOfRegistration,name:"\u0413\u043E\u0434 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438: ",field:CustomIDs.yearOfRegistration,filterer:rangeFilterer,component:{name:TableNumberFilter}}]};export var withHiddenColumnTableMock={columns:[{title:"\u0418\u043C\u044F",accessor:CustomIDs.fullName,sortable:!0},{title:"\u0413\u043E\u0434 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438",accessor:CustomIDs.yearOfRegistration,sortable:!0,hidden:!0}],rows:rowsForCustomTagLabelFunction};var rowsWithColSpan=[{id:"row1",name:"\u0413\u0440\u0430\u0436\u0434\u0430\u043D\u0435",street:void 0,building:void 0,age:void 0,number:void 0,gender:void 0,rows:[{id:"row1.1",name:"\u0418\u0432\u0430\u043D",street:"\u0443\u043B. \u041C\u0438\u0440\u0430",building:1,age:32,number:2033,gender:"\u043C\u0443\u0436."},{id:"row1.2",name:"\u0410\u043D\u043D\u0430",age:40,street:"\u043F\u043B. \u041B\u0435\u043D\u0438\u043D\u0430",building:3,number:2035,gender:"\u0436\u0435\u043D."}]}];export var withColSpan={columns:[{title:"\u0418\u043C\u044F",accessor:"name",align:"left",width:150},{title:"\u0412\u043E\u0437\u0440\u0430\u0441\u0442",accessor:"age",align:"center",renderCell:function renderCell(a){return a.rows?"> 30":a.age}},{title:"\u0410\u0434\u0440\u0435\u0441",columns:[{title:"\u0423\u043B\u0438\u0446\u0430",accessor:"street",align:"left",colSpan:function colSpan(a){return a.rows?3:1},renderCell:function renderCell(a){return a.rows?"\u041B\u0435\u043D\u0438\u043D\u0441\u043A\u0438\u0439 \u0440\u0430\u0439\u043E\u043D":a.street}},{title:"\u0414\u043E\u043C",accessor:"building",align:"center"},{title:"\u041A\u0432\u0430\u0440\u0442\u0438\u0440\u0430",accessor:"number",align:"center"}]},{title:"\u041F\u043E\u043B",accessor:"gender",align:"left"}],rows:rowsWithColSpan};
2
2
  //# sourceMappingURL=data.mock.js.map