@bigbinary/neetoui 8.3.16 → 8.3.17

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.
package/dist/Table.js CHANGED
@@ -696,6 +696,10 @@ var Table = function Table(_ref) {
696
696
  _useState8 = _slicedToArray(_useState7, 2),
697
697
  bulkSelectedAllRows = _useState8[0],
698
698
  setBulkSelectedAllRows = _useState8[1];
699
+ var _useState9 = useState({}),
700
+ _useState10 = _slicedToArray(_useState9, 2),
701
+ columnChanges = _useState10[0],
702
+ setColumnChanges = _useState10[1];
699
703
  var _useTableSort = useTableSort(),
700
704
  handleTableSortChange = _useTableSort.handleTableChange,
701
705
  sortedInfo = _useTableSort.sortedInfo,
@@ -734,6 +738,25 @@ var Table = function Table(_ref) {
734
738
  var headerHeight = headerRef.current ? headerRef.current.offsetHeight : TABLE_DEFAULT_HEADER_HEIGHT;
735
739
  setHeaderHeight(headerHeight);
736
740
  }, 10);
741
+ var handleColumnUpdateWithChanges = function handleColumnUpdateWithChanges(updatedColumns) {
742
+ var newChanges = {};
743
+ updatedColumns.forEach(function (col) {
744
+ var originalCol = columnData.find(function (c) {
745
+ return c.dataIndex === col.dataIndex;
746
+ });
747
+ var changes = {};
748
+ if (col.width && col.width !== (originalCol === null || originalCol === void 0 ? void 0 : originalCol.width)) {
749
+ changes.width = col.width;
750
+ }
751
+ if (Object.keys(changes).length > 0) {
752
+ newChanges[col.dataIndex] = changes;
753
+ }
754
+ });
755
+ setColumnChanges(function (prev) {
756
+ return _objectSpread(_objectSpread({}, prev), newChanges);
757
+ });
758
+ onColumnUpdate(updatedColumns);
759
+ };
737
760
  var _useColumns = useColumns({
738
761
  isReorderEnabled: enableColumnReorder,
739
762
  isResizeEnabled: enableColumnResize,
@@ -743,7 +766,7 @@ var Table = function Table(_ref) {
743
766
  columns: columns,
744
767
  columnData: columnData,
745
768
  setColumns: setColumns,
746
- onColumnUpdate: onColumnUpdate,
769
+ onColumnUpdate: handleColumnUpdateWithChanges,
747
770
  rowSelection: rowSelection,
748
771
  sortedInfo: sortedInfo,
749
772
  setSortedInfo: setSortedInfo,
@@ -865,8 +888,11 @@ var Table = function Table(_ref) {
865
888
  }, queryParams))) : handlePageChange(page, pageSize);
866
889
  }, [rowData]);
867
890
  useEffect(function () {
868
- return setColumns(columnData);
869
- }, [columnData]);
891
+ var mergedColumns = columnData.map(function (col) {
892
+ return _objectSpread(_objectSpread({}, col), columnChanges[col.dataIndex]);
893
+ });
894
+ setColumns(mergedColumns);
895
+ }, [columnData, columnChanges]);
870
896
  var neetoUIFontBold = parseInt(getComputedStyle(document.documentElement).getPropertyValue("--neeto-ui-font-bold"), 10);
871
897
  var renderTable = function renderTable() {
872
898
  return /*#__PURE__*/React__default.createElement(_ConfigProvider, {
package/dist/Table.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","sources":["../src/hooks/useTimeout.js","../src/components/Table/components/AllRowsSelectedCallout.jsx","../src/components/Table/components/SelectAllRowsCallout.jsx","../src/hooks/useLocalStorage.js","../src/components/Table/hooks/useReorderColumns.js","../src/components/Table/components/SortIcon.jsx","../src/components/Table/components/TitleWithInfoIcon.jsx","../src/components/Table/components/HeaderCell/CellContent.jsx","../src/components/Table/components/HeaderCell/HeaderCell.jsx","../src/components/Table/components/HeaderCell/ResizableHeaderCell.jsx","../src/components/Table/components/HeaderCell/index.jsx","../src/components/Table/utils.js","../src/components/Table/hooks/useResizableColumns.jsx","../src/components/Table/hooks/useColumns.js","../src/components/Table/hooks/useTableSort.js","../src/components/Table/index.jsx"],"sourcesContent":["import { useEffect, useRef } from \"react\";\n\nconst useTimeout = (callback, delay) => {\n const savedCallback = useRef(callback);\n\n useEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n\n useEffect(() => {\n if (delay === null) {\n return undefined;\n }\n\n const id = setTimeout(() => savedCallback.current(), delay);\n\n return () => clearTimeout(id);\n }, [delay]);\n};\n\nexport default useTimeout;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { getLocale } from \"utils\";\n\nimport Button from \"../../Button\";\nimport Callout from \"../../Callout\";\nimport Typography from \"../../Typography\";\n\n// eslint-disable-next-line @bigbinary/neeto/no-dumb-components-with-use-translation\nconst AllRowsSelectedCallout = ({\n calloutProps,\n onClearSelection,\n allRowsSelectedMessage,\n clearSelectionButtonLabel,\n}) => {\n const { t, i18n } = useTranslation();\n\n return (\n <Callout\n className=\"my-2\"\n {...calloutProps}\n data-testid=\"clear-selections-callout\"\n >\n <div className=\"neeto-ui-flex neeto-ui-gap-3\">\n <Typography style=\"body2\">\n {allRowsSelectedMessage ||\n getLocale(i18n, t, \"neetoui.table.allRowsSelected\")}\n </Typography>\n <Button\n data-testid=\"clear-selections-button\"\n style=\"link\"\n label={\n clearSelectionButtonLabel ||\n getLocale(i18n, t, \"neetoui.table.clearSelection\")\n }\n onClick={onClearSelection}\n />\n </div>\n </Callout>\n );\n};\n\nexport default AllRowsSelectedCallout;\n","import React from \"react\";\n\nimport Button from \"../../Button\";\nimport Callout from \"../../Callout\";\nimport Typography from \"../../Typography\";\n\nconst SelectAllRowsCallout = ({\n calloutProps,\n onBulkSelectAllRows,\n selectAllRowButtonLabel,\n selectAllRowMessage,\n}) => (\n <Callout\n className=\"my-2\"\n {...calloutProps}\n data-testid=\"select-all-rows-callout\"\n >\n <div className=\"neeto-ui-flex neeto-ui-gap-3\">\n <Typography style=\"body2\">{selectAllRowMessage}</Typography>\n <Button\n data-testid=\"select-all-rows-button\"\n label={selectAllRowButtonLabel}\n style=\"link\"\n onClick={onBulkSelectAllRows}\n />\n </div>\n </Callout>\n);\n\nexport default SelectAllRowsCallout;\n","/* eslint-disable @bigbinary/neeto/no-local-storage */\n\nimport { useState } from \"react\";\n\nimport { isNil } from \"ramda\";\n\nimport {\n getFromLocalStorage,\n removeFromLocalStorage,\n setToLocalStorage,\n} from \"utils\";\n\nconst useLocalStorage = (key, defaultValue) => {\n const [storedValue, setStoredValue] = useState(() =>\n getFromLocalStorage(key, defaultValue)\n );\n\n const setValue = value =>\n setStoredValue(prevStoredValue => {\n const newValue =\n typeof value === \"function\" ? value(prevStoredValue) : value;\n\n if (isNil(newValue)) {\n removeFromLocalStorage(key);\n } else {\n setToLocalStorage(key, newValue);\n }\n\n return newValue;\n });\n\n return [storedValue, setValue];\n};\n\nexport default useLocalStorage;\n","import { move } from \"ramda\";\n\nconst useReorderColumns = ({\n isEnabled,\n columns,\n setColumns,\n onColumnUpdate,\n rowSelection,\n}) => {\n if (!isEnabled) return { dragProps: {}, columns };\n\n const isColumnFixed = column => !!column.fixed;\n\n const dragProps = {\n onDragEnd: (fromIndex, toIndex) => {\n let from = fromIndex;\n let to = toIndex;\n if (rowSelection) {\n from = fromIndex - 1;\n to = toIndex - 1;\n }\n\n if (!columns[from] || !columns[to]) return;\n\n if (isColumnFixed(columns[from]) || isColumnFixed(columns[to])) return;\n\n const newColumns = move(from, to, columns);\n setColumns(newColumns);\n onColumnUpdate(newColumns);\n },\n nodeSelector:\n \"th:not(.ant-table-cell-fix-left):not(.ant-table-cell-scrollbar)\",\n handleSelector: \".drag-handler\",\n ignoreSelector: \".react-resizable-handle\",\n };\n\n return { dragProps, columns };\n};\n\nexport default useReorderColumns;\n","import React from \"react\";\n\nimport { DownArrow, UpArrow } from \"neetoicons\";\n\nimport { TABLE_SORT_ORDERS, URL_SORT_ORDERS } from \"../constants\";\n\nconst SortIcon = ({ sortOrder }) => {\n if (\n sortOrder === TABLE_SORT_ORDERS.asc ||\n sortOrder === URL_SORT_ORDERS.ascend\n ) {\n return <UpArrow size={14} />;\n }\n\n if (\n sortOrder === TABLE_SORT_ORDERS.desc ||\n sortOrder === URL_SORT_ORDERS.descend\n ) {\n return <DownArrow size={14} />;\n }\n\n return null;\n};\n\nexport default SortIcon;\n","import React, { useRef } from \"react\";\n\nimport { InfoRound } from \"neetoicons\";\n\nimport Popover from \"components/Popover\";\nimport Typography from \"components/Typography\";\n\nconst TitleWithInfoIcon = ({ title, description, ...rest }) => {\n const popoverRef = useRef();\n\n return (\n <span className=\"relative pr-5\">\n {typeof title === \"function\" ? title(rest) : title}\n {description && (\n <>\n <span\n className=\"neeto-ui-table__column-title-info-icon\"\n ref={popoverRef}\n >\n <InfoRound color=\"currentColor\" size={14} />\n </span>\n <Popover\n appendTo={() => document.body}\n position=\"bottom\"\n reference={popoverRef}\n >\n <Typography lineHeight=\"normal\" style=\"body2\">\n {description}\n </Typography>\n </Popover>\n </>\n )}\n </span>\n );\n};\n\nexport default TitleWithInfoIcon;\n","import React from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\n\nimport { hyphenize } from \"utils\";\n\nimport HeaderCellMenu from \"./HeaderCellMenu\";\n\nconst CellContent = ({\n children,\n isSortable,\n isAddEnabled,\n sortedInfo,\n onSort,\n isHidable = true,\n isDeletable = false,\n isFixedColumn,\n isColumnFreezeEnabled,\n onColumnHide,\n onAddColumn,\n onColumnDelete,\n onColumnFreeze,\n onMoreActionClick,\n column,\n moreActions = [],\n ...headerProps\n}) => {\n const isColumnHidable = isHidable && isPresent(onColumnHide);\n const isColumnDeletable = isDeletable && isPresent(onColumnDelete);\n const hasMoreActions = !isEmpty(moreActions) && isPresent(onMoreActionClick);\n const hasMoreMenu =\n isSortable ||\n isColumnHidable ||\n isAddEnabled ||\n hasMoreActions ||\n (isPresent(column) && isColumnFreezeEnabled);\n\n return (\n <th\n {...headerProps}\n title=\"\"\n onClick={isSortable ? noop : headerProps.onClick}\n >\n <div\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-between\"\n data-cy={`${hyphenize(headerProps.title)}-header-title`}\n >\n <div className=\"neeto-ui-min-w-0 neeto-ui-flex-grow neeto-ui-truncate neeto-ui-table__column-title-content\">\n {children}\n </div>\n {hasMoreMenu && (\n <HeaderCellMenu\n {...{\n column,\n hasMoreActions,\n isAddEnabled,\n isColumnDeletable,\n isColumnFreezeEnabled,\n isFixedColumn,\n isSortable,\n moreActions,\n onAddColumn,\n onColumnDelete,\n onColumnFreeze,\n onColumnHide,\n onMoreActionClick,\n onSort,\n sortedInfo,\n }}\n isHidable={isColumnHidable}\n />\n )}\n </div>\n </th>\n );\n};\n\nexport default CellContent;\n","import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { Resizable } from \"react-resizable\";\n\nimport CellContent from \"./CellContent\";\n\nconst HeaderCell = props => {\n const { onResize, width, onResizeStop, className, ...restProps } = props;\n\n if (!width) {\n return (\n <CellContent\n {...restProps}\n className={classNames(className, \"drag-handler\")}\n />\n );\n }\n\n return (\n <Resizable\n {...{ onResize, onResizeStop, width }}\n draggableOpts={{ enableUserSelectHack: false }}\n height={0}\n handle={\n <span\n className=\"react-resizable-handle\"\n onClick={e => e.stopPropagation()}\n />\n }\n onResizeStart={e => {\n e.preventDefault();\n }}\n >\n <CellContent\n {...restProps}\n className={classNames(className, \"drag-handler\")}\n />\n </Resizable>\n );\n};\n\nexport default HeaderCell;\n","import React, { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Resizable } from \"react-resizable\";\n\nimport CellContent from \"./CellContent\";\n\nconst ResizableHeaderCell = props => {\n const { onResize, width, onResizeStop, onResizeStart, ...restProps } = props;\n const [isResizing, setIsResizing] = useState(false);\n\n if (!width) {\n return <CellContent {...restProps} />;\n }\n\n return (\n <Resizable\n {...{ onResize, onResizeStop, width }}\n draggableOpts={{ enableUserSelectHack: false }}\n height={0}\n handle={\n <span\n className={classnames(\"react-resizable-handle\", {\n \"react-resizable-handle--resizing\": isResizing,\n })}\n onClick={e => e.stopPropagation()}\n >\n <span className=\"neeto-ui-table-react-resizable-handle__inner\" />\n </span>\n }\n onResizeStart={(e, data) => {\n e.preventDefault();\n setIsResizing(true);\n onResizeStart?.(e, data);\n }}\n onResizeStop={(e, data) => {\n setIsResizing(false);\n onResizeStop?.(e, data);\n }}\n >\n <CellContent {...restProps} />\n </Resizable>\n );\n};\n\nexport default ResizableHeaderCell;\n","import React from \"react\";\n\nimport classNames from \"classnames\";\n\nimport CellContent from \"./CellContent\";\nimport HeaderCell from \"./HeaderCell\";\nimport ResizableHeaderCell from \"./ResizableHeaderCell\";\n\nconst ReorderableHeaderCell = ({ className, ...props }) => (\n <CellContent {...props} className={classNames(className, \"drag-handler\")} />\n);\n\nexport { CellContent, ResizableHeaderCell, ReorderableHeaderCell, HeaderCell };\n","import { isPresent, snakeToCamelCase, camelToSnakeCase } from \"neetocist\";\nimport { __, all, equals, filter, includes, pipe, pluck } from \"ramda\";\n\nimport {\n CellContent,\n HeaderCell,\n ReorderableHeaderCell,\n ResizableHeaderCell,\n} from \"./components/HeaderCell\";\nimport {\n COLUMN_FIXED_VALUES,\n SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT,\n SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT,\n TABLE_SORT_ORDERS,\n} from \"./constants\";\n\nconst convertLocationPathnameToId = () => {\n const pathname = decodeURIComponent(window.location.pathname).replace(\n /^\\//,\n \"\"\n );\n\n let hash = 0;\n for (let i = 0; i < pathname.length; i++) {\n const char = pathname.charCodeAt(i);\n hash = (hash << 5) - hash + char;\n hash = hash & hash; // Convert to 32-bit integer\n }\n\n return Math.abs(hash).toString(16).toUpperCase();\n};\n\nexport const getHeaderCell = ({ enableColumnResize, enableColumnReorder }) => {\n if (enableColumnReorder && enableColumnResize) return { cell: HeaderCell };\n\n if (enableColumnResize) return { cell: ResizableHeaderCell };\n\n if (enableColumnReorder) return { cell: ReorderableHeaderCell };\n\n return { cell: CellContent };\n};\n\nexport const isIncludedIn = (array1, array2) =>\n all(includes(__, array1), array2);\n\nexport const getSelectAllRowsCalloutHeight = () =>\n window.innerWidth < 768\n ? SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT\n : SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT;\n\nexport const sortFrozenColumns = columnData => {\n const originalIndices = new Map(\n columnData.map((col, index) => [col.dataIndex, index])\n );\n\n return (a, b) => {\n const aFixed = isPresent(a.fixed);\n const bFixed = isPresent(b.fixed);\n const aIndex = originalIndices.get(a.dataIndex);\n const bIndex = originalIndices.get(b.dataIndex);\n\n if (aFixed !== bFixed) return aFixed ? -1 : 1;\n\n return aIndex - bIndex;\n };\n};\n\nexport const getFixedColumns = columnData =>\n pipe(\n filter(({ fixed }) => isPresent(fixed)),\n pluck(\"dataIndex\")\n )(columnData);\n\nexport const getColumnSortOrder = (col, sortedInfo) =>\n equals(sortedInfo.field, col.dataIndex) || equals(sortedInfo.field, col.key)\n ? sortedInfo.order\n : null;\n\nexport const getColumFixedValue = (col, frozenColumns) =>\n frozenColumns?.indexOf(col.dataIndex) !== -1\n ? COLUMN_FIXED_VALUES.LEFT\n : null;\n\nexport const getFrozenColumnsLocalStorageKey = localStorageKeyPrefix => {\n const prefix = isPresent(localStorageKeyPrefix)\n ? localStorageKeyPrefix\n : convertLocationPathnameToId();\n\n return `NEETOUI-${prefix}-FIXED_COLUMNS`;\n};\n\nexport const getSortInfoFromQueryParams = queryParams => {\n const sortedInfo = {};\n if (\n isPresent(queryParams.sort_by) &&\n isPresent(queryParams.order_by) &&\n isPresent(TABLE_SORT_ORDERS[queryParams.order_by])\n ) {\n sortedInfo.field = queryParams.sort_by.includes(\"+\")\n ? queryParams.sort_by.split(\"+\").map(snakeToCamelCase)\n : snakeToCamelCase(queryParams.sort_by);\n sortedInfo.order = TABLE_SORT_ORDERS[queryParams.order_by];\n }\n\n return sortedInfo;\n};\n\nexport const getSortField = field => {\n if (Array.isArray(field)) {\n return field.map(camelToSnakeCase).join(\"+\");\n }\n\n return camelToSnakeCase(field);\n};\n","import React, { useMemo } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { has } from \"ramda\";\n\nimport SortIcon from \"../components/SortIcon\";\nimport TitleWithInfoIcon from \"../components/TitleWithInfoIcon\";\nimport {\n getColumFixedValue,\n getColumnSortOrder,\n sortFrozenColumns,\n} from \"../utils\";\n\nconst useResizableColumns = ({\n columns,\n columnData,\n frozenColumns,\n setColumns,\n isEnabled,\n isAddEnabled,\n isColumnFreezeEnabled,\n onColumnAdd,\n onColumnUpdate,\n onColumnDelete,\n handleSort,\n sortedInfo,\n onColumnHide,\n onColumnFreeze,\n onMoreActionClick,\n tableOnChangeProps,\n}) => {\n const handleResize =\n index =>\n (_, { size }) => {\n const nextColumns = [...columns];\n nextColumns[index] = { ...nextColumns[index], width: size.width };\n setColumns(nextColumns);\n };\n\n const computedColumnsData = useMemo(\n () =>\n columns\n .map((col, index) => {\n const fixed = getColumFixedValue(col, frozenColumns);\n\n const modifiedColumn = {\n ...col,\n onHeaderCell: column => ({\n width: column.width,\n onResize: isEnabled ? handleResize(index) : noop,\n onResizeStop: () => (isEnabled ? onColumnUpdate(columns) : noop),\n isSortable: isPresent(col.sorter),\n onSort: handleSort,\n sortedInfo,\n onColumnHide,\n onColumnFreeze,\n onMoreActionClick,\n isColumnFreezeEnabled,\n isAddEnabled: isAddEnabled && !fixed,\n onAddColumn: positionOffset =>\n onColumnAdd(index + positionOffset),\n isFixedColumn: !!fixed,\n onColumnDelete,\n isHidable: col.isHidable,\n isDeletable: col.isDeletable,\n moreActions: col.moreActions,\n column: col,\n \"data-text-align\": column.align,\n }),\n sortIcon: SortIcon,\n sortOrder: getColumnSortOrder(col, sortedInfo),\n fixed,\n title: col.description\n ? props => (\n <TitleWithInfoIcon\n {...props}\n description={col.description}\n title={col.title}\n />\n )\n : col.title,\n };\n\n if (!has(\"ellipsis\", col)) modifiedColumn.ellipsis = true;\n\n return modifiedColumn;\n })\n .sort(sortFrozenColumns(columnData)),\n [\n columns,\n sortedInfo,\n tableOnChangeProps,\n onColumnFreeze,\n frozenColumns,\n columnData,\n ]\n );\n\n return { columns: computedColumnsData };\n};\n\nexport default useResizableColumns;\n","import { useCallback, useEffect } from \"react\";\n\nimport { append, equals, isEmpty, props, without } from \"ramda\";\n\nimport useLocalStorage from \"hooks/useLocalStorage\";\n\nimport useReorderColumns from \"./useReorderColumns\";\nimport useResizableColumns from \"./useResizableColumns\";\n\nimport { getFixedColumns, getFrozenColumnsLocalStorageKey } from \"../utils\";\n\nconst useColumns = ({\n columns,\n columnData,\n setColumns,\n isResizeEnabled,\n isReorderEnabled,\n isAddEnabled,\n isColumnFreezeEnabled,\n onColumnAdd,\n onColumnUpdate,\n onColumnDelete,\n rowSelection,\n sortedInfo,\n setSortedInfo,\n onColumnHide,\n onMoreActionClick,\n onTableChange,\n tableOnChangeProps,\n handleTableSortChange,\n isDefaultPageChangeHandler,\n localStorageKeyPrefix,\n}) => {\n const [frozenColumns, setFrozenColumns] = useLocalStorage(\n getFrozenColumnsLocalStorageKey(localStorageKeyPrefix)\n );\n\n const onColumnFreeze = useCallback(\n (isFixedColumn, { dataIndex }) => {\n const updatedColumns = isFixedColumn\n ? without([dataIndex], frozenColumns)\n : append(dataIndex, frozenColumns);\n\n setFrozenColumns(updatedColumns);\n },\n [frozenColumns, setFrozenColumns]\n );\n\n useEffect(() => {\n if (isEmpty(columnData) || frozenColumns) return;\n\n const fixedCols = getFixedColumns(columnData);\n setFrozenColumns(fixedCols);\n }, [columnData, setFrozenColumns]);\n\n const { dragProps } = useReorderColumns({\n isEnabled: isReorderEnabled,\n columns,\n setColumns,\n onColumnUpdate,\n rowSelection,\n });\n\n const handleSort = sorter => {\n let newSortedInfo = { ...sorter };\n if (\n equals(\n props([\"field\", \"order\"], newSortedInfo),\n props([\"field\", \"order\"], sortedInfo)\n )\n ) {\n newSortedInfo = {\n field: null,\n order: null,\n column: null,\n columnKey: null,\n };\n }\n setSortedInfo(newSortedInfo);\n onTableChange?.(\n tableOnChangeProps.current?.pagination || {},\n tableOnChangeProps.current?.filters || {},\n { ...newSortedInfo }\n );\n\n isDefaultPageChangeHandler &&\n handleTableSortChange(\n tableOnChangeProps.current?.pagination || {},\n newSortedInfo\n );\n };\n\n const { columns: computedColumnsData } = useResizableColumns({\n columns,\n columnData,\n frozenColumns,\n setColumns,\n isEnabled: isResizeEnabled,\n isAddEnabled,\n isColumnFreezeEnabled,\n onColumnAdd,\n onColumnUpdate,\n onColumnDelete,\n handleSort,\n sortedInfo,\n onColumnHide,\n onMoreActionClick,\n tableOnChangeProps,\n onColumnFreeze,\n });\n\n return { dragProps, columns: computedColumnsData };\n};\n\nexport default useColumns;\n","import { useEffect, useState } from \"react\";\n\nimport { mergeLeft } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useQueryParams } from \"hooks\";\nimport { buildUrl } from \"utils\";\n\nimport { URL_SORT_ORDERS } from \"../constants\";\nimport { getSortInfoFromQueryParams, getSortField } from \"../utils\";\n\nconst useTableSort = () => {\n const queryParams = useQueryParams();\n const [sortedInfo, setSortedInfo] = useState(() =>\n getSortInfoFromQueryParams(queryParams)\n );\n\n useEffect(() => {\n setSortedInfo(getSortInfoFromQueryParams(queryParams));\n }, [queryParams?.sort_by, queryParams?.order_by]);\n\n const history = useHistory();\n\n const handleTableChange = (pagination, sorter) => {\n const params = {\n sort_by: sorter.order ? getSortField(sorter.field) : undefined,\n order_by: URL_SORT_ORDERS[sorter.order],\n page: pagination.current,\n };\n\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, mergeLeft(params, queryParams)));\n };\n\n return { handleTableChange, sortedInfo, setSortedInfo };\n};\n\nexport default useTableSort;\n","import React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport { Table as AntTable, ConfigProvider } from \"antd\";\nimport classnames from \"classnames\";\nimport {\n dynamicArray,\n isNotEmpty,\n modifyBy,\n snakeToCamelCase,\n} from \"neetocist\";\nimport { Left, Right, MenuHorizontal } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { assoc, isEmpty, mergeLeft, pluck } from \"ramda\";\nimport ReactDragListView from \"react-drag-listview\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { ANTD_LOCALE } from \"components/constants\";\nimport { useQueryParams, useTimeout } from \"hooks\";\nimport { ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES, buildUrl, noop } from \"utils\";\n\nimport AllRowsSelectedCallout from \"./components/AllRowsSelectedCallout\";\nimport SelectAllRowsCallout from \"./components/SelectAllRowsCallout\";\nimport { TABLE_SORT_ORDERS } from \"./constants\";\nimport useColumns from \"./hooks/useColumns\";\nimport { useRestoreScrollPosition } from \"./hooks/useRestoreScrollPosition\";\nimport useTableSort from \"./hooks/useTableSort\";\nimport {\n getHeaderCell,\n isIncludedIn,\n getSelectAllRowsCalloutHeight,\n} from \"./utils\";\n\nimport Button from \"../Button\";\nimport Spinner from \"../Spinner\";\nimport Typography from \"../Typography\";\n\nconst TABLE_PAGINATION_HEIGHT = 64;\nconst TABLE_DEFAULT_HEADER_HEIGHT = 40;\nconst TABLE_ROW_HEIGHT = 52;\n\nconst Table = ({\n allowRowClick = true,\n enableColumnResize = true,\n enableColumnReorder = false,\n enableColumnFreeze = true,\n enableAddColumn = false,\n className = \"\",\n columnData = [],\n currentPageNumber = 1,\n defaultPageSize = 30,\n handlePageChange = noop,\n loading = false,\n onRowClick,\n onRowSelect,\n rowData = [],\n totalCount = 0,\n selectedRowKeys: initialSelectedRowKeys = [],\n fixedHeight = false,\n paginationProps = {},\n rowKey = \"id\",\n scroll,\n rowSelection,\n shouldDynamicallyRenderRowSize = false,\n bordered = true,\n onColumnUpdate = noop,\n components = {},\n onColumnHide,\n onColumnAdd = noop,\n onColumnDelete,\n onChange,\n onMoreActionClick,\n bulkSelectAllRowsProps,\n localStorageKeyPrefix,\n ...otherProps\n}) => {\n const { i18n } = useTranslation();\n const [containerHeight, setContainerHeight] = useState(null);\n const [headerHeight, setHeaderHeight] = useState(TABLE_DEFAULT_HEADER_HEIGHT);\n const [columns, setColumns] = useState(columnData);\n const [bulkSelectedAllRows, setBulkSelectedAllRows] = useState(false);\n const {\n handleTableChange: handleTableSortChange,\n sortedInfo,\n setSortedInfo,\n } = useTableSort();\n\n const { setBulkSelectedAllRows: handleSetBulkSelectedAllRows } =\n bulkSelectAllRowsProps ?? {};\n\n const isDefaultPageChangeHandler = handlePageChange === noop;\n\n const history = useHistory();\n\n const headerRef = useRef();\n const tableOnChangeProps = useRef({});\n\n const resizeObserver = useRef(\n new ResizeObserver(([entry]) =>\n setContainerHeight(entry.contentRect.height)\n )\n );\n\n const scrollRef = useRef(null);\n const tableRef = useCallback(\n table => {\n scrollRef.current = table;\n\n if (!fixedHeight) return;\n\n const observer = resizeObserver.current;\n\n if (table !== null) {\n const targetNode = enableColumnReorder\n ? table?.parentNode?.parentNode\n : table?.parentNode;\n\n observer.observe(targetNode);\n } else if (observer) {\n observer.disconnect();\n }\n },\n [resizeObserver.current, fixedHeight, enableColumnReorder]\n );\n\n const { handleScroll } = useRestoreScrollPosition({\n tableRef,\n scrollRef,\n loading,\n });\n\n useTimeout(() => {\n const headerHeight = headerRef.current\n ? headerRef.current.offsetHeight\n : TABLE_DEFAULT_HEADER_HEIGHT;\n\n setHeaderHeight(headerHeight);\n }, 10);\n\n const { dragProps, columns: curatedColumnsData } = useColumns({\n isReorderEnabled: enableColumnReorder,\n isResizeEnabled: enableColumnResize,\n isAddEnabled: enableAddColumn,\n isColumnFreezeEnabled: enableColumnFreeze,\n onTableChange: onChange,\n columns,\n columnData,\n setColumns,\n onColumnUpdate,\n rowSelection,\n sortedInfo,\n setSortedInfo,\n onColumnHide,\n onMoreActionClick,\n onColumnAdd,\n onColumnDelete,\n tableOnChangeProps,\n handleTableSortChange,\n isDefaultPageChangeHandler,\n localStorageKeyPrefix,\n });\n\n const queryParams = useQueryParams();\n\n const setSortFromURL = columnData =>\n modifyBy(\n { dataIndex: snakeToCamelCase(queryParams.sort_by ?? \"\") },\n assoc(\"sortOrder\", TABLE_SORT_ORDERS[queryParams.order_by]),\n columnData\n );\n\n const sortedColumns = isDefaultPageChangeHandler\n ? setSortFromURL(curatedColumnsData)\n : curatedColumnsData;\n\n const locale = { emptyText: <Typography style=\"body2\">No Data</Typography> };\n\n const selectedRowKeys = bulkSelectedAllRows\n ? pluck(rowKey, rowData)\n : initialSelectedRowKeys;\n\n const showBulkSelectionCallout = useMemo(\n () =>\n isIncludedIn(selectedRowKeys, pluck(rowKey, rowData)) &&\n selectedRowKeys.length !== totalCount &&\n !bulkSelectedAllRows,\n [selectedRowKeys, rowKey, rowData, totalCount, bulkSelectedAllRows]\n );\n\n const shouldShowSelectAllRowsCallout =\n bulkSelectAllRowsProps && showBulkSelectionCallout;\n\n const shouldShowAllRowsSelectedCallout =\n bulkSelectAllRowsProps && bulkSelectedAllRows;\n\n const handleRowChange = (selectedRowKeys, selectedRows) => {\n const tableWrapper = document.querySelector(\n '[data-testid=\"table-wrapper\"]'\n );\n\n if (selectedRowKeys.length !== defaultPageSize) {\n setBulkSelectedAllRows(false);\n handleSetBulkSelectedAllRows?.(false);\n tableWrapper?.classList.remove(\"neeto-ui-overflow-hidden\");\n } else {\n tableWrapper?.classList.add(\"neeto-ui-overflow-hidden\");\n }\n onRowSelect?.(selectedRowKeys, selectedRows);\n };\n\n const rowSelectionProps = rowSelection\n ? {\n type: \"checkbox\",\n preserveSelectedRowKeys: true,\n ...rowSelection,\n onChange: handleRowChange,\n selectedRowKeys,\n }\n : false;\n\n // eslint-disable-next-line @bigbinary/neeto/no-excess-function-arguments\n const handleTableChange = (pagination, filters, sorter, extras) => {\n setSortedInfo(sorter);\n isDefaultPageChangeHandler && handleTableSortChange(pagination, sorter);\n onChange?.(pagination, filters, sorter, extras);\n tableOnChangeProps.current = { pagination, filters };\n };\n\n const componentOverrides = {\n ...components,\n header: getHeaderCell({\n enableColumnResize,\n enableColumnReorder,\n }),\n };\n\n const calculateRowsPerPage = () => {\n const viewportHeight = window.innerHeight;\n const rowsPerPage = Math.floor(\n ((viewportHeight - TABLE_PAGINATION_HEIGHT) / TABLE_ROW_HEIGHT) * 3\n );\n\n return Math.ceil(rowsPerPage / 10) * 10;\n };\n\n const pageSize = shouldDynamicallyRenderRowSize\n ? calculateRowsPerPage()\n : paginationProps.pageSize || defaultPageSize;\n\n const calculateTableContainerHeight = () => {\n const isPaginationVisible =\n otherProps.pagination !== false && rowData.length > pageSize;\n\n let selectAllRowsCalloutHeight = 0;\n if (shouldShowSelectAllRowsCallout || shouldShowAllRowsSelectedCallout) {\n selectAllRowsCalloutHeight = getSelectAllRowsCalloutHeight();\n }\n\n return (\n containerHeight -\n headerHeight -\n (isPaginationVisible ? TABLE_PAGINATION_HEIGHT : 0) -\n selectAllRowsCalloutHeight\n );\n };\n\n const calculatePageSizeOptions = () =>\n dynamicArray(5, index => (index + 1) * pageSize);\n\n const itemRender = (_, type, originalElement) => {\n const commonProps = { size: \"small\", style: \"text\" };\n\n if (type === \"prev\") return <Button icon={Left} {...commonProps} />;\n\n if (type === \"next\") return <Button icon={Right} {...commonProps} />;\n\n if (type === \"jump-prev\" || type === \"jump-next\") {\n return <Button icon={MenuHorizontal} {...commonProps} />;\n }\n\n return originalElement;\n };\n\n useEffect(() => {\n if (isNotEmpty(initialSelectedRowKeys)) return;\n\n setBulkSelectedAllRows(false);\n handleSetBulkSelectedAllRows?.(false);\n }, [handleSetBulkSelectedAllRows, initialSelectedRowKeys]);\n\n useEffect(() => {\n const shouldNavigateToLastPage =\n isEmpty(rowData) && !loading && currentPageNumber !== 1;\n\n if (!shouldNavigateToLastPage) return;\n\n const lastPage = Math.ceil(totalCount / pageSize);\n const page = Math.max(1, lastPage);\n const pathname = window.location.pathname;\n\n isDefaultPageChangeHandler\n ? history.push(buildUrl(pathname, mergeLeft({ page }, queryParams)))\n : handlePageChange(page, pageSize);\n }, [rowData]);\n\n useEffect(() => setColumns(columnData), [columnData]);\n\n const neetoUIFontBold = parseInt(\n getComputedStyle(document.documentElement).getPropertyValue(\n \"--neeto-ui-font-bold\"\n ),\n 10\n );\n\n const renderTable = () => (\n <ConfigProvider\n locale={ANTD_LOCALE[i18n.language || \"en\"]}\n theme={{\n token: { ...ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES },\n components: {\n Pagination: {\n itemActiveBg: \"rgb(var(--neeto-ui-primary-500))\",\n itemActiveBgDisabled: \"rgb(var(--neeto-ui-gray-50))\",\n itemActiveColorDisabled: \"rgb(var(--neeto-ui-gray-300))\",\n itemBg: \"rgb(var(--neeto-ui-white))\",\n itemInputBg: \"rgb(var(--neeto-ui-white))\",\n itemLinkBg: \"rgb(var(--neeto-ui-white))\",\n\n // Global overrides\n colorBgContainer: \"rgb(var(--neeto-ui-primary-500))\",\n colorPrimary: \"rgb(var(--neeto-ui-white))\",\n colorPrimaryHover: \"rgb(var(--neeto-ui-white))\",\n colorBgTextHover: \"rgb(var(--neeto-ui-gray-200))\",\n borderRadius: 6,\n },\n Table: {\n headerBorderRadius: 0,\n bodySortBg: \"rgb(var(--neeto-ui-gray-50))\",\n borderColor: \"rgb(var(--neeto-ui-gray-200))\",\n expandIconBg: \"rgb(var(--neeto-ui-white))\",\n filterDropdownBg: \"rgb(var(--neeto-ui-white))\",\n filterDropdownMenuBg: \"rgb(var(--neeto-ui-white))\",\n fixedHeaderSortActiveBg: \"rgb(var(--neeto-ui-gray-200))\",\n footerBg: \"rgb(var(--neeto-ui-gray-100))\",\n footerColor: \"rgb(var(--neeto-ui-black))\",\n headerBg: \"rgb(var(--neeto-ui-gray-100))\",\n headerColor: \"rgb(var(--neeto-ui-black))\",\n headerFilterHoverBg: \"rgb(var(--neeto-ui-gray-100))\",\n headerSortActiveBg: \"rgb(var(--neeto-ui-gray-200))\",\n headerSortHoverBg: \"rgb(var(--neeto-ui-gray-200))\",\n headerSplitColor: \"rgb(var(--neeto-ui-gray-100))\",\n rowExpandedBg: \"rgb(var(--neeto-ui-gray-100))\",\n rowHoverBg: \"rgb(var(--neeto-ui-gray-50))\",\n rowSelectedBg: \"rgb(var(--neeto-ui-accent-50))\",\n rowSelectedHoverBg: \"rgb(var(--neeto-ui-accent-50))\",\n stickyScrollBarBg: \"rgb(var(--neeto-ui-gray-300))\",\n cellPaddingBlock: 11,\n\n // Global overrides\n colorPrimary: \"rgb(var(--neeto-ui-primary-500))\",\n fontSize: 14,\n fontWeightStrong: neetoUIFontBold,\n paddingContentVerticalLG: 11,\n },\n },\n }}\n >\n {shouldShowSelectAllRowsCallout && (\n <SelectAllRowsCallout\n {...bulkSelectAllRowsProps}\n onBulkSelectAllRows={() => {\n setBulkSelectedAllRows(true);\n handleSetBulkSelectedAllRows?.(true);\n }}\n />\n )}\n {shouldShowAllRowsSelectedCallout && (\n <AllRowsSelectedCallout\n {...bulkSelectAllRowsProps}\n onClearSelection={() => {\n setBulkSelectedAllRows(false);\n handleSetBulkSelectedAllRows?.(false);\n handleRowChange([], []);\n }}\n />\n )}\n <AntTable\n {...{ bordered, locale, rowKey }}\n columns={sortedColumns}\n components={componentOverrides}\n dataSource={rowData}\n loading={{ spinning: loading, indicator: <Spinner /> }}\n ref={tableRef}\n rowSelection={rowSelectionProps}\n showSorterTooltip={false}\n pagination={{\n hideOnSinglePage: true,\n ...paginationProps,\n showSizeChanger: false,\n total: totalCount ?? 0,\n current: currentPageNumber,\n defaultPageSize: pageSize,\n pageSizeOptions: calculatePageSizeOptions(),\n onChange: handlePageChange,\n itemRender,\n }}\n rowClassName={classnames(\n \"neeto-ui-table--row\",\n { \"neeto-ui-table--row_hover\": allowRowClick },\n [className]\n )}\n scroll={{\n x: \"max-content\",\n y: calculateTableContainerHeight(),\n ...scroll,\n }}\n onChange={handleTableChange}\n onScroll={handleScroll}\n onHeaderRow={() => ({\n ref: headerRef,\n className: classnames(\"neeto-ui-table__header\", {\n \"neeto-ui-table-reorderable\": enableColumnReorder,\n }),\n id: \"neeto-ui-table__header\",\n })}\n onRow={(record, rowIndex) => ({\n onClick: event =>\n allowRowClick && onRowClick && onRowClick(event, record, rowIndex),\n })}\n {...otherProps}\n />\n </ConfigProvider>\n );\n\n return enableColumnReorder ? (\n <ReactDragListView.DragColumn {...dragProps}>\n {renderTable()}\n </ReactDragListView.DragColumn>\n ) : (\n renderTable()\n );\n};\n\nTable.propTypes = {\n /**\n * Enables row click event. Accepts boolean values.\n */\n allowRowClick: PropTypes.bool,\n /**\n * Dynamically renders the number of rows based on the viewport height.\n */\n shouldDynamicallyRenderRowSize: PropTypes.bool,\n /**\n * Custom classnames for each row.\n */\n className: PropTypes.string,\n /**\n * To make the Table fixed height.\n */\n fixedHeight: PropTypes.bool,\n /**\n * Columns of the Table. Accepts an array of [column definitions](#column_data).\n */\n columnData: PropTypes.array.isRequired,\n /**\n * Active page number.\n */\n currentPageNumber: PropTypes.number,\n /**\n * Sets the number of rows in a page.\n */\n defaultPageSize: PropTypes.number,\n /**\n * Handles page change events. Accepts a callback with `page` and `pageSize` as parameters. If not provided, component will handle page query parameters.\n *\n * `handlePageChange={(page, pageSize) => {}}`\n */\n handlePageChange: PropTypes.func,\n /**\n * Show loading state in Table.\n */\n loading: PropTypes.bool,\n /**\n * Handles click event on each row. Accepts a callback with `event`, `record`, and `index` as parameters.\n *\n * `onRowClick={(event, record, rowIndex) => {}}`\n */\n onRowClick: PropTypes.func,\n /**\n * Handles select event on each row. Accepts a callback with `selectedRowKeys` and `selectedRows` as parameters.\n * Make sure to pass `id` in `rowData` for this to work.\n * `onRowSelect={(selectedRowKeys, selectedRows) => {}}`\n */\n onRowSelect: PropTypes.func,\n /**\n * Keys of the rows that are selected.\n */\n selectedRowKeys: PropTypes.array,\n /**\n * Additional props for pagination. Refer [pagination docs](https://ant.design/components/pagination/#API) from AntD Table.\n */\n paginationProps: PropTypes.object,\n /**\n * Data for rows to be displayed. Accepts an array of JavaScript Objects.\n */\n rowData: PropTypes.array.isRequired,\n /**\n * Total number of data items.\n */\n totalCount: PropTypes.number,\n /**\n * Enables resizing of columns. Accepts boolean values.\n */\n enableColumnResize: PropTypes.bool,\n /**\n * Enables reordering of columns. Accepts boolean values.\n */\n enableColumnReorder: PropTypes.bool,\n /**\n * Enables adding of columns to the left or right of the current column. Accepts boolean values.\n */\n enableAddColumn: PropTypes.bool,\n /**\n * Handles column update events. Accepts a callback with `columns` as parameters.\n *\n * `onColumnUpdate={(columns) => {}}`\n */\n onColumnUpdate: PropTypes.func,\n /**\n * Function that gets called when a new column is added. Gets called with the 'position' to add the new column to as parameter.\n *\n * `onColumnAdd={(position) => {}}`\n */\n onColumnAdd: PropTypes.func,\n /**\n * Function that gets called when a custom field column is deleted. Gets called with the 'id' of the column getting deleted as parameter.\n *\n * `onColumnDelete={(key) => {}}`\n */\n onColumnDelete: PropTypes.func,\n /**\n * Function that gets called when a more action item in header is clicked.\n *\n * `onMoreActionClick={(type, column) => {}}`\n */\n onMoreActionClick: PropTypes.func,\n /**\n * Additional props for row selection. Refer [row selection docs](https://ant.design/components/table/#rowSelection) from AntD Table\n * Make sure to pass `id` in `rowData` for this to work.\n */\n rowSelection: PropTypes.oneOfType([PropTypes.bool, PropTypes.object]),\n /**\n * Props for adding `Select all rows` option for multi-page table.\n */\n bulkSelectAllRowsProps: PropTypes.shape({\n selectAllRowMessage: PropTypes.string.isRequired,\n selectAllRowButtonLabel: PropTypes.string.isRequired,\n setBulkSelectedAllRows: PropTypes.func.isRequired,\n allRowsSelectedMessage: PropTypes.string,\n clearSelectionButtonLabel: PropTypes.string,\n }),\n /**\n * String to set as the prefix of the local storage key where the data is persisted, eg: fixed columns.\n */\n localStorageKeyPrefix: PropTypes.string,\n};\n\nexport default Table;\n"],"names":["useTimeout","callback","delay","savedCallback","useRef","useEffect","current","id","setTimeout","clearTimeout","AllRowsSelectedCallout","_ref","calloutProps","onClearSelection","allRowsSelectedMessage","clearSelectionButtonLabel","_useTranslation","useTranslation","t","i18n","React","createElement","Callout","_extends","className","Typography","style","getLocale","Button","label","onClick","SelectAllRowsCallout","onBulkSelectAllRows","selectAllRowButtonLabel","selectAllRowMessage","useLocalStorage","key","defaultValue","_useState","useState","getFromLocalStorage","_useState2","_slicedToArray","storedValue","setStoredValue","setValue","value","prevStoredValue","newValue","isNil","removeFromLocalStorage","setToLocalStorage","useReorderColumns","isEnabled","columns","setColumns","onColumnUpdate","rowSelection","dragProps","isColumnFixed","column","fixed","onDragEnd","fromIndex","toIndex","from","to","newColumns","move","nodeSelector","handleSelector","ignoreSelector","SortIcon","sortOrder","TABLE_SORT_ORDERS","asc","URL_SORT_ORDERS","ascend","UpArrow","size","desc","descend","DownArrow","TitleWithInfoIcon","title","description","rest","_objectWithoutProperties","_excluded","popoverRef","Fragment","ref","InfoRound","color","Popover","appendTo","document","body","position","reference","lineHeight","CellContent","children","isSortable","isAddEnabled","sortedInfo","onSort","_ref$isHidable","isHidable","_ref$isDeletable","isDeletable","isFixedColumn","isColumnFreezeEnabled","onColumnHide","onAddColumn","onColumnDelete","onColumnFreeze","onMoreActionClick","_ref$moreActions","moreActions","headerProps","isColumnHidable","isPresent","isColumnDeletable","hasMoreActions","isEmpty","hasMoreMenu","noop","concat","hyphenize","HeaderCellMenu","HeaderCell","props","onResize","width","onResizeStop","restProps","classNames","Resizable","draggableOpts","enableUserSelectHack","height","handle","e","stopPropagation","onResizeStart","preventDefault","ResizableHeaderCell","isResizing","setIsResizing","_defineProperty","classnames","data","ReorderableHeaderCell","convertLocationPathnameToId","pathname","decodeURIComponent","window","location","replace","hash","i","length","char","charCodeAt","Math","abs","toString","toUpperCase","getHeaderCell","enableColumnResize","enableColumnReorder","cell","isIncludedIn","array1","array2","all","includes","__","getSelectAllRowsCalloutHeight","innerWidth","SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT","SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT","sortFrozenColumns","columnData","originalIndices","Map","map","col","index","dataIndex","a","b","aFixed","bFixed","aIndex","get","bIndex","getFixedColumns","pipe","filter","_ref2","pluck","getColumnSortOrder","equals","field","order","getColumFixedValue","frozenColumns","indexOf","COLUMN_FIXED_VALUES","LEFT","getFrozenColumnsLocalStorageKey","localStorageKeyPrefix","prefix","getSortInfoFromQueryParams","queryParams","sort_by","order_by","split","snakeToCamelCase","getSortField","Array","isArray","camelToSnakeCase","join","useResizableColumns","onColumnAdd","handleSort","tableOnChangeProps","handleResize","_","nextColumns","_toConsumableArray","_objectSpread","computedColumnsData","useMemo","modifiedColumn","onHeaderCell","sorter","positionOffset","align","sortIcon","has","ellipsis","sort","useColumns","isResizeEnabled","isReorderEnabled","setSortedInfo","onTableChange","handleTableSortChange","isDefaultPageChangeHandler","_useLocalStorage","_useLocalStorage2","setFrozenColumns","useCallback","updatedColumns","without","append","fixedCols","_useReorderColumns","_tableOnChangeProps$c","_tableOnChangeProps$c2","_tableOnChangeProps$c3","newSortedInfo","columnKey","pagination","filters","_useResizableColumns","useTableSort","useQueryParams","history","useHistory","handleTableChange","params","undefined","page","push","buildUrl","mergeLeft","TABLE_PAGINATION_HEIGHT","TABLE_DEFAULT_HEADER_HEIGHT","TABLE_ROW_HEIGHT","Table","_ref$allowRowClick","allowRowClick","_ref$enableColumnResi","_ref$enableColumnReor","_ref$enableColumnFree","enableColumnFreeze","_ref$enableAddColumn","enableAddColumn","_ref$className","_ref$columnData","_ref$currentPageNumbe","currentPageNumber","_ref$defaultPageSize","defaultPageSize","_ref$handlePageChange","handlePageChange","_ref$loading","loading","onRowClick","onRowSelect","_ref$rowData","rowData","_ref$totalCount","totalCount","_ref$selectedRowKeys","selectedRowKeys","initialSelectedRowKeys","_ref$fixedHeight","fixedHeight","_ref$paginationProps","paginationProps","_ref$rowKey","rowKey","scroll","_ref$shouldDynamicall","shouldDynamicallyRenderRowSize","_ref$bordered","bordered","_ref$onColumnUpdate","_ref$components","components","_ref$onColumnAdd","onChange","bulkSelectAllRowsProps","otherProps","containerHeight","setContainerHeight","_useState3","_useState4","headerHeight","setHeaderHeight","_useState5","_useState6","_useState7","_useState8","bulkSelectedAllRows","setBulkSelectedAllRows","_useTableSort","handleSetBulkSelectedAllRows","headerRef","resizeObserver","ResizeObserver","_ref3","_ref4","entry","contentRect","scrollRef","tableRef","table","observer","_table$parentNode","targetNode","parentNode","observe","disconnect","_useRestoreScrollPosi","useRestoreScrollPosition","handleScroll","offsetHeight","_useColumns","curatedColumnsData","setSortFromURL","_queryParams$sort_by","modifyBy","assoc","sortedColumns","locale","emptyText","showBulkSelectionCallout","shouldShowSelectAllRowsCallout","shouldShowAllRowsSelectedCallout","handleRowChange","selectedRows","tableWrapper","querySelector","classList","remove","add","rowSelectionProps","type","preserveSelectedRowKeys","extras","componentOverrides","header","calculateRowsPerPage","viewportHeight","innerHeight","rowsPerPage","floor","ceil","pageSize","calculateTableContainerHeight","isPaginationVisible","selectAllRowsCalloutHeight","calculatePageSizeOptions","dynamicArray","itemRender","originalElement","commonProps","icon","Left","Right","MenuHorizontal","isNotEmpty","shouldNavigateToLastPage","lastPage","max","neetoUIFontBold","parseInt","getComputedStyle","documentElement","getPropertyValue","renderTable","_ConfigProvider","ANTD_LOCALE","language","theme","token","ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES","Pagination","itemActiveBg","itemActiveBgDisabled","itemActiveColorDisabled","itemBg","itemInputBg","itemLinkBg","colorBgContainer","colorPrimary","colorPrimaryHover","colorBgTextHover","borderRadius","headerBorderRadius","bodySortBg","borderColor","expandIconBg","filterDropdownBg","filterDropdownMenuBg","fixedHeaderSortActiveBg","footerBg","footerColor","headerBg","headerColor","headerFilterHoverBg","headerSortActiveBg","headerSortHoverBg","headerSplitColor","rowExpandedBg","rowHoverBg","rowSelectedBg","rowSelectedHoverBg","stickyScrollBarBg","cellPaddingBlock","fontSize","fontWeightStrong","paddingContentVerticalLG","_Table","dataSource","spinning","indicator","Spinner","showSorterTooltip","hideOnSinglePage","showSizeChanger","total","pageSizeOptions","rowClassName","x","y","onScroll","onHeaderRow","onRow","record","rowIndex","event","ReactDragListView","DragColumn"],"mappings":"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"}
1
+ {"version":3,"file":"Table.js","sources":["../src/hooks/useTimeout.js","../src/components/Table/components/AllRowsSelectedCallout.jsx","../src/components/Table/components/SelectAllRowsCallout.jsx","../src/hooks/useLocalStorage.js","../src/components/Table/hooks/useReorderColumns.js","../src/components/Table/components/SortIcon.jsx","../src/components/Table/components/TitleWithInfoIcon.jsx","../src/components/Table/components/HeaderCell/CellContent.jsx","../src/components/Table/components/HeaderCell/HeaderCell.jsx","../src/components/Table/components/HeaderCell/ResizableHeaderCell.jsx","../src/components/Table/components/HeaderCell/index.jsx","../src/components/Table/utils.js","../src/components/Table/hooks/useResizableColumns.jsx","../src/components/Table/hooks/useColumns.js","../src/components/Table/hooks/useTableSort.js","../src/components/Table/index.jsx"],"sourcesContent":["import { useEffect, useRef } from \"react\";\n\nconst useTimeout = (callback, delay) => {\n const savedCallback = useRef(callback);\n\n useEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n\n useEffect(() => {\n if (delay === null) {\n return undefined;\n }\n\n const id = setTimeout(() => savedCallback.current(), delay);\n\n return () => clearTimeout(id);\n }, [delay]);\n};\n\nexport default useTimeout;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { getLocale } from \"utils\";\n\nimport Button from \"../../Button\";\nimport Callout from \"../../Callout\";\nimport Typography from \"../../Typography\";\n\n// eslint-disable-next-line @bigbinary/neeto/no-dumb-components-with-use-translation\nconst AllRowsSelectedCallout = ({\n calloutProps,\n onClearSelection,\n allRowsSelectedMessage,\n clearSelectionButtonLabel,\n}) => {\n const { t, i18n } = useTranslation();\n\n return (\n <Callout\n className=\"my-2\"\n {...calloutProps}\n data-testid=\"clear-selections-callout\"\n >\n <div className=\"neeto-ui-flex neeto-ui-gap-3\">\n <Typography style=\"body2\">\n {allRowsSelectedMessage ||\n getLocale(i18n, t, \"neetoui.table.allRowsSelected\")}\n </Typography>\n <Button\n data-testid=\"clear-selections-button\"\n style=\"link\"\n label={\n clearSelectionButtonLabel ||\n getLocale(i18n, t, \"neetoui.table.clearSelection\")\n }\n onClick={onClearSelection}\n />\n </div>\n </Callout>\n );\n};\n\nexport default AllRowsSelectedCallout;\n","import React from \"react\";\n\nimport Button from \"../../Button\";\nimport Callout from \"../../Callout\";\nimport Typography from \"../../Typography\";\n\nconst SelectAllRowsCallout = ({\n calloutProps,\n onBulkSelectAllRows,\n selectAllRowButtonLabel,\n selectAllRowMessage,\n}) => (\n <Callout\n className=\"my-2\"\n {...calloutProps}\n data-testid=\"select-all-rows-callout\"\n >\n <div className=\"neeto-ui-flex neeto-ui-gap-3\">\n <Typography style=\"body2\">{selectAllRowMessage}</Typography>\n <Button\n data-testid=\"select-all-rows-button\"\n label={selectAllRowButtonLabel}\n style=\"link\"\n onClick={onBulkSelectAllRows}\n />\n </div>\n </Callout>\n);\n\nexport default SelectAllRowsCallout;\n","/* eslint-disable @bigbinary/neeto/no-local-storage */\n\nimport { useState } from \"react\";\n\nimport { isNil } from \"ramda\";\n\nimport {\n getFromLocalStorage,\n removeFromLocalStorage,\n setToLocalStorage,\n} from \"utils\";\n\nconst useLocalStorage = (key, defaultValue) => {\n const [storedValue, setStoredValue] = useState(() =>\n getFromLocalStorage(key, defaultValue)\n );\n\n const setValue = value =>\n setStoredValue(prevStoredValue => {\n const newValue =\n typeof value === \"function\" ? value(prevStoredValue) : value;\n\n if (isNil(newValue)) {\n removeFromLocalStorage(key);\n } else {\n setToLocalStorage(key, newValue);\n }\n\n return newValue;\n });\n\n return [storedValue, setValue];\n};\n\nexport default useLocalStorage;\n","import { move } from \"ramda\";\n\nconst useReorderColumns = ({\n isEnabled,\n columns,\n setColumns,\n onColumnUpdate,\n rowSelection,\n}) => {\n if (!isEnabled) return { dragProps: {}, columns };\n\n const isColumnFixed = column => !!column.fixed;\n\n const dragProps = {\n onDragEnd: (fromIndex, toIndex) => {\n let from = fromIndex;\n let to = toIndex;\n if (rowSelection) {\n from = fromIndex - 1;\n to = toIndex - 1;\n }\n\n if (!columns[from] || !columns[to]) return;\n\n if (isColumnFixed(columns[from]) || isColumnFixed(columns[to])) return;\n\n const newColumns = move(from, to, columns);\n setColumns(newColumns);\n onColumnUpdate(newColumns);\n },\n nodeSelector:\n \"th:not(.ant-table-cell-fix-left):not(.ant-table-cell-scrollbar)\",\n handleSelector: \".drag-handler\",\n ignoreSelector: \".react-resizable-handle\",\n };\n\n return { dragProps, columns };\n};\n\nexport default useReorderColumns;\n","import React from \"react\";\n\nimport { DownArrow, UpArrow } from \"neetoicons\";\n\nimport { TABLE_SORT_ORDERS, URL_SORT_ORDERS } from \"../constants\";\n\nconst SortIcon = ({ sortOrder }) => {\n if (\n sortOrder === TABLE_SORT_ORDERS.asc ||\n sortOrder === URL_SORT_ORDERS.ascend\n ) {\n return <UpArrow size={14} />;\n }\n\n if (\n sortOrder === TABLE_SORT_ORDERS.desc ||\n sortOrder === URL_SORT_ORDERS.descend\n ) {\n return <DownArrow size={14} />;\n }\n\n return null;\n};\n\nexport default SortIcon;\n","import React, { useRef } from \"react\";\n\nimport { InfoRound } from \"neetoicons\";\n\nimport Popover from \"components/Popover\";\nimport Typography from \"components/Typography\";\n\nconst TitleWithInfoIcon = ({ title, description, ...rest }) => {\n const popoverRef = useRef();\n\n return (\n <span className=\"relative pr-5\">\n {typeof title === \"function\" ? title(rest) : title}\n {description && (\n <>\n <span\n className=\"neeto-ui-table__column-title-info-icon\"\n ref={popoverRef}\n >\n <InfoRound color=\"currentColor\" size={14} />\n </span>\n <Popover\n appendTo={() => document.body}\n position=\"bottom\"\n reference={popoverRef}\n >\n <Typography lineHeight=\"normal\" style=\"body2\">\n {description}\n </Typography>\n </Popover>\n </>\n )}\n </span>\n );\n};\n\nexport default TitleWithInfoIcon;\n","import React from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\n\nimport { hyphenize } from \"utils\";\n\nimport HeaderCellMenu from \"./HeaderCellMenu\";\n\nconst CellContent = ({\n children,\n isSortable,\n isAddEnabled,\n sortedInfo,\n onSort,\n isHidable = true,\n isDeletable = false,\n isFixedColumn,\n isColumnFreezeEnabled,\n onColumnHide,\n onAddColumn,\n onColumnDelete,\n onColumnFreeze,\n onMoreActionClick,\n column,\n moreActions = [],\n ...headerProps\n}) => {\n const isColumnHidable = isHidable && isPresent(onColumnHide);\n const isColumnDeletable = isDeletable && isPresent(onColumnDelete);\n const hasMoreActions = !isEmpty(moreActions) && isPresent(onMoreActionClick);\n const hasMoreMenu =\n isSortable ||\n isColumnHidable ||\n isAddEnabled ||\n hasMoreActions ||\n (isPresent(column) && isColumnFreezeEnabled);\n\n return (\n <th\n {...headerProps}\n title=\"\"\n onClick={isSortable ? noop : headerProps.onClick}\n >\n <div\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-between\"\n data-cy={`${hyphenize(headerProps.title)}-header-title`}\n >\n <div className=\"neeto-ui-min-w-0 neeto-ui-flex-grow neeto-ui-truncate neeto-ui-table__column-title-content\">\n {children}\n </div>\n {hasMoreMenu && (\n <HeaderCellMenu\n {...{\n column,\n hasMoreActions,\n isAddEnabled,\n isColumnDeletable,\n isColumnFreezeEnabled,\n isFixedColumn,\n isSortable,\n moreActions,\n onAddColumn,\n onColumnDelete,\n onColumnFreeze,\n onColumnHide,\n onMoreActionClick,\n onSort,\n sortedInfo,\n }}\n isHidable={isColumnHidable}\n />\n )}\n </div>\n </th>\n );\n};\n\nexport default CellContent;\n","import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { Resizable } from \"react-resizable\";\n\nimport CellContent from \"./CellContent\";\n\nconst HeaderCell = props => {\n const { onResize, width, onResizeStop, className, ...restProps } = props;\n\n if (!width) {\n return (\n <CellContent\n {...restProps}\n className={classNames(className, \"drag-handler\")}\n />\n );\n }\n\n return (\n <Resizable\n {...{ onResize, onResizeStop, width }}\n draggableOpts={{ enableUserSelectHack: false }}\n height={0}\n handle={\n <span\n className=\"react-resizable-handle\"\n onClick={e => e.stopPropagation()}\n />\n }\n onResizeStart={e => {\n e.preventDefault();\n }}\n >\n <CellContent\n {...restProps}\n className={classNames(className, \"drag-handler\")}\n />\n </Resizable>\n );\n};\n\nexport default HeaderCell;\n","import React, { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Resizable } from \"react-resizable\";\n\nimport CellContent from \"./CellContent\";\n\nconst ResizableHeaderCell = props => {\n const { onResize, width, onResizeStop, onResizeStart, ...restProps } = props;\n const [isResizing, setIsResizing] = useState(false);\n\n if (!width) {\n return <CellContent {...restProps} />;\n }\n\n return (\n <Resizable\n {...{ onResize, onResizeStop, width }}\n draggableOpts={{ enableUserSelectHack: false }}\n height={0}\n handle={\n <span\n className={classnames(\"react-resizable-handle\", {\n \"react-resizable-handle--resizing\": isResizing,\n })}\n onClick={e => e.stopPropagation()}\n >\n <span className=\"neeto-ui-table-react-resizable-handle__inner\" />\n </span>\n }\n onResizeStart={(e, data) => {\n e.preventDefault();\n setIsResizing(true);\n onResizeStart?.(e, data);\n }}\n onResizeStop={(e, data) => {\n setIsResizing(false);\n onResizeStop?.(e, data);\n }}\n >\n <CellContent {...restProps} />\n </Resizable>\n );\n};\n\nexport default ResizableHeaderCell;\n","import React from \"react\";\n\nimport classNames from \"classnames\";\n\nimport CellContent from \"./CellContent\";\nimport HeaderCell from \"./HeaderCell\";\nimport ResizableHeaderCell from \"./ResizableHeaderCell\";\n\nconst ReorderableHeaderCell = ({ className, ...props }) => (\n <CellContent {...props} className={classNames(className, \"drag-handler\")} />\n);\n\nexport { CellContent, ResizableHeaderCell, ReorderableHeaderCell, HeaderCell };\n","import { isPresent, snakeToCamelCase, camelToSnakeCase } from \"neetocist\";\nimport { __, all, equals, filter, includes, pipe, pluck } from \"ramda\";\n\nimport {\n CellContent,\n HeaderCell,\n ReorderableHeaderCell,\n ResizableHeaderCell,\n} from \"./components/HeaderCell\";\nimport {\n COLUMN_FIXED_VALUES,\n SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT,\n SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT,\n TABLE_SORT_ORDERS,\n} from \"./constants\";\n\nconst convertLocationPathnameToId = () => {\n const pathname = decodeURIComponent(window.location.pathname).replace(\n /^\\//,\n \"\"\n );\n\n let hash = 0;\n for (let i = 0; i < pathname.length; i++) {\n const char = pathname.charCodeAt(i);\n hash = (hash << 5) - hash + char;\n hash = hash & hash; // Convert to 32-bit integer\n }\n\n return Math.abs(hash).toString(16).toUpperCase();\n};\n\nexport const getHeaderCell = ({ enableColumnResize, enableColumnReorder }) => {\n if (enableColumnReorder && enableColumnResize) return { cell: HeaderCell };\n\n if (enableColumnResize) return { cell: ResizableHeaderCell };\n\n if (enableColumnReorder) return { cell: ReorderableHeaderCell };\n\n return { cell: CellContent };\n};\n\nexport const isIncludedIn = (array1, array2) =>\n all(includes(__, array1), array2);\n\nexport const getSelectAllRowsCalloutHeight = () =>\n window.innerWidth < 768\n ? SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT\n : SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT;\n\nexport const sortFrozenColumns = columnData => {\n const originalIndices = new Map(\n columnData.map((col, index) => [col.dataIndex, index])\n );\n\n return (a, b) => {\n const aFixed = isPresent(a.fixed);\n const bFixed = isPresent(b.fixed);\n const aIndex = originalIndices.get(a.dataIndex);\n const bIndex = originalIndices.get(b.dataIndex);\n\n if (aFixed !== bFixed) return aFixed ? -1 : 1;\n\n return aIndex - bIndex;\n };\n};\n\nexport const getFixedColumns = columnData =>\n pipe(\n filter(({ fixed }) => isPresent(fixed)),\n pluck(\"dataIndex\")\n )(columnData);\n\nexport const getColumnSortOrder = (col, sortedInfo) =>\n equals(sortedInfo.field, col.dataIndex) || equals(sortedInfo.field, col.key)\n ? sortedInfo.order\n : null;\n\nexport const getColumFixedValue = (col, frozenColumns) =>\n frozenColumns?.indexOf(col.dataIndex) !== -1\n ? COLUMN_FIXED_VALUES.LEFT\n : null;\n\nexport const getFrozenColumnsLocalStorageKey = localStorageKeyPrefix => {\n const prefix = isPresent(localStorageKeyPrefix)\n ? localStorageKeyPrefix\n : convertLocationPathnameToId();\n\n return `NEETOUI-${prefix}-FIXED_COLUMNS`;\n};\n\nexport const getSortInfoFromQueryParams = queryParams => {\n const sortedInfo = {};\n if (\n isPresent(queryParams.sort_by) &&\n isPresent(queryParams.order_by) &&\n isPresent(TABLE_SORT_ORDERS[queryParams.order_by])\n ) {\n sortedInfo.field = queryParams.sort_by.includes(\"+\")\n ? queryParams.sort_by.split(\"+\").map(snakeToCamelCase)\n : snakeToCamelCase(queryParams.sort_by);\n sortedInfo.order = TABLE_SORT_ORDERS[queryParams.order_by];\n }\n\n return sortedInfo;\n};\n\nexport const getSortField = field => {\n if (Array.isArray(field)) {\n return field.map(camelToSnakeCase).join(\"+\");\n }\n\n return camelToSnakeCase(field);\n};\n","import React, { useMemo } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { has } from \"ramda\";\n\nimport SortIcon from \"../components/SortIcon\";\nimport TitleWithInfoIcon from \"../components/TitleWithInfoIcon\";\nimport {\n getColumFixedValue,\n getColumnSortOrder,\n sortFrozenColumns,\n} from \"../utils\";\n\nconst useResizableColumns = ({\n columns,\n columnData,\n frozenColumns,\n setColumns,\n isEnabled,\n isAddEnabled,\n isColumnFreezeEnabled,\n onColumnAdd,\n onColumnUpdate,\n onColumnDelete,\n handleSort,\n sortedInfo,\n onColumnHide,\n onColumnFreeze,\n onMoreActionClick,\n tableOnChangeProps,\n}) => {\n const handleResize =\n index =>\n (_, { size }) => {\n const nextColumns = [...columns];\n nextColumns[index] = { ...nextColumns[index], width: size.width };\n setColumns(nextColumns);\n };\n\n const computedColumnsData = useMemo(\n () =>\n columns\n .map((col, index) => {\n const fixed = getColumFixedValue(col, frozenColumns);\n\n const modifiedColumn = {\n ...col,\n onHeaderCell: column => ({\n width: column.width,\n onResize: isEnabled ? handleResize(index) : noop,\n onResizeStop: () => (isEnabled ? onColumnUpdate(columns) : noop),\n isSortable: isPresent(col.sorter),\n onSort: handleSort,\n sortedInfo,\n onColumnHide,\n onColumnFreeze,\n onMoreActionClick,\n isColumnFreezeEnabled,\n isAddEnabled: isAddEnabled && !fixed,\n onAddColumn: positionOffset =>\n onColumnAdd(index + positionOffset),\n isFixedColumn: !!fixed,\n onColumnDelete,\n isHidable: col.isHidable,\n isDeletable: col.isDeletable,\n moreActions: col.moreActions,\n column: col,\n \"data-text-align\": column.align,\n }),\n sortIcon: SortIcon,\n sortOrder: getColumnSortOrder(col, sortedInfo),\n fixed,\n title: col.description\n ? props => (\n <TitleWithInfoIcon\n {...props}\n description={col.description}\n title={col.title}\n />\n )\n : col.title,\n };\n\n if (!has(\"ellipsis\", col)) modifiedColumn.ellipsis = true;\n\n return modifiedColumn;\n })\n .sort(sortFrozenColumns(columnData)),\n [\n columns,\n sortedInfo,\n tableOnChangeProps,\n onColumnFreeze,\n frozenColumns,\n columnData,\n ]\n );\n\n return { columns: computedColumnsData };\n};\n\nexport default useResizableColumns;\n","import { useCallback, useEffect } from \"react\";\n\nimport { append, equals, isEmpty, props, without } from \"ramda\";\n\nimport useLocalStorage from \"hooks/useLocalStorage\";\n\nimport useReorderColumns from \"./useReorderColumns\";\nimport useResizableColumns from \"./useResizableColumns\";\n\nimport { getFixedColumns, getFrozenColumnsLocalStorageKey } from \"../utils\";\n\nconst useColumns = ({\n columns,\n columnData,\n setColumns,\n isResizeEnabled,\n isReorderEnabled,\n isAddEnabled,\n isColumnFreezeEnabled,\n onColumnAdd,\n onColumnUpdate,\n onColumnDelete,\n rowSelection,\n sortedInfo,\n setSortedInfo,\n onColumnHide,\n onMoreActionClick,\n onTableChange,\n tableOnChangeProps,\n handleTableSortChange,\n isDefaultPageChangeHandler,\n localStorageKeyPrefix,\n}) => {\n const [frozenColumns, setFrozenColumns] = useLocalStorage(\n getFrozenColumnsLocalStorageKey(localStorageKeyPrefix)\n );\n\n const onColumnFreeze = useCallback(\n (isFixedColumn, { dataIndex }) => {\n const updatedColumns = isFixedColumn\n ? without([dataIndex], frozenColumns)\n : append(dataIndex, frozenColumns);\n\n setFrozenColumns(updatedColumns);\n },\n [frozenColumns, setFrozenColumns]\n );\n\n useEffect(() => {\n if (isEmpty(columnData) || frozenColumns) return;\n\n const fixedCols = getFixedColumns(columnData);\n setFrozenColumns(fixedCols);\n }, [columnData, setFrozenColumns]);\n\n const { dragProps } = useReorderColumns({\n isEnabled: isReorderEnabled,\n columns,\n setColumns,\n onColumnUpdate,\n rowSelection,\n });\n\n const handleSort = sorter => {\n let newSortedInfo = { ...sorter };\n if (\n equals(\n props([\"field\", \"order\"], newSortedInfo),\n props([\"field\", \"order\"], sortedInfo)\n )\n ) {\n newSortedInfo = {\n field: null,\n order: null,\n column: null,\n columnKey: null,\n };\n }\n setSortedInfo(newSortedInfo);\n onTableChange?.(\n tableOnChangeProps.current?.pagination || {},\n tableOnChangeProps.current?.filters || {},\n { ...newSortedInfo }\n );\n\n isDefaultPageChangeHandler &&\n handleTableSortChange(\n tableOnChangeProps.current?.pagination || {},\n newSortedInfo\n );\n };\n\n const { columns: computedColumnsData } = useResizableColumns({\n columns,\n columnData,\n frozenColumns,\n setColumns,\n isEnabled: isResizeEnabled,\n isAddEnabled,\n isColumnFreezeEnabled,\n onColumnAdd,\n onColumnUpdate,\n onColumnDelete,\n handleSort,\n sortedInfo,\n onColumnHide,\n onMoreActionClick,\n tableOnChangeProps,\n onColumnFreeze,\n });\n\n return { dragProps, columns: computedColumnsData };\n};\n\nexport default useColumns;\n","import { useEffect, useState } from \"react\";\n\nimport { mergeLeft } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useQueryParams } from \"hooks\";\nimport { buildUrl } from \"utils\";\n\nimport { URL_SORT_ORDERS } from \"../constants\";\nimport { getSortInfoFromQueryParams, getSortField } from \"../utils\";\n\nconst useTableSort = () => {\n const queryParams = useQueryParams();\n const [sortedInfo, setSortedInfo] = useState(() =>\n getSortInfoFromQueryParams(queryParams)\n );\n\n useEffect(() => {\n setSortedInfo(getSortInfoFromQueryParams(queryParams));\n }, [queryParams?.sort_by, queryParams?.order_by]);\n\n const history = useHistory();\n\n const handleTableChange = (pagination, sorter) => {\n const params = {\n sort_by: sorter.order ? getSortField(sorter.field) : undefined,\n order_by: URL_SORT_ORDERS[sorter.order],\n page: pagination.current,\n };\n\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, mergeLeft(params, queryParams)));\n };\n\n return { handleTableChange, sortedInfo, setSortedInfo };\n};\n\nexport default useTableSort;\n","import React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport { Table as AntTable, ConfigProvider } from \"antd\";\nimport classnames from \"classnames\";\nimport {\n dynamicArray,\n isNotEmpty,\n modifyBy,\n snakeToCamelCase,\n} from \"neetocist\";\nimport { Left, Right, MenuHorizontal } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { assoc, isEmpty, mergeLeft, pluck } from \"ramda\";\nimport ReactDragListView from \"react-drag-listview\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { ANTD_LOCALE } from \"components/constants\";\nimport { useQueryParams, useTimeout } from \"hooks\";\nimport { ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES, buildUrl, noop } from \"utils\";\n\nimport AllRowsSelectedCallout from \"./components/AllRowsSelectedCallout\";\nimport SelectAllRowsCallout from \"./components/SelectAllRowsCallout\";\nimport { TABLE_SORT_ORDERS } from \"./constants\";\nimport useColumns from \"./hooks/useColumns\";\nimport { useRestoreScrollPosition } from \"./hooks/useRestoreScrollPosition\";\nimport useTableSort from \"./hooks/useTableSort\";\nimport {\n getHeaderCell,\n isIncludedIn,\n getSelectAllRowsCalloutHeight,\n} from \"./utils\";\n\nimport Button from \"../Button\";\nimport Spinner from \"../Spinner\";\nimport Typography from \"../Typography\";\n\nconst TABLE_PAGINATION_HEIGHT = 64;\nconst TABLE_DEFAULT_HEADER_HEIGHT = 40;\nconst TABLE_ROW_HEIGHT = 52;\n\nconst Table = ({\n allowRowClick = true,\n enableColumnResize = true,\n enableColumnReorder = false,\n enableColumnFreeze = true,\n enableAddColumn = false,\n className = \"\",\n columnData = [],\n currentPageNumber = 1,\n defaultPageSize = 30,\n handlePageChange = noop,\n loading = false,\n onRowClick,\n onRowSelect,\n rowData = [],\n totalCount = 0,\n selectedRowKeys: initialSelectedRowKeys = [],\n fixedHeight = false,\n paginationProps = {},\n rowKey = \"id\",\n scroll,\n rowSelection,\n shouldDynamicallyRenderRowSize = false,\n bordered = true,\n onColumnUpdate = noop,\n components = {},\n onColumnHide,\n onColumnAdd = noop,\n onColumnDelete,\n onChange,\n onMoreActionClick,\n bulkSelectAllRowsProps,\n localStorageKeyPrefix,\n ...otherProps\n}) => {\n const { i18n } = useTranslation();\n const [containerHeight, setContainerHeight] = useState(null);\n const [headerHeight, setHeaderHeight] = useState(TABLE_DEFAULT_HEADER_HEIGHT);\n const [columns, setColumns] = useState(columnData);\n const [bulkSelectedAllRows, setBulkSelectedAllRows] = useState(false);\n const [columnChanges, setColumnChanges] = useState({});\n const {\n handleTableChange: handleTableSortChange,\n sortedInfo,\n setSortedInfo,\n } = useTableSort();\n\n const { setBulkSelectedAllRows: handleSetBulkSelectedAllRows } =\n bulkSelectAllRowsProps ?? {};\n\n const isDefaultPageChangeHandler = handlePageChange === noop;\n\n const history = useHistory();\n\n const headerRef = useRef();\n const tableOnChangeProps = useRef({});\n\n const resizeObserver = useRef(\n new ResizeObserver(([entry]) =>\n setContainerHeight(entry.contentRect.height)\n )\n );\n\n const scrollRef = useRef(null);\n const tableRef = useCallback(\n table => {\n scrollRef.current = table;\n\n if (!fixedHeight) return;\n\n const observer = resizeObserver.current;\n\n if (table !== null) {\n const targetNode = enableColumnReorder\n ? table?.parentNode?.parentNode\n : table?.parentNode;\n\n observer.observe(targetNode);\n } else if (observer) {\n observer.disconnect();\n }\n },\n [resizeObserver.current, fixedHeight, enableColumnReorder]\n );\n\n const { handleScroll } = useRestoreScrollPosition({\n tableRef,\n scrollRef,\n loading,\n });\n\n useTimeout(() => {\n const headerHeight = headerRef.current\n ? headerRef.current.offsetHeight\n : TABLE_DEFAULT_HEADER_HEIGHT;\n\n setHeaderHeight(headerHeight);\n }, 10);\n\n const handleColumnUpdateWithChanges = updatedColumns => {\n const newChanges = {};\n\n updatedColumns.forEach(col => {\n const originalCol = columnData.find(c => c.dataIndex === col.dataIndex);\n const changes = {};\n\n if (col.width && col.width !== originalCol?.width) {\n changes.width = col.width;\n }\n\n if (Object.keys(changes).length > 0) {\n newChanges[col.dataIndex] = changes;\n }\n });\n\n setColumnChanges(prev => ({ ...prev, ...newChanges }));\n onColumnUpdate(updatedColumns);\n };\n\n const { dragProps, columns: curatedColumnsData } = useColumns({\n isReorderEnabled: enableColumnReorder,\n isResizeEnabled: enableColumnResize,\n isAddEnabled: enableAddColumn,\n isColumnFreezeEnabled: enableColumnFreeze,\n onTableChange: onChange,\n columns,\n columnData,\n setColumns,\n onColumnUpdate: handleColumnUpdateWithChanges,\n rowSelection,\n sortedInfo,\n setSortedInfo,\n onColumnHide,\n onMoreActionClick,\n onColumnAdd,\n onColumnDelete,\n tableOnChangeProps,\n handleTableSortChange,\n isDefaultPageChangeHandler,\n localStorageKeyPrefix,\n });\n\n const queryParams = useQueryParams();\n\n const setSortFromURL = columnData =>\n modifyBy(\n { dataIndex: snakeToCamelCase(queryParams.sort_by ?? \"\") },\n assoc(\"sortOrder\", TABLE_SORT_ORDERS[queryParams.order_by]),\n columnData\n );\n\n const sortedColumns = isDefaultPageChangeHandler\n ? setSortFromURL(curatedColumnsData)\n : curatedColumnsData;\n\n const locale = { emptyText: <Typography style=\"body2\">No Data</Typography> };\n\n const selectedRowKeys = bulkSelectedAllRows\n ? pluck(rowKey, rowData)\n : initialSelectedRowKeys;\n\n const showBulkSelectionCallout = useMemo(\n () =>\n isIncludedIn(selectedRowKeys, pluck(rowKey, rowData)) &&\n selectedRowKeys.length !== totalCount &&\n !bulkSelectedAllRows,\n [selectedRowKeys, rowKey, rowData, totalCount, bulkSelectedAllRows]\n );\n\n const shouldShowSelectAllRowsCallout =\n bulkSelectAllRowsProps && showBulkSelectionCallout;\n\n const shouldShowAllRowsSelectedCallout =\n bulkSelectAllRowsProps && bulkSelectedAllRows;\n\n const handleRowChange = (selectedRowKeys, selectedRows) => {\n const tableWrapper = document.querySelector(\n '[data-testid=\"table-wrapper\"]'\n );\n\n if (selectedRowKeys.length !== defaultPageSize) {\n setBulkSelectedAllRows(false);\n handleSetBulkSelectedAllRows?.(false);\n tableWrapper?.classList.remove(\"neeto-ui-overflow-hidden\");\n } else {\n tableWrapper?.classList.add(\"neeto-ui-overflow-hidden\");\n }\n onRowSelect?.(selectedRowKeys, selectedRows);\n };\n\n const rowSelectionProps = rowSelection\n ? {\n type: \"checkbox\",\n preserveSelectedRowKeys: true,\n ...rowSelection,\n onChange: handleRowChange,\n selectedRowKeys,\n }\n : false;\n\n // eslint-disable-next-line @bigbinary/neeto/no-excess-function-arguments\n const handleTableChange = (pagination, filters, sorter, extras) => {\n setSortedInfo(sorter);\n isDefaultPageChangeHandler && handleTableSortChange(pagination, sorter);\n onChange?.(pagination, filters, sorter, extras);\n tableOnChangeProps.current = { pagination, filters };\n };\n\n const componentOverrides = {\n ...components,\n header: getHeaderCell({\n enableColumnResize,\n enableColumnReorder,\n }),\n };\n\n const calculateRowsPerPage = () => {\n const viewportHeight = window.innerHeight;\n const rowsPerPage = Math.floor(\n ((viewportHeight - TABLE_PAGINATION_HEIGHT) / TABLE_ROW_HEIGHT) * 3\n );\n\n return Math.ceil(rowsPerPage / 10) * 10;\n };\n\n const pageSize = shouldDynamicallyRenderRowSize\n ? calculateRowsPerPage()\n : paginationProps.pageSize || defaultPageSize;\n\n const calculateTableContainerHeight = () => {\n const isPaginationVisible =\n otherProps.pagination !== false && rowData.length > pageSize;\n\n let selectAllRowsCalloutHeight = 0;\n if (shouldShowSelectAllRowsCallout || shouldShowAllRowsSelectedCallout) {\n selectAllRowsCalloutHeight = getSelectAllRowsCalloutHeight();\n }\n\n return (\n containerHeight -\n headerHeight -\n (isPaginationVisible ? TABLE_PAGINATION_HEIGHT : 0) -\n selectAllRowsCalloutHeight\n );\n };\n\n const calculatePageSizeOptions = () =>\n dynamicArray(5, index => (index + 1) * pageSize);\n\n const itemRender = (_, type, originalElement) => {\n const commonProps = { size: \"small\", style: \"text\" };\n\n if (type === \"prev\") return <Button icon={Left} {...commonProps} />;\n\n if (type === \"next\") return <Button icon={Right} {...commonProps} />;\n\n if (type === \"jump-prev\" || type === \"jump-next\") {\n return <Button icon={MenuHorizontal} {...commonProps} />;\n }\n\n return originalElement;\n };\n\n useEffect(() => {\n if (isNotEmpty(initialSelectedRowKeys)) return;\n\n setBulkSelectedAllRows(false);\n handleSetBulkSelectedAllRows?.(false);\n }, [handleSetBulkSelectedAllRows, initialSelectedRowKeys]);\n\n useEffect(() => {\n const shouldNavigateToLastPage =\n isEmpty(rowData) && !loading && currentPageNumber !== 1;\n\n if (!shouldNavigateToLastPage) return;\n\n const lastPage = Math.ceil(totalCount / pageSize);\n const page = Math.max(1, lastPage);\n const pathname = window.location.pathname;\n\n isDefaultPageChangeHandler\n ? history.push(buildUrl(pathname, mergeLeft({ page }, queryParams)))\n : handlePageChange(page, pageSize);\n }, [rowData]);\n\n useEffect(() => {\n const mergedColumns = columnData.map(col => ({\n ...col,\n ...columnChanges[col.dataIndex], // Apply any column changes\n }));\n setColumns(mergedColumns);\n }, [columnData, columnChanges]);\n\n const neetoUIFontBold = parseInt(\n getComputedStyle(document.documentElement).getPropertyValue(\n \"--neeto-ui-font-bold\"\n ),\n 10\n );\n\n const renderTable = () => (\n <ConfigProvider\n locale={ANTD_LOCALE[i18n.language || \"en\"]}\n theme={{\n token: { ...ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES },\n components: {\n Pagination: {\n itemActiveBg: \"rgb(var(--neeto-ui-primary-500))\",\n itemActiveBgDisabled: \"rgb(var(--neeto-ui-gray-50))\",\n itemActiveColorDisabled: \"rgb(var(--neeto-ui-gray-300))\",\n itemBg: \"rgb(var(--neeto-ui-white))\",\n itemInputBg: \"rgb(var(--neeto-ui-white))\",\n itemLinkBg: \"rgb(var(--neeto-ui-white))\",\n\n // Global overrides\n colorBgContainer: \"rgb(var(--neeto-ui-primary-500))\",\n colorPrimary: \"rgb(var(--neeto-ui-white))\",\n colorPrimaryHover: \"rgb(var(--neeto-ui-white))\",\n colorBgTextHover: \"rgb(var(--neeto-ui-gray-200))\",\n borderRadius: 6,\n },\n Table: {\n headerBorderRadius: 0,\n bodySortBg: \"rgb(var(--neeto-ui-gray-50))\",\n borderColor: \"rgb(var(--neeto-ui-gray-200))\",\n expandIconBg: \"rgb(var(--neeto-ui-white))\",\n filterDropdownBg: \"rgb(var(--neeto-ui-white))\",\n filterDropdownMenuBg: \"rgb(var(--neeto-ui-white))\",\n fixedHeaderSortActiveBg: \"rgb(var(--neeto-ui-gray-200))\",\n footerBg: \"rgb(var(--neeto-ui-gray-100))\",\n footerColor: \"rgb(var(--neeto-ui-black))\",\n headerBg: \"rgb(var(--neeto-ui-gray-100))\",\n headerColor: \"rgb(var(--neeto-ui-black))\",\n headerFilterHoverBg: \"rgb(var(--neeto-ui-gray-100))\",\n headerSortActiveBg: \"rgb(var(--neeto-ui-gray-200))\",\n headerSortHoverBg: \"rgb(var(--neeto-ui-gray-200))\",\n headerSplitColor: \"rgb(var(--neeto-ui-gray-100))\",\n rowExpandedBg: \"rgb(var(--neeto-ui-gray-100))\",\n rowHoverBg: \"rgb(var(--neeto-ui-gray-50))\",\n rowSelectedBg: \"rgb(var(--neeto-ui-accent-50))\",\n rowSelectedHoverBg: \"rgb(var(--neeto-ui-accent-50))\",\n stickyScrollBarBg: \"rgb(var(--neeto-ui-gray-300))\",\n cellPaddingBlock: 11,\n\n // Global overrides\n colorPrimary: \"rgb(var(--neeto-ui-primary-500))\",\n fontSize: 14,\n fontWeightStrong: neetoUIFontBold,\n paddingContentVerticalLG: 11,\n },\n },\n }}\n >\n {shouldShowSelectAllRowsCallout && (\n <SelectAllRowsCallout\n {...bulkSelectAllRowsProps}\n onBulkSelectAllRows={() => {\n setBulkSelectedAllRows(true);\n handleSetBulkSelectedAllRows?.(true);\n }}\n />\n )}\n {shouldShowAllRowsSelectedCallout && (\n <AllRowsSelectedCallout\n {...bulkSelectAllRowsProps}\n onClearSelection={() => {\n setBulkSelectedAllRows(false);\n handleSetBulkSelectedAllRows?.(false);\n handleRowChange([], []);\n }}\n />\n )}\n <AntTable\n {...{ bordered, locale, rowKey }}\n columns={sortedColumns}\n components={componentOverrides}\n dataSource={rowData}\n loading={{ spinning: loading, indicator: <Spinner /> }}\n ref={tableRef}\n rowSelection={rowSelectionProps}\n showSorterTooltip={false}\n pagination={{\n hideOnSinglePage: true,\n ...paginationProps,\n showSizeChanger: false,\n total: totalCount ?? 0,\n current: currentPageNumber,\n defaultPageSize: pageSize,\n pageSizeOptions: calculatePageSizeOptions(),\n onChange: handlePageChange,\n itemRender,\n }}\n rowClassName={classnames(\n \"neeto-ui-table--row\",\n { \"neeto-ui-table--row_hover\": allowRowClick },\n [className]\n )}\n scroll={{\n x: \"max-content\",\n y: calculateTableContainerHeight(),\n ...scroll,\n }}\n onChange={handleTableChange}\n onScroll={handleScroll}\n onHeaderRow={() => ({\n ref: headerRef,\n className: classnames(\"neeto-ui-table__header\", {\n \"neeto-ui-table-reorderable\": enableColumnReorder,\n }),\n id: \"neeto-ui-table__header\",\n })}\n onRow={(record, rowIndex) => ({\n onClick: event =>\n allowRowClick && onRowClick && onRowClick(event, record, rowIndex),\n })}\n {...otherProps}\n />\n </ConfigProvider>\n );\n\n return enableColumnReorder ? (\n <ReactDragListView.DragColumn {...dragProps}>\n {renderTable()}\n </ReactDragListView.DragColumn>\n ) : (\n renderTable()\n );\n};\n\nTable.propTypes = {\n /**\n * Enables row click event. Accepts boolean values.\n */\n allowRowClick: PropTypes.bool,\n /**\n * Dynamically renders the number of rows based on the viewport height.\n */\n shouldDynamicallyRenderRowSize: PropTypes.bool,\n /**\n * Custom classnames for each row.\n */\n className: PropTypes.string,\n /**\n * To make the Table fixed height.\n */\n fixedHeight: PropTypes.bool,\n /**\n * Columns of the Table. Accepts an array of [column definitions](#column_data).\n */\n columnData: PropTypes.array.isRequired,\n /**\n * Active page number.\n */\n currentPageNumber: PropTypes.number,\n /**\n * Sets the number of rows in a page.\n */\n defaultPageSize: PropTypes.number,\n /**\n * Handles page change events. Accepts a callback with `page` and `pageSize` as parameters. If not provided, component will handle page query parameters.\n *\n * `handlePageChange={(page, pageSize) => {}}`\n */\n handlePageChange: PropTypes.func,\n /**\n * Show loading state in Table.\n */\n loading: PropTypes.bool,\n /**\n * Handles click event on each row. Accepts a callback with `event`, `record`, and `index` as parameters.\n *\n * `onRowClick={(event, record, rowIndex) => {}}`\n */\n onRowClick: PropTypes.func,\n /**\n * Handles select event on each row. Accepts a callback with `selectedRowKeys` and `selectedRows` as parameters.\n * Make sure to pass `id` in `rowData` for this to work.\n * `onRowSelect={(selectedRowKeys, selectedRows) => {}}`\n */\n onRowSelect: PropTypes.func,\n /**\n * Keys of the rows that are selected.\n */\n selectedRowKeys: PropTypes.array,\n /**\n * Additional props for pagination. Refer [pagination docs](https://ant.design/components/pagination/#API) from AntD Table.\n */\n paginationProps: PropTypes.object,\n /**\n * Data for rows to be displayed. Accepts an array of JavaScript Objects.\n */\n rowData: PropTypes.array.isRequired,\n /**\n * Total number of data items.\n */\n totalCount: PropTypes.number,\n /**\n * Enables resizing of columns. Accepts boolean values.\n */\n enableColumnResize: PropTypes.bool,\n /**\n * Enables reordering of columns. Accepts boolean values.\n */\n enableColumnReorder: PropTypes.bool,\n /**\n * Enables adding of columns to the left or right of the current column. Accepts boolean values.\n */\n enableAddColumn: PropTypes.bool,\n /**\n * Handles column update events. Accepts a callback with `columns` as parameters.\n *\n * `onColumnUpdate={(columns) => {}}`\n */\n onColumnUpdate: PropTypes.func,\n /**\n * Function that gets called when a new column is added. Gets called with the 'position' to add the new column to as parameter.\n *\n * `onColumnAdd={(position) => {}}`\n */\n onColumnAdd: PropTypes.func,\n /**\n * Function that gets called when a custom field column is deleted. Gets called with the 'id' of the column getting deleted as parameter.\n *\n * `onColumnDelete={(key) => {}}`\n */\n onColumnDelete: PropTypes.func,\n /**\n * Function that gets called when a more action item in header is clicked.\n *\n * `onMoreActionClick={(type, column) => {}}`\n */\n onMoreActionClick: PropTypes.func,\n /**\n * Additional props for row selection. Refer [row selection docs](https://ant.design/components/table/#rowSelection) from AntD Table\n * Make sure to pass `id` in `rowData` for this to work.\n */\n rowSelection: PropTypes.oneOfType([PropTypes.bool, PropTypes.object]),\n /**\n * Props for adding `Select all rows` option for multi-page table.\n */\n bulkSelectAllRowsProps: PropTypes.shape({\n selectAllRowMessage: PropTypes.string.isRequired,\n selectAllRowButtonLabel: PropTypes.string.isRequired,\n setBulkSelectedAllRows: PropTypes.func.isRequired,\n allRowsSelectedMessage: PropTypes.string,\n clearSelectionButtonLabel: PropTypes.string,\n }),\n /**\n * String to set as the prefix of the local storage key where the data is persisted, eg: fixed columns.\n */\n localStorageKeyPrefix: PropTypes.string,\n};\n\nexport default Table;\n"],"names":["useTimeout","callback","delay","savedCallback","useRef","useEffect","current","id","setTimeout","clearTimeout","AllRowsSelectedCallout","_ref","calloutProps","onClearSelection","allRowsSelectedMessage","clearSelectionButtonLabel","_useTranslation","useTranslation","t","i18n","React","createElement","Callout","_extends","className","Typography","style","getLocale","Button","label","onClick","SelectAllRowsCallout","onBulkSelectAllRows","selectAllRowButtonLabel","selectAllRowMessage","useLocalStorage","key","defaultValue","_useState","useState","getFromLocalStorage","_useState2","_slicedToArray","storedValue","setStoredValue","setValue","value","prevStoredValue","newValue","isNil","removeFromLocalStorage","setToLocalStorage","useReorderColumns","isEnabled","columns","setColumns","onColumnUpdate","rowSelection","dragProps","isColumnFixed","column","fixed","onDragEnd","fromIndex","toIndex","from","to","newColumns","move","nodeSelector","handleSelector","ignoreSelector","SortIcon","sortOrder","TABLE_SORT_ORDERS","asc","URL_SORT_ORDERS","ascend","UpArrow","size","desc","descend","DownArrow","TitleWithInfoIcon","title","description","rest","_objectWithoutProperties","_excluded","popoverRef","Fragment","ref","InfoRound","color","Popover","appendTo","document","body","position","reference","lineHeight","CellContent","children","isSortable","isAddEnabled","sortedInfo","onSort","_ref$isHidable","isHidable","_ref$isDeletable","isDeletable","isFixedColumn","isColumnFreezeEnabled","onColumnHide","onAddColumn","onColumnDelete","onColumnFreeze","onMoreActionClick","_ref$moreActions","moreActions","headerProps","isColumnHidable","isPresent","isColumnDeletable","hasMoreActions","isEmpty","hasMoreMenu","noop","concat","hyphenize","HeaderCellMenu","HeaderCell","props","onResize","width","onResizeStop","restProps","classNames","Resizable","draggableOpts","enableUserSelectHack","height","handle","e","stopPropagation","onResizeStart","preventDefault","ResizableHeaderCell","isResizing","setIsResizing","_defineProperty","classnames","data","ReorderableHeaderCell","convertLocationPathnameToId","pathname","decodeURIComponent","window","location","replace","hash","i","length","char","charCodeAt","Math","abs","toString","toUpperCase","getHeaderCell","enableColumnResize","enableColumnReorder","cell","isIncludedIn","array1","array2","all","includes","__","getSelectAllRowsCalloutHeight","innerWidth","SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT","SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT","sortFrozenColumns","columnData","originalIndices","Map","map","col","index","dataIndex","a","b","aFixed","bFixed","aIndex","get","bIndex","getFixedColumns","pipe","filter","_ref2","pluck","getColumnSortOrder","equals","field","order","getColumFixedValue","frozenColumns","indexOf","COLUMN_FIXED_VALUES","LEFT","getFrozenColumnsLocalStorageKey","localStorageKeyPrefix","prefix","getSortInfoFromQueryParams","queryParams","sort_by","order_by","split","snakeToCamelCase","getSortField","Array","isArray","camelToSnakeCase","join","useResizableColumns","onColumnAdd","handleSort","tableOnChangeProps","handleResize","_","nextColumns","_toConsumableArray","_objectSpread","computedColumnsData","useMemo","modifiedColumn","onHeaderCell","sorter","positionOffset","align","sortIcon","has","ellipsis","sort","useColumns","isResizeEnabled","isReorderEnabled","setSortedInfo","onTableChange","handleTableSortChange","isDefaultPageChangeHandler","_useLocalStorage","_useLocalStorage2","setFrozenColumns","useCallback","updatedColumns","without","append","fixedCols","_useReorderColumns","_tableOnChangeProps$c","_tableOnChangeProps$c2","_tableOnChangeProps$c3","newSortedInfo","columnKey","pagination","filters","_useResizableColumns","useTableSort","useQueryParams","history","useHistory","handleTableChange","params","undefined","page","push","buildUrl","mergeLeft","TABLE_PAGINATION_HEIGHT","TABLE_DEFAULT_HEADER_HEIGHT","TABLE_ROW_HEIGHT","Table","_ref$allowRowClick","allowRowClick","_ref$enableColumnResi","_ref$enableColumnReor","_ref$enableColumnFree","enableColumnFreeze","_ref$enableAddColumn","enableAddColumn","_ref$className","_ref$columnData","_ref$currentPageNumbe","currentPageNumber","_ref$defaultPageSize","defaultPageSize","_ref$handlePageChange","handlePageChange","_ref$loading","loading","onRowClick","onRowSelect","_ref$rowData","rowData","_ref$totalCount","totalCount","_ref$selectedRowKeys","selectedRowKeys","initialSelectedRowKeys","_ref$fixedHeight","fixedHeight","_ref$paginationProps","paginationProps","_ref$rowKey","rowKey","scroll","_ref$shouldDynamicall","shouldDynamicallyRenderRowSize","_ref$bordered","bordered","_ref$onColumnUpdate","_ref$components","components","_ref$onColumnAdd","onChange","bulkSelectAllRowsProps","otherProps","containerHeight","setContainerHeight","_useState3","_useState4","headerHeight","setHeaderHeight","_useState5","_useState6","_useState7","_useState8","bulkSelectedAllRows","setBulkSelectedAllRows","_useState9","_useState10","columnChanges","setColumnChanges","_useTableSort","handleSetBulkSelectedAllRows","headerRef","resizeObserver","ResizeObserver","_ref3","_ref4","entry","contentRect","scrollRef","tableRef","table","observer","_table$parentNode","targetNode","parentNode","observe","disconnect","_useRestoreScrollPosi","useRestoreScrollPosition","handleScroll","offsetHeight","handleColumnUpdateWithChanges","newChanges","forEach","originalCol","find","c","changes","Object","keys","prev","_useColumns","curatedColumnsData","setSortFromURL","_queryParams$sort_by","modifyBy","assoc","sortedColumns","locale","emptyText","showBulkSelectionCallout","shouldShowSelectAllRowsCallout","shouldShowAllRowsSelectedCallout","handleRowChange","selectedRows","tableWrapper","querySelector","classList","remove","add","rowSelectionProps","type","preserveSelectedRowKeys","extras","componentOverrides","header","calculateRowsPerPage","viewportHeight","innerHeight","rowsPerPage","floor","ceil","pageSize","calculateTableContainerHeight","isPaginationVisible","selectAllRowsCalloutHeight","calculatePageSizeOptions","dynamicArray","itemRender","originalElement","commonProps","icon","Left","Right","MenuHorizontal","isNotEmpty","shouldNavigateToLastPage","lastPage","max","mergedColumns","neetoUIFontBold","parseInt","getComputedStyle","documentElement","getPropertyValue","renderTable","_ConfigProvider","ANTD_LOCALE","language","theme","token","ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES","Pagination","itemActiveBg","itemActiveBgDisabled","itemActiveColorDisabled","itemBg","itemInputBg","itemLinkBg","colorBgContainer","colorPrimary","colorPrimaryHover","colorBgTextHover","borderRadius","headerBorderRadius","bodySortBg","borderColor","expandIconBg","filterDropdownBg","filterDropdownMenuBg","fixedHeaderSortActiveBg","footerBg","footerColor","headerBg","headerColor","headerFilterHoverBg","headerSortActiveBg","headerSortHoverBg","headerSplitColor","rowExpandedBg","rowHoverBg","rowSelectedBg","rowSelectedHoverBg","stickyScrollBarBg","cellPaddingBlock","fontSize","fontWeightStrong","paddingContentVerticalLG","_Table","dataSource","spinning","indicator","Spinner","showSorterTooltip","hideOnSinglePage","showSizeChanger","total","pageSizeOptions","rowClassName","x","y","onScroll","onHeaderRow","onRow","record","rowIndex","event","ReactDragListView","DragColumn"],"mappings":"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"}
package/dist/cjs/Table.js CHANGED
@@ -698,6 +698,10 @@ var Table = function Table(_ref) {
698
698
  _useState8 = _slicedToArray(_useState7, 2),
699
699
  bulkSelectedAllRows = _useState8[0],
700
700
  setBulkSelectedAllRows = _useState8[1];
701
+ var _useState9 = React.useState({}),
702
+ _useState10 = _slicedToArray(_useState9, 2),
703
+ columnChanges = _useState10[0],
704
+ setColumnChanges = _useState10[1];
701
705
  var _useTableSort = useTableSort(),
702
706
  handleTableSortChange = _useTableSort.handleTableChange,
703
707
  sortedInfo = _useTableSort.sortedInfo,
@@ -736,6 +740,25 @@ var Table = function Table(_ref) {
736
740
  var headerHeight = headerRef.current ? headerRef.current.offsetHeight : TABLE_DEFAULT_HEADER_HEIGHT;
737
741
  setHeaderHeight(headerHeight);
738
742
  }, 10);
743
+ var handleColumnUpdateWithChanges = function handleColumnUpdateWithChanges(updatedColumns) {
744
+ var newChanges = {};
745
+ updatedColumns.forEach(function (col) {
746
+ var originalCol = columnData.find(function (c) {
747
+ return c.dataIndex === col.dataIndex;
748
+ });
749
+ var changes = {};
750
+ if (col.width && col.width !== (originalCol === null || originalCol === void 0 ? void 0 : originalCol.width)) {
751
+ changes.width = col.width;
752
+ }
753
+ if (Object.keys(changes).length > 0) {
754
+ newChanges[col.dataIndex] = changes;
755
+ }
756
+ });
757
+ setColumnChanges(function (prev) {
758
+ return _objectSpread(_objectSpread({}, prev), newChanges);
759
+ });
760
+ onColumnUpdate(updatedColumns);
761
+ };
739
762
  var _useColumns = useColumns({
740
763
  isReorderEnabled: enableColumnReorder,
741
764
  isResizeEnabled: enableColumnResize,
@@ -745,7 +768,7 @@ var Table = function Table(_ref) {
745
768
  columns: columns,
746
769
  columnData: columnData,
747
770
  setColumns: setColumns,
748
- onColumnUpdate: onColumnUpdate,
771
+ onColumnUpdate: handleColumnUpdateWithChanges,
749
772
  rowSelection: rowSelection,
750
773
  sortedInfo: sortedInfo,
751
774
  setSortedInfo: setSortedInfo,
@@ -867,8 +890,11 @@ var Table = function Table(_ref) {
867
890
  }, queryParams))) : handlePageChange(page, pageSize);
868
891
  }, [rowData]);
869
892
  React.useEffect(function () {
870
- return setColumns(columnData);
871
- }, [columnData]);
893
+ var mergedColumns = columnData.map(function (col) {
894
+ return _objectSpread(_objectSpread({}, col), columnChanges[col.dataIndex]);
895
+ });
896
+ setColumns(mergedColumns);
897
+ }, [columnData, columnChanges]);
872
898
  var neetoUIFontBold = parseInt(getComputedStyle(document.documentElement).getPropertyValue("--neeto-ui-font-bold"), 10);
873
899
  var renderTable = function renderTable() {
874
900
  return /*#__PURE__*/React.createElement(_ConfigProvider, {
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","sources":["../../src/hooks/useTimeout.js","../../src/components/Table/components/AllRowsSelectedCallout.jsx","../../src/components/Table/components/SelectAllRowsCallout.jsx","../../src/hooks/useLocalStorage.js","../../src/components/Table/hooks/useReorderColumns.js","../../src/components/Table/components/SortIcon.jsx","../../src/components/Table/components/TitleWithInfoIcon.jsx","../../src/components/Table/components/HeaderCell/CellContent.jsx","../../src/components/Table/components/HeaderCell/HeaderCell.jsx","../../src/components/Table/components/HeaderCell/ResizableHeaderCell.jsx","../../src/components/Table/components/HeaderCell/index.jsx","../../src/components/Table/utils.js","../../src/components/Table/hooks/useResizableColumns.jsx","../../src/components/Table/hooks/useColumns.js","../../src/components/Table/hooks/useTableSort.js","../../src/components/Table/index.jsx"],"sourcesContent":["import { useEffect, useRef } from \"react\";\n\nconst useTimeout = (callback, delay) => {\n const savedCallback = useRef(callback);\n\n useEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n\n useEffect(() => {\n if (delay === null) {\n return undefined;\n }\n\n const id = setTimeout(() => savedCallback.current(), delay);\n\n return () => clearTimeout(id);\n }, [delay]);\n};\n\nexport default useTimeout;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { getLocale } from \"utils\";\n\nimport Button from \"../../Button\";\nimport Callout from \"../../Callout\";\nimport Typography from \"../../Typography\";\n\n// eslint-disable-next-line @bigbinary/neeto/no-dumb-components-with-use-translation\nconst AllRowsSelectedCallout = ({\n calloutProps,\n onClearSelection,\n allRowsSelectedMessage,\n clearSelectionButtonLabel,\n}) => {\n const { t, i18n } = useTranslation();\n\n return (\n <Callout\n className=\"my-2\"\n {...calloutProps}\n data-testid=\"clear-selections-callout\"\n >\n <div className=\"neeto-ui-flex neeto-ui-gap-3\">\n <Typography style=\"body2\">\n {allRowsSelectedMessage ||\n getLocale(i18n, t, \"neetoui.table.allRowsSelected\")}\n </Typography>\n <Button\n data-testid=\"clear-selections-button\"\n style=\"link\"\n label={\n clearSelectionButtonLabel ||\n getLocale(i18n, t, \"neetoui.table.clearSelection\")\n }\n onClick={onClearSelection}\n />\n </div>\n </Callout>\n );\n};\n\nexport default AllRowsSelectedCallout;\n","import React from \"react\";\n\nimport Button from \"../../Button\";\nimport Callout from \"../../Callout\";\nimport Typography from \"../../Typography\";\n\nconst SelectAllRowsCallout = ({\n calloutProps,\n onBulkSelectAllRows,\n selectAllRowButtonLabel,\n selectAllRowMessage,\n}) => (\n <Callout\n className=\"my-2\"\n {...calloutProps}\n data-testid=\"select-all-rows-callout\"\n >\n <div className=\"neeto-ui-flex neeto-ui-gap-3\">\n <Typography style=\"body2\">{selectAllRowMessage}</Typography>\n <Button\n data-testid=\"select-all-rows-button\"\n label={selectAllRowButtonLabel}\n style=\"link\"\n onClick={onBulkSelectAllRows}\n />\n </div>\n </Callout>\n);\n\nexport default SelectAllRowsCallout;\n","/* eslint-disable @bigbinary/neeto/no-local-storage */\n\nimport { useState } from \"react\";\n\nimport { isNil } from \"ramda\";\n\nimport {\n getFromLocalStorage,\n removeFromLocalStorage,\n setToLocalStorage,\n} from \"utils\";\n\nconst useLocalStorage = (key, defaultValue) => {\n const [storedValue, setStoredValue] = useState(() =>\n getFromLocalStorage(key, defaultValue)\n );\n\n const setValue = value =>\n setStoredValue(prevStoredValue => {\n const newValue =\n typeof value === \"function\" ? value(prevStoredValue) : value;\n\n if (isNil(newValue)) {\n removeFromLocalStorage(key);\n } else {\n setToLocalStorage(key, newValue);\n }\n\n return newValue;\n });\n\n return [storedValue, setValue];\n};\n\nexport default useLocalStorage;\n","import { move } from \"ramda\";\n\nconst useReorderColumns = ({\n isEnabled,\n columns,\n setColumns,\n onColumnUpdate,\n rowSelection,\n}) => {\n if (!isEnabled) return { dragProps: {}, columns };\n\n const isColumnFixed = column => !!column.fixed;\n\n const dragProps = {\n onDragEnd: (fromIndex, toIndex) => {\n let from = fromIndex;\n let to = toIndex;\n if (rowSelection) {\n from = fromIndex - 1;\n to = toIndex - 1;\n }\n\n if (!columns[from] || !columns[to]) return;\n\n if (isColumnFixed(columns[from]) || isColumnFixed(columns[to])) return;\n\n const newColumns = move(from, to, columns);\n setColumns(newColumns);\n onColumnUpdate(newColumns);\n },\n nodeSelector:\n \"th:not(.ant-table-cell-fix-left):not(.ant-table-cell-scrollbar)\",\n handleSelector: \".drag-handler\",\n ignoreSelector: \".react-resizable-handle\",\n };\n\n return { dragProps, columns };\n};\n\nexport default useReorderColumns;\n","import React from \"react\";\n\nimport { DownArrow, UpArrow } from \"neetoicons\";\n\nimport { TABLE_SORT_ORDERS, URL_SORT_ORDERS } from \"../constants\";\n\nconst SortIcon = ({ sortOrder }) => {\n if (\n sortOrder === TABLE_SORT_ORDERS.asc ||\n sortOrder === URL_SORT_ORDERS.ascend\n ) {\n return <UpArrow size={14} />;\n }\n\n if (\n sortOrder === TABLE_SORT_ORDERS.desc ||\n sortOrder === URL_SORT_ORDERS.descend\n ) {\n return <DownArrow size={14} />;\n }\n\n return null;\n};\n\nexport default SortIcon;\n","import React, { useRef } from \"react\";\n\nimport { InfoRound } from \"neetoicons\";\n\nimport Popover from \"components/Popover\";\nimport Typography from \"components/Typography\";\n\nconst TitleWithInfoIcon = ({ title, description, ...rest }) => {\n const popoverRef = useRef();\n\n return (\n <span className=\"relative pr-5\">\n {typeof title === \"function\" ? title(rest) : title}\n {description && (\n <>\n <span\n className=\"neeto-ui-table__column-title-info-icon\"\n ref={popoverRef}\n >\n <InfoRound color=\"currentColor\" size={14} />\n </span>\n <Popover\n appendTo={() => document.body}\n position=\"bottom\"\n reference={popoverRef}\n >\n <Typography lineHeight=\"normal\" style=\"body2\">\n {description}\n </Typography>\n </Popover>\n </>\n )}\n </span>\n );\n};\n\nexport default TitleWithInfoIcon;\n","import React from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\n\nimport { hyphenize } from \"utils\";\n\nimport HeaderCellMenu from \"./HeaderCellMenu\";\n\nconst CellContent = ({\n children,\n isSortable,\n isAddEnabled,\n sortedInfo,\n onSort,\n isHidable = true,\n isDeletable = false,\n isFixedColumn,\n isColumnFreezeEnabled,\n onColumnHide,\n onAddColumn,\n onColumnDelete,\n onColumnFreeze,\n onMoreActionClick,\n column,\n moreActions = [],\n ...headerProps\n}) => {\n const isColumnHidable = isHidable && isPresent(onColumnHide);\n const isColumnDeletable = isDeletable && isPresent(onColumnDelete);\n const hasMoreActions = !isEmpty(moreActions) && isPresent(onMoreActionClick);\n const hasMoreMenu =\n isSortable ||\n isColumnHidable ||\n isAddEnabled ||\n hasMoreActions ||\n (isPresent(column) && isColumnFreezeEnabled);\n\n return (\n <th\n {...headerProps}\n title=\"\"\n onClick={isSortable ? noop : headerProps.onClick}\n >\n <div\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-between\"\n data-cy={`${hyphenize(headerProps.title)}-header-title`}\n >\n <div className=\"neeto-ui-min-w-0 neeto-ui-flex-grow neeto-ui-truncate neeto-ui-table__column-title-content\">\n {children}\n </div>\n {hasMoreMenu && (\n <HeaderCellMenu\n {...{\n column,\n hasMoreActions,\n isAddEnabled,\n isColumnDeletable,\n isColumnFreezeEnabled,\n isFixedColumn,\n isSortable,\n moreActions,\n onAddColumn,\n onColumnDelete,\n onColumnFreeze,\n onColumnHide,\n onMoreActionClick,\n onSort,\n sortedInfo,\n }}\n isHidable={isColumnHidable}\n />\n )}\n </div>\n </th>\n );\n};\n\nexport default CellContent;\n","import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { Resizable } from \"react-resizable\";\n\nimport CellContent from \"./CellContent\";\n\nconst HeaderCell = props => {\n const { onResize, width, onResizeStop, className, ...restProps } = props;\n\n if (!width) {\n return (\n <CellContent\n {...restProps}\n className={classNames(className, \"drag-handler\")}\n />\n );\n }\n\n return (\n <Resizable\n {...{ onResize, onResizeStop, width }}\n draggableOpts={{ enableUserSelectHack: false }}\n height={0}\n handle={\n <span\n className=\"react-resizable-handle\"\n onClick={e => e.stopPropagation()}\n />\n }\n onResizeStart={e => {\n e.preventDefault();\n }}\n >\n <CellContent\n {...restProps}\n className={classNames(className, \"drag-handler\")}\n />\n </Resizable>\n );\n};\n\nexport default HeaderCell;\n","import React, { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Resizable } from \"react-resizable\";\n\nimport CellContent from \"./CellContent\";\n\nconst ResizableHeaderCell = props => {\n const { onResize, width, onResizeStop, onResizeStart, ...restProps } = props;\n const [isResizing, setIsResizing] = useState(false);\n\n if (!width) {\n return <CellContent {...restProps} />;\n }\n\n return (\n <Resizable\n {...{ onResize, onResizeStop, width }}\n draggableOpts={{ enableUserSelectHack: false }}\n height={0}\n handle={\n <span\n className={classnames(\"react-resizable-handle\", {\n \"react-resizable-handle--resizing\": isResizing,\n })}\n onClick={e => e.stopPropagation()}\n >\n <span className=\"neeto-ui-table-react-resizable-handle__inner\" />\n </span>\n }\n onResizeStart={(e, data) => {\n e.preventDefault();\n setIsResizing(true);\n onResizeStart?.(e, data);\n }}\n onResizeStop={(e, data) => {\n setIsResizing(false);\n onResizeStop?.(e, data);\n }}\n >\n <CellContent {...restProps} />\n </Resizable>\n );\n};\n\nexport default ResizableHeaderCell;\n","import React from \"react\";\n\nimport classNames from \"classnames\";\n\nimport CellContent from \"./CellContent\";\nimport HeaderCell from \"./HeaderCell\";\nimport ResizableHeaderCell from \"./ResizableHeaderCell\";\n\nconst ReorderableHeaderCell = ({ className, ...props }) => (\n <CellContent {...props} className={classNames(className, \"drag-handler\")} />\n);\n\nexport { CellContent, ResizableHeaderCell, ReorderableHeaderCell, HeaderCell };\n","import { isPresent, snakeToCamelCase, camelToSnakeCase } from \"neetocist\";\nimport { __, all, equals, filter, includes, pipe, pluck } from \"ramda\";\n\nimport {\n CellContent,\n HeaderCell,\n ReorderableHeaderCell,\n ResizableHeaderCell,\n} from \"./components/HeaderCell\";\nimport {\n COLUMN_FIXED_VALUES,\n SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT,\n SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT,\n TABLE_SORT_ORDERS,\n} from \"./constants\";\n\nconst convertLocationPathnameToId = () => {\n const pathname = decodeURIComponent(window.location.pathname).replace(\n /^\\//,\n \"\"\n );\n\n let hash = 0;\n for (let i = 0; i < pathname.length; i++) {\n const char = pathname.charCodeAt(i);\n hash = (hash << 5) - hash + char;\n hash = hash & hash; // Convert to 32-bit integer\n }\n\n return Math.abs(hash).toString(16).toUpperCase();\n};\n\nexport const getHeaderCell = ({ enableColumnResize, enableColumnReorder }) => {\n if (enableColumnReorder && enableColumnResize) return { cell: HeaderCell };\n\n if (enableColumnResize) return { cell: ResizableHeaderCell };\n\n if (enableColumnReorder) return { cell: ReorderableHeaderCell };\n\n return { cell: CellContent };\n};\n\nexport const isIncludedIn = (array1, array2) =>\n all(includes(__, array1), array2);\n\nexport const getSelectAllRowsCalloutHeight = () =>\n window.innerWidth < 768\n ? SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT\n : SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT;\n\nexport const sortFrozenColumns = columnData => {\n const originalIndices = new Map(\n columnData.map((col, index) => [col.dataIndex, index])\n );\n\n return (a, b) => {\n const aFixed = isPresent(a.fixed);\n const bFixed = isPresent(b.fixed);\n const aIndex = originalIndices.get(a.dataIndex);\n const bIndex = originalIndices.get(b.dataIndex);\n\n if (aFixed !== bFixed) return aFixed ? -1 : 1;\n\n return aIndex - bIndex;\n };\n};\n\nexport const getFixedColumns = columnData =>\n pipe(\n filter(({ fixed }) => isPresent(fixed)),\n pluck(\"dataIndex\")\n )(columnData);\n\nexport const getColumnSortOrder = (col, sortedInfo) =>\n equals(sortedInfo.field, col.dataIndex) || equals(sortedInfo.field, col.key)\n ? sortedInfo.order\n : null;\n\nexport const getColumFixedValue = (col, frozenColumns) =>\n frozenColumns?.indexOf(col.dataIndex) !== -1\n ? COLUMN_FIXED_VALUES.LEFT\n : null;\n\nexport const getFrozenColumnsLocalStorageKey = localStorageKeyPrefix => {\n const prefix = isPresent(localStorageKeyPrefix)\n ? localStorageKeyPrefix\n : convertLocationPathnameToId();\n\n return `NEETOUI-${prefix}-FIXED_COLUMNS`;\n};\n\nexport const getSortInfoFromQueryParams = queryParams => {\n const sortedInfo = {};\n if (\n isPresent(queryParams.sort_by) &&\n isPresent(queryParams.order_by) &&\n isPresent(TABLE_SORT_ORDERS[queryParams.order_by])\n ) {\n sortedInfo.field = queryParams.sort_by.includes(\"+\")\n ? queryParams.sort_by.split(\"+\").map(snakeToCamelCase)\n : snakeToCamelCase(queryParams.sort_by);\n sortedInfo.order = TABLE_SORT_ORDERS[queryParams.order_by];\n }\n\n return sortedInfo;\n};\n\nexport const getSortField = field => {\n if (Array.isArray(field)) {\n return field.map(camelToSnakeCase).join(\"+\");\n }\n\n return camelToSnakeCase(field);\n};\n","import React, { useMemo } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { has } from \"ramda\";\n\nimport SortIcon from \"../components/SortIcon\";\nimport TitleWithInfoIcon from \"../components/TitleWithInfoIcon\";\nimport {\n getColumFixedValue,\n getColumnSortOrder,\n sortFrozenColumns,\n} from \"../utils\";\n\nconst useResizableColumns = ({\n columns,\n columnData,\n frozenColumns,\n setColumns,\n isEnabled,\n isAddEnabled,\n isColumnFreezeEnabled,\n onColumnAdd,\n onColumnUpdate,\n onColumnDelete,\n handleSort,\n sortedInfo,\n onColumnHide,\n onColumnFreeze,\n onMoreActionClick,\n tableOnChangeProps,\n}) => {\n const handleResize =\n index =>\n (_, { size }) => {\n const nextColumns = [...columns];\n nextColumns[index] = { ...nextColumns[index], width: size.width };\n setColumns(nextColumns);\n };\n\n const computedColumnsData = useMemo(\n () =>\n columns\n .map((col, index) => {\n const fixed = getColumFixedValue(col, frozenColumns);\n\n const modifiedColumn = {\n ...col,\n onHeaderCell: column => ({\n width: column.width,\n onResize: isEnabled ? handleResize(index) : noop,\n onResizeStop: () => (isEnabled ? onColumnUpdate(columns) : noop),\n isSortable: isPresent(col.sorter),\n onSort: handleSort,\n sortedInfo,\n onColumnHide,\n onColumnFreeze,\n onMoreActionClick,\n isColumnFreezeEnabled,\n isAddEnabled: isAddEnabled && !fixed,\n onAddColumn: positionOffset =>\n onColumnAdd(index + positionOffset),\n isFixedColumn: !!fixed,\n onColumnDelete,\n isHidable: col.isHidable,\n isDeletable: col.isDeletable,\n moreActions: col.moreActions,\n column: col,\n \"data-text-align\": column.align,\n }),\n sortIcon: SortIcon,\n sortOrder: getColumnSortOrder(col, sortedInfo),\n fixed,\n title: col.description\n ? props => (\n <TitleWithInfoIcon\n {...props}\n description={col.description}\n title={col.title}\n />\n )\n : col.title,\n };\n\n if (!has(\"ellipsis\", col)) modifiedColumn.ellipsis = true;\n\n return modifiedColumn;\n })\n .sort(sortFrozenColumns(columnData)),\n [\n columns,\n sortedInfo,\n tableOnChangeProps,\n onColumnFreeze,\n frozenColumns,\n columnData,\n ]\n );\n\n return { columns: computedColumnsData };\n};\n\nexport default useResizableColumns;\n","import { useCallback, useEffect } from \"react\";\n\nimport { append, equals, isEmpty, props, without } from \"ramda\";\n\nimport useLocalStorage from \"hooks/useLocalStorage\";\n\nimport useReorderColumns from \"./useReorderColumns\";\nimport useResizableColumns from \"./useResizableColumns\";\n\nimport { getFixedColumns, getFrozenColumnsLocalStorageKey } from \"../utils\";\n\nconst useColumns = ({\n columns,\n columnData,\n setColumns,\n isResizeEnabled,\n isReorderEnabled,\n isAddEnabled,\n isColumnFreezeEnabled,\n onColumnAdd,\n onColumnUpdate,\n onColumnDelete,\n rowSelection,\n sortedInfo,\n setSortedInfo,\n onColumnHide,\n onMoreActionClick,\n onTableChange,\n tableOnChangeProps,\n handleTableSortChange,\n isDefaultPageChangeHandler,\n localStorageKeyPrefix,\n}) => {\n const [frozenColumns, setFrozenColumns] = useLocalStorage(\n getFrozenColumnsLocalStorageKey(localStorageKeyPrefix)\n );\n\n const onColumnFreeze = useCallback(\n (isFixedColumn, { dataIndex }) => {\n const updatedColumns = isFixedColumn\n ? without([dataIndex], frozenColumns)\n : append(dataIndex, frozenColumns);\n\n setFrozenColumns(updatedColumns);\n },\n [frozenColumns, setFrozenColumns]\n );\n\n useEffect(() => {\n if (isEmpty(columnData) || frozenColumns) return;\n\n const fixedCols = getFixedColumns(columnData);\n setFrozenColumns(fixedCols);\n }, [columnData, setFrozenColumns]);\n\n const { dragProps } = useReorderColumns({\n isEnabled: isReorderEnabled,\n columns,\n setColumns,\n onColumnUpdate,\n rowSelection,\n });\n\n const handleSort = sorter => {\n let newSortedInfo = { ...sorter };\n if (\n equals(\n props([\"field\", \"order\"], newSortedInfo),\n props([\"field\", \"order\"], sortedInfo)\n )\n ) {\n newSortedInfo = {\n field: null,\n order: null,\n column: null,\n columnKey: null,\n };\n }\n setSortedInfo(newSortedInfo);\n onTableChange?.(\n tableOnChangeProps.current?.pagination || {},\n tableOnChangeProps.current?.filters || {},\n { ...newSortedInfo }\n );\n\n isDefaultPageChangeHandler &&\n handleTableSortChange(\n tableOnChangeProps.current?.pagination || {},\n newSortedInfo\n );\n };\n\n const { columns: computedColumnsData } = useResizableColumns({\n columns,\n columnData,\n frozenColumns,\n setColumns,\n isEnabled: isResizeEnabled,\n isAddEnabled,\n isColumnFreezeEnabled,\n onColumnAdd,\n onColumnUpdate,\n onColumnDelete,\n handleSort,\n sortedInfo,\n onColumnHide,\n onMoreActionClick,\n tableOnChangeProps,\n onColumnFreeze,\n });\n\n return { dragProps, columns: computedColumnsData };\n};\n\nexport default useColumns;\n","import { useEffect, useState } from \"react\";\n\nimport { mergeLeft } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useQueryParams } from \"hooks\";\nimport { buildUrl } from \"utils\";\n\nimport { URL_SORT_ORDERS } from \"../constants\";\nimport { getSortInfoFromQueryParams, getSortField } from \"../utils\";\n\nconst useTableSort = () => {\n const queryParams = useQueryParams();\n const [sortedInfo, setSortedInfo] = useState(() =>\n getSortInfoFromQueryParams(queryParams)\n );\n\n useEffect(() => {\n setSortedInfo(getSortInfoFromQueryParams(queryParams));\n }, [queryParams?.sort_by, queryParams?.order_by]);\n\n const history = useHistory();\n\n const handleTableChange = (pagination, sorter) => {\n const params = {\n sort_by: sorter.order ? getSortField(sorter.field) : undefined,\n order_by: URL_SORT_ORDERS[sorter.order],\n page: pagination.current,\n };\n\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, mergeLeft(params, queryParams)));\n };\n\n return { handleTableChange, sortedInfo, setSortedInfo };\n};\n\nexport default useTableSort;\n","import React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport { Table as AntTable, ConfigProvider } from \"antd\";\nimport classnames from \"classnames\";\nimport {\n dynamicArray,\n isNotEmpty,\n modifyBy,\n snakeToCamelCase,\n} from \"neetocist\";\nimport { Left, Right, MenuHorizontal } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { assoc, isEmpty, mergeLeft, pluck } from \"ramda\";\nimport ReactDragListView from \"react-drag-listview\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { ANTD_LOCALE } from \"components/constants\";\nimport { useQueryParams, useTimeout } from \"hooks\";\nimport { ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES, buildUrl, noop } from \"utils\";\n\nimport AllRowsSelectedCallout from \"./components/AllRowsSelectedCallout\";\nimport SelectAllRowsCallout from \"./components/SelectAllRowsCallout\";\nimport { TABLE_SORT_ORDERS } from \"./constants\";\nimport useColumns from \"./hooks/useColumns\";\nimport { useRestoreScrollPosition } from \"./hooks/useRestoreScrollPosition\";\nimport useTableSort from \"./hooks/useTableSort\";\nimport {\n getHeaderCell,\n isIncludedIn,\n getSelectAllRowsCalloutHeight,\n} from \"./utils\";\n\nimport Button from \"../Button\";\nimport Spinner from \"../Spinner\";\nimport Typography from \"../Typography\";\n\nconst TABLE_PAGINATION_HEIGHT = 64;\nconst TABLE_DEFAULT_HEADER_HEIGHT = 40;\nconst TABLE_ROW_HEIGHT = 52;\n\nconst Table = ({\n allowRowClick = true,\n enableColumnResize = true,\n enableColumnReorder = false,\n enableColumnFreeze = true,\n enableAddColumn = false,\n className = \"\",\n columnData = [],\n currentPageNumber = 1,\n defaultPageSize = 30,\n handlePageChange = noop,\n loading = false,\n onRowClick,\n onRowSelect,\n rowData = [],\n totalCount = 0,\n selectedRowKeys: initialSelectedRowKeys = [],\n fixedHeight = false,\n paginationProps = {},\n rowKey = \"id\",\n scroll,\n rowSelection,\n shouldDynamicallyRenderRowSize = false,\n bordered = true,\n onColumnUpdate = noop,\n components = {},\n onColumnHide,\n onColumnAdd = noop,\n onColumnDelete,\n onChange,\n onMoreActionClick,\n bulkSelectAllRowsProps,\n localStorageKeyPrefix,\n ...otherProps\n}) => {\n const { i18n } = useTranslation();\n const [containerHeight, setContainerHeight] = useState(null);\n const [headerHeight, setHeaderHeight] = useState(TABLE_DEFAULT_HEADER_HEIGHT);\n const [columns, setColumns] = useState(columnData);\n const [bulkSelectedAllRows, setBulkSelectedAllRows] = useState(false);\n const {\n handleTableChange: handleTableSortChange,\n sortedInfo,\n setSortedInfo,\n } = useTableSort();\n\n const { setBulkSelectedAllRows: handleSetBulkSelectedAllRows } =\n bulkSelectAllRowsProps ?? {};\n\n const isDefaultPageChangeHandler = handlePageChange === noop;\n\n const history = useHistory();\n\n const headerRef = useRef();\n const tableOnChangeProps = useRef({});\n\n const resizeObserver = useRef(\n new ResizeObserver(([entry]) =>\n setContainerHeight(entry.contentRect.height)\n )\n );\n\n const scrollRef = useRef(null);\n const tableRef = useCallback(\n table => {\n scrollRef.current = table;\n\n if (!fixedHeight) return;\n\n const observer = resizeObserver.current;\n\n if (table !== null) {\n const targetNode = enableColumnReorder\n ? table?.parentNode?.parentNode\n : table?.parentNode;\n\n observer.observe(targetNode);\n } else if (observer) {\n observer.disconnect();\n }\n },\n [resizeObserver.current, fixedHeight, enableColumnReorder]\n );\n\n const { handleScroll } = useRestoreScrollPosition({\n tableRef,\n scrollRef,\n loading,\n });\n\n useTimeout(() => {\n const headerHeight = headerRef.current\n ? headerRef.current.offsetHeight\n : TABLE_DEFAULT_HEADER_HEIGHT;\n\n setHeaderHeight(headerHeight);\n }, 10);\n\n const { dragProps, columns: curatedColumnsData } = useColumns({\n isReorderEnabled: enableColumnReorder,\n isResizeEnabled: enableColumnResize,\n isAddEnabled: enableAddColumn,\n isColumnFreezeEnabled: enableColumnFreeze,\n onTableChange: onChange,\n columns,\n columnData,\n setColumns,\n onColumnUpdate,\n rowSelection,\n sortedInfo,\n setSortedInfo,\n onColumnHide,\n onMoreActionClick,\n onColumnAdd,\n onColumnDelete,\n tableOnChangeProps,\n handleTableSortChange,\n isDefaultPageChangeHandler,\n localStorageKeyPrefix,\n });\n\n const queryParams = useQueryParams();\n\n const setSortFromURL = columnData =>\n modifyBy(\n { dataIndex: snakeToCamelCase(queryParams.sort_by ?? \"\") },\n assoc(\"sortOrder\", TABLE_SORT_ORDERS[queryParams.order_by]),\n columnData\n );\n\n const sortedColumns = isDefaultPageChangeHandler\n ? setSortFromURL(curatedColumnsData)\n : curatedColumnsData;\n\n const locale = { emptyText: <Typography style=\"body2\">No Data</Typography> };\n\n const selectedRowKeys = bulkSelectedAllRows\n ? pluck(rowKey, rowData)\n : initialSelectedRowKeys;\n\n const showBulkSelectionCallout = useMemo(\n () =>\n isIncludedIn(selectedRowKeys, pluck(rowKey, rowData)) &&\n selectedRowKeys.length !== totalCount &&\n !bulkSelectedAllRows,\n [selectedRowKeys, rowKey, rowData, totalCount, bulkSelectedAllRows]\n );\n\n const shouldShowSelectAllRowsCallout =\n bulkSelectAllRowsProps && showBulkSelectionCallout;\n\n const shouldShowAllRowsSelectedCallout =\n bulkSelectAllRowsProps && bulkSelectedAllRows;\n\n const handleRowChange = (selectedRowKeys, selectedRows) => {\n const tableWrapper = document.querySelector(\n '[data-testid=\"table-wrapper\"]'\n );\n\n if (selectedRowKeys.length !== defaultPageSize) {\n setBulkSelectedAllRows(false);\n handleSetBulkSelectedAllRows?.(false);\n tableWrapper?.classList.remove(\"neeto-ui-overflow-hidden\");\n } else {\n tableWrapper?.classList.add(\"neeto-ui-overflow-hidden\");\n }\n onRowSelect?.(selectedRowKeys, selectedRows);\n };\n\n const rowSelectionProps = rowSelection\n ? {\n type: \"checkbox\",\n preserveSelectedRowKeys: true,\n ...rowSelection,\n onChange: handleRowChange,\n selectedRowKeys,\n }\n : false;\n\n // eslint-disable-next-line @bigbinary/neeto/no-excess-function-arguments\n const handleTableChange = (pagination, filters, sorter, extras) => {\n setSortedInfo(sorter);\n isDefaultPageChangeHandler && handleTableSortChange(pagination, sorter);\n onChange?.(pagination, filters, sorter, extras);\n tableOnChangeProps.current = { pagination, filters };\n };\n\n const componentOverrides = {\n ...components,\n header: getHeaderCell({\n enableColumnResize,\n enableColumnReorder,\n }),\n };\n\n const calculateRowsPerPage = () => {\n const viewportHeight = window.innerHeight;\n const rowsPerPage = Math.floor(\n ((viewportHeight - TABLE_PAGINATION_HEIGHT) / TABLE_ROW_HEIGHT) * 3\n );\n\n return Math.ceil(rowsPerPage / 10) * 10;\n };\n\n const pageSize = shouldDynamicallyRenderRowSize\n ? calculateRowsPerPage()\n : paginationProps.pageSize || defaultPageSize;\n\n const calculateTableContainerHeight = () => {\n const isPaginationVisible =\n otherProps.pagination !== false && rowData.length > pageSize;\n\n let selectAllRowsCalloutHeight = 0;\n if (shouldShowSelectAllRowsCallout || shouldShowAllRowsSelectedCallout) {\n selectAllRowsCalloutHeight = getSelectAllRowsCalloutHeight();\n }\n\n return (\n containerHeight -\n headerHeight -\n (isPaginationVisible ? TABLE_PAGINATION_HEIGHT : 0) -\n selectAllRowsCalloutHeight\n );\n };\n\n const calculatePageSizeOptions = () =>\n dynamicArray(5, index => (index + 1) * pageSize);\n\n const itemRender = (_, type, originalElement) => {\n const commonProps = { size: \"small\", style: \"text\" };\n\n if (type === \"prev\") return <Button icon={Left} {...commonProps} />;\n\n if (type === \"next\") return <Button icon={Right} {...commonProps} />;\n\n if (type === \"jump-prev\" || type === \"jump-next\") {\n return <Button icon={MenuHorizontal} {...commonProps} />;\n }\n\n return originalElement;\n };\n\n useEffect(() => {\n if (isNotEmpty(initialSelectedRowKeys)) return;\n\n setBulkSelectedAllRows(false);\n handleSetBulkSelectedAllRows?.(false);\n }, [handleSetBulkSelectedAllRows, initialSelectedRowKeys]);\n\n useEffect(() => {\n const shouldNavigateToLastPage =\n isEmpty(rowData) && !loading && currentPageNumber !== 1;\n\n if (!shouldNavigateToLastPage) return;\n\n const lastPage = Math.ceil(totalCount / pageSize);\n const page = Math.max(1, lastPage);\n const pathname = window.location.pathname;\n\n isDefaultPageChangeHandler\n ? history.push(buildUrl(pathname, mergeLeft({ page }, queryParams)))\n : handlePageChange(page, pageSize);\n }, [rowData]);\n\n useEffect(() => setColumns(columnData), [columnData]);\n\n const neetoUIFontBold = parseInt(\n getComputedStyle(document.documentElement).getPropertyValue(\n \"--neeto-ui-font-bold\"\n ),\n 10\n );\n\n const renderTable = () => (\n <ConfigProvider\n locale={ANTD_LOCALE[i18n.language || \"en\"]}\n theme={{\n token: { ...ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES },\n components: {\n Pagination: {\n itemActiveBg: \"rgb(var(--neeto-ui-primary-500))\",\n itemActiveBgDisabled: \"rgb(var(--neeto-ui-gray-50))\",\n itemActiveColorDisabled: \"rgb(var(--neeto-ui-gray-300))\",\n itemBg: \"rgb(var(--neeto-ui-white))\",\n itemInputBg: \"rgb(var(--neeto-ui-white))\",\n itemLinkBg: \"rgb(var(--neeto-ui-white))\",\n\n // Global overrides\n colorBgContainer: \"rgb(var(--neeto-ui-primary-500))\",\n colorPrimary: \"rgb(var(--neeto-ui-white))\",\n colorPrimaryHover: \"rgb(var(--neeto-ui-white))\",\n colorBgTextHover: \"rgb(var(--neeto-ui-gray-200))\",\n borderRadius: 6,\n },\n Table: {\n headerBorderRadius: 0,\n bodySortBg: \"rgb(var(--neeto-ui-gray-50))\",\n borderColor: \"rgb(var(--neeto-ui-gray-200))\",\n expandIconBg: \"rgb(var(--neeto-ui-white))\",\n filterDropdownBg: \"rgb(var(--neeto-ui-white))\",\n filterDropdownMenuBg: \"rgb(var(--neeto-ui-white))\",\n fixedHeaderSortActiveBg: \"rgb(var(--neeto-ui-gray-200))\",\n footerBg: \"rgb(var(--neeto-ui-gray-100))\",\n footerColor: \"rgb(var(--neeto-ui-black))\",\n headerBg: \"rgb(var(--neeto-ui-gray-100))\",\n headerColor: \"rgb(var(--neeto-ui-black))\",\n headerFilterHoverBg: \"rgb(var(--neeto-ui-gray-100))\",\n headerSortActiveBg: \"rgb(var(--neeto-ui-gray-200))\",\n headerSortHoverBg: \"rgb(var(--neeto-ui-gray-200))\",\n headerSplitColor: \"rgb(var(--neeto-ui-gray-100))\",\n rowExpandedBg: \"rgb(var(--neeto-ui-gray-100))\",\n rowHoverBg: \"rgb(var(--neeto-ui-gray-50))\",\n rowSelectedBg: \"rgb(var(--neeto-ui-accent-50))\",\n rowSelectedHoverBg: \"rgb(var(--neeto-ui-accent-50))\",\n stickyScrollBarBg: \"rgb(var(--neeto-ui-gray-300))\",\n cellPaddingBlock: 11,\n\n // Global overrides\n colorPrimary: \"rgb(var(--neeto-ui-primary-500))\",\n fontSize: 14,\n fontWeightStrong: neetoUIFontBold,\n paddingContentVerticalLG: 11,\n },\n },\n }}\n >\n {shouldShowSelectAllRowsCallout && (\n <SelectAllRowsCallout\n {...bulkSelectAllRowsProps}\n onBulkSelectAllRows={() => {\n setBulkSelectedAllRows(true);\n handleSetBulkSelectedAllRows?.(true);\n }}\n />\n )}\n {shouldShowAllRowsSelectedCallout && (\n <AllRowsSelectedCallout\n {...bulkSelectAllRowsProps}\n onClearSelection={() => {\n setBulkSelectedAllRows(false);\n handleSetBulkSelectedAllRows?.(false);\n handleRowChange([], []);\n }}\n />\n )}\n <AntTable\n {...{ bordered, locale, rowKey }}\n columns={sortedColumns}\n components={componentOverrides}\n dataSource={rowData}\n loading={{ spinning: loading, indicator: <Spinner /> }}\n ref={tableRef}\n rowSelection={rowSelectionProps}\n showSorterTooltip={false}\n pagination={{\n hideOnSinglePage: true,\n ...paginationProps,\n showSizeChanger: false,\n total: totalCount ?? 0,\n current: currentPageNumber,\n defaultPageSize: pageSize,\n pageSizeOptions: calculatePageSizeOptions(),\n onChange: handlePageChange,\n itemRender,\n }}\n rowClassName={classnames(\n \"neeto-ui-table--row\",\n { \"neeto-ui-table--row_hover\": allowRowClick },\n [className]\n )}\n scroll={{\n x: \"max-content\",\n y: calculateTableContainerHeight(),\n ...scroll,\n }}\n onChange={handleTableChange}\n onScroll={handleScroll}\n onHeaderRow={() => ({\n ref: headerRef,\n className: classnames(\"neeto-ui-table__header\", {\n \"neeto-ui-table-reorderable\": enableColumnReorder,\n }),\n id: \"neeto-ui-table__header\",\n })}\n onRow={(record, rowIndex) => ({\n onClick: event =>\n allowRowClick && onRowClick && onRowClick(event, record, rowIndex),\n })}\n {...otherProps}\n />\n </ConfigProvider>\n );\n\n return enableColumnReorder ? (\n <ReactDragListView.DragColumn {...dragProps}>\n {renderTable()}\n </ReactDragListView.DragColumn>\n ) : (\n renderTable()\n );\n};\n\nTable.propTypes = {\n /**\n * Enables row click event. Accepts boolean values.\n */\n allowRowClick: PropTypes.bool,\n /**\n * Dynamically renders the number of rows based on the viewport height.\n */\n shouldDynamicallyRenderRowSize: PropTypes.bool,\n /**\n * Custom classnames for each row.\n */\n className: PropTypes.string,\n /**\n * To make the Table fixed height.\n */\n fixedHeight: PropTypes.bool,\n /**\n * Columns of the Table. Accepts an array of [column definitions](#column_data).\n */\n columnData: PropTypes.array.isRequired,\n /**\n * Active page number.\n */\n currentPageNumber: PropTypes.number,\n /**\n * Sets the number of rows in a page.\n */\n defaultPageSize: PropTypes.number,\n /**\n * Handles page change events. Accepts a callback with `page` and `pageSize` as parameters. If not provided, component will handle page query parameters.\n *\n * `handlePageChange={(page, pageSize) => {}}`\n */\n handlePageChange: PropTypes.func,\n /**\n * Show loading state in Table.\n */\n loading: PropTypes.bool,\n /**\n * Handles click event on each row. Accepts a callback with `event`, `record`, and `index` as parameters.\n *\n * `onRowClick={(event, record, rowIndex) => {}}`\n */\n onRowClick: PropTypes.func,\n /**\n * Handles select event on each row. Accepts a callback with `selectedRowKeys` and `selectedRows` as parameters.\n * Make sure to pass `id` in `rowData` for this to work.\n * `onRowSelect={(selectedRowKeys, selectedRows) => {}}`\n */\n onRowSelect: PropTypes.func,\n /**\n * Keys of the rows that are selected.\n */\n selectedRowKeys: PropTypes.array,\n /**\n * Additional props for pagination. Refer [pagination docs](https://ant.design/components/pagination/#API) from AntD Table.\n */\n paginationProps: PropTypes.object,\n /**\n * Data for rows to be displayed. Accepts an array of JavaScript Objects.\n */\n rowData: PropTypes.array.isRequired,\n /**\n * Total number of data items.\n */\n totalCount: PropTypes.number,\n /**\n * Enables resizing of columns. Accepts boolean values.\n */\n enableColumnResize: PropTypes.bool,\n /**\n * Enables reordering of columns. Accepts boolean values.\n */\n enableColumnReorder: PropTypes.bool,\n /**\n * Enables adding of columns to the left or right of the current column. Accepts boolean values.\n */\n enableAddColumn: PropTypes.bool,\n /**\n * Handles column update events. Accepts a callback with `columns` as parameters.\n *\n * `onColumnUpdate={(columns) => {}}`\n */\n onColumnUpdate: PropTypes.func,\n /**\n * Function that gets called when a new column is added. Gets called with the 'position' to add the new column to as parameter.\n *\n * `onColumnAdd={(position) => {}}`\n */\n onColumnAdd: PropTypes.func,\n /**\n * Function that gets called when a custom field column is deleted. Gets called with the 'id' of the column getting deleted as parameter.\n *\n * `onColumnDelete={(key) => {}}`\n */\n onColumnDelete: PropTypes.func,\n /**\n * Function that gets called when a more action item in header is clicked.\n *\n * `onMoreActionClick={(type, column) => {}}`\n */\n onMoreActionClick: PropTypes.func,\n /**\n * Additional props for row selection. Refer [row selection docs](https://ant.design/components/table/#rowSelection) from AntD Table\n * Make sure to pass `id` in `rowData` for this to work.\n */\n rowSelection: PropTypes.oneOfType([PropTypes.bool, PropTypes.object]),\n /**\n * Props for adding `Select all rows` option for multi-page table.\n */\n bulkSelectAllRowsProps: PropTypes.shape({\n selectAllRowMessage: PropTypes.string.isRequired,\n selectAllRowButtonLabel: PropTypes.string.isRequired,\n setBulkSelectedAllRows: PropTypes.func.isRequired,\n allRowsSelectedMessage: PropTypes.string,\n clearSelectionButtonLabel: PropTypes.string,\n }),\n /**\n * String to set as the prefix of the local storage key where the data is persisted, eg: fixed columns.\n */\n localStorageKeyPrefix: PropTypes.string,\n};\n\nexport default Table;\n"],"names":["useTimeout","callback","delay","savedCallback","useRef","useEffect","current","id","setTimeout","clearTimeout","AllRowsSelectedCallout","_ref","calloutProps","onClearSelection","allRowsSelectedMessage","clearSelectionButtonLabel","_useTranslation","useTranslation","t","i18n","React","createElement","Callout","_extends","className","Typography","style","getLocale","Button","label","onClick","SelectAllRowsCallout","onBulkSelectAllRows","selectAllRowButtonLabel","selectAllRowMessage","useLocalStorage","key","defaultValue","_useState","useState","getFromLocalStorage","_useState2","_slicedToArray","storedValue","setStoredValue","setValue","value","prevStoredValue","newValue","isNil","removeFromLocalStorage","setToLocalStorage","useReorderColumns","isEnabled","columns","setColumns","onColumnUpdate","rowSelection","dragProps","isColumnFixed","column","fixed","onDragEnd","fromIndex","toIndex","from","to","newColumns","move","nodeSelector","handleSelector","ignoreSelector","SortIcon","sortOrder","TABLE_SORT_ORDERS","asc","URL_SORT_ORDERS","ascend","UpArrow","size","desc","descend","DownArrow","TitleWithInfoIcon","title","description","rest","_objectWithoutProperties","_excluded","popoverRef","Fragment","ref","InfoRound","color","Popover","appendTo","document","body","position","reference","lineHeight","CellContent","children","isSortable","isAddEnabled","sortedInfo","onSort","_ref$isHidable","isHidable","_ref$isDeletable","isDeletable","isFixedColumn","isColumnFreezeEnabled","onColumnHide","onAddColumn","onColumnDelete","onColumnFreeze","onMoreActionClick","_ref$moreActions","moreActions","headerProps","isColumnHidable","isPresent","isColumnDeletable","hasMoreActions","isEmpty","hasMoreMenu","noop","concat","hyphenize","HeaderCellMenu","HeaderCell","props","onResize","width","onResizeStop","restProps","classNames","Resizable","draggableOpts","enableUserSelectHack","height","handle","e","stopPropagation","onResizeStart","preventDefault","ResizableHeaderCell","isResizing","setIsResizing","_defineProperty","classnames","data","ReorderableHeaderCell","convertLocationPathnameToId","pathname","decodeURIComponent","window","location","replace","hash","i","length","char","charCodeAt","Math","abs","toString","toUpperCase","getHeaderCell","enableColumnResize","enableColumnReorder","cell","isIncludedIn","array1","array2","all","includes","__","getSelectAllRowsCalloutHeight","innerWidth","SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT","SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT","sortFrozenColumns","columnData","originalIndices","Map","map","col","index","dataIndex","a","b","aFixed","bFixed","aIndex","get","bIndex","getFixedColumns","pipe","filter","_ref2","pluck","getColumnSortOrder","equals","field","order","getColumFixedValue","frozenColumns","indexOf","COLUMN_FIXED_VALUES","LEFT","getFrozenColumnsLocalStorageKey","localStorageKeyPrefix","prefix","getSortInfoFromQueryParams","queryParams","sort_by","order_by","split","snakeToCamelCase","getSortField","Array","isArray","camelToSnakeCase","join","useResizableColumns","onColumnAdd","handleSort","tableOnChangeProps","handleResize","_","nextColumns","_toConsumableArray","_objectSpread","computedColumnsData","useMemo","modifiedColumn","onHeaderCell","sorter","positionOffset","align","sortIcon","has","ellipsis","sort","useColumns","isResizeEnabled","isReorderEnabled","setSortedInfo","onTableChange","handleTableSortChange","isDefaultPageChangeHandler","_useLocalStorage","_useLocalStorage2","setFrozenColumns","useCallback","updatedColumns","without","append","fixedCols","_useReorderColumns","_tableOnChangeProps$c","_tableOnChangeProps$c2","_tableOnChangeProps$c3","newSortedInfo","columnKey","pagination","filters","_useResizableColumns","useTableSort","useQueryParams","history","useHistory","handleTableChange","params","undefined","page","push","buildUrl","mergeLeft","TABLE_PAGINATION_HEIGHT","TABLE_DEFAULT_HEADER_HEIGHT","TABLE_ROW_HEIGHT","Table","_ref$allowRowClick","allowRowClick","_ref$enableColumnResi","_ref$enableColumnReor","_ref$enableColumnFree","enableColumnFreeze","_ref$enableAddColumn","enableAddColumn","_ref$className","_ref$columnData","_ref$currentPageNumbe","currentPageNumber","_ref$defaultPageSize","defaultPageSize","_ref$handlePageChange","handlePageChange","_ref$loading","loading","onRowClick","onRowSelect","_ref$rowData","rowData","_ref$totalCount","totalCount","_ref$selectedRowKeys","selectedRowKeys","initialSelectedRowKeys","_ref$fixedHeight","fixedHeight","_ref$paginationProps","paginationProps","_ref$rowKey","rowKey","scroll","_ref$shouldDynamicall","shouldDynamicallyRenderRowSize","_ref$bordered","bordered","_ref$onColumnUpdate","_ref$components","components","_ref$onColumnAdd","onChange","bulkSelectAllRowsProps","otherProps","containerHeight","setContainerHeight","_useState3","_useState4","headerHeight","setHeaderHeight","_useState5","_useState6","_useState7","_useState8","bulkSelectedAllRows","setBulkSelectedAllRows","_useTableSort","handleSetBulkSelectedAllRows","headerRef","resizeObserver","ResizeObserver","_ref3","_ref4","entry","contentRect","scrollRef","tableRef","table","observer","_table$parentNode","targetNode","parentNode","observe","disconnect","_useRestoreScrollPosi","useRestoreScrollPosition","handleScroll","offsetHeight","_useColumns","curatedColumnsData","setSortFromURL","_queryParams$sort_by","modifyBy","assoc","sortedColumns","locale","emptyText","showBulkSelectionCallout","shouldShowSelectAllRowsCallout","shouldShowAllRowsSelectedCallout","handleRowChange","selectedRows","tableWrapper","querySelector","classList","remove","add","rowSelectionProps","type","preserveSelectedRowKeys","extras","componentOverrides","header","calculateRowsPerPage","viewportHeight","innerHeight","rowsPerPage","floor","ceil","pageSize","calculateTableContainerHeight","isPaginationVisible","selectAllRowsCalloutHeight","calculatePageSizeOptions","dynamicArray","itemRender","originalElement","commonProps","icon","Left","Right","MenuHorizontal","isNotEmpty","shouldNavigateToLastPage","lastPage","max","neetoUIFontBold","parseInt","getComputedStyle","documentElement","getPropertyValue","renderTable","_ConfigProvider","ANTD_LOCALE","language","theme","token","ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES","Pagination","itemActiveBg","itemActiveBgDisabled","itemActiveColorDisabled","itemBg","itemInputBg","itemLinkBg","colorBgContainer","colorPrimary","colorPrimaryHover","colorBgTextHover","borderRadius","headerBorderRadius","bodySortBg","borderColor","expandIconBg","filterDropdownBg","filterDropdownMenuBg","fixedHeaderSortActiveBg","footerBg","footerColor","headerBg","headerColor","headerFilterHoverBg","headerSortActiveBg","headerSortHoverBg","headerSplitColor","rowExpandedBg","rowHoverBg","rowSelectedBg","rowSelectedHoverBg","stickyScrollBarBg","cellPaddingBlock","fontSize","fontWeightStrong","paddingContentVerticalLG","_Table","dataSource","spinning","indicator","Spinner","showSorterTooltip","hideOnSinglePage","showSizeChanger","total","pageSizeOptions","rowClassName","x","y","onScroll","onHeaderRow","onRow","record","rowIndex","event","ReactDragListView","DragColumn"],"mappings":"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"}
1
+ {"version":3,"file":"Table.js","sources":["../../src/hooks/useTimeout.js","../../src/components/Table/components/AllRowsSelectedCallout.jsx","../../src/components/Table/components/SelectAllRowsCallout.jsx","../../src/hooks/useLocalStorage.js","../../src/components/Table/hooks/useReorderColumns.js","../../src/components/Table/components/SortIcon.jsx","../../src/components/Table/components/TitleWithInfoIcon.jsx","../../src/components/Table/components/HeaderCell/CellContent.jsx","../../src/components/Table/components/HeaderCell/HeaderCell.jsx","../../src/components/Table/components/HeaderCell/ResizableHeaderCell.jsx","../../src/components/Table/components/HeaderCell/index.jsx","../../src/components/Table/utils.js","../../src/components/Table/hooks/useResizableColumns.jsx","../../src/components/Table/hooks/useColumns.js","../../src/components/Table/hooks/useTableSort.js","../../src/components/Table/index.jsx"],"sourcesContent":["import { useEffect, useRef } from \"react\";\n\nconst useTimeout = (callback, delay) => {\n const savedCallback = useRef(callback);\n\n useEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n\n useEffect(() => {\n if (delay === null) {\n return undefined;\n }\n\n const id = setTimeout(() => savedCallback.current(), delay);\n\n return () => clearTimeout(id);\n }, [delay]);\n};\n\nexport default useTimeout;\n","import React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { getLocale } from \"utils\";\n\nimport Button from \"../../Button\";\nimport Callout from \"../../Callout\";\nimport Typography from \"../../Typography\";\n\n// eslint-disable-next-line @bigbinary/neeto/no-dumb-components-with-use-translation\nconst AllRowsSelectedCallout = ({\n calloutProps,\n onClearSelection,\n allRowsSelectedMessage,\n clearSelectionButtonLabel,\n}) => {\n const { t, i18n } = useTranslation();\n\n return (\n <Callout\n className=\"my-2\"\n {...calloutProps}\n data-testid=\"clear-selections-callout\"\n >\n <div className=\"neeto-ui-flex neeto-ui-gap-3\">\n <Typography style=\"body2\">\n {allRowsSelectedMessage ||\n getLocale(i18n, t, \"neetoui.table.allRowsSelected\")}\n </Typography>\n <Button\n data-testid=\"clear-selections-button\"\n style=\"link\"\n label={\n clearSelectionButtonLabel ||\n getLocale(i18n, t, \"neetoui.table.clearSelection\")\n }\n onClick={onClearSelection}\n />\n </div>\n </Callout>\n );\n};\n\nexport default AllRowsSelectedCallout;\n","import React from \"react\";\n\nimport Button from \"../../Button\";\nimport Callout from \"../../Callout\";\nimport Typography from \"../../Typography\";\n\nconst SelectAllRowsCallout = ({\n calloutProps,\n onBulkSelectAllRows,\n selectAllRowButtonLabel,\n selectAllRowMessage,\n}) => (\n <Callout\n className=\"my-2\"\n {...calloutProps}\n data-testid=\"select-all-rows-callout\"\n >\n <div className=\"neeto-ui-flex neeto-ui-gap-3\">\n <Typography style=\"body2\">{selectAllRowMessage}</Typography>\n <Button\n data-testid=\"select-all-rows-button\"\n label={selectAllRowButtonLabel}\n style=\"link\"\n onClick={onBulkSelectAllRows}\n />\n </div>\n </Callout>\n);\n\nexport default SelectAllRowsCallout;\n","/* eslint-disable @bigbinary/neeto/no-local-storage */\n\nimport { useState } from \"react\";\n\nimport { isNil } from \"ramda\";\n\nimport {\n getFromLocalStorage,\n removeFromLocalStorage,\n setToLocalStorage,\n} from \"utils\";\n\nconst useLocalStorage = (key, defaultValue) => {\n const [storedValue, setStoredValue] = useState(() =>\n getFromLocalStorage(key, defaultValue)\n );\n\n const setValue = value =>\n setStoredValue(prevStoredValue => {\n const newValue =\n typeof value === \"function\" ? value(prevStoredValue) : value;\n\n if (isNil(newValue)) {\n removeFromLocalStorage(key);\n } else {\n setToLocalStorage(key, newValue);\n }\n\n return newValue;\n });\n\n return [storedValue, setValue];\n};\n\nexport default useLocalStorage;\n","import { move } from \"ramda\";\n\nconst useReorderColumns = ({\n isEnabled,\n columns,\n setColumns,\n onColumnUpdate,\n rowSelection,\n}) => {\n if (!isEnabled) return { dragProps: {}, columns };\n\n const isColumnFixed = column => !!column.fixed;\n\n const dragProps = {\n onDragEnd: (fromIndex, toIndex) => {\n let from = fromIndex;\n let to = toIndex;\n if (rowSelection) {\n from = fromIndex - 1;\n to = toIndex - 1;\n }\n\n if (!columns[from] || !columns[to]) return;\n\n if (isColumnFixed(columns[from]) || isColumnFixed(columns[to])) return;\n\n const newColumns = move(from, to, columns);\n setColumns(newColumns);\n onColumnUpdate(newColumns);\n },\n nodeSelector:\n \"th:not(.ant-table-cell-fix-left):not(.ant-table-cell-scrollbar)\",\n handleSelector: \".drag-handler\",\n ignoreSelector: \".react-resizable-handle\",\n };\n\n return { dragProps, columns };\n};\n\nexport default useReorderColumns;\n","import React from \"react\";\n\nimport { DownArrow, UpArrow } from \"neetoicons\";\n\nimport { TABLE_SORT_ORDERS, URL_SORT_ORDERS } from \"../constants\";\n\nconst SortIcon = ({ sortOrder }) => {\n if (\n sortOrder === TABLE_SORT_ORDERS.asc ||\n sortOrder === URL_SORT_ORDERS.ascend\n ) {\n return <UpArrow size={14} />;\n }\n\n if (\n sortOrder === TABLE_SORT_ORDERS.desc ||\n sortOrder === URL_SORT_ORDERS.descend\n ) {\n return <DownArrow size={14} />;\n }\n\n return null;\n};\n\nexport default SortIcon;\n","import React, { useRef } from \"react\";\n\nimport { InfoRound } from \"neetoicons\";\n\nimport Popover from \"components/Popover\";\nimport Typography from \"components/Typography\";\n\nconst TitleWithInfoIcon = ({ title, description, ...rest }) => {\n const popoverRef = useRef();\n\n return (\n <span className=\"relative pr-5\">\n {typeof title === \"function\" ? title(rest) : title}\n {description && (\n <>\n <span\n className=\"neeto-ui-table__column-title-info-icon\"\n ref={popoverRef}\n >\n <InfoRound color=\"currentColor\" size={14} />\n </span>\n <Popover\n appendTo={() => document.body}\n position=\"bottom\"\n reference={popoverRef}\n >\n <Typography lineHeight=\"normal\" style=\"body2\">\n {description}\n </Typography>\n </Popover>\n </>\n )}\n </span>\n );\n};\n\nexport default TitleWithInfoIcon;\n","import React from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\n\nimport { hyphenize } from \"utils\";\n\nimport HeaderCellMenu from \"./HeaderCellMenu\";\n\nconst CellContent = ({\n children,\n isSortable,\n isAddEnabled,\n sortedInfo,\n onSort,\n isHidable = true,\n isDeletable = false,\n isFixedColumn,\n isColumnFreezeEnabled,\n onColumnHide,\n onAddColumn,\n onColumnDelete,\n onColumnFreeze,\n onMoreActionClick,\n column,\n moreActions = [],\n ...headerProps\n}) => {\n const isColumnHidable = isHidable && isPresent(onColumnHide);\n const isColumnDeletable = isDeletable && isPresent(onColumnDelete);\n const hasMoreActions = !isEmpty(moreActions) && isPresent(onMoreActionClick);\n const hasMoreMenu =\n isSortable ||\n isColumnHidable ||\n isAddEnabled ||\n hasMoreActions ||\n (isPresent(column) && isColumnFreezeEnabled);\n\n return (\n <th\n {...headerProps}\n title=\"\"\n onClick={isSortable ? noop : headerProps.onClick}\n >\n <div\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-between\"\n data-cy={`${hyphenize(headerProps.title)}-header-title`}\n >\n <div className=\"neeto-ui-min-w-0 neeto-ui-flex-grow neeto-ui-truncate neeto-ui-table__column-title-content\">\n {children}\n </div>\n {hasMoreMenu && (\n <HeaderCellMenu\n {...{\n column,\n hasMoreActions,\n isAddEnabled,\n isColumnDeletable,\n isColumnFreezeEnabled,\n isFixedColumn,\n isSortable,\n moreActions,\n onAddColumn,\n onColumnDelete,\n onColumnFreeze,\n onColumnHide,\n onMoreActionClick,\n onSort,\n sortedInfo,\n }}\n isHidable={isColumnHidable}\n />\n )}\n </div>\n </th>\n );\n};\n\nexport default CellContent;\n","import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { Resizable } from \"react-resizable\";\n\nimport CellContent from \"./CellContent\";\n\nconst HeaderCell = props => {\n const { onResize, width, onResizeStop, className, ...restProps } = props;\n\n if (!width) {\n return (\n <CellContent\n {...restProps}\n className={classNames(className, \"drag-handler\")}\n />\n );\n }\n\n return (\n <Resizable\n {...{ onResize, onResizeStop, width }}\n draggableOpts={{ enableUserSelectHack: false }}\n height={0}\n handle={\n <span\n className=\"react-resizable-handle\"\n onClick={e => e.stopPropagation()}\n />\n }\n onResizeStart={e => {\n e.preventDefault();\n }}\n >\n <CellContent\n {...restProps}\n className={classNames(className, \"drag-handler\")}\n />\n </Resizable>\n );\n};\n\nexport default HeaderCell;\n","import React, { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Resizable } from \"react-resizable\";\n\nimport CellContent from \"./CellContent\";\n\nconst ResizableHeaderCell = props => {\n const { onResize, width, onResizeStop, onResizeStart, ...restProps } = props;\n const [isResizing, setIsResizing] = useState(false);\n\n if (!width) {\n return <CellContent {...restProps} />;\n }\n\n return (\n <Resizable\n {...{ onResize, onResizeStop, width }}\n draggableOpts={{ enableUserSelectHack: false }}\n height={0}\n handle={\n <span\n className={classnames(\"react-resizable-handle\", {\n \"react-resizable-handle--resizing\": isResizing,\n })}\n onClick={e => e.stopPropagation()}\n >\n <span className=\"neeto-ui-table-react-resizable-handle__inner\" />\n </span>\n }\n onResizeStart={(e, data) => {\n e.preventDefault();\n setIsResizing(true);\n onResizeStart?.(e, data);\n }}\n onResizeStop={(e, data) => {\n setIsResizing(false);\n onResizeStop?.(e, data);\n }}\n >\n <CellContent {...restProps} />\n </Resizable>\n );\n};\n\nexport default ResizableHeaderCell;\n","import React from \"react\";\n\nimport classNames from \"classnames\";\n\nimport CellContent from \"./CellContent\";\nimport HeaderCell from \"./HeaderCell\";\nimport ResizableHeaderCell from \"./ResizableHeaderCell\";\n\nconst ReorderableHeaderCell = ({ className, ...props }) => (\n <CellContent {...props} className={classNames(className, \"drag-handler\")} />\n);\n\nexport { CellContent, ResizableHeaderCell, ReorderableHeaderCell, HeaderCell };\n","import { isPresent, snakeToCamelCase, camelToSnakeCase } from \"neetocist\";\nimport { __, all, equals, filter, includes, pipe, pluck } from \"ramda\";\n\nimport {\n CellContent,\n HeaderCell,\n ReorderableHeaderCell,\n ResizableHeaderCell,\n} from \"./components/HeaderCell\";\nimport {\n COLUMN_FIXED_VALUES,\n SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT,\n SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT,\n TABLE_SORT_ORDERS,\n} from \"./constants\";\n\nconst convertLocationPathnameToId = () => {\n const pathname = decodeURIComponent(window.location.pathname).replace(\n /^\\//,\n \"\"\n );\n\n let hash = 0;\n for (let i = 0; i < pathname.length; i++) {\n const char = pathname.charCodeAt(i);\n hash = (hash << 5) - hash + char;\n hash = hash & hash; // Convert to 32-bit integer\n }\n\n return Math.abs(hash).toString(16).toUpperCase();\n};\n\nexport const getHeaderCell = ({ enableColumnResize, enableColumnReorder }) => {\n if (enableColumnReorder && enableColumnResize) return { cell: HeaderCell };\n\n if (enableColumnResize) return { cell: ResizableHeaderCell };\n\n if (enableColumnReorder) return { cell: ReorderableHeaderCell };\n\n return { cell: CellContent };\n};\n\nexport const isIncludedIn = (array1, array2) =>\n all(includes(__, array1), array2);\n\nexport const getSelectAllRowsCalloutHeight = () =>\n window.innerWidth < 768\n ? SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT\n : SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT;\n\nexport const sortFrozenColumns = columnData => {\n const originalIndices = new Map(\n columnData.map((col, index) => [col.dataIndex, index])\n );\n\n return (a, b) => {\n const aFixed = isPresent(a.fixed);\n const bFixed = isPresent(b.fixed);\n const aIndex = originalIndices.get(a.dataIndex);\n const bIndex = originalIndices.get(b.dataIndex);\n\n if (aFixed !== bFixed) return aFixed ? -1 : 1;\n\n return aIndex - bIndex;\n };\n};\n\nexport const getFixedColumns = columnData =>\n pipe(\n filter(({ fixed }) => isPresent(fixed)),\n pluck(\"dataIndex\")\n )(columnData);\n\nexport const getColumnSortOrder = (col, sortedInfo) =>\n equals(sortedInfo.field, col.dataIndex) || equals(sortedInfo.field, col.key)\n ? sortedInfo.order\n : null;\n\nexport const getColumFixedValue = (col, frozenColumns) =>\n frozenColumns?.indexOf(col.dataIndex) !== -1\n ? COLUMN_FIXED_VALUES.LEFT\n : null;\n\nexport const getFrozenColumnsLocalStorageKey = localStorageKeyPrefix => {\n const prefix = isPresent(localStorageKeyPrefix)\n ? localStorageKeyPrefix\n : convertLocationPathnameToId();\n\n return `NEETOUI-${prefix}-FIXED_COLUMNS`;\n};\n\nexport const getSortInfoFromQueryParams = queryParams => {\n const sortedInfo = {};\n if (\n isPresent(queryParams.sort_by) &&\n isPresent(queryParams.order_by) &&\n isPresent(TABLE_SORT_ORDERS[queryParams.order_by])\n ) {\n sortedInfo.field = queryParams.sort_by.includes(\"+\")\n ? queryParams.sort_by.split(\"+\").map(snakeToCamelCase)\n : snakeToCamelCase(queryParams.sort_by);\n sortedInfo.order = TABLE_SORT_ORDERS[queryParams.order_by];\n }\n\n return sortedInfo;\n};\n\nexport const getSortField = field => {\n if (Array.isArray(field)) {\n return field.map(camelToSnakeCase).join(\"+\");\n }\n\n return camelToSnakeCase(field);\n};\n","import React, { useMemo } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { has } from \"ramda\";\n\nimport SortIcon from \"../components/SortIcon\";\nimport TitleWithInfoIcon from \"../components/TitleWithInfoIcon\";\nimport {\n getColumFixedValue,\n getColumnSortOrder,\n sortFrozenColumns,\n} from \"../utils\";\n\nconst useResizableColumns = ({\n columns,\n columnData,\n frozenColumns,\n setColumns,\n isEnabled,\n isAddEnabled,\n isColumnFreezeEnabled,\n onColumnAdd,\n onColumnUpdate,\n onColumnDelete,\n handleSort,\n sortedInfo,\n onColumnHide,\n onColumnFreeze,\n onMoreActionClick,\n tableOnChangeProps,\n}) => {\n const handleResize =\n index =>\n (_, { size }) => {\n const nextColumns = [...columns];\n nextColumns[index] = { ...nextColumns[index], width: size.width };\n setColumns(nextColumns);\n };\n\n const computedColumnsData = useMemo(\n () =>\n columns\n .map((col, index) => {\n const fixed = getColumFixedValue(col, frozenColumns);\n\n const modifiedColumn = {\n ...col,\n onHeaderCell: column => ({\n width: column.width,\n onResize: isEnabled ? handleResize(index) : noop,\n onResizeStop: () => (isEnabled ? onColumnUpdate(columns) : noop),\n isSortable: isPresent(col.sorter),\n onSort: handleSort,\n sortedInfo,\n onColumnHide,\n onColumnFreeze,\n onMoreActionClick,\n isColumnFreezeEnabled,\n isAddEnabled: isAddEnabled && !fixed,\n onAddColumn: positionOffset =>\n onColumnAdd(index + positionOffset),\n isFixedColumn: !!fixed,\n onColumnDelete,\n isHidable: col.isHidable,\n isDeletable: col.isDeletable,\n moreActions: col.moreActions,\n column: col,\n \"data-text-align\": column.align,\n }),\n sortIcon: SortIcon,\n sortOrder: getColumnSortOrder(col, sortedInfo),\n fixed,\n title: col.description\n ? props => (\n <TitleWithInfoIcon\n {...props}\n description={col.description}\n title={col.title}\n />\n )\n : col.title,\n };\n\n if (!has(\"ellipsis\", col)) modifiedColumn.ellipsis = true;\n\n return modifiedColumn;\n })\n .sort(sortFrozenColumns(columnData)),\n [\n columns,\n sortedInfo,\n tableOnChangeProps,\n onColumnFreeze,\n frozenColumns,\n columnData,\n ]\n );\n\n return { columns: computedColumnsData };\n};\n\nexport default useResizableColumns;\n","import { useCallback, useEffect } from \"react\";\n\nimport { append, equals, isEmpty, props, without } from \"ramda\";\n\nimport useLocalStorage from \"hooks/useLocalStorage\";\n\nimport useReorderColumns from \"./useReorderColumns\";\nimport useResizableColumns from \"./useResizableColumns\";\n\nimport { getFixedColumns, getFrozenColumnsLocalStorageKey } from \"../utils\";\n\nconst useColumns = ({\n columns,\n columnData,\n setColumns,\n isResizeEnabled,\n isReorderEnabled,\n isAddEnabled,\n isColumnFreezeEnabled,\n onColumnAdd,\n onColumnUpdate,\n onColumnDelete,\n rowSelection,\n sortedInfo,\n setSortedInfo,\n onColumnHide,\n onMoreActionClick,\n onTableChange,\n tableOnChangeProps,\n handleTableSortChange,\n isDefaultPageChangeHandler,\n localStorageKeyPrefix,\n}) => {\n const [frozenColumns, setFrozenColumns] = useLocalStorage(\n getFrozenColumnsLocalStorageKey(localStorageKeyPrefix)\n );\n\n const onColumnFreeze = useCallback(\n (isFixedColumn, { dataIndex }) => {\n const updatedColumns = isFixedColumn\n ? without([dataIndex], frozenColumns)\n : append(dataIndex, frozenColumns);\n\n setFrozenColumns(updatedColumns);\n },\n [frozenColumns, setFrozenColumns]\n );\n\n useEffect(() => {\n if (isEmpty(columnData) || frozenColumns) return;\n\n const fixedCols = getFixedColumns(columnData);\n setFrozenColumns(fixedCols);\n }, [columnData, setFrozenColumns]);\n\n const { dragProps } = useReorderColumns({\n isEnabled: isReorderEnabled,\n columns,\n setColumns,\n onColumnUpdate,\n rowSelection,\n });\n\n const handleSort = sorter => {\n let newSortedInfo = { ...sorter };\n if (\n equals(\n props([\"field\", \"order\"], newSortedInfo),\n props([\"field\", \"order\"], sortedInfo)\n )\n ) {\n newSortedInfo = {\n field: null,\n order: null,\n column: null,\n columnKey: null,\n };\n }\n setSortedInfo(newSortedInfo);\n onTableChange?.(\n tableOnChangeProps.current?.pagination || {},\n tableOnChangeProps.current?.filters || {},\n { ...newSortedInfo }\n );\n\n isDefaultPageChangeHandler &&\n handleTableSortChange(\n tableOnChangeProps.current?.pagination || {},\n newSortedInfo\n );\n };\n\n const { columns: computedColumnsData } = useResizableColumns({\n columns,\n columnData,\n frozenColumns,\n setColumns,\n isEnabled: isResizeEnabled,\n isAddEnabled,\n isColumnFreezeEnabled,\n onColumnAdd,\n onColumnUpdate,\n onColumnDelete,\n handleSort,\n sortedInfo,\n onColumnHide,\n onMoreActionClick,\n tableOnChangeProps,\n onColumnFreeze,\n });\n\n return { dragProps, columns: computedColumnsData };\n};\n\nexport default useColumns;\n","import { useEffect, useState } from \"react\";\n\nimport { mergeLeft } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useQueryParams } from \"hooks\";\nimport { buildUrl } from \"utils\";\n\nimport { URL_SORT_ORDERS } from \"../constants\";\nimport { getSortInfoFromQueryParams, getSortField } from \"../utils\";\n\nconst useTableSort = () => {\n const queryParams = useQueryParams();\n const [sortedInfo, setSortedInfo] = useState(() =>\n getSortInfoFromQueryParams(queryParams)\n );\n\n useEffect(() => {\n setSortedInfo(getSortInfoFromQueryParams(queryParams));\n }, [queryParams?.sort_by, queryParams?.order_by]);\n\n const history = useHistory();\n\n const handleTableChange = (pagination, sorter) => {\n const params = {\n sort_by: sorter.order ? getSortField(sorter.field) : undefined,\n order_by: URL_SORT_ORDERS[sorter.order],\n page: pagination.current,\n };\n\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, mergeLeft(params, queryParams)));\n };\n\n return { handleTableChange, sortedInfo, setSortedInfo };\n};\n\nexport default useTableSort;\n","import React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport { Table as AntTable, ConfigProvider } from \"antd\";\nimport classnames from \"classnames\";\nimport {\n dynamicArray,\n isNotEmpty,\n modifyBy,\n snakeToCamelCase,\n} from \"neetocist\";\nimport { Left, Right, MenuHorizontal } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { assoc, isEmpty, mergeLeft, pluck } from \"ramda\";\nimport ReactDragListView from \"react-drag-listview\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { ANTD_LOCALE } from \"components/constants\";\nimport { useQueryParams, useTimeout } from \"hooks\";\nimport { ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES, buildUrl, noop } from \"utils\";\n\nimport AllRowsSelectedCallout from \"./components/AllRowsSelectedCallout\";\nimport SelectAllRowsCallout from \"./components/SelectAllRowsCallout\";\nimport { TABLE_SORT_ORDERS } from \"./constants\";\nimport useColumns from \"./hooks/useColumns\";\nimport { useRestoreScrollPosition } from \"./hooks/useRestoreScrollPosition\";\nimport useTableSort from \"./hooks/useTableSort\";\nimport {\n getHeaderCell,\n isIncludedIn,\n getSelectAllRowsCalloutHeight,\n} from \"./utils\";\n\nimport Button from \"../Button\";\nimport Spinner from \"../Spinner\";\nimport Typography from \"../Typography\";\n\nconst TABLE_PAGINATION_HEIGHT = 64;\nconst TABLE_DEFAULT_HEADER_HEIGHT = 40;\nconst TABLE_ROW_HEIGHT = 52;\n\nconst Table = ({\n allowRowClick = true,\n enableColumnResize = true,\n enableColumnReorder = false,\n enableColumnFreeze = true,\n enableAddColumn = false,\n className = \"\",\n columnData = [],\n currentPageNumber = 1,\n defaultPageSize = 30,\n handlePageChange = noop,\n loading = false,\n onRowClick,\n onRowSelect,\n rowData = [],\n totalCount = 0,\n selectedRowKeys: initialSelectedRowKeys = [],\n fixedHeight = false,\n paginationProps = {},\n rowKey = \"id\",\n scroll,\n rowSelection,\n shouldDynamicallyRenderRowSize = false,\n bordered = true,\n onColumnUpdate = noop,\n components = {},\n onColumnHide,\n onColumnAdd = noop,\n onColumnDelete,\n onChange,\n onMoreActionClick,\n bulkSelectAllRowsProps,\n localStorageKeyPrefix,\n ...otherProps\n}) => {\n const { i18n } = useTranslation();\n const [containerHeight, setContainerHeight] = useState(null);\n const [headerHeight, setHeaderHeight] = useState(TABLE_DEFAULT_HEADER_HEIGHT);\n const [columns, setColumns] = useState(columnData);\n const [bulkSelectedAllRows, setBulkSelectedAllRows] = useState(false);\n const [columnChanges, setColumnChanges] = useState({});\n const {\n handleTableChange: handleTableSortChange,\n sortedInfo,\n setSortedInfo,\n } = useTableSort();\n\n const { setBulkSelectedAllRows: handleSetBulkSelectedAllRows } =\n bulkSelectAllRowsProps ?? {};\n\n const isDefaultPageChangeHandler = handlePageChange === noop;\n\n const history = useHistory();\n\n const headerRef = useRef();\n const tableOnChangeProps = useRef({});\n\n const resizeObserver = useRef(\n new ResizeObserver(([entry]) =>\n setContainerHeight(entry.contentRect.height)\n )\n );\n\n const scrollRef = useRef(null);\n const tableRef = useCallback(\n table => {\n scrollRef.current = table;\n\n if (!fixedHeight) return;\n\n const observer = resizeObserver.current;\n\n if (table !== null) {\n const targetNode = enableColumnReorder\n ? table?.parentNode?.parentNode\n : table?.parentNode;\n\n observer.observe(targetNode);\n } else if (observer) {\n observer.disconnect();\n }\n },\n [resizeObserver.current, fixedHeight, enableColumnReorder]\n );\n\n const { handleScroll } = useRestoreScrollPosition({\n tableRef,\n scrollRef,\n loading,\n });\n\n useTimeout(() => {\n const headerHeight = headerRef.current\n ? headerRef.current.offsetHeight\n : TABLE_DEFAULT_HEADER_HEIGHT;\n\n setHeaderHeight(headerHeight);\n }, 10);\n\n const handleColumnUpdateWithChanges = updatedColumns => {\n const newChanges = {};\n\n updatedColumns.forEach(col => {\n const originalCol = columnData.find(c => c.dataIndex === col.dataIndex);\n const changes = {};\n\n if (col.width && col.width !== originalCol?.width) {\n changes.width = col.width;\n }\n\n if (Object.keys(changes).length > 0) {\n newChanges[col.dataIndex] = changes;\n }\n });\n\n setColumnChanges(prev => ({ ...prev, ...newChanges }));\n onColumnUpdate(updatedColumns);\n };\n\n const { dragProps, columns: curatedColumnsData } = useColumns({\n isReorderEnabled: enableColumnReorder,\n isResizeEnabled: enableColumnResize,\n isAddEnabled: enableAddColumn,\n isColumnFreezeEnabled: enableColumnFreeze,\n onTableChange: onChange,\n columns,\n columnData,\n setColumns,\n onColumnUpdate: handleColumnUpdateWithChanges,\n rowSelection,\n sortedInfo,\n setSortedInfo,\n onColumnHide,\n onMoreActionClick,\n onColumnAdd,\n onColumnDelete,\n tableOnChangeProps,\n handleTableSortChange,\n isDefaultPageChangeHandler,\n localStorageKeyPrefix,\n });\n\n const queryParams = useQueryParams();\n\n const setSortFromURL = columnData =>\n modifyBy(\n { dataIndex: snakeToCamelCase(queryParams.sort_by ?? \"\") },\n assoc(\"sortOrder\", TABLE_SORT_ORDERS[queryParams.order_by]),\n columnData\n );\n\n const sortedColumns = isDefaultPageChangeHandler\n ? setSortFromURL(curatedColumnsData)\n : curatedColumnsData;\n\n const locale = { emptyText: <Typography style=\"body2\">No Data</Typography> };\n\n const selectedRowKeys = bulkSelectedAllRows\n ? pluck(rowKey, rowData)\n : initialSelectedRowKeys;\n\n const showBulkSelectionCallout = useMemo(\n () =>\n isIncludedIn(selectedRowKeys, pluck(rowKey, rowData)) &&\n selectedRowKeys.length !== totalCount &&\n !bulkSelectedAllRows,\n [selectedRowKeys, rowKey, rowData, totalCount, bulkSelectedAllRows]\n );\n\n const shouldShowSelectAllRowsCallout =\n bulkSelectAllRowsProps && showBulkSelectionCallout;\n\n const shouldShowAllRowsSelectedCallout =\n bulkSelectAllRowsProps && bulkSelectedAllRows;\n\n const handleRowChange = (selectedRowKeys, selectedRows) => {\n const tableWrapper = document.querySelector(\n '[data-testid=\"table-wrapper\"]'\n );\n\n if (selectedRowKeys.length !== defaultPageSize) {\n setBulkSelectedAllRows(false);\n handleSetBulkSelectedAllRows?.(false);\n tableWrapper?.classList.remove(\"neeto-ui-overflow-hidden\");\n } else {\n tableWrapper?.classList.add(\"neeto-ui-overflow-hidden\");\n }\n onRowSelect?.(selectedRowKeys, selectedRows);\n };\n\n const rowSelectionProps = rowSelection\n ? {\n type: \"checkbox\",\n preserveSelectedRowKeys: true,\n ...rowSelection,\n onChange: handleRowChange,\n selectedRowKeys,\n }\n : false;\n\n // eslint-disable-next-line @bigbinary/neeto/no-excess-function-arguments\n const handleTableChange = (pagination, filters, sorter, extras) => {\n setSortedInfo(sorter);\n isDefaultPageChangeHandler && handleTableSortChange(pagination, sorter);\n onChange?.(pagination, filters, sorter, extras);\n tableOnChangeProps.current = { pagination, filters };\n };\n\n const componentOverrides = {\n ...components,\n header: getHeaderCell({\n enableColumnResize,\n enableColumnReorder,\n }),\n };\n\n const calculateRowsPerPage = () => {\n const viewportHeight = window.innerHeight;\n const rowsPerPage = Math.floor(\n ((viewportHeight - TABLE_PAGINATION_HEIGHT) / TABLE_ROW_HEIGHT) * 3\n );\n\n return Math.ceil(rowsPerPage / 10) * 10;\n };\n\n const pageSize = shouldDynamicallyRenderRowSize\n ? calculateRowsPerPage()\n : paginationProps.pageSize || defaultPageSize;\n\n const calculateTableContainerHeight = () => {\n const isPaginationVisible =\n otherProps.pagination !== false && rowData.length > pageSize;\n\n let selectAllRowsCalloutHeight = 0;\n if (shouldShowSelectAllRowsCallout || shouldShowAllRowsSelectedCallout) {\n selectAllRowsCalloutHeight = getSelectAllRowsCalloutHeight();\n }\n\n return (\n containerHeight -\n headerHeight -\n (isPaginationVisible ? TABLE_PAGINATION_HEIGHT : 0) -\n selectAllRowsCalloutHeight\n );\n };\n\n const calculatePageSizeOptions = () =>\n dynamicArray(5, index => (index + 1) * pageSize);\n\n const itemRender = (_, type, originalElement) => {\n const commonProps = { size: \"small\", style: \"text\" };\n\n if (type === \"prev\") return <Button icon={Left} {...commonProps} />;\n\n if (type === \"next\") return <Button icon={Right} {...commonProps} />;\n\n if (type === \"jump-prev\" || type === \"jump-next\") {\n return <Button icon={MenuHorizontal} {...commonProps} />;\n }\n\n return originalElement;\n };\n\n useEffect(() => {\n if (isNotEmpty(initialSelectedRowKeys)) return;\n\n setBulkSelectedAllRows(false);\n handleSetBulkSelectedAllRows?.(false);\n }, [handleSetBulkSelectedAllRows, initialSelectedRowKeys]);\n\n useEffect(() => {\n const shouldNavigateToLastPage =\n isEmpty(rowData) && !loading && currentPageNumber !== 1;\n\n if (!shouldNavigateToLastPage) return;\n\n const lastPage = Math.ceil(totalCount / pageSize);\n const page = Math.max(1, lastPage);\n const pathname = window.location.pathname;\n\n isDefaultPageChangeHandler\n ? history.push(buildUrl(pathname, mergeLeft({ page }, queryParams)))\n : handlePageChange(page, pageSize);\n }, [rowData]);\n\n useEffect(() => {\n const mergedColumns = columnData.map(col => ({\n ...col,\n ...columnChanges[col.dataIndex], // Apply any column changes\n }));\n setColumns(mergedColumns);\n }, [columnData, columnChanges]);\n\n const neetoUIFontBold = parseInt(\n getComputedStyle(document.documentElement).getPropertyValue(\n \"--neeto-ui-font-bold\"\n ),\n 10\n );\n\n const renderTable = () => (\n <ConfigProvider\n locale={ANTD_LOCALE[i18n.language || \"en\"]}\n theme={{\n token: { ...ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES },\n components: {\n Pagination: {\n itemActiveBg: \"rgb(var(--neeto-ui-primary-500))\",\n itemActiveBgDisabled: \"rgb(var(--neeto-ui-gray-50))\",\n itemActiveColorDisabled: \"rgb(var(--neeto-ui-gray-300))\",\n itemBg: \"rgb(var(--neeto-ui-white))\",\n itemInputBg: \"rgb(var(--neeto-ui-white))\",\n itemLinkBg: \"rgb(var(--neeto-ui-white))\",\n\n // Global overrides\n colorBgContainer: \"rgb(var(--neeto-ui-primary-500))\",\n colorPrimary: \"rgb(var(--neeto-ui-white))\",\n colorPrimaryHover: \"rgb(var(--neeto-ui-white))\",\n colorBgTextHover: \"rgb(var(--neeto-ui-gray-200))\",\n borderRadius: 6,\n },\n Table: {\n headerBorderRadius: 0,\n bodySortBg: \"rgb(var(--neeto-ui-gray-50))\",\n borderColor: \"rgb(var(--neeto-ui-gray-200))\",\n expandIconBg: \"rgb(var(--neeto-ui-white))\",\n filterDropdownBg: \"rgb(var(--neeto-ui-white))\",\n filterDropdownMenuBg: \"rgb(var(--neeto-ui-white))\",\n fixedHeaderSortActiveBg: \"rgb(var(--neeto-ui-gray-200))\",\n footerBg: \"rgb(var(--neeto-ui-gray-100))\",\n footerColor: \"rgb(var(--neeto-ui-black))\",\n headerBg: \"rgb(var(--neeto-ui-gray-100))\",\n headerColor: \"rgb(var(--neeto-ui-black))\",\n headerFilterHoverBg: \"rgb(var(--neeto-ui-gray-100))\",\n headerSortActiveBg: \"rgb(var(--neeto-ui-gray-200))\",\n headerSortHoverBg: \"rgb(var(--neeto-ui-gray-200))\",\n headerSplitColor: \"rgb(var(--neeto-ui-gray-100))\",\n rowExpandedBg: \"rgb(var(--neeto-ui-gray-100))\",\n rowHoverBg: \"rgb(var(--neeto-ui-gray-50))\",\n rowSelectedBg: \"rgb(var(--neeto-ui-accent-50))\",\n rowSelectedHoverBg: \"rgb(var(--neeto-ui-accent-50))\",\n stickyScrollBarBg: \"rgb(var(--neeto-ui-gray-300))\",\n cellPaddingBlock: 11,\n\n // Global overrides\n colorPrimary: \"rgb(var(--neeto-ui-primary-500))\",\n fontSize: 14,\n fontWeightStrong: neetoUIFontBold,\n paddingContentVerticalLG: 11,\n },\n },\n }}\n >\n {shouldShowSelectAllRowsCallout && (\n <SelectAllRowsCallout\n {...bulkSelectAllRowsProps}\n onBulkSelectAllRows={() => {\n setBulkSelectedAllRows(true);\n handleSetBulkSelectedAllRows?.(true);\n }}\n />\n )}\n {shouldShowAllRowsSelectedCallout && (\n <AllRowsSelectedCallout\n {...bulkSelectAllRowsProps}\n onClearSelection={() => {\n setBulkSelectedAllRows(false);\n handleSetBulkSelectedAllRows?.(false);\n handleRowChange([], []);\n }}\n />\n )}\n <AntTable\n {...{ bordered, locale, rowKey }}\n columns={sortedColumns}\n components={componentOverrides}\n dataSource={rowData}\n loading={{ spinning: loading, indicator: <Spinner /> }}\n ref={tableRef}\n rowSelection={rowSelectionProps}\n showSorterTooltip={false}\n pagination={{\n hideOnSinglePage: true,\n ...paginationProps,\n showSizeChanger: false,\n total: totalCount ?? 0,\n current: currentPageNumber,\n defaultPageSize: pageSize,\n pageSizeOptions: calculatePageSizeOptions(),\n onChange: handlePageChange,\n itemRender,\n }}\n rowClassName={classnames(\n \"neeto-ui-table--row\",\n { \"neeto-ui-table--row_hover\": allowRowClick },\n [className]\n )}\n scroll={{\n x: \"max-content\",\n y: calculateTableContainerHeight(),\n ...scroll,\n }}\n onChange={handleTableChange}\n onScroll={handleScroll}\n onHeaderRow={() => ({\n ref: headerRef,\n className: classnames(\"neeto-ui-table__header\", {\n \"neeto-ui-table-reorderable\": enableColumnReorder,\n }),\n id: \"neeto-ui-table__header\",\n })}\n onRow={(record, rowIndex) => ({\n onClick: event =>\n allowRowClick && onRowClick && onRowClick(event, record, rowIndex),\n })}\n {...otherProps}\n />\n </ConfigProvider>\n );\n\n return enableColumnReorder ? (\n <ReactDragListView.DragColumn {...dragProps}>\n {renderTable()}\n </ReactDragListView.DragColumn>\n ) : (\n renderTable()\n );\n};\n\nTable.propTypes = {\n /**\n * Enables row click event. Accepts boolean values.\n */\n allowRowClick: PropTypes.bool,\n /**\n * Dynamically renders the number of rows based on the viewport height.\n */\n shouldDynamicallyRenderRowSize: PropTypes.bool,\n /**\n * Custom classnames for each row.\n */\n className: PropTypes.string,\n /**\n * To make the Table fixed height.\n */\n fixedHeight: PropTypes.bool,\n /**\n * Columns of the Table. Accepts an array of [column definitions](#column_data).\n */\n columnData: PropTypes.array.isRequired,\n /**\n * Active page number.\n */\n currentPageNumber: PropTypes.number,\n /**\n * Sets the number of rows in a page.\n */\n defaultPageSize: PropTypes.number,\n /**\n * Handles page change events. Accepts a callback with `page` and `pageSize` as parameters. If not provided, component will handle page query parameters.\n *\n * `handlePageChange={(page, pageSize) => {}}`\n */\n handlePageChange: PropTypes.func,\n /**\n * Show loading state in Table.\n */\n loading: PropTypes.bool,\n /**\n * Handles click event on each row. Accepts a callback with `event`, `record`, and `index` as parameters.\n *\n * `onRowClick={(event, record, rowIndex) => {}}`\n */\n onRowClick: PropTypes.func,\n /**\n * Handles select event on each row. Accepts a callback with `selectedRowKeys` and `selectedRows` as parameters.\n * Make sure to pass `id` in `rowData` for this to work.\n * `onRowSelect={(selectedRowKeys, selectedRows) => {}}`\n */\n onRowSelect: PropTypes.func,\n /**\n * Keys of the rows that are selected.\n */\n selectedRowKeys: PropTypes.array,\n /**\n * Additional props for pagination. Refer [pagination docs](https://ant.design/components/pagination/#API) from AntD Table.\n */\n paginationProps: PropTypes.object,\n /**\n * Data for rows to be displayed. Accepts an array of JavaScript Objects.\n */\n rowData: PropTypes.array.isRequired,\n /**\n * Total number of data items.\n */\n totalCount: PropTypes.number,\n /**\n * Enables resizing of columns. Accepts boolean values.\n */\n enableColumnResize: PropTypes.bool,\n /**\n * Enables reordering of columns. Accepts boolean values.\n */\n enableColumnReorder: PropTypes.bool,\n /**\n * Enables adding of columns to the left or right of the current column. Accepts boolean values.\n */\n enableAddColumn: PropTypes.bool,\n /**\n * Handles column update events. Accepts a callback with `columns` as parameters.\n *\n * `onColumnUpdate={(columns) => {}}`\n */\n onColumnUpdate: PropTypes.func,\n /**\n * Function that gets called when a new column is added. Gets called with the 'position' to add the new column to as parameter.\n *\n * `onColumnAdd={(position) => {}}`\n */\n onColumnAdd: PropTypes.func,\n /**\n * Function that gets called when a custom field column is deleted. Gets called with the 'id' of the column getting deleted as parameter.\n *\n * `onColumnDelete={(key) => {}}`\n */\n onColumnDelete: PropTypes.func,\n /**\n * Function that gets called when a more action item in header is clicked.\n *\n * `onMoreActionClick={(type, column) => {}}`\n */\n onMoreActionClick: PropTypes.func,\n /**\n * Additional props for row selection. Refer [row selection docs](https://ant.design/components/table/#rowSelection) from AntD Table\n * Make sure to pass `id` in `rowData` for this to work.\n */\n rowSelection: PropTypes.oneOfType([PropTypes.bool, PropTypes.object]),\n /**\n * Props for adding `Select all rows` option for multi-page table.\n */\n bulkSelectAllRowsProps: PropTypes.shape({\n selectAllRowMessage: PropTypes.string.isRequired,\n selectAllRowButtonLabel: PropTypes.string.isRequired,\n setBulkSelectedAllRows: PropTypes.func.isRequired,\n allRowsSelectedMessage: PropTypes.string,\n clearSelectionButtonLabel: PropTypes.string,\n }),\n /**\n * String to set as the prefix of the local storage key where the data is persisted, eg: fixed columns.\n */\n localStorageKeyPrefix: PropTypes.string,\n};\n\nexport default Table;\n"],"names":["useTimeout","callback","delay","savedCallback","useRef","useEffect","current","id","setTimeout","clearTimeout","AllRowsSelectedCallout","_ref","calloutProps","onClearSelection","allRowsSelectedMessage","clearSelectionButtonLabel","_useTranslation","useTranslation","t","i18n","React","createElement","Callout","_extends","className","Typography","style","getLocale","Button","label","onClick","SelectAllRowsCallout","onBulkSelectAllRows","selectAllRowButtonLabel","selectAllRowMessage","useLocalStorage","key","defaultValue","_useState","useState","getFromLocalStorage","_useState2","_slicedToArray","storedValue","setStoredValue","setValue","value","prevStoredValue","newValue","isNil","removeFromLocalStorage","setToLocalStorage","useReorderColumns","isEnabled","columns","setColumns","onColumnUpdate","rowSelection","dragProps","isColumnFixed","column","fixed","onDragEnd","fromIndex","toIndex","from","to","newColumns","move","nodeSelector","handleSelector","ignoreSelector","SortIcon","sortOrder","TABLE_SORT_ORDERS","asc","URL_SORT_ORDERS","ascend","UpArrow","size","desc","descend","DownArrow","TitleWithInfoIcon","title","description","rest","_objectWithoutProperties","_excluded","popoverRef","Fragment","ref","InfoRound","color","Popover","appendTo","document","body","position","reference","lineHeight","CellContent","children","isSortable","isAddEnabled","sortedInfo","onSort","_ref$isHidable","isHidable","_ref$isDeletable","isDeletable","isFixedColumn","isColumnFreezeEnabled","onColumnHide","onAddColumn","onColumnDelete","onColumnFreeze","onMoreActionClick","_ref$moreActions","moreActions","headerProps","isColumnHidable","isPresent","isColumnDeletable","hasMoreActions","isEmpty","hasMoreMenu","noop","concat","hyphenize","HeaderCellMenu","HeaderCell","props","onResize","width","onResizeStop","restProps","classNames","Resizable","draggableOpts","enableUserSelectHack","height","handle","e","stopPropagation","onResizeStart","preventDefault","ResizableHeaderCell","isResizing","setIsResizing","_defineProperty","classnames","data","ReorderableHeaderCell","convertLocationPathnameToId","pathname","decodeURIComponent","window","location","replace","hash","i","length","char","charCodeAt","Math","abs","toString","toUpperCase","getHeaderCell","enableColumnResize","enableColumnReorder","cell","isIncludedIn","array1","array2","all","includes","__","getSelectAllRowsCalloutHeight","innerWidth","SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT","SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT","sortFrozenColumns","columnData","originalIndices","Map","map","col","index","dataIndex","a","b","aFixed","bFixed","aIndex","get","bIndex","getFixedColumns","pipe","filter","_ref2","pluck","getColumnSortOrder","equals","field","order","getColumFixedValue","frozenColumns","indexOf","COLUMN_FIXED_VALUES","LEFT","getFrozenColumnsLocalStorageKey","localStorageKeyPrefix","prefix","getSortInfoFromQueryParams","queryParams","sort_by","order_by","split","snakeToCamelCase","getSortField","Array","isArray","camelToSnakeCase","join","useResizableColumns","onColumnAdd","handleSort","tableOnChangeProps","handleResize","_","nextColumns","_toConsumableArray","_objectSpread","computedColumnsData","useMemo","modifiedColumn","onHeaderCell","sorter","positionOffset","align","sortIcon","has","ellipsis","sort","useColumns","isResizeEnabled","isReorderEnabled","setSortedInfo","onTableChange","handleTableSortChange","isDefaultPageChangeHandler","_useLocalStorage","_useLocalStorage2","setFrozenColumns","useCallback","updatedColumns","without","append","fixedCols","_useReorderColumns","_tableOnChangeProps$c","_tableOnChangeProps$c2","_tableOnChangeProps$c3","newSortedInfo","columnKey","pagination","filters","_useResizableColumns","useTableSort","useQueryParams","history","useHistory","handleTableChange","params","undefined","page","push","buildUrl","mergeLeft","TABLE_PAGINATION_HEIGHT","TABLE_DEFAULT_HEADER_HEIGHT","TABLE_ROW_HEIGHT","Table","_ref$allowRowClick","allowRowClick","_ref$enableColumnResi","_ref$enableColumnReor","_ref$enableColumnFree","enableColumnFreeze","_ref$enableAddColumn","enableAddColumn","_ref$className","_ref$columnData","_ref$currentPageNumbe","currentPageNumber","_ref$defaultPageSize","defaultPageSize","_ref$handlePageChange","handlePageChange","_ref$loading","loading","onRowClick","onRowSelect","_ref$rowData","rowData","_ref$totalCount","totalCount","_ref$selectedRowKeys","selectedRowKeys","initialSelectedRowKeys","_ref$fixedHeight","fixedHeight","_ref$paginationProps","paginationProps","_ref$rowKey","rowKey","scroll","_ref$shouldDynamicall","shouldDynamicallyRenderRowSize","_ref$bordered","bordered","_ref$onColumnUpdate","_ref$components","components","_ref$onColumnAdd","onChange","bulkSelectAllRowsProps","otherProps","containerHeight","setContainerHeight","_useState3","_useState4","headerHeight","setHeaderHeight","_useState5","_useState6","_useState7","_useState8","bulkSelectedAllRows","setBulkSelectedAllRows","_useState9","_useState10","columnChanges","setColumnChanges","_useTableSort","handleSetBulkSelectedAllRows","headerRef","resizeObserver","ResizeObserver","_ref3","_ref4","entry","contentRect","scrollRef","tableRef","table","observer","_table$parentNode","targetNode","parentNode","observe","disconnect","_useRestoreScrollPosi","useRestoreScrollPosition","handleScroll","offsetHeight","handleColumnUpdateWithChanges","newChanges","forEach","originalCol","find","c","changes","Object","keys","prev","_useColumns","curatedColumnsData","setSortFromURL","_queryParams$sort_by","modifyBy","assoc","sortedColumns","locale","emptyText","showBulkSelectionCallout","shouldShowSelectAllRowsCallout","shouldShowAllRowsSelectedCallout","handleRowChange","selectedRows","tableWrapper","querySelector","classList","remove","add","rowSelectionProps","type","preserveSelectedRowKeys","extras","componentOverrides","header","calculateRowsPerPage","viewportHeight","innerHeight","rowsPerPage","floor","ceil","pageSize","calculateTableContainerHeight","isPaginationVisible","selectAllRowsCalloutHeight","calculatePageSizeOptions","dynamicArray","itemRender","originalElement","commonProps","icon","Left","Right","MenuHorizontal","isNotEmpty","shouldNavigateToLastPage","lastPage","max","mergedColumns","neetoUIFontBold","parseInt","getComputedStyle","documentElement","getPropertyValue","renderTable","_ConfigProvider","ANTD_LOCALE","language","theme","token","ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES","Pagination","itemActiveBg","itemActiveBgDisabled","itemActiveColorDisabled","itemBg","itemInputBg","itemLinkBg","colorBgContainer","colorPrimary","colorPrimaryHover","colorBgTextHover","borderRadius","headerBorderRadius","bodySortBg","borderColor","expandIconBg","filterDropdownBg","filterDropdownMenuBg","fixedHeaderSortActiveBg","footerBg","footerColor","headerBg","headerColor","headerFilterHoverBg","headerSortActiveBg","headerSortHoverBg","headerSplitColor","rowExpandedBg","rowHoverBg","rowSelectedBg","rowSelectedHoverBg","stickyScrollBarBg","cellPaddingBlock","fontSize","fontWeightStrong","paddingContentVerticalLG","_Table","dataSource","spinning","indicator","Spinner","showSorterTooltip","hideOnSinglePage","showSizeChanger","total","pageSizeOptions","rowClassName","x","y","onScroll","onHeaderRow","onRow","record","rowIndex","event","ReactDragListView","DragColumn"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAUA,CAAIC,QAAQ,EAAEC,KAAK,EAAK;AACtC,EAAA,IAAMC,aAAa,GAAGC,YAAM,CAACH,QAAQ,CAAC,CAAA;AAEtCI,EAAAA,eAAS,CAAC,YAAM;IACdF,aAAa,CAACG,OAAO,GAAGL,QAAQ,CAAA;AAClC,GAAC,EAAE,CAACA,QAAQ,CAAC,CAAC,CAAA;AAEdI,EAAAA,eAAS,CAAC,YAAM;IAKd,IAAME,EAAE,GAAGC,UAAU,CAAC,YAAA;MAAA,OAAML,aAAa,CAACG,OAAO,EAAE,CAAA;AAAA,KAAA,EAAEJ,KAAK,CAAC,CAAA;IAE3D,OAAO,YAAA;MAAA,OAAMO,YAAY,CAACF,EAAE,CAAC,CAAA;AAAA,KAAA,CAAA;AAC/B,GAAC,EAAE,CAACL,KAAK,CAAC,CAAC,CAAA;AACb,CAAC;;ACRD;AACA,IAAMQ,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAAC,IAAA,EAKtB;AAAA,EAAA,IAJJC,YAAY,GAAAD,IAAA,CAAZC,YAAY;IACZC,gBAAgB,GAAAF,IAAA,CAAhBE,gBAAgB;IAChBC,sBAAsB,GAAAH,IAAA,CAAtBG,sBAAsB;IACtBC,yBAAyB,GAAAJ,IAAA,CAAzBI,yBAAyB,CAAA;EAEzB,IAAAC,eAAA,GAAoBC,2BAAc,EAAE;IAA5BC,CAAC,GAAAF,eAAA,CAADE,CAAC;IAAEC,IAAI,GAAAH,eAAA,CAAJG,IAAI,CAAA;AAEf,EAAA,oBACEC,KAAA,CAAAC,aAAA,CAACC,OAAO,EAAAC,QAAA,CAAA;AACNC,IAAAA,SAAS,EAAC,MAAA;AAAM,GAAA,EACZZ,YAAY,EAAA;IAChB,aAAY,EAAA,0BAAA;GAEZQ,CAAAA,eAAAA,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKG,IAAAA,SAAS,EAAC,8BAAA;AAA8B,GAAA,eAC3CJ,KAAA,CAAAC,aAAA,CAACI,UAAU,EAAA;AAACC,IAAAA,KAAK,EAAC,OAAA;AAAO,GAAA,EACtBZ,sBAAsB,IACrBa,eAAS,CAACR,IAAI,EAAED,CAAC,EAAE,+BAA+B,CAAC,CAC1C,eACbE,KAAA,CAAAC,aAAA,CAACO,MAAM,EAAA;AACL,IAAA,aAAA,EAAY,yBAAyB;AACrCF,IAAAA,KAAK,EAAC,MAAM;IACZG,KAAK,EACHd,yBAAyB,IACzBY,eAAS,CAACR,IAAI,EAAED,CAAC,EAAE,8BAA8B,CAClD;AACDY,IAAAA,OAAO,EAAEjB,gBAAAA;AAAiB,GAAA,CAC1B,CACE,CACE,CAAA;AAEd,CAAC;;ACpCD,IAAMkB,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAApB,IAAA,EAAA;AAAA,EAAA,IACxBC,YAAY,GAAAD,IAAA,CAAZC,YAAY;IACZoB,mBAAmB,GAAArB,IAAA,CAAnBqB,mBAAmB;IACnBC,uBAAuB,GAAAtB,IAAA,CAAvBsB,uBAAuB;IACvBC,mBAAmB,GAAAvB,IAAA,CAAnBuB,mBAAmB,CAAA;AAAA,EAAA,oBAEnBd,KAAA,CAAAC,aAAA,CAACC,OAAO,EAAAC,QAAA,CAAA;AACNC,IAAAA,SAAS,EAAC,MAAA;AAAM,GAAA,EACZZ,YAAY,EAAA;IAChB,aAAY,EAAA,yBAAA;GAEZQ,CAAAA,eAAAA,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKG,IAAAA,SAAS,EAAC,8BAAA;AAA8B,GAAA,eAC3CJ,KAAA,CAAAC,aAAA,CAACI,UAAU,EAAA;AAACC,IAAAA,KAAK,EAAC,OAAA;AAAO,GAAA,EAAEQ,mBAAmB,CAAc,eAC5Dd,KAAA,CAAAC,aAAA,CAACO,MAAM,EAAA;AACL,IAAA,aAAA,EAAY,wBAAwB;AACpCC,IAAAA,KAAK,EAAEI,uBAAwB;AAC/BP,IAAAA,KAAK,EAAC,MAAM;AACZI,IAAAA,OAAO,EAAEE,mBAAAA;AAAoB,GAAA,CAC7B,CACE,CACE,CAAA;AAAA,CACX;;ACfD,IAAMG,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,GAAG,EAAEC,YAAY,EAAK;EAC7C,IAAAC,SAAA,GAAsCC,cAAQ,CAAC,YAAA;AAAA,MAAA,OAC7CC,yBAAmB,CAACJ,GAAG,EAAEC,YAAY,CAAC,CAAA;KACvC,CAAA;IAAAI,UAAA,GAAAC,cAAA,CAAAJ,SAAA,EAAA,CAAA,CAAA;AAFMK,IAAAA,WAAW,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,cAAc,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAIlC,EAAA,IAAMI,QAAQ,GAAG,SAAXA,QAAQA,CAAGC,KAAK,EAAA;AAAA,IAAA,OACpBF,cAAc,CAAC,UAAAG,eAAe,EAAI;AAChC,MAAA,IAAMC,QAAQ,GACZ,OAAOF,KAAK,KAAK,UAAU,GAAGA,KAAK,CAACC,eAAe,CAAC,GAAGD,KAAK,CAAA;AAE9D,MAAA,IAAIG,WAAK,CAACD,QAAQ,CAAC,EAAE;QACnBE,4BAAsB,CAACd,GAAG,CAAC,CAAA;AAC7B,OAAC,MAAM;AACLe,QAAAA,uBAAiB,CAACf,GAAG,EAAEY,QAAQ,CAAC,CAAA;AAClC,OAAA;AAEA,MAAA,OAAOA,QAAQ,CAAA;AACjB,KAAC,CAAC,CAAA;AAAA,GAAA,CAAA;AAEJ,EAAA,OAAO,CAACL,WAAW,EAAEE,QAAQ,CAAC,CAAA;AAChC,CAAC;;AC9BD,IAAMO,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAAzC,IAAA,EAMjB;AAAA,EAAA,IALJ0C,SAAS,GAAA1C,IAAA,CAAT0C,SAAS;IACTC,OAAO,GAAA3C,IAAA,CAAP2C,OAAO;IACPC,UAAU,GAAA5C,IAAA,CAAV4C,UAAU;IACVC,cAAc,GAAA7C,IAAA,CAAd6C,cAAc;IACdC,YAAY,GAAA9C,IAAA,CAAZ8C,YAAY,CAAA;EAEZ,IAAI,CAACJ,SAAS,EAAE,OAAO;IAAEK,SAAS,EAAE,EAAE;AAAEJ,IAAAA,OAAO,EAAPA,OAAAA;GAAS,CAAA;AAEjD,EAAA,IAAMK,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,MAAM,EAAA;AAAA,IAAA,OAAI,CAAC,CAACA,MAAM,CAACC,KAAK,CAAA;AAAA,GAAA,CAAA;AAE9C,EAAA,IAAMH,SAAS,GAAG;AAChBI,IAAAA,SAAS,EAAE,SAAAA,SAAAA,CAACC,SAAS,EAAEC,OAAO,EAAK;MACjC,IAAIC,IAAI,GAAGF,SAAS,CAAA;MACpB,IAAIG,EAAE,GAAGF,OAAO,CAAA;AAChB,MAAA,IAAIP,YAAY,EAAE;QAChBQ,IAAI,GAAGF,SAAS,GAAG,CAAC,CAAA;QACpBG,EAAE,GAAGF,OAAO,GAAG,CAAC,CAAA;AAClB,OAAA;MAEA,IAAI,CAACV,OAAO,CAACW,IAAI,CAAC,IAAI,CAACX,OAAO,CAACY,EAAE,CAAC,EAAE,OAAA;AAEpC,MAAA,IAAIP,aAAa,CAACL,OAAO,CAACW,IAAI,CAAC,CAAC,IAAIN,aAAa,CAACL,OAAO,CAACY,EAAE,CAAC,CAAC,EAAE,OAAA;MAEhE,IAAMC,UAAU,GAAGC,UAAI,CAACH,IAAI,EAAEC,EAAE,EAAEZ,OAAO,CAAC,CAAA;MAC1CC,UAAU,CAACY,UAAU,CAAC,CAAA;MACtBX,cAAc,CAACW,UAAU,CAAC,CAAA;KAC3B;AACDE,IAAAA,YAAY,EACV,iEAAiE;AACnEC,IAAAA,cAAc,EAAE,eAAe;AAC/BC,IAAAA,cAAc,EAAE,yBAAA;GACjB,CAAA;EAED,OAAO;AAAEb,IAAAA,SAAS,EAATA,SAAS;AAAEJ,IAAAA,OAAO,EAAPA,OAAAA;GAAS,CAAA;AAC/B,CAAC;;AC/BD,IAAMkB,QAAQ,GAAG,SAAXA,QAAQA,CAAA7D,IAAA,EAAsB;AAAA,EAAA,IAAhB8D,SAAS,GAAA9D,IAAA,CAAT8D,SAAS,CAAA;EAC3B,IACEA,SAAS,KAAKC,0CAAiB,CAACC,GAAG,IACnCF,SAAS,KAAKG,wCAAe,CAACC,MAAM,EACpC;AACA,IAAA,oBAAOzD,KAAA,CAAAC,aAAA,CAACyD,kBAAO,EAAA;AAACC,MAAAA,IAAI,EAAE,EAAA;KAAM,CAAA,CAAA;AAC9B,GAAA;EAEA,IACEN,SAAS,KAAKC,0CAAiB,CAACM,IAAI,IACpCP,SAAS,KAAKG,wCAAe,CAACK,OAAO,EACrC;AACA,IAAA,oBAAO7D,KAAA,CAAAC,aAAA,CAAC6D,oBAAS,EAAA;AAACH,MAAAA,IAAI,EAAE,EAAA;KAAM,CAAA,CAAA;AAChC,GAAA;AAEA,EAAA,OAAO,IAAI,CAAA;AACb,CAAC;;;ACfD,IAAMI,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAAxE,IAAA,EAAwC;AAAA,EAAA,IAAlCyE,KAAK,GAAAzE,IAAA,CAALyE,KAAK;IAAEC,WAAW,GAAA1E,IAAA,CAAX0E,WAAW;AAAKC,IAAAA,IAAI,GAAAC,wBAAA,CAAA5E,IAAA,EAAA6E,WAAA,CAAA,CAAA;EACtD,IAAMC,UAAU,GAAGrF,YAAM,EAAE,CAAA;EAE3B,oBACEgB,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMG,IAAAA,SAAS,EAAC,eAAA;GACb,EAAA,OAAO4D,KAAK,KAAK,UAAU,GAAGA,KAAK,CAACE,IAAI,CAAC,GAAGF,KAAK,EACjDC,WAAW,iBACVjE,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAAsE,QAAA,EAAA,IAAA,eACEtE,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACEG,IAAAA,SAAS,EAAC,wCAAwC;AAClDmE,IAAAA,GAAG,EAAEF,UAAAA;AAAW,GAAA,eAEhBrE,KAAA,CAAAC,aAAA,CAACuE,oBAAS,EAAA;AAACC,IAAAA,KAAK,EAAC,cAAc;AAACd,IAAAA,IAAI,EAAE,EAAA;AAAG,GAAA,CAAG,CACvC,eACP3D,KAAA,CAAAC,aAAA,CAACyE,OAAO,EAAA;IACNC,QAAQ,EAAE,SAAAA,QAAA,GAAA;MAAA,OAAMC,QAAQ,CAACC,IAAI,CAAA;KAAC;AAC9BC,IAAAA,QAAQ,EAAC,QAAQ;AACjBC,IAAAA,SAAS,EAAEV,UAAAA;AAAW,GAAA,eAEtBrE,KAAA,CAAAC,aAAA,CAACI,UAAU,EAAA;AAAC2E,IAAAA,UAAU,EAAC,QAAQ;AAAC1E,IAAAA,KAAK,EAAC,OAAA;AAAO,GAAA,EAC1C2D,WAAW,CACD,CACL,CAEb,CACI,CAAA;AAEX,CAAC;;;ACzBD,IAAMgB,WAAW,GAAG,SAAdA,WAAWA,CAAA1F,IAAA,EAkBX;AAAA,EAAA,IAjBJ2F,QAAQ,GAAA3F,IAAA,CAAR2F,QAAQ;IACRC,UAAU,GAAA5F,IAAA,CAAV4F,UAAU;IACVC,YAAY,GAAA7F,IAAA,CAAZ6F,YAAY;IACZC,UAAU,GAAA9F,IAAA,CAAV8F,UAAU;IACVC,MAAM,GAAA/F,IAAA,CAAN+F,MAAM;IAAAC,cAAA,GAAAhG,IAAA,CACNiG,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,cAAA;IAAAE,gBAAA,GAAAlG,IAAA,CAChBmG,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,gBAAA;IACnBE,aAAa,GAAApG,IAAA,CAAboG,aAAa;IACbC,qBAAqB,GAAArG,IAAA,CAArBqG,qBAAqB;IACrBC,YAAY,GAAAtG,IAAA,CAAZsG,YAAY;IACZC,WAAW,GAAAvG,IAAA,CAAXuG,WAAW;IACXC,cAAc,GAAAxG,IAAA,CAAdwG,cAAc;IACdC,cAAc,GAAAzG,IAAA,CAAdyG,cAAc;IACdC,iBAAiB,GAAA1G,IAAA,CAAjB0G,iBAAiB;IACjBzD,MAAM,GAAAjD,IAAA,CAANiD,MAAM;IAAA0D,gBAAA,GAAA3G,IAAA,CACN4G,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,gBAAA;AACbE,IAAAA,WAAW,GAAAjC,wBAAA,CAAA5E,IAAA,EAAA6E,WAAA,CAAA,CAAA;AAEd,EAAA,IAAMiC,eAAe,GAAGb,SAAS,IAAIc,mBAAS,CAACT,YAAY,CAAC,CAAA;AAC5D,EAAA,IAAMU,iBAAiB,GAAGb,WAAW,IAAIY,mBAAS,CAACP,cAAc,CAAC,CAAA;EAClE,IAAMS,cAAc,GAAG,CAACC,aAAO,CAACN,WAAW,CAAC,IAAIG,mBAAS,CAACL,iBAAiB,CAAC,CAAA;AAC5E,EAAA,IAAMS,WAAW,GACfvB,UAAU,IACVkB,eAAe,IACfjB,YAAY,IACZoB,cAAc,IACbF,mBAAS,CAAC9D,MAAM,CAAC,IAAIoD,qBAAsB,CAAA;AAE9C,EAAA,oBACE5F,KAAA,CAAAC,aAAA,CAAAE,IAAAA,EAAAA,QAAA,KACMiG,WAAW,EAAA;AACfpC,IAAAA,KAAK,EAAC,EAAE;AACRtD,IAAAA,OAAO,EAAEyE,UAAU,GAAGwB,cAAI,GAAGP,WAAW,CAAC1F,OAAAA;GAEzCV,CAAAA,eAAAA,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEG,IAAAA,SAAS,EAAC,8DAA8D;AACxE,IAAA,SAAA,EAAA,EAAA,CAAAwG,MAAA,CAAYC,eAAS,CAACT,WAAW,CAACpC,KAAK,CAAC,EAAA,eAAA,CAAA;GAExChE,eAAAA,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKG,IAAAA,SAAS,EAAC,4FAAA;GACZ8E,EAAAA,QAAQ,CACL,EACLwB,WAAW,iBACV1G,KAAA,CAAAC,aAAA,CAAC6G,uCAAc,EAAA;AAEXtE,IAAAA,MAAM,EAANA,MAAM;AACNgE,IAAAA,cAAc,EAAdA,cAAc;AACdpB,IAAAA,YAAY,EAAZA,YAAY;AACZmB,IAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBX,IAAAA,qBAAqB,EAArBA,qBAAqB;AACrBD,IAAAA,aAAa,EAAbA,aAAa;AACbR,IAAAA,UAAU,EAAVA,UAAU;AACVgB,IAAAA,WAAW,EAAXA,WAAW;AACXL,IAAAA,WAAW,EAAXA,WAAW;AACXC,IAAAA,cAAc,EAAdA,cAAc;AACdC,IAAAA,cAAc,EAAdA,cAAc;AACdH,IAAAA,YAAY,EAAZA,YAAY;AACZI,IAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBX,IAAAA,MAAM,EAANA,MAAM;AACND,IAAAA,UAAU,EAAVA,UAAU;AAEZG,IAAAA,SAAS,EAAEa,eAAAA;AAAgB,GAAA,CAE9B,CACG,CACH,CAAA;AAET,CAAC;;;ACrED,IAAMU,UAAU,GAAG,SAAbA,UAAUA,CAAGC,KAAK,EAAI;AAC1B,EAAA,IAAQC,QAAQ,GAAmDD,KAAK,CAAhEC,QAAQ;IAAEC,KAAK,GAA4CF,KAAK,CAAtDE,KAAK;IAAEC,YAAY,GAA8BH,KAAK,CAA/CG,YAAY;IAAE/G,SAAS,GAAmB4G,KAAK,CAAjC5G,SAAS;AAAKgH,IAAAA,SAAS,GAAAjD,wBAAA,CAAK6C,KAAK,EAAA5C,WAAA,CAAA,CAAA;EAExE,IAAI,CAAC8C,KAAK,EAAE;IACV,oBACElH,KAAA,CAAAC,aAAA,CAACgF,WAAW,EAAA9E,QAAA,KACNiH,SAAS,EAAA;AACbhH,MAAAA,SAAS,EAAEiH,UAAU,CAACjH,SAAS,EAAE,cAAc,CAAA;KAC/C,CAAA,CAAA,CAAA;AAEN,GAAA;AAEA,EAAA,oBACEJ,KAAA,CAAAC,aAAA,CAACqH,wBAAS,EAAA;AACFL,IAAAA,QAAQ,EAARA,QAAQ;AAAEE,IAAAA,YAAY,EAAZA,YAAY;AAAED,IAAAA,KAAK,EAALA,KAAK;AACnCK,IAAAA,aAAa,EAAE;AAAEC,MAAAA,oBAAoB,EAAE,KAAA;KAAQ;AAC/CC,IAAAA,MAAM,EAAE,CAAE;IACVC,MAAM,eACJ1H,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACEG,MAAAA,SAAS,EAAC,wBAAwB;MAClCM,OAAO,EAAE,SAAAA,OAAAA,CAAAiH,CAAC,EAAA;QAAA,OAAIA,CAAC,CAACC,eAAe,EAAE,CAAA;AAAA,OAAA;KAEpC,CAAA;AACDC,IAAAA,aAAa,EAAE,SAAAA,aAAAF,CAAAA,CAAC,EAAI;MAClBA,CAAC,CAACG,cAAc,EAAE,CAAA;AACpB,KAAA;GAEA9H,eAAAA,KAAA,CAAAC,aAAA,CAACgF,WAAW,EAAA9E,QAAA,KACNiH,SAAS,EAAA;AACbhH,IAAAA,SAAS,EAAEiH,UAAU,CAACjH,SAAS,EAAE,cAAc,CAAA;AAAE,GAAA,CAAA,CACjD,CACQ,CAAA;AAEhB,CAAC;;;ACjCD,IAAM2H,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGf,KAAK,EAAI;AACnC,EAAA,IAAQC,QAAQ,GAAuDD,KAAK,CAApEC,QAAQ;IAAEC,KAAK,GAAgDF,KAAK,CAA1DE,KAAK;IAAEC,aAAY,GAAkCH,KAAK,CAAnDG,YAAY;IAAEU,cAAa,GAAmBb,KAAK,CAArCa,aAAa;AAAKT,IAAAA,SAAS,GAAAjD,wBAAA,CAAK6C,KAAK,EAAA5C,WAAA,CAAA,CAAA;AAC5E,EAAA,IAAAlD,SAAA,GAAoCC,cAAQ,CAAC,KAAK,CAAC;IAAAE,UAAA,GAAAC,cAAA,CAAAJ,SAAA,EAAA,CAAA,CAAA;AAA5C8G,IAAAA,UAAU,GAAA3G,UAAA,CAAA,CAAA,CAAA;AAAE4G,IAAAA,aAAa,GAAA5G,UAAA,CAAA,CAAA,CAAA,CAAA;EAEhC,IAAI,CAAC6F,KAAK,EAAE;AACV,IAAA,oBAAOlH,KAAA,CAAAC,aAAA,CAACgF,WAAW,EAAKmC,SAAS,CAAI,CAAA;AACvC,GAAA;AAEA,EAAA,oBACEpH,KAAA,CAAAC,aAAA,CAACqH,wBAAS,EAAAY,eAAA,CAAA;AACFjB,IAAAA,QAAQ,EAARA,QAAQ;AAAEE,IAAAA,YAAY,EAAZA,aAAY;AAAED,IAAAA,KAAK,EAALA,KAAK;AACnCK,IAAAA,aAAa,EAAE;AAAEC,MAAAA,oBAAoB,EAAE,KAAA;KAAQ;AAC/CC,IAAAA,MAAM,EAAE,CAAE;IACVC,MAAM,eACJ1H,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACEG,MAAAA,SAAS,EAAE+H,UAAU,CAAC,wBAAwB,EAAE;AAC9C,QAAA,kCAAkC,EAAEH,UAAAA;AACtC,OAAC,CAAE;MACHtH,OAAO,EAAE,SAAAA,OAAAA,CAAAiH,CAAC,EAAA;QAAA,OAAIA,CAAC,CAACC,eAAe,EAAE,CAAA;AAAA,OAAA;KAEjC5H,eAAAA,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMG,MAAAA,SAAS,EAAC,8CAAA;AAA8C,KAAA,CAAG,CAEpE;AACDyH,IAAAA,aAAa,EAAE,SAAAA,aAAAA,CAACF,CAAC,EAAES,IAAI,EAAK;MAC1BT,CAAC,CAACG,cAAc,EAAE,CAAA;MAClBG,aAAa,CAAC,IAAI,CAAC,CAAA;MACnBJ,cAAa,KAAA,IAAA,IAAbA,cAAa,KAAbA,KAAAA,CAAAA,IAAAA,cAAa,CAAGF,CAAC,EAAES,IAAI,CAAC,CAAA;AAC1B,KAAA;AAAE,GAAA,EAAA,cAAA,EACY,SAAAjB,YAAAA,CAACQ,CAAC,EAAES,IAAI,EAAK;IACzBH,aAAa,CAAC,KAAK,CAAC,CAAA;IACpBd,aAAY,KAAA,IAAA,IAAZA,aAAY,KAAZA,KAAAA,CAAAA,IAAAA,aAAY,CAAGQ,CAAC,EAAES,IAAI,CAAC,CAAA;GACxB,CAAA,eAEDpI,KAAA,CAAAC,aAAA,CAACgF,WAAW,EAAKmC,SAAS,CAAI,CACpB,CAAA;AAEhB,CAAC;;;ACnCD,IAAMiB,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAA9I,IAAA,EAAA;AAAA,EAAA,IAAMa,SAAS,GAAAb,IAAA,CAATa,SAAS;AAAK4G,IAAAA,KAAK,GAAA7C,wBAAA,CAAA5E,IAAA,EAAA6E,WAAA,CAAA,CAAA;EAAA,oBAClDpE,KAAA,CAAAC,aAAA,CAACgF,WAAW,EAAA9E,QAAA,KAAK6G,KAAK,EAAA;AAAE5G,IAAAA,SAAS,EAAEiH,UAAU,CAACjH,SAAS,EAAE,cAAc,CAAA;GAAK,CAAA,CAAA,CAAA;AAAA,CAC7E;;ACMD,IAAMkI,2BAA2B,GAAG,SAA9BA,2BAA2BA,GAAS;AACxC,EAAA,IAAMC,QAAQ,GAAGC,kBAAkB,CAACC,MAAM,CAACC,QAAQ,CAACH,QAAQ,CAAC,CAACI,OAAO,CACnE,KAAK,EACL,EAAE,CACH,CAAA;EAED,IAAIC,IAAI,GAAG,CAAC,CAAA;AACZ,EAAA,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGN,QAAQ,CAACO,MAAM,EAAED,CAAC,EAAE,EAAE;AACxC,IAAA,IAAME,KAAI,GAAGR,QAAQ,CAACS,UAAU,CAACH,CAAC,CAAC,CAAA;IACnCD,IAAI,GAAG,CAACA,IAAI,IAAI,CAAC,IAAIA,IAAI,GAAGG,KAAI,CAAA;AAChCH,IAAAA,IAAI,GAAGA,IAAI,GAAGA,IAAI,CAAC;AACrB,GAAA;;AAEA,EAAA,OAAOK,IAAI,CAACC,GAAG,CAACN,IAAI,CAAC,CAACO,QAAQ,CAAC,EAAE,CAAC,CAACC,WAAW,EAAE,CAAA;AAClD,CAAC,CAAA;AAEM,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAA9J,IAAA,EAAoD;AAAA,EAAA,IAA9C+J,kBAAkB,GAAA/J,IAAA,CAAlB+J,kBAAkB;IAAEC,mBAAmB,GAAAhK,IAAA,CAAnBgK,mBAAmB,CAAA;AACrE,EAAA,IAAIA,mBAAmB,IAAID,kBAAkB,EAAE,OAAO;AAAEE,IAAAA,IAAI,EAAEzC,UAAAA;GAAY,CAAA;EAE1E,IAAIuC,kBAAkB,EAAE,OAAO;AAAEE,IAAAA,IAAI,EAAEzB,mBAAAA;GAAqB,CAAA;EAE5D,IAAIwB,mBAAmB,EAAE,OAAO;AAAEC,IAAAA,IAAI,EAAEnB,qBAAAA;GAAuB,CAAA;EAE/D,OAAO;AAAEmB,IAAAA,IAAI,EAAEvE,WAAAA;GAAa,CAAA;AAC9B,CAAC,CAAA;AAEM,IAAMwE,YAAY,GAAG,SAAfA,YAAYA,CAAIC,MAAM,EAAEC,MAAM,EAAA;EAAA,OACzCC,SAAG,CAACC,cAAQ,CAACC,QAAE,EAAEJ,MAAM,CAAC,EAAEC,MAAM,CAAC,CAAA;AAAA,CAAA,CAAA;AAE5B,IAAMI,6BAA6B,GAAG,SAAhCA,6BAA6BA,GAAA;EAAA,OACxCtB,MAAM,CAACuB,UAAU,GAAG,GAAG,GACnBC,8DAAqC,GACrCC,+DAAsC,CAAA;AAAA,CAAA,CAAA;AAErC,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGC,UAAU,EAAI;AAC7C,EAAA,IAAMC,eAAe,GAAG,IAAIC,GAAG,CAC7BF,UAAU,CAACG,GAAG,CAAC,UAACC,GAAG,EAAEC,KAAK,EAAA;AAAA,IAAA,OAAK,CAACD,GAAG,CAACE,SAAS,EAAED,KAAK,CAAC,CAAA;AAAA,GAAA,CAAC,CACvD,CAAA;AAED,EAAA,OAAO,UAACE,CAAC,EAAEC,CAAC,EAAK;AACf,IAAA,IAAMC,MAAM,GAAGvE,mBAAS,CAACqE,CAAC,CAAClI,KAAK,CAAC,CAAA;AACjC,IAAA,IAAMqI,MAAM,GAAGxE,mBAAS,CAACsE,CAAC,CAACnI,KAAK,CAAC,CAAA;IACjC,IAAMsI,MAAM,GAAGV,eAAe,CAACW,GAAG,CAACL,CAAC,CAACD,SAAS,CAAC,CAAA;IAC/C,IAAMO,MAAM,GAAGZ,eAAe,CAACW,GAAG,CAACJ,CAAC,CAACF,SAAS,CAAC,CAAA;IAE/C,IAAIG,MAAM,KAAKC,MAAM,EAAE,OAAOD,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;IAE7C,OAAOE,MAAM,GAAGE,MAAM,CAAA;GACvB,CAAA;AACH,CAAC,CAAA;AAEM,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAGd,UAAU,EAAA;AAAA,EAAA,OACvCe,UAAI,CACFC,YAAM,CAAC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAG5I,KAAK,GAAA4I,KAAA,CAAL5I,KAAK,CAAA;IAAA,OAAO6D,mBAAS,CAAC7D,KAAK,CAAC,CAAA;GAAC,CAAA,EACvC6I,WAAK,CAAC,WAAW,CAAC,CACnB,CAAClB,UAAU,CAAC,CAAA;AAAA,CAAA,CAAA;AAER,IAAMmB,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIf,GAAG,EAAEnF,UAAU,EAAA;EAAA,OAChDmG,YAAM,CAACnG,UAAU,CAACoG,KAAK,EAAEjB,GAAG,CAACE,SAAS,CAAC,IAAIc,YAAM,CAACnG,UAAU,CAACoG,KAAK,EAAEjB,GAAG,CAACxJ,GAAG,CAAC,GACxEqE,UAAU,CAACqG,KAAK,GAChB,IAAI,CAAA;AAAA,CAAA,CAAA;AAEH,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAInB,GAAG,EAAEoB,aAAa,EAAA;EAAA,OACnD,CAAAA,aAAa,KAAbA,IAAAA,IAAAA,aAAa,uBAAbA,aAAa,CAAEC,OAAO,CAACrB,GAAG,CAACE,SAAS,CAAC,MAAK,CAAC,CAAC,GACxCoB,4CAAmB,CAACC,IAAI,GACxB,IAAI,CAAA;AAAA,CAAA,CAAA;AAEH,IAAMC,+BAA+B,GAAG,SAAlCA,+BAA+BA,CAAGC,qBAAqB,EAAI;EACtE,IAAMC,MAAM,GAAG5F,mBAAS,CAAC2F,qBAAqB,CAAC,GAC3CA,qBAAqB,GACrB3D,2BAA2B,EAAE,CAAA;EAEjC,OAAA1B,UAAAA,CAAAA,MAAA,CAAkBsF,MAAM,EAAA,gBAAA,CAAA,CAAA;AAC1B,CAAC,CAAA;AAEM,IAAMC,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAGC,WAAW,EAAI;EACvD,IAAM/G,UAAU,GAAG,EAAE,CAAA;EACrB,IACEiB,mBAAS,CAAC8F,WAAW,CAACC,OAAO,CAAC,IAC9B/F,mBAAS,CAAC8F,WAAW,CAACE,QAAQ,CAAC,IAC/BhG,mBAAS,CAAChD,0CAAiB,CAAC8I,WAAW,CAACE,QAAQ,CAAC,CAAC,EAClD;AACAjH,IAAAA,UAAU,CAACoG,KAAK,GAAGW,WAAW,CAACC,OAAO,CAACxC,QAAQ,CAAC,GAAG,CAAC,GAChDuC,WAAW,CAACC,OAAO,CAACE,KAAK,CAAC,GAAG,CAAC,CAAChC,GAAG,CAACiC,0BAAgB,CAAC,GACpDA,0BAAgB,CAACJ,WAAW,CAACC,OAAO,CAAC,CAAA;IACzChH,UAAU,CAACqG,KAAK,GAAGpI,0CAAiB,CAAC8I,WAAW,CAACE,QAAQ,CAAC,CAAA;AAC5D,GAAA;AAEA,EAAA,OAAOjH,UAAU,CAAA;AACnB,CAAC,CAAA;AAEM,IAAMoH,YAAY,GAAG,SAAfA,YAAYA,CAAGhB,KAAK,EAAI;AACnC,EAAA,IAAIiB,KAAK,CAACC,OAAO,CAAClB,KAAK,CAAC,EAAE;IACxB,OAAOA,KAAK,CAAClB,GAAG,CAACqC,0BAAgB,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC9C,GAAA;EAEA,OAAOD,0BAAgB,CAACnB,KAAK,CAAC,CAAA;AAChC,CAAC;;;;ACpGD,IAAMqB,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAAvN,IAAA,EAiBnB;AAAA,EAAA,IAhBJ2C,OAAO,GAAA3C,IAAA,CAAP2C,OAAO;IACPkI,UAAU,GAAA7K,IAAA,CAAV6K,UAAU;IACVwB,aAAa,GAAArM,IAAA,CAAbqM,aAAa;IACbzJ,UAAU,GAAA5C,IAAA,CAAV4C,UAAU;IACVF,SAAS,GAAA1C,IAAA,CAAT0C,SAAS;IACTmD,YAAY,GAAA7F,IAAA,CAAZ6F,YAAY;IACZQ,qBAAqB,GAAArG,IAAA,CAArBqG,qBAAqB;IACrBmH,WAAW,GAAAxN,IAAA,CAAXwN,WAAW;IACX3K,cAAc,GAAA7C,IAAA,CAAd6C,cAAc;IACd2D,cAAc,GAAAxG,IAAA,CAAdwG,cAAc;IACdiH,UAAU,GAAAzN,IAAA,CAAVyN,UAAU;IACV3H,UAAU,GAAA9F,IAAA,CAAV8F,UAAU;IACVQ,YAAY,GAAAtG,IAAA,CAAZsG,YAAY;IACZG,cAAc,GAAAzG,IAAA,CAAdyG,cAAc;IACdC,iBAAiB,GAAA1G,IAAA,CAAjB0G,iBAAiB;IACjBgH,kBAAkB,GAAA1N,IAAA,CAAlB0N,kBAAkB,CAAA;AAElB,EAAA,IAAMC,YAAY,GAChB,SADIA,YAAYA,CAChBzC,KAAK,EAAA;AAAA,IAAA,OACL,UAAC0C,CAAC,EAAA9B,KAAA,EAAe;AAAA,MAAA,IAAX1H,IAAI,GAAA0H,KAAA,CAAJ1H,IAAI,CAAA;AACR,MAAA,IAAMyJ,WAAW,GAAAC,kBAAA,CAAOnL,OAAO,CAAC,CAAA;MAChCkL,WAAW,CAAC3C,KAAK,CAAC,GAAA6C,eAAA,CAAAA,eAAA,CAAQF,EAAAA,EAAAA,WAAW,CAAC3C,KAAK,CAAC,CAAA,EAAA,EAAA,EAAA;QAAEvD,KAAK,EAAEvD,IAAI,CAACuD,KAAAA;OAAO,CAAA,CAAA;MACjE/E,UAAU,CAACiL,WAAW,CAAC,CAAA;KACxB,CAAA;AAAA,GAAA,CAAA;EAEH,IAAMG,mBAAmB,GAAGC,aAAO,CACjC,YAAA;IAAA,OACEtL,OAAO,CACJqI,GAAG,CAAC,UAACC,GAAG,EAAEC,KAAK,EAAK;AACnB,MAAA,IAAMhI,KAAK,GAAGkJ,kBAAkB,CAACnB,GAAG,EAAEoB,aAAa,CAAC,CAAA;AAEpD,MAAA,IAAM6B,cAAc,GAAAH,eAAA,CAAAA,eAAA,KACf9C,GAAG,CAAA,EAAA,EAAA,EAAA;QACNkD,YAAY,EAAE,SAAAA,YAAAA,CAAAlL,MAAM,EAAA;UAAA,OAAK;YACvB0E,KAAK,EAAE1E,MAAM,CAAC0E,KAAK;YACnBD,QAAQ,EAAEhF,SAAS,GAAGiL,YAAY,CAACzC,KAAK,CAAC,GAAG9D,cAAI;YAChDQ,YAAY,EAAE,SAAAA,YAAA,GAAA;AAAA,cAAA,OAAOlF,SAAS,GAAGG,cAAc,CAACF,OAAO,CAAC,GAAGyE,cAAI,CAAA;aAAC;AAChExB,YAAAA,UAAU,EAAEmB,mBAAS,CAACkE,GAAG,CAACmD,MAAM,CAAC;AACjCrI,YAAAA,MAAM,EAAE0H,UAAU;AAClB3H,YAAAA,UAAU,EAAVA,UAAU;AACVQ,YAAAA,YAAY,EAAZA,YAAY;AACZG,YAAAA,cAAc,EAAdA,cAAc;AACdC,YAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBL,YAAAA,qBAAqB,EAArBA,qBAAqB;AACrBR,YAAAA,YAAY,EAAEA,YAAY,IAAI,CAAC3C,KAAK;YACpCqD,WAAW,EAAE,SAAAA,WAAAA,CAAA8H,cAAc,EAAA;AAAA,cAAA,OACzBb,WAAW,CAACtC,KAAK,GAAGmD,cAAc,CAAC,CAAA;AAAA,aAAA;YACrCjI,aAAa,EAAE,CAAC,CAAClD,KAAK;AACtBsD,YAAAA,cAAc,EAAdA,cAAc;YACdP,SAAS,EAAEgF,GAAG,CAAChF,SAAS;YACxBE,WAAW,EAAE8E,GAAG,CAAC9E,WAAW;YAC5BS,WAAW,EAAEqE,GAAG,CAACrE,WAAW;AAC5B3D,YAAAA,MAAM,EAAEgI,GAAG;YACX,iBAAiB,EAAEhI,MAAM,CAACqL,KAAAA;WAC3B,CAAA;SAAC;AACFC,QAAAA,QAAQ,EAAE1K,QAAQ;AAClBC,QAAAA,SAAS,EAAEkI,kBAAkB,CAACf,GAAG,EAAEnF,UAAU,CAAC;AAC9C5C,QAAAA,KAAK,EAALA,KAAK;AACLuB,QAAAA,KAAK,EAAEwG,GAAG,CAACvG,WAAW,GAClB,UAAA+C,KAAK,EAAA;UAAA,oBACHhH,KAAA,CAAAC,aAAA,CAAC8D,iBAAiB,EAAA5D,QAAA,KACZ6G,KAAK,EAAA;YACT/C,WAAW,EAAEuG,GAAG,CAACvG,WAAY;YAC7BD,KAAK,EAAEwG,GAAG,CAACxG,KAAAA;WACX,CAAA,CAAA,CAAA;SACH,GACDwG,GAAG,CAACxG,KAAAA;OACT,CAAA,CAAA;AAED,MAAA,IAAI,CAAC+J,SAAG,CAAC,UAAU,EAAEvD,GAAG,CAAC,EAAEiD,cAAc,CAACO,QAAQ,GAAG,IAAI,CAAA;AAEzD,MAAA,OAAOP,cAAc,CAAA;KACtB,CAAC,CACDQ,IAAI,CAAC9D,iBAAiB,CAACC,UAAU,CAAC,CAAC,CAAA;AAAA,GAAA,EACxC,CACElI,OAAO,EACPmD,UAAU,EACV4H,kBAAkB,EAClBjH,cAAc,EACd4F,aAAa,EACbxB,UAAU,CACX,CACF,CAAA;EAED,OAAO;AAAElI,IAAAA,OAAO,EAAEqL,mBAAAA;GAAqB,CAAA;AACzC,CAAC;;;;ACxFD,IAAMW,UAAU,GAAG,SAAbA,UAAUA,CAAA3O,IAAA,EAqBV;AAAA,EAAA,IApBJ2C,OAAO,GAAA3C,IAAA,CAAP2C,OAAO;IACPkI,UAAU,GAAA7K,IAAA,CAAV6K,UAAU;IACVjI,UAAU,GAAA5C,IAAA,CAAV4C,UAAU;IACVgM,eAAe,GAAA5O,IAAA,CAAf4O,eAAe;IACfC,gBAAgB,GAAA7O,IAAA,CAAhB6O,gBAAgB;IAChBhJ,YAAY,GAAA7F,IAAA,CAAZ6F,YAAY;IACZQ,qBAAqB,GAAArG,IAAA,CAArBqG,qBAAqB;IACrBmH,WAAW,GAAAxN,IAAA,CAAXwN,WAAW;IACX3K,cAAc,GAAA7C,IAAA,CAAd6C,cAAc;IACd2D,cAAc,GAAAxG,IAAA,CAAdwG,cAAc;IACd1D,YAAY,GAAA9C,IAAA,CAAZ8C,YAAY;IACZgD,UAAU,GAAA9F,IAAA,CAAV8F,UAAU;IACVgJ,aAAa,GAAA9O,IAAA,CAAb8O,aAAa;IACbxI,YAAY,GAAAtG,IAAA,CAAZsG,YAAY;IACZI,iBAAiB,GAAA1G,IAAA,CAAjB0G,iBAAiB;IACjBqI,aAAa,GAAA/O,IAAA,CAAb+O,aAAa;IACbrB,kBAAkB,GAAA1N,IAAA,CAAlB0N,kBAAkB;IAClBsB,qBAAqB,GAAAhP,IAAA,CAArBgP,qBAAqB;IACrBC,0BAA0B,GAAAjP,IAAA,CAA1BiP,0BAA0B;IAC1BvC,qBAAqB,GAAA1M,IAAA,CAArB0M,qBAAqB,CAAA;EAErB,IAAAwC,gBAAA,GAA0C1N,eAAe,CACvDiL,+BAA+B,CAACC,qBAAqB,CAAC,CACvD;IAAAyC,iBAAA,GAAApN,cAAA,CAAAmN,gBAAA,EAAA,CAAA,CAAA;AAFM7C,IAAAA,aAAa,GAAA8C,iBAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,gBAAgB,GAAAD,iBAAA,CAAA,CAAA,CAAA,CAAA;EAItC,IAAM1I,cAAc,GAAG4I,iBAAW,CAChC,UAACjJ,aAAa,EAAA0F,KAAA,EAAoB;AAAA,IAAA,IAAhBX,SAAS,GAAAW,KAAA,CAATX,SAAS,CAAA;AACzB,IAAA,IAAMmE,cAAc,GAAGlJ,aAAa,GAChCmJ,aAAO,CAAC,CAACpE,SAAS,CAAC,EAAEkB,aAAa,CAAC,GACnCmD,YAAM,CAACrE,SAAS,EAAEkB,aAAa,CAAC,CAAA;IAEpC+C,gBAAgB,CAACE,cAAc,CAAC,CAAA;AAClC,GAAC,EACD,CAACjD,aAAa,EAAE+C,gBAAgB,CAAC,CAClC,CAAA;AAED1P,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAIwH,aAAO,CAAC2D,UAAU,CAAC,IAAIwB,aAAa,EAAE,OAAA;AAE1C,IAAA,IAAMoD,SAAS,GAAG9D,eAAe,CAACd,UAAU,CAAC,CAAA;IAC7CuE,gBAAgB,CAACK,SAAS,CAAC,CAAA;AAC7B,GAAC,EAAE,CAAC5E,UAAU,EAAEuE,gBAAgB,CAAC,CAAC,CAAA;EAElC,IAAAM,kBAAA,GAAsBjN,iBAAiB,CAAC;AACtCC,MAAAA,SAAS,EAAEmM,gBAAgB;AAC3BlM,MAAAA,OAAO,EAAPA,OAAO;AACPC,MAAAA,UAAU,EAAVA,UAAU;AACVC,MAAAA,cAAc,EAAdA,cAAc;AACdC,MAAAA,YAAY,EAAZA,YAAAA;AACF,KAAC,CAAC;IANMC,SAAS,GAAA2M,kBAAA,CAAT3M,SAAS,CAAA;AAQjB,EAAA,IAAM0K,UAAU,GAAG,SAAbA,UAAUA,CAAGW,MAAM,EAAI;AAAA,IAAA,IAAAuB,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA,CAAA;AAC3B,IAAA,IAAIC,aAAa,GAAA/B,eAAA,CAAA,EAAA,EAAQK,MAAM,CAAE,CAAA;IACjC,IACEnC,YAAM,CACJxE,WAAK,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAEqI,aAAa,CAAC,EACxCrI,WAAK,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE3B,UAAU,CAAC,CACtC,EACD;AACAgK,MAAAA,aAAa,GAAG;AACd5D,QAAAA,KAAK,EAAE,IAAI;AACXC,QAAAA,KAAK,EAAE,IAAI;AACXlJ,QAAAA,MAAM,EAAE,IAAI;AACZ8M,QAAAA,SAAS,EAAE,IAAA;OACZ,CAAA;AACH,KAAA;IACAjB,aAAa,CAACgB,aAAa,CAAC,CAAA;AAC5Bf,IAAAA,aAAa,aAAbA,aAAa,KAAA,KAAA,CAAA,IAAbA,aAAa,CACX,CAAA,CAAAY,qBAAA,GAAAjC,kBAAkB,CAAC/N,OAAO,cAAAgQ,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAA1BA,qBAAA,CAA4BK,UAAU,KAAI,EAAE,EAC5C,CAAA,CAAAJ,sBAAA,GAAAlC,kBAAkB,CAAC/N,OAAO,MAAA,IAAA,IAAAiQ,sBAAA,KAA1BA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,sBAAA,CAA4BK,OAAO,KAAI,EAAE,EAAAlC,eAAA,CAAA,EAAA,EACpC+B,aAAa,CACnB,CAAA,CAAA;IAEDb,0BAA0B,IACxBD,qBAAqB,CACnB,CAAA,CAAAa,sBAAA,GAAAnC,kBAAkB,CAAC/N,OAAO,MAAA,IAAA,IAAAkQ,sBAAA,KAA1BA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,sBAAA,CAA4BG,UAAU,KAAI,EAAE,EAC5CF,aAAa,CACd,CAAA;GACJ,CAAA;EAED,IAAAI,oBAAA,GAAyC3C,mBAAmB,CAAC;AAC3D5K,MAAAA,OAAO,EAAPA,OAAO;AACPkI,MAAAA,UAAU,EAAVA,UAAU;AACVwB,MAAAA,aAAa,EAAbA,aAAa;AACbzJ,MAAAA,UAAU,EAAVA,UAAU;AACVF,MAAAA,SAAS,EAAEkM,eAAe;AAC1B/I,MAAAA,YAAY,EAAZA,YAAY;AACZQ,MAAAA,qBAAqB,EAArBA,qBAAqB;AACrBmH,MAAAA,WAAW,EAAXA,WAAW;AACX3K,MAAAA,cAAc,EAAdA,cAAc;AACd2D,MAAAA,cAAc,EAAdA,cAAc;AACdiH,MAAAA,UAAU,EAAVA,UAAU;AACV3H,MAAAA,UAAU,EAAVA,UAAU;AACVQ,MAAAA,YAAY,EAAZA,YAAY;AACZI,MAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBgH,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBjH,MAAAA,cAAc,EAAdA,cAAAA;AACF,KAAC,CAAC;IAjBeuH,mBAAmB,GAAAkC,oBAAA,CAA5BvN,OAAO,CAAA;EAmBf,OAAO;AAAEI,IAAAA,SAAS,EAATA,SAAS;AAAEJ,IAAAA,OAAO,EAAEqL,mBAAAA;GAAqB,CAAA;AACpD,CAAC;;ACrGD,IAAMmC,YAAY,GAAG,SAAfA,YAAYA,GAAS;EACzB,IAAMtD,WAAW,GAAGuD,6BAAc,EAAE,CAAA;EACpC,IAAAzO,SAAA,GAAoCC,cAAQ,CAAC,YAAA;MAAA,OAC3CgL,0BAA0B,CAACC,WAAW,CAAC,CAAA;KACxC,CAAA;IAAA/K,UAAA,GAAAC,cAAA,CAAAJ,SAAA,EAAA,CAAA,CAAA;AAFMmE,IAAAA,UAAU,GAAAhE,UAAA,CAAA,CAAA,CAAA;AAAEgN,IAAAA,aAAa,GAAAhN,UAAA,CAAA,CAAA,CAAA,CAAA;AAIhCpC,EAAAA,eAAS,CAAC,YAAM;AACdoP,IAAAA,aAAa,CAAClC,0BAA0B,CAACC,WAAW,CAAC,CAAC,CAAA;AACxD,GAAC,EAAE,CAACA,WAAW,aAAXA,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAXA,WAAW,CAAEC,OAAO,EAAED,WAAW,aAAXA,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAXA,WAAW,CAAEE,QAAQ,CAAC,CAAC,CAAA;EAEjD,IAAMsD,OAAO,GAAGC,yBAAU,EAAE,CAAA;EAE5B,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIP,UAAU,EAAE5B,MAAM,EAAK;AAChD,IAAA,IAAMoC,MAAM,GAAG;AACb1D,MAAAA,OAAO,EAAEsB,MAAM,CAACjC,KAAK,GAAGe,YAAY,CAACkB,MAAM,CAAClC,KAAK,CAAC,GAAGuE,SAAS;AAC9D1D,MAAAA,QAAQ,EAAE9I,wCAAe,CAACmK,MAAM,CAACjC,KAAK,CAAC;MACvCuE,IAAI,EAAEV,UAAU,CAACrQ,OAAAA;KAClB,CAAA;AAED,IAAA,IAAMqJ,QAAQ,GAAGE,MAAM,CAACC,QAAQ,CAACH,QAAQ,CAAA;AACzCqH,IAAAA,OAAO,CAACM,IAAI,CAACC,cAAQ,CAAC5H,QAAQ,EAAE6H,eAAS,CAACL,MAAM,EAAE3D,WAAW,CAAC,CAAC,CAAC,CAAA;GACjE,CAAA;EAED,OAAO;AAAE0D,IAAAA,iBAAiB,EAAjBA,iBAAiB;AAAEzK,IAAAA,UAAU,EAAVA,UAAU;AAAEgJ,IAAAA,aAAa,EAAbA,aAAAA;GAAe,CAAA;AACzD,CAAC;;;;;ACQD,IAAMgC,uBAAuB,GAAG,EAAE,CAAA;AAClC,IAAMC,2BAA2B,GAAG,EAAE,CAAA;AACtC,IAAMC,gBAAgB,GAAG,EAAE,CAAA;AAE3B,IAAMC,KAAK,GAAG,SAARA,KAAKA,CAAAjR,IAAA,EAkCL;AAAA,EAAA,IAAAkR,kBAAA,GAAAlR,IAAA,CAjCJmR,aAAa;AAAbA,IAAAA,aAAa,GAAAD,kBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,kBAAA;IAAAE,qBAAA,GAAApR,IAAA,CACpB+J,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAAqH,qBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,qBAAA;IAAAC,qBAAA,GAAArR,IAAA,CACzBgK,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAqH,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;IAAAC,qBAAA,GAAAtR,IAAA,CAC3BuR,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,qBAAA;IAAAE,oBAAA,GAAAxR,IAAA,CACzByR,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,oBAAA;IAAAE,cAAA,GAAA1R,IAAA,CACvBa,SAAS;AAATA,IAAAA,SAAS,GAAA6Q,cAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,cAAA;IAAAC,eAAA,GAAA3R,IAAA,CACd6K,UAAU;AAAVA,IAAAA,UAAU,GAAA8G,eAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,eAAA;IAAAC,qBAAA,GAAA5R,IAAA,CACf6R,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,CAAC,GAAAA,qBAAA;IAAAE,oBAAA,GAAA9R,IAAA,CACrB+R,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,oBAAA;IAAAE,qBAAA,GAAAhS,IAAA,CACpBiS,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAG5K,KAAAA,CAAAA,GAAAA,UAAI,GAAA4K,qBAAA;IAAAE,YAAA,GAAAlS,IAAA,CACvBmS,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,YAAA;IACfE,UAAU,GAAApS,IAAA,CAAVoS,UAAU;IACVC,WAAW,GAAArS,IAAA,CAAXqS,WAAW;IAAAC,YAAA,GAAAtS,IAAA,CACXuS,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,YAAA;IAAAE,eAAA,GAAAxS,IAAA,CACZyS,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,CAAC,GAAAA,eAAA;IAAAE,oBAAA,GAAA1S,IAAA,CACd2S,eAAe;AAAEC,IAAAA,sBAAsB,GAAAF,oBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,oBAAA;IAAAG,gBAAA,GAAA7S,IAAA,CAC5C8S,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,gBAAA;IAAAE,oBAAA,GAAA/S,IAAA,CACnBgT,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,oBAAA;IAAAE,WAAA,GAAAjT,IAAA,CACpBkT,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,WAAA;IACbE,MAAM,GAAAnT,IAAA,CAANmT,MAAM;IACNrQ,YAAY,GAAA9C,IAAA,CAAZ8C,YAAY;IAAAsQ,qBAAA,GAAApT,IAAA,CACZqT,8BAA8B;AAA9BA,IAAAA,8BAA8B,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;IAAAE,aAAA,GAAAtT,IAAA,CACtCuT,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,aAAA;IAAAE,mBAAA,GAAAxT,IAAA,CACf6C,cAAc;AAAdA,IAAAA,cAAc,GAAA2Q,mBAAA,KAAGpM,KAAAA,CAAAA,GAAAA,UAAI,GAAAoM,mBAAA;IAAAC,eAAA,GAAAzT,IAAA,CACrB0T,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,eAAA;IACfnN,YAAY,GAAAtG,IAAA,CAAZsG,YAAY;IAAAqN,gBAAA,GAAA3T,IAAA,CACZwN,WAAW;AAAXA,IAAAA,WAAW,GAAAmG,gBAAA,KAAGvM,KAAAA,CAAAA,GAAAA,UAAI,GAAAuM,gBAAA;IAClBnN,cAAc,GAAAxG,IAAA,CAAdwG,cAAc;IACdoN,QAAQ,GAAA5T,IAAA,CAAR4T,QAAQ;IACRlN,iBAAiB,GAAA1G,IAAA,CAAjB0G,iBAAiB;IACjBmN,sBAAsB,GAAA7T,IAAA,CAAtB6T,sBAAsB;IACtBnH,qBAAqB,GAAA1M,IAAA,CAArB0M,qBAAqB;AAClBoH,IAAAA,UAAU,GAAAlP,wBAAA,CAAA5E,IAAA,EAAA6E,SAAA,CAAA,CAAA;EAEb,IAAAxE,eAAA,GAAiBC,2BAAc,EAAE;IAAzBE,IAAI,GAAAH,eAAA,CAAJG,IAAI,CAAA;AACZ,EAAA,IAAAmB,SAAA,GAA8CC,cAAQ,CAAC,IAAI,CAAC;IAAAE,UAAA,GAAAC,cAAA,CAAAJ,SAAA,EAAA,CAAA,CAAA;AAArDoS,IAAAA,eAAe,GAAAjS,UAAA,CAAA,CAAA,CAAA;AAAEkS,IAAAA,kBAAkB,GAAAlS,UAAA,CAAA,CAAA,CAAA,CAAA;AAC1C,EAAA,IAAAmS,UAAA,GAAwCrS,cAAQ,CAACmP,2BAA2B,CAAC;IAAAmD,UAAA,GAAAnS,cAAA,CAAAkS,UAAA,EAAA,CAAA,CAAA;AAAtEE,IAAAA,YAAY,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AACpC,EAAA,IAAAG,UAAA,GAA8BzS,cAAQ,CAACiJ,UAAU,CAAC;IAAAyJ,UAAA,GAAAvS,cAAA,CAAAsS,UAAA,EAAA,CAAA,CAAA;AAA3C1R,IAAAA,OAAO,GAAA2R,UAAA,CAAA,CAAA,CAAA;AAAE1R,IAAAA,UAAU,GAAA0R,UAAA,CAAA,CAAA,CAAA,CAAA;AAC1B,EAAA,IAAAC,UAAA,GAAsD3S,cAAQ,CAAC,KAAK,CAAC;IAAA4S,UAAA,GAAAzS,cAAA,CAAAwS,UAAA,EAAA,CAAA,CAAA;AAA9DE,IAAAA,mBAAmB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,sBAAsB,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAClD,EAAA,IAAAG,UAAA,GAA0C/S,cAAQ,CAAC,EAAE,CAAC;IAAAgT,WAAA,GAAA7S,cAAA,CAAA4S,UAAA,EAAA,CAAA,CAAA;AAA/CE,IAAAA,aAAa,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,gBAAgB,GAAAF,WAAA,CAAA,CAAA,CAAA,CAAA;EACtC,IAAAG,aAAA,GAII5E,YAAY,EAAE;IAHGnB,qBAAqB,GAAA+F,aAAA,CAAxCxE,iBAAiB;IACjBzK,UAAU,GAAAiP,aAAA,CAAVjP,UAAU;IACVgJ,aAAa,GAAAiG,aAAA,CAAbjG,aAAa,CAAA;EAGf,IAAAhD,KAAA,GACE+H,sBAAsB,KAAA,IAAA,IAAtBA,sBAAsB,KAAtBA,KAAAA,CAAAA,GAAAA,sBAAsB,GAAI,EAAE;IADEmB,4BAA4B,GAAAlJ,KAAA,CAApD4I,sBAAsB,CAAA;AAG9B,EAAA,IAAMzF,0BAA0B,GAAGgD,gBAAgB,KAAK7K,UAAI,CAAA;EAE5D,IAAMiJ,OAAO,GAAGC,yBAAU,EAAE,CAAA;EAE5B,IAAM2E,SAAS,GAAGxV,YAAM,EAAE,CAAA;AAC1B,EAAA,IAAMiO,kBAAkB,GAAGjO,YAAM,CAAC,EAAE,CAAC,CAAA;EAErC,IAAMyV,cAAc,GAAGzV,YAAM,CAC3B,IAAI0V,cAAc,CAAC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAAC,KAAA,GAAAtT,cAAA,CAAAqT,KAAA,EAAA,CAAA,CAAA;AAAEE,MAAAA,KAAK,GAAAD,KAAA,CAAA,CAAA,CAAA,CAAA;AAAA,IAAA,OACxBrB,kBAAkB,CAACsB,KAAK,CAACC,WAAW,CAACrN,MAAM,CAAC,CAAA;AAAA,GAAA,CAC7C,CACF,CAAA;AAED,EAAA,IAAMsN,SAAS,GAAG/V,YAAM,CAAC,IAAI,CAAC,CAAA;AAC9B,EAAA,IAAMgW,QAAQ,GAAGpG,iBAAW,CAC1B,UAAAqG,KAAK,EAAI;IACPF,SAAS,CAAC7V,OAAO,GAAG+V,KAAK,CAAA;IAEzB,IAAI,CAAC5C,WAAW,EAAE,OAAA;AAElB,IAAA,IAAM6C,QAAQ,GAAGT,cAAc,CAACvV,OAAO,CAAA;IAEvC,IAAI+V,KAAK,KAAK,IAAI,EAAE;AAAA,MAAA,IAAAE,iBAAA,CAAA;MAClB,IAAMC,UAAU,GAAG7L,mBAAmB,GAClC0L,KAAK,KAALA,IAAAA,IAAAA,KAAK,KAAAE,KAAAA,CAAAA,IAAAA,CAAAA,iBAAA,GAALF,KAAK,CAAEI,UAAU,cAAAF,iBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAjBA,iBAAA,CAAmBE,UAAU,GAC7BJ,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAEI,UAAU,CAAA;AAErBH,MAAAA,QAAQ,CAACI,OAAO,CAACF,UAAU,CAAC,CAAA;KAC7B,MAAM,IAAIF,QAAQ,EAAE;MACnBA,QAAQ,CAACK,UAAU,EAAE,CAAA;AACvB,KAAA;GACD,EACD,CAACd,cAAc,CAACvV,OAAO,EAAEmT,WAAW,EAAE9I,mBAAmB,CAAC,CAC3D,CAAA;EAED,IAAAiM,qBAAA,GAAyBC,iDAAwB,CAAC;AAChDT,MAAAA,QAAQ,EAARA,QAAQ;AACRD,MAAAA,SAAS,EAATA,SAAS;AACTrD,MAAAA,OAAO,EAAPA,OAAAA;AACF,KAAC,CAAC;IAJMgE,YAAY,GAAAF,qBAAA,CAAZE,YAAY,CAAA;AAMpB9W,EAAAA,UAAU,CAAC,YAAM;AACf,IAAA,IAAM8U,YAAY,GAAGc,SAAS,CAACtV,OAAO,GAClCsV,SAAS,CAACtV,OAAO,CAACyW,YAAY,GAC9BrF,2BAA2B,CAAA;IAE/BqD,eAAe,CAACD,YAAY,CAAC,CAAA;GAC9B,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,IAAMkC,6BAA6B,GAAG,SAAhCA,6BAA6BA,CAAG/G,cAAc,EAAI;IACtD,IAAMgH,UAAU,GAAG,EAAE,CAAA;AAErBhH,IAAAA,cAAc,CAACiH,OAAO,CAAC,UAAAtL,GAAG,EAAI;AAC5B,MAAA,IAAMuL,WAAW,GAAG3L,UAAU,CAAC4L,IAAI,CAAC,UAAAC,CAAC,EAAA;AAAA,QAAA,OAAIA,CAAC,CAACvL,SAAS,KAAKF,GAAG,CAACE,SAAS,CAAA;OAAC,CAAA,CAAA;MACvE,IAAMwL,OAAO,GAAG,EAAE,CAAA;AAElB,MAAA,IAAI1L,GAAG,CAACtD,KAAK,IAAIsD,GAAG,CAACtD,KAAK,MAAK6O,WAAW,aAAXA,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAXA,WAAW,CAAE7O,KAAK,CAAE,EAAA;AACjDgP,QAAAA,OAAO,CAAChP,KAAK,GAAGsD,GAAG,CAACtD,KAAK,CAAA;AAC3B,OAAA;MAEA,IAAIiP,MAAM,CAACC,IAAI,CAACF,OAAO,CAAC,CAACpN,MAAM,GAAG,CAAC,EAAE;AACnC+M,QAAAA,UAAU,CAACrL,GAAG,CAACE,SAAS,CAAC,GAAGwL,OAAO,CAAA;AACrC,OAAA;AACF,KAAC,CAAC,CAAA;IAEF7B,gBAAgB,CAAC,UAAAgC,IAAI,EAAA;AAAA,MAAA,OAAA/I,aAAA,CAAAA,aAAA,CAAU+I,EAAAA,EAAAA,IAAI,GAAKR,UAAU,CAAA,CAAA;AAAA,KAAG,CAAC,CAAA;IACtDzT,cAAc,CAACyM,cAAc,CAAC,CAAA;GAC/B,CAAA;EAED,IAAAyH,WAAA,GAAmDpI,UAAU,CAAC;AAC5DE,MAAAA,gBAAgB,EAAE7E,mBAAmB;AACrC4E,MAAAA,eAAe,EAAE7E,kBAAkB;AACnClE,MAAAA,YAAY,EAAE4L,eAAe;AAC7BpL,MAAAA,qBAAqB,EAAEkL,kBAAkB;AACzCxC,MAAAA,aAAa,EAAE6E,QAAQ;AACvBjR,MAAAA,OAAO,EAAPA,OAAO;AACPkI,MAAAA,UAAU,EAAVA,UAAU;AACVjI,MAAAA,UAAU,EAAVA,UAAU;AACVC,MAAAA,cAAc,EAAEwT,6BAA6B;AAC7CvT,MAAAA,YAAY,EAAZA,YAAY;AACZgD,MAAAA,UAAU,EAAVA,UAAU;AACVgJ,MAAAA,aAAa,EAAbA,aAAa;AACbxI,MAAAA,YAAY,EAAZA,YAAY;AACZI,MAAAA,iBAAiB,EAAjBA,iBAAiB;AACjB8G,MAAAA,WAAW,EAAXA,WAAW;AACXhH,MAAAA,cAAc,EAAdA,cAAc;AACdkH,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBsB,MAAAA,qBAAqB,EAArBA,qBAAqB;AACrBC,MAAAA,0BAA0B,EAA1BA,0BAA0B;AAC1BvC,MAAAA,qBAAqB,EAArBA,qBAAAA;AACF,KAAC,CAAC;IArBM3J,SAAS,GAAAgU,WAAA,CAAThU,SAAS;IAAWiU,kBAAkB,GAAAD,WAAA,CAA3BpU,OAAO,CAAA;EAuB1B,IAAMkK,WAAW,GAAGuD,6BAAc,EAAE,CAAA;AAEpC,EAAA,IAAM6G,cAAc,GAAG,SAAjBA,cAAcA,CAAGpM,UAAU,EAAA;AAAA,IAAA,IAAAqM,oBAAA,CAAA;AAAA,IAAA,OAC/BC,kBAAQ,CACN;AAAEhM,MAAAA,SAAS,EAAE8B,0BAAgB,CAAAiK,CAAAA,oBAAA,GAACrK,WAAW,CAACC,OAAO,MAAAoK,IAAAA,IAAAA,oBAAA,KAAAA,KAAAA,CAAAA,GAAAA,oBAAA,GAAI,EAAE,CAAA;AAAE,KAAC,EAC1DE,WAAK,CAAC,WAAW,EAAErT,0CAAiB,CAAC8I,WAAW,CAACE,QAAQ,CAAC,CAAC,EAC3DlC,UAAU,CACX,CAAA;AAAA,GAAA,CAAA;EAEH,IAAMwM,aAAa,GAAGpI,0BAA0B,GAC5CgI,cAAc,CAACD,kBAAkB,CAAC,GAClCA,kBAAkB,CAAA;AAEtB,EAAA,IAAMM,MAAM,GAAG;AAAEC,IAAAA,SAAS,eAAE9W,KAAA,CAAAC,aAAA,CAACI,UAAU,EAAA;AAACC,MAAAA,KAAK,EAAC,OAAA;AAAO,KAAA,EAAC,SAAO,CAAA;GAAe,CAAA;EAE5E,IAAM4R,eAAe,GAAG8B,mBAAmB,GACvC1I,WAAK,CAACmH,MAAM,EAAEX,OAAO,CAAC,GACtBK,sBAAsB,CAAA;EAE1B,IAAM4E,wBAAwB,GAAGvJ,aAAO,CACtC,YAAA;AAAA,IAAA,OACE/D,YAAY,CAACyI,eAAe,EAAE5G,WAAK,CAACmH,MAAM,EAAEX,OAAO,CAAC,CAAC,IACrDI,eAAe,CAACpJ,MAAM,KAAKkJ,UAAU,IACrC,CAACgC,mBAAmB,CAAA;GACtB,EAAA,CAAC9B,eAAe,EAAEO,MAAM,EAAEX,OAAO,EAAEE,UAAU,EAAEgC,mBAAmB,CAAC,CACpE,CAAA;AAED,EAAA,IAAMgD,8BAA8B,GAClC5D,sBAAsB,IAAI2D,wBAAwB,CAAA;AAEpD,EAAA,IAAME,gCAAgC,GACpC7D,sBAAsB,IAAIY,mBAAmB,CAAA;EAE/C,IAAMkD,eAAe,GAAG,SAAlBA,eAAeA,CAAIhF,eAAe,EAAEiF,YAAY,EAAK;AACzD,IAAA,IAAMC,YAAY,GAAGxS,QAAQ,CAACyS,aAAa,CACzC,+BAA+B,CAChC,CAAA;AAED,IAAA,IAAInF,eAAe,CAACpJ,MAAM,KAAKwI,eAAe,EAAE;MAC9C2C,sBAAsB,CAAC,KAAK,CAAC,CAAA;AAC7BM,MAAAA,4BAA4B,aAA5BA,4BAA4B,KAAA,KAAA,CAAA,IAA5BA,4BAA4B,CAAG,KAAK,CAAC,CAAA;MACrC6C,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,IAAZA,YAAY,CAAEE,SAAS,CAACC,MAAM,CAAC,0BAA0B,CAAC,CAAA;AAC5D,KAAC,MAAM;MACLH,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,IAAZA,YAAY,CAAEE,SAAS,CAACE,GAAG,CAAC,0BAA0B,CAAC,CAAA;AACzD,KAAA;IACA5F,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAXA,KAAAA,CAAAA,IAAAA,WAAW,CAAGM,eAAe,EAAEiF,YAAY,CAAC,CAAA;GAC7C,CAAA;AAED,EAAA,IAAMM,iBAAiB,GAAGpV,YAAY,GAAAiL,aAAA,CAAAA,aAAA,CAAA;AAEhCoK,IAAAA,IAAI,EAAE,UAAU;AAChBC,IAAAA,uBAAuB,EAAE,IAAA;AAAI,GAAA,EAC1BtV,YAAY,CAAA,EAAA,EAAA,EAAA;AACf8Q,IAAAA,QAAQ,EAAE+D,eAAe;AACzBhF,IAAAA,eAAe,EAAfA,eAAAA;AAAe,GAAA,CAAA,GAEjB,KAAK,CAAA;;AAET;AACA,EAAA,IAAMpC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIP,UAAU,EAAEC,OAAO,EAAE7B,MAAM,EAAEiK,MAAM,EAAK;IACjEvJ,aAAa,CAACV,MAAM,CAAC,CAAA;AACrBa,IAAAA,0BAA0B,IAAID,qBAAqB,CAACgB,UAAU,EAAE5B,MAAM,CAAC,CAAA;AACvEwF,IAAAA,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAG5D,UAAU,EAAEC,OAAO,EAAE7B,MAAM,EAAEiK,MAAM,CAAC,CAAA;IAC/C3K,kBAAkB,CAAC/N,OAAO,GAAG;AAAEqQ,MAAAA,UAAU,EAAVA,UAAU;AAAEC,MAAAA,OAAO,EAAPA,OAAAA;KAAS,CAAA;GACrD,CAAA;AAED,EAAA,IAAMqI,kBAAkB,GAAAvK,aAAA,CAAAA,aAAA,KACnB2F,UAAU,CAAA,EAAA,EAAA,EAAA;IACb6E,MAAM,EAAEzO,aAAa,CAAC;AACpBC,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBC,MAAAA,mBAAmB,EAAnBA,mBAAAA;KACD,CAAA;GACF,CAAA,CAAA;AAED,EAAA,IAAMwO,oBAAoB,GAAG,SAAvBA,oBAAoBA,GAAS;AACjC,IAAA,IAAMC,cAAc,GAAGvP,MAAM,CAACwP,WAAW,CAAA;AACzC,IAAA,IAAMC,WAAW,GAAGjP,IAAI,CAACkP,KAAK,CAC3B,CAACH,cAAc,GAAG3H,uBAAuB,IAAIE,gBAAgB,GAAI,CAAC,CACpE,CAAA;IAED,OAAOtH,IAAI,CAACmP,IAAI,CAACF,WAAW,GAAG,EAAE,CAAC,GAAG,EAAE,CAAA;GACxC,CAAA;EAED,IAAMG,QAAQ,GAAGzF,8BAA8B,GAC3CmF,oBAAoB,EAAE,GACtBxF,eAAe,CAAC8F,QAAQ,IAAI/G,eAAe,CAAA;AAE/C,EAAA,IAAMgH,6BAA6B,GAAG,SAAhCA,6BAA6BA,GAAS;AAC1C,IAAA,IAAMC,mBAAmB,GACvBlF,UAAU,CAAC9D,UAAU,KAAK,KAAK,IAAIuC,OAAO,CAAChJ,MAAM,GAAGuP,QAAQ,CAAA;IAE9D,IAAIG,0BAA0B,GAAG,CAAC,CAAA;IAClC,IAAIxB,8BAA8B,IAAIC,gCAAgC,EAAE;MACtEuB,0BAA0B,GAAGzO,6BAA6B,EAAE,CAAA;AAC9D,KAAA;IAEA,OACEuJ,eAAe,GACfI,YAAY,IACX6E,mBAAmB,GAAGlI,uBAAuB,GAAG,CAAC,CAAC,GACnDmI,0BAA0B,CAAA;GAE7B,CAAA;AAED,EAAA,IAAMC,wBAAwB,GAAG,SAA3BA,wBAAwBA,GAAA;AAAA,IAAA,OAC5BC,sBAAY,CAAC,CAAC,EAAE,UAAAjO,KAAK,EAAA;AAAA,MAAA,OAAI,CAACA,KAAK,GAAG,CAAC,IAAI4N,QAAQ,CAAA;KAAC,CAAA,CAAA;AAAA,GAAA,CAAA;EAElD,IAAMM,UAAU,GAAG,SAAbA,UAAUA,CAAIxL,CAAC,EAAEuK,IAAI,EAAEkB,eAAe,EAAK;AAC/C,IAAA,IAAMC,WAAW,GAAG;AAAElV,MAAAA,IAAI,EAAE,OAAO;AAAErD,MAAAA,KAAK,EAAE,MAAA;KAAQ,CAAA;IAEpD,IAAIoX,IAAI,KAAK,MAAM,EAAE,oBAAO1X,KAAA,CAAAC,aAAA,CAACO,MAAM,EAAAL,QAAA,CAAA;AAAC2Y,MAAAA,IAAI,EAAEC,eAAAA;AAAK,KAAA,EAAKF,WAAW,CAAI,CAAA,CAAA;IAEnE,IAAInB,IAAI,KAAK,MAAM,EAAE,oBAAO1X,KAAA,CAAAC,aAAA,CAACO,MAAM,EAAAL,QAAA,CAAA;AAAC2Y,MAAAA,IAAI,EAAEE,gBAAAA;AAAM,KAAA,EAAKH,WAAW,CAAI,CAAA,CAAA;AAEpE,IAAA,IAAInB,IAAI,KAAK,WAAW,IAAIA,IAAI,KAAK,WAAW,EAAE;AAChD,MAAA,oBAAO1X,KAAA,CAAAC,aAAA,CAACO,MAAM,EAAAL,QAAA,CAAA;AAAC2Y,QAAAA,IAAI,EAAEG,yBAAAA;AAAe,OAAA,EAAKJ,WAAW,CAAI,CAAA,CAAA;AAC1D,KAAA;AAEA,IAAA,OAAOD,eAAe,CAAA;GACvB,CAAA;AAED3Z,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAIia,oBAAU,CAAC/G,sBAAsB,CAAC,EAAE,OAAA;IAExC8B,sBAAsB,CAAC,KAAK,CAAC,CAAA;AAC7BM,IAAAA,4BAA4B,aAA5BA,4BAA4B,KAAA,KAAA,CAAA,IAA5BA,4BAA4B,CAAG,KAAK,CAAC,CAAA;AACvC,GAAC,EAAE,CAACA,4BAA4B,EAAEpC,sBAAsB,CAAC,CAAC,CAAA;AAE1DlT,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAMka,wBAAwB,GAC5B1S,aAAO,CAACqL,OAAO,CAAC,IAAI,CAACJ,OAAO,IAAIN,iBAAiB,KAAK,CAAC,CAAA;IAEzD,IAAI,CAAC+H,wBAAwB,EAAE,OAAA;IAE/B,IAAMC,QAAQ,GAAGnQ,IAAI,CAACmP,IAAI,CAACpG,UAAU,GAAGqG,QAAQ,CAAC,CAAA;IACjD,IAAMpI,IAAI,GAAGhH,IAAI,CAACoQ,GAAG,CAAC,CAAC,EAAED,QAAQ,CAAC,CAAA;AAClC,IAAA,IAAM7Q,QAAQ,GAAGE,MAAM,CAACC,QAAQ,CAACH,QAAQ,CAAA;IAEzCiG,0BAA0B,GACtBoB,OAAO,CAACM,IAAI,CAACC,cAAQ,CAAC5H,QAAQ,EAAE6H,eAAS,CAAC;AAAEH,MAAAA,IAAI,EAAJA,IAAAA;KAAM,EAAE7D,WAAW,CAAC,CAAC,CAAC,GAClEoF,gBAAgB,CAACvB,IAAI,EAAEoI,QAAQ,CAAC,CAAA;AACtC,GAAC,EAAE,CAACvG,OAAO,CAAC,CAAC,CAAA;AAEb7S,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAMqa,aAAa,GAAGlP,UAAU,CAACG,GAAG,CAAC,UAAAC,GAAG,EAAA;MAAA,OAAA8C,aAAA,CAAAA,aAAA,CACnC9C,EAAAA,EAAAA,GAAG,CACH4J,EAAAA,aAAa,CAAC5J,GAAG,CAACE,SAAS,CAAC,CAAA,CAAA;AAAA,KAC/B,CAAC,CAAA;IACHvI,UAAU,CAACmX,aAAa,CAAC,CAAA;AAC3B,GAAC,EAAE,CAAClP,UAAU,EAAEgK,aAAa,CAAC,CAAC,CAAA;AAE/B,EAAA,IAAMmF,eAAe,GAAGC,QAAQ,CAC9BC,gBAAgB,CAAC7U,QAAQ,CAAC8U,eAAe,CAAC,CAACC,gBAAgB,CACzD,sBAAsB,CACvB,EACD,EAAE,CACH,CAAA;AAED,EAAA,IAAMC,WAAW,GAAG,SAAdA,WAAWA,GAAA;AAAA,IAAA,oBACf5Z,KAAA,CAAAC,aAAA,CAAA4Z,eAAA,EAAA;MACEhD,MAAM,EAAEiD,qBAAW,CAAC/Z,IAAI,CAACga,QAAQ,IAAI,IAAI,CAAE;AAC3CC,MAAAA,KAAK,EAAE;AACLC,QAAAA,KAAK,EAAA3M,aAAA,CAAO4M,EAAAA,EAAAA,uCAAiC,CAAE;AAC/CjH,QAAAA,UAAU,EAAE;AACVkH,UAAAA,UAAU,EAAE;AACVC,YAAAA,YAAY,EAAE,kCAAkC;AAChDC,YAAAA,oBAAoB,EAAE,8BAA8B;AACpDC,YAAAA,uBAAuB,EAAE,+BAA+B;AACxDC,YAAAA,MAAM,EAAE,4BAA4B;AACpCC,YAAAA,WAAW,EAAE,4BAA4B;AACzCC,YAAAA,UAAU,EAAE,4BAA4B;AAExC;AACAC,YAAAA,gBAAgB,EAAE,kCAAkC;AACpDC,YAAAA,YAAY,EAAE,4BAA4B;AAC1CC,YAAAA,iBAAiB,EAAE,4BAA4B;AAC/CC,YAAAA,gBAAgB,EAAE,+BAA+B;AACjDC,YAAAA,YAAY,EAAE,CAAA;WACf;AACDtK,UAAAA,KAAK,EAAE;AACLuK,YAAAA,kBAAkB,EAAE,CAAC;AACrBC,YAAAA,UAAU,EAAE,8BAA8B;AAC1CC,YAAAA,WAAW,EAAE,+BAA+B;AAC5CC,YAAAA,YAAY,EAAE,4BAA4B;AAC1CC,YAAAA,gBAAgB,EAAE,4BAA4B;AAC9CC,YAAAA,oBAAoB,EAAE,4BAA4B;AAClDC,YAAAA,uBAAuB,EAAE,+BAA+B;AACxDC,YAAAA,QAAQ,EAAE,+BAA+B;AACzCC,YAAAA,WAAW,EAAE,4BAA4B;AACzCC,YAAAA,QAAQ,EAAE,+BAA+B;AACzCC,YAAAA,WAAW,EAAE,4BAA4B;AACzCC,YAAAA,mBAAmB,EAAE,+BAA+B;AACpDC,YAAAA,kBAAkB,EAAE,+BAA+B;AACnDC,YAAAA,iBAAiB,EAAE,+BAA+B;AAClDC,YAAAA,gBAAgB,EAAE,+BAA+B;AACjDC,YAAAA,aAAa,EAAE,+BAA+B;AAC9CC,YAAAA,UAAU,EAAE,8BAA8B;AAC1CC,YAAAA,aAAa,EAAE,gCAAgC;AAC/CC,YAAAA,kBAAkB,EAAE,gCAAgC;AACpDC,YAAAA,iBAAiB,EAAE,+BAA+B;AAClDC,YAAAA,gBAAgB,EAAE,EAAE;AAEpB;AACAxB,YAAAA,YAAY,EAAE,kCAAkC;AAChDyB,YAAAA,QAAQ,EAAE,EAAE;AACZC,YAAAA,gBAAgB,EAAE9C,eAAe;AACjC+C,YAAAA,wBAAwB,EAAE,EAAA;AAC5B,WAAA;AACF,SAAA;AACF,OAAA;KAECtF,EAAAA,8BAA8B,iBAC7BhX,KAAA,CAAAC,aAAA,CAACU,oBAAoB,EAAAR,QAAA,CAAA,EAAA,EACfiT,sBAAsB,EAAA;MAC1BxS,mBAAmB,EAAE,SAAAA,mBAAAA,GAAM;QACzBqT,sBAAsB,CAAC,IAAI,CAAC,CAAA;AAC5BM,QAAAA,4BAA4B,aAA5BA,4BAA4B,KAAA,KAAA,CAAA,IAA5BA,4BAA4B,CAAG,IAAI,CAAC,CAAA;AACtC,OAAA;KAEH,CAAA,CAAA,EACA0C,gCAAgC,iBAC/BjX,KAAA,CAAAC,aAAA,CAACX,sBAAsB,EAAAa,QAAA,CAAA,EAAA,EACjBiT,sBAAsB,EAAA;MAC1B3T,gBAAgB,EAAE,SAAAA,gBAAAA,GAAM;QACtBwU,sBAAsB,CAAC,KAAK,CAAC,CAAA;AAC7BM,QAAAA,4BAA4B,aAA5BA,4BAA4B,KAAA,KAAA,CAAA,IAA5BA,4BAA4B,CAAG,KAAK,CAAC,CAAA;AACrC2C,QAAAA,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;AACzB,OAAA;AAAE,KAAA,CAAA,CAEL,eACDlX,KAAA,CAAAC,aAAA,CAAAsc,MAAA,EAAApc,QAAA,CAAA;AACQ2S,MAAAA,QAAQ,EAARA,QAAQ;AAAE+D,MAAAA,MAAM,EAANA,MAAM;AAAEpE,MAAAA,MAAM,EAANA,MAAM;AAC9BvQ,MAAAA,OAAO,EAAE0U,aAAc;AACvB3D,MAAAA,UAAU,EAAE4E,kBAAmB;AAC/B2E,MAAAA,UAAU,EAAE1K,OAAQ;AACpBJ,MAAAA,OAAO,EAAE;AAAE+K,QAAAA,QAAQ,EAAE/K,OAAO;AAAEgL,QAAAA,SAAS,eAAE1c,KAAA,CAAAC,aAAA,CAAC0c,OAAO,EAAA,IAAA,CAAA;OAAM;AACvDpY,MAAAA,GAAG,EAAEyQ,QAAS;AACd3S,MAAAA,YAAY,EAAEoV,iBAAkB;AAChCmF,MAAAA,iBAAiB,EAAE,KAAM;MACzBrN,UAAU,EAAAjC,aAAA,CAAAA,aAAA,CAAA;AACRuP,QAAAA,gBAAgB,EAAE,IAAA;AAAI,OAAA,EACnBtK,eAAe,CAAA,EAAA,EAAA,EAAA;AAClBuK,QAAAA,eAAe,EAAE,KAAK;AACtBC,QAAAA,KAAK,EAAE/K,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,UAAU,GAAI,CAAC;AACtB9S,QAAAA,OAAO,EAAEkS,iBAAiB;AAC1BE,QAAAA,eAAe,EAAE+G,QAAQ;QACzB2E,eAAe,EAAEvE,wBAAwB,EAAE;AAC3CtF,QAAAA,QAAQ,EAAE3B,gBAAgB;AAC1BmH,QAAAA,UAAU,EAAVA,UAAAA;OACA,CAAA;AACFsE,MAAAA,YAAY,EAAE9U,UAAU,CACtB,qBAAqB,EACrB;AAAE,QAAA,2BAA2B,EAAEuI,aAAAA;AAAc,OAAC,EAC9C,CAACtQ,SAAS,CAAC,CACX;AACFsS,MAAAA,MAAM,EAAApF,aAAA,CAAA;AACJ4P,QAAAA,CAAC,EAAE,aAAa;AAChBC,QAAAA,CAAC,EAAE7E,6BAA6B,EAAA;AAAE,OAAA,EAC/B5F,MAAM,CACT;AACFS,MAAAA,QAAQ,EAAErD,iBAAkB;AAC5BsN,MAAAA,QAAQ,EAAE1H,YAAa;MACvB2H,WAAW,EAAE,SAAAA,WAAA,GAAA;QAAA,OAAO;AAClB9Y,UAAAA,GAAG,EAAEiQ,SAAS;AACdpU,UAAAA,SAAS,EAAE+H,UAAU,CAAC,wBAAwB,EAAE;AAC9C,YAAA,4BAA4B,EAAEoB,mBAAAA;AAChC,WAAC,CAAC;AACFpK,UAAAA,EAAE,EAAE,wBAAA;SACL,CAAA;OAAE;AACHme,MAAAA,KAAK,EAAE,SAAAA,KAACC,CAAAA,MAAM,EAAEC,QAAQ,EAAA;QAAA,OAAM;UAC5B9c,OAAO,EAAE,SAAAA,OAAAA,CAAA+c,KAAK,EAAA;YAAA,OACZ/M,aAAa,IAAIiB,UAAU,IAAIA,UAAU,CAAC8L,KAAK,EAAEF,MAAM,EAAEC,QAAQ,CAAC,CAAA;AAAA,WAAA;SACrE,CAAA;AAAA,OAAA;KACGnK,EAAAA,UAAU,EACd,CACa,CAAA;GAClB,CAAA;AAED,EAAA,OAAO9J,mBAAmB,gBACxBvJ,KAAA,CAAAC,aAAA,CAACyd,iBAAiB,CAACC,UAAU,EAAKrb,SAAS,EACxCsX,WAAW,EAAE,CACe,GAE/BA,WAAW,EACZ,CAAA;AACH;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neetoui",
3
- "version": "8.3.16",
3
+ "version": "8.3.17",
4
4
  "author": "BigBinary",
5
5
  "license": "MIT",
6
6
  "description": "neetoUI drives the experience at all neeto products",