@lax-wp/design-system 0.13.32 → 0.13.33-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/dist/components/button/Button.cjs.js +5 -5
  2. package/dist/components/button/Button.cjs.js.map +1 -1
  3. package/dist/components/button/Button.es.js +18 -18
  4. package/dist/components/button/Button.es.js.map +1 -1
  5. package/dist/components/button/IconButton.cjs.js +1 -1
  6. package/dist/components/button/IconButton.cjs.js.map +1 -1
  7. package/dist/components/button/IconButton.es.js +8 -8
  8. package/dist/components/button/IconButton.es.js.map +1 -1
  9. package/dist/components/buttons/option-button/OptionButton.cjs.js +1 -1
  10. package/dist/components/buttons/option-button/OptionButton.cjs.js.map +1 -1
  11. package/dist/components/buttons/option-button/OptionButton.es.js +1 -1
  12. package/dist/components/buttons/option-button/OptionButton.es.js.map +1 -1
  13. package/dist/components/data-display/comparison/components/Header.cjs.js +1 -1
  14. package/dist/components/data-display/comparison/components/Header.cjs.js.map +1 -1
  15. package/dist/components/data-display/comparison/components/Header.es.js +13 -13
  16. package/dist/components/data-display/comparison/components/Header.es.js.map +1 -1
  17. package/dist/components/data-display/infinite-table/body/cell/ActionCell.cjs.js +1 -1
  18. package/dist/components/data-display/infinite-table/body/cell/ActionCell.cjs.js.map +1 -1
  19. package/dist/components/data-display/infinite-table/body/cell/ActionCell.es.js +11 -11
  20. package/dist/components/data-display/infinite-table/body/cell/ActionCell.es.js.map +1 -1
  21. package/dist/components/data-display/infinite-table/body/cell/CheckboxCell.cjs.js +1 -1
  22. package/dist/components/data-display/infinite-table/body/cell/CheckboxCell.cjs.js.map +1 -1
  23. package/dist/components/data-display/infinite-table/body/cell/CheckboxCell.es.js +12 -12
  24. package/dist/components/data-display/infinite-table/body/cell/CheckboxCell.es.js.map +1 -1
  25. package/dist/components/data-display/infinite-table/body/cell/DataCell.cjs.js +1 -1
  26. package/dist/components/data-display/infinite-table/body/cell/DataCell.cjs.js.map +1 -1
  27. package/dist/components/data-display/infinite-table/body/cell/DataCell.es.js +141 -143
  28. package/dist/components/data-display/infinite-table/body/cell/DataCell.es.js.map +1 -1
  29. package/dist/components/data-display/infinite-table/body/cell/LoaderCell.cjs.js +1 -1
  30. package/dist/components/data-display/infinite-table/body/cell/LoaderCell.cjs.js.map +1 -1
  31. package/dist/components/data-display/infinite-table/body/cell/LoaderCell.es.js +2 -2
  32. package/dist/components/data-display/infinite-table/body/cell/LoaderCell.es.js.map +1 -1
  33. package/dist/components/data-display/infinite-table/body/cell/SpinnerCell.cjs.js +1 -1
  34. package/dist/components/data-display/infinite-table/body/cell/SpinnerCell.cjs.js.map +1 -1
  35. package/dist/components/data-display/infinite-table/body/cell/SpinnerCell.es.js +1 -1
  36. package/dist/components/data-display/infinite-table/body/cell/SpinnerCell.es.js.map +1 -1
  37. package/dist/components/data-display/infinite-table/body/rows/row.cjs.js +1 -1
  38. package/dist/components/data-display/infinite-table/body/rows/row.cjs.js.map +1 -1
  39. package/dist/components/data-display/infinite-table/body/rows/row.es.js +281 -286
  40. package/dist/components/data-display/infinite-table/body/rows/row.es.js.map +1 -1
  41. package/dist/components/data-display/infinite-table/context.cjs.js.map +1 -1
  42. package/dist/components/data-display/infinite-table/context.d.ts +0 -1
  43. package/dist/components/data-display/infinite-table/context.es.js.map +1 -1
  44. package/dist/components/data-display/infinite-table/head/CheckAll.cjs.js +1 -1
  45. package/dist/components/data-display/infinite-table/head/CheckAll.cjs.js.map +1 -1
  46. package/dist/components/data-display/infinite-table/head/CheckAll.es.js +1 -1
  47. package/dist/components/data-display/infinite-table/head/CheckAll.es.js.map +1 -1
  48. package/dist/components/data-display/infinite-table/head/cell/index.cjs.js +1 -1
  49. package/dist/components/data-display/infinite-table/head/cell/index.cjs.js.map +1 -1
  50. package/dist/components/data-display/infinite-table/head/cell/index.es.js +2 -2
  51. package/dist/components/data-display/infinite-table/head/cell/index.es.js.map +1 -1
  52. package/dist/components/data-display/infinite-table/head/index.cjs.js +1 -1
  53. package/dist/components/data-display/infinite-table/head/index.cjs.js.map +1 -1
  54. package/dist/components/data-display/infinite-table/head/index.es.js +20 -20
  55. package/dist/components/data-display/infinite-table/head/index.es.js.map +1 -1
  56. package/dist/components/data-display/infinite-table/index.cjs.js +1 -1
  57. package/dist/components/data-display/infinite-table/index.cjs.js.map +1 -1
  58. package/dist/components/data-display/infinite-table/index.d.ts +1 -1
  59. package/dist/components/data-display/infinite-table/index.es.js +208 -211
  60. package/dist/components/data-display/infinite-table/index.es.js.map +1 -1
  61. package/dist/components/data-display/infinite-table/types.d.ts +0 -22
  62. package/dist/components/data-display/tag/Tag.cjs.js +1 -1
  63. package/dist/components/data-display/tag/Tag.cjs.js.map +1 -1
  64. package/dist/components/data-display/tag/Tag.es.js +11 -9
  65. package/dist/components/data-display/tag/Tag.es.js.map +1 -1
  66. package/dist/components/floating-bar/FloatingBar.cjs.js +1 -1
  67. package/dist/components/floating-bar/FloatingBar.cjs.js.map +1 -1
  68. package/dist/components/floating-bar/FloatingBar.es.js +9 -9
  69. package/dist/components/floating-bar/FloatingBar.es.js.map +1 -1
  70. package/dist/components/forms/base-input-field/BaseInputField.cjs.js +2 -2
  71. package/dist/components/forms/base-input-field/BaseInputField.cjs.js.map +1 -1
  72. package/dist/components/forms/base-input-field/BaseInputField.es.js +30 -32
  73. package/dist/components/forms/base-input-field/BaseInputField.es.js.map +1 -1
  74. package/dist/components/forms/creatable-select/CreatableSelect.cjs.js +1 -1
  75. package/dist/components/forms/creatable-select/CreatableSelect.cjs.js.map +1 -1
  76. package/dist/components/forms/creatable-select/CreatableSelect.es.js +11 -12
  77. package/dist/components/forms/creatable-select/CreatableSelect.es.js.map +1 -1
  78. package/dist/components/forms/currency-input/CurrencyInputField.cjs.js +1 -1
  79. package/dist/components/forms/currency-input/CurrencyInputField.cjs.js.map +1 -1
  80. package/dist/components/forms/currency-input/CurrencyInputField.es.js +62 -70
  81. package/dist/components/forms/currency-input/CurrencyInputField.es.js.map +1 -1
  82. package/dist/components/forms/date-time-field/DateTimeField.cjs.js +1 -1
  83. package/dist/components/forms/date-time-field/DateTimeField.cjs.js.map +1 -1
  84. package/dist/components/forms/date-time-field/DateTimeField.es.js +32 -32
  85. package/dist/components/forms/date-time-field/DateTimeField.es.js.map +1 -1
  86. package/dist/components/forms/debounce-input/DebounceInputField.cjs.js +1 -1
  87. package/dist/components/forms/debounce-input/DebounceInputField.cjs.js.map +1 -1
  88. package/dist/components/forms/debounce-input/DebounceInputField.es.js +2 -2
  89. package/dist/components/forms/debounce-input/DebounceInputField.es.js.map +1 -1
  90. package/dist/components/forms/dynamic-data-input/DynamicDataInputField.cjs.js +1 -1
  91. package/dist/components/forms/dynamic-data-input/DynamicDataInputField.cjs.js.map +1 -1
  92. package/dist/components/forms/dynamic-data-input/DynamicDataInputField.es.js +16 -18
  93. package/dist/components/forms/dynamic-data-input/DynamicDataInputField.es.js.map +1 -1
  94. package/dist/components/forms/field-options/Item.cjs.js +1 -1
  95. package/dist/components/forms/field-options/Item.cjs.js.map +1 -1
  96. package/dist/components/forms/field-options/Item.es.js +5 -5
  97. package/dist/components/forms/field-options/Item.es.js.map +1 -1
  98. package/dist/components/forms/icon-picker/IconPicker.cjs.js +1 -1
  99. package/dist/components/forms/icon-picker/IconPicker.cjs.js.map +1 -1
  100. package/dist/components/forms/icon-picker/IconPicker.es.js +42 -57
  101. package/dist/components/forms/icon-picker/IconPicker.es.js.map +1 -1
  102. package/dist/components/forms/master-data-input/MasterDataInputField.cjs.js +1 -1
  103. package/dist/components/forms/master-data-input/MasterDataInputField.cjs.js.map +1 -1
  104. package/dist/components/forms/master-data-input/MasterDataInputField.es.js +33 -35
  105. package/dist/components/forms/master-data-input/MasterDataInputField.es.js.map +1 -1
  106. package/dist/components/forms/md-input/RichMarkdownInput.cjs.js +3 -3
  107. package/dist/components/forms/md-input/RichMarkdownInput.cjs.js.map +1 -1
  108. package/dist/components/forms/md-input/RichMarkdownInput.es.js +63 -63
  109. package/dist/components/forms/md-input/RichMarkdownInput.es.js.map +1 -1
  110. package/dist/components/forms/number-input-field/NumberInputField.cjs.js +1 -1
  111. package/dist/components/forms/number-input-field/NumberInputField.cjs.js.map +1 -1
  112. package/dist/components/forms/number-input-field/NumberInputField.es.js +5 -5
  113. package/dist/components/forms/number-input-field/NumberInputField.es.js.map +1 -1
  114. package/dist/components/forms/percentage-input/PercentageInputField.cjs.js +1 -1
  115. package/dist/components/forms/percentage-input/PercentageInputField.cjs.js.map +1 -1
  116. package/dist/components/forms/percentage-input/PercentageInputField.es.js +2 -2
  117. package/dist/components/forms/percentage-input/PercentageInputField.es.js.map +1 -1
  118. package/dist/components/forms/search-bar/SearchBar.cjs.js +1 -1
  119. package/dist/components/forms/search-bar/SearchBar.cjs.js.map +1 -1
  120. package/dist/components/forms/search-bar/SearchBar.es.js +16 -16
  121. package/dist/components/forms/search-bar/SearchBar.es.js.map +1 -1
  122. package/dist/components/forms/select-field/SelectField.cjs.js +2 -2
  123. package/dist/components/forms/select-field/SelectField.cjs.js.map +1 -1
  124. package/dist/components/forms/select-field/SelectField.d.ts +4 -0
  125. package/dist/components/forms/select-field/SelectField.es.js +202 -203
  126. package/dist/components/forms/select-field/SelectField.es.js.map +1 -1
  127. package/dist/components/forms/toggle/Toggle.cjs.js +1 -1
  128. package/dist/components/forms/toggle/Toggle.cjs.js.map +1 -1
  129. package/dist/components/forms/toggle/Toggle.es.js +14 -14
  130. package/dist/components/forms/toggle/Toggle.es.js.map +1 -1
  131. package/dist/components/navigation/accordion/Accordion.cjs.js +1 -1
  132. package/dist/components/navigation/accordion/Accordion.cjs.js.map +1 -1
  133. package/dist/components/navigation/accordion/Accordion.es.js +5 -5
  134. package/dist/components/navigation/accordion/Accordion.es.js.map +1 -1
  135. package/dist/components/navigation/stepper/Stepper.cjs.js +1 -1
  136. package/dist/components/navigation/stepper/Stepper.cjs.js.map +1 -1
  137. package/dist/components/navigation/stepper/Stepper.es.js +1 -1
  138. package/dist/components/navigation/stepper/Stepper.es.js.map +1 -1
  139. package/dist/components/navigation/tabs/TabOptions.cjs.js +1 -1
  140. package/dist/components/navigation/tabs/TabOptions.cjs.js.map +1 -1
  141. package/dist/components/navigation/tabs/TabOptions.es.js +15 -15
  142. package/dist/components/navigation/tabs/TabOptions.es.js.map +1 -1
  143. package/dist/components/navigation/tabs/TabSwitch.cjs.js +1 -1
  144. package/dist/components/navigation/tabs/TabSwitch.cjs.js.map +1 -1
  145. package/dist/components/navigation/tabs/TabSwitch.es.js +7 -7
  146. package/dist/components/navigation/tabs/TabSwitch.es.js.map +1 -1
  147. package/dist/components/navigation/tabs/Tabs.cjs.js +1 -1
  148. package/dist/components/navigation/tabs/Tabs.cjs.js.map +1 -1
  149. package/dist/components/navigation/tabs/Tabs.es.js +1 -1
  150. package/dist/components/navigation/tabs/Tabs.es.js.map +1 -1
  151. package/dist/components/user-avatar/UserAvatar.cjs.js +1 -1
  152. package/dist/components/user-avatar/UserAvatar.cjs.js.map +1 -1
  153. package/dist/components/user-avatar/UserAvatar.d.ts +1 -1
  154. package/dist/components/user-avatar/UserAvatar.es.js +40 -38
  155. package/dist/components/user-avatar/UserAvatar.es.js.map +1 -1
  156. package/dist/components/user-avatar/constants.cjs.js +1 -1
  157. package/dist/components/user-avatar/constants.cjs.js.map +1 -1
  158. package/dist/components/user-avatar/constants.d.ts +1 -0
  159. package/dist/components/user-avatar/constants.es.js +10 -9
  160. package/dist/components/user-avatar/constants.es.js.map +1 -1
  161. package/dist/design-system.css +1 -1
  162. package/dist/index.d.ts +1 -1
  163. package/package.json +2 -3
@@ -1 +1 @@
1
- {"version":3,"file":"DataCell.es.js","sources":["../../../../../../src/components/data-display/infinite-table/body/cell/DataCell.tsx"],"sourcesContent":["import { useTheme } from '../../../../../hooks/useTheme';\nimport { formatCurrency } from '../../../../../utils/formatters';\nimport { formatDate } from '../../../../../utils/formatters';\nimport { getTableRowBgClassNamesByStatus } from '../../../../../constants/table';\nimport type { ICell, IPendingEdit, ValidateAndSaveResult } from '../../types';\nimport { useTableConfig } from '../../../../../providers/design-system-provider/hooks';\nimport Tooltip from '../../../../tooltip/Tooltip';\nimport { Typography } from '../../../../data-display/typography/Typography';\nimport { KeyboardArrowDownIcon, KeyboardArrowRightFilledIcon, LinkIcon, LoadingSpinnerIcon } from '../../../../icon';\nimport { OpenInNewRounded } from '@mui/icons-material';\nimport cn from 'classnames';\nimport React, { useCallback, useContext, useEffect, useRef, useState } from 'react';\nimport { Link } from 'react-router-dom';\n\nimport { TableContext } from '../../context';\nimport { InlineEditField } from './InlineEditField';\n\ntype CellProps = {\n cell: ICell;\n id: string | number;\n nextWidthSum: number;\n isLastCell: boolean;\n rowHovering: string | number | null;\n index: number;\n isFirstStickyCell: boolean;\n handleCellClick: (e?: React.MouseEvent) => void | null;\n currentData: { is_row_modified?: boolean; is_deleted?: boolean; is_added?: boolean };\n highlightSubstring?: (value: string) => JSX.Element;\n is_read: boolean;\n is_modified: boolean;\n is_row_modified: boolean;\n is_deleted: boolean;\n is_added: boolean;\n level: number;\n inlineEditing: string | null;\n isInlineEditing?: boolean;\n setRowHovering: (id: string | number | null) => void;\n handleCellValueChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n cellRef: React.RefObject<HTMLDivElement>;\n handleUpdateCellData: (directValue?: string | boolean | null, meta?: { currency_code?: string | null; reference?: unknown | null;[key: string]: unknown | null } | null) => void;\n registerValidation?: (validateFn: () => ValidateAndSaveResult) => void;\n loadingExpand: boolean;\n toggleRowExpand: () => void;\n isDraggingOver?: boolean;\n isLoading?: boolean;\n is_incomplete?: boolean;\n pendingEdit?: IPendingEdit;\n hasPendingEdit?: boolean;\n pendingValidationError?: string | null;\n};\n\nlet interval: ReturnType<typeof setInterval> | undefined;\n\nconst formatDurationFallback = (duration: unknown): string => {\n const durationInMs = Number(duration);\n\n if (Number.isNaN(durationInMs) || duration === null || duration === undefined) {\n return '0ms';\n }\n\n if (durationInMs >= 86400000) {\n const days = Math.floor(durationInMs / 86400000);\n const hours = Math.floor((durationInMs % 86400000) / 3600000);\n const minutes = Math.floor((durationInMs % 3600000) / 60000);\n const seconds = Math.floor((durationInMs % 60000) / 1000);\n return `${days}d ${hours}h ${minutes}m ${seconds}s`;\n }\n\n if (durationInMs >= 3600000) {\n const hours = Math.floor(durationInMs / 3600000);\n const minutes = Math.floor((durationInMs % 3600000) / 60000);\n const seconds = Math.floor((durationInMs % 60000) / 1000);\n return `${hours}h ${minutes}m ${seconds}s`;\n }\n\n if (durationInMs >= 60000) {\n const minutes = Math.floor(durationInMs / 60000);\n const seconds = Math.floor((durationInMs % 60000) / 1000);\n return `${minutes}m ${seconds}s`;\n }\n\n if (durationInMs >= 1000) {\n return `${(durationInMs / 1000).toFixed(2)}s`;\n }\n\n return `${durationInMs}ms`;\n};\n\nconst CellWrapper = ({ children, withLink, linkTo, rowData, disableRowClick }: { children: React.ReactNode; withLink?: boolean; linkTo?: (id: string, _rowData?: Record<string, unknown>) => string; rowData?: Record<string, unknown>; disableRowClick?: boolean }) => {\n return withLink && !disableRowClick ? <Link to={linkTo?.(rowData?.id as string, rowData) || ''}>{children}</Link> : children;\n};\n\nconst DataCellInner: React.FC<CellProps> = ({\n cell, id, nextWidthSum, isLastCell, rowHovering, index, isFirstStickyCell, handleCellClick, currentData, highlightSubstring,\n is_read, is_modified, is_row_modified, is_deleted, is_added, level, inlineEditing, isInlineEditing, setRowHovering,\n handleCellValueChange, cellRef, handleUpdateCellData, registerValidation, loadingExpand, toggleRowExpand,\n isDraggingOver, isLoading, is_incomplete, pendingEdit, hasPendingEdit, pendingValidationError,\n}) => {\n const {\n cascadingTableConfig, originalsOnly, maxLevel, showNewItem, expandedRows, rowLinkConfig, multiSelectConfig,\n cellEditing, cellEditingValue, allowInlineEdit, fieldOperationLoading, pendingEdits: contextPendingEdits,\n selectedRowId,\n } = useContext(TableContext);\n\n const isSelectedRow =\n selectedRowId !== null && selectedRowId !== undefined && String(selectedRowId) === String(id);\n\n const tableConfig = useTableConfig();\n\n const rowCellMeta = cell?.column?.key ? (cell?.row?.original?.__cellMetadata as Record<string, Record<string, unknown>> | undefined)?.[cell.column.key] : undefined;\n const isLocked = rowCellMeta?.is_locked ?? cell?.column?.is_locked;\n const cellValidationError = (cell?.column?.key ? contextPendingEdits?.[id]?.[cell.column.key]?.validationError : null) || pendingValidationError || null;\n const isActuallyInlineEditing = inlineEditing === cell.column.key && cell?.column?.canEdit && !isLocked && !cell?.column?.is_disabled;\n const isFieldOperationLoading = fieldOperationLoading === `${id}-${cell?.column?.id}`;\n const { theme } = useTheme();\n const isDark = theme === 'dark';\n const onMouseEnter = useCallback(() => setRowHovering(id), [setRowHovering, id]);\n const onMouseLeave = useCallback(() => setRowHovering(null), [setRowHovering]);\n\n const getNodeExecutionDuration = tableConfig?.formatDuration;\n const [cellValue, setCellValue] = useState(\n cell?.column?.dataType === 'duration' && cell?.value\n ? getNodeExecutionDuration\n ? getNodeExecutionDuration(cell.value)\n : formatDurationFallback(cell.value)\n : cell.value,\n );\n const [tooltipText, setTooltipText] = useState<string | null>(null);\n const [isTruncated, setIsTruncated] = useState(false);\n const [urlTooltipOpen, setUrlTooltipOpen] = useState(false);\n const [truncateTooltipOpen, setTruncateTooltipOpen] = useState(false);\n const textRef = useRef<HTMLSpanElement>(null);\n const urlTooltipTimer = useRef<ReturnType<typeof setTimeout>>();\n const truncateTooltipTimer = useRef<ReturnType<typeof setTimeout>>();\n const { selectedColumnIds = [] } = multiSelectConfig || {};\n const shouldHighlight = !Object.prototype.hasOwnProperty.call(cell?.column?.meta ?? {}, 'shouldHighlight') || cell?.column?.meta?.shouldHighlight;\n\n const checkTruncation = useCallback(() => {\n if (textRef.current) {\n setIsTruncated(textRef.current.scrollWidth > textRef.current.clientWidth);\n }\n }, []);\n\n const handleUrlTooltipChange = useCallback((open: boolean) => {\n if (urlTooltipTimer.current) {\n clearTimeout(urlTooltipTimer.current);\n }\n\n if (open) {\n setUrlTooltipOpen(true);\n } else {\n urlTooltipTimer.current = setTimeout(() => setUrlTooltipOpen(false), 200);\n }\n }, []);\n\n const handleTruncateTooltipChange = useCallback((open: boolean) => {\n if (truncateTooltipTimer.current) {\n clearTimeout(truncateTooltipTimer.current);\n }\n\n if (open) {\n setTruncateTooltipOpen(true);\n } else {\n truncateTooltipTimer.current = setTimeout(() => setTruncateTooltipOpen(false), 200);\n }\n }, []);\n\n const bgColor = cn({\n 'bg-amber-100 dark:bg-amber-900/30': hasPendingEdit,\n 'bg-neutral-100 dark:bg-black-600': rowHovering === id && !isInlineEditing && !hasPendingEdit && !(is_deleted || currentData?.is_deleted) && !(is_added || currentData?.is_added),\n 'bg-error-200 dark:bg-error-900': rowHovering === id && !isInlineEditing && !hasPendingEdit && (is_deleted || currentData?.is_deleted),\n 'bg-success-100 dark:bg-success-800': rowHovering === id && !isInlineEditing && !hasPendingEdit && (is_added || currentData?.is_added),\n 'bg-primary-50 dark:bg-black-700': !is_incomplete && !is_read && showNewItem && !isLoading && rowHovering !== id && !isInlineEditing && !hasPendingEdit,\n 'bg-warning-50 dark:bg-black-500': (is_incomplete || is_modified || is_row_modified || currentData?.is_row_modified) && !isLoading && rowHovering !== id && !isInlineEditing && !hasPendingEdit,\n 'bg-error-100 dark:bg-error-975': (is_deleted || currentData?.is_deleted) && !isLoading && rowHovering !== id && !isInlineEditing && !hasPendingEdit,\n 'bg-success-50 dark:bg-success-900': (is_added || currentData?.is_added) && !isLoading && rowHovering !== id && !isInlineEditing && !hasPendingEdit,\n 'bg-primary-50 dark:bg-primary-900': (isDraggingOver || isInlineEditing) && !hasPendingEdit,\n 'bg-primary-50 dark:bg-primary-800': selectedColumnIds?.includes(cell.column.id) && !isInlineEditing && !hasPendingEdit,\n 'bg-primary-100 dark:bg-primary-950': isSelectedRow && rowHovering !== id && !isInlineEditing && !hasPendingEdit && !isLoading,\n [getTableRowBgClassNamesByStatus[cell?.row?.original?.__rowBgStatus as string]]: cell?.row?.original?.__rowBgStatus && !isInlineEditing && !hasPendingEdit,\n });\n\n const onClick = (e: React.MouseEvent) => { if (cell.column?.disableRowClick) return; handleCellClick(e); };\n\n useEffect(() => {\n const isRunning = cell?.row?.original?.status === 'running';\n if (isRunning && cell.column?.dataType === 'duration') {\n interval = setInterval(() => {\n const startedTime = new Date(formatDate((cell?.row?.original?.created_at || cell?.row?.original?.executed_on) as string | undefined, { withTime: true, format: 'yyyy-MM-dd HH:mm:ss' }) as unknown as Date);\n const timeDiff = Math.abs(new Date().getTime() - new Date(startedTime).getTime());\n setCellValue(getNodeExecutionDuration ? getNodeExecutionDuration(timeDiff) : formatDurationFallback(timeDiff));\n }, 500);\n }\n return () => { if (interval) clearInterval(interval); };\n }, [cellValue, cell.value, cell?.row?.original?.created_at, cell?.row?.original?.executed_on, cell?.row?.original?.status, cell.column?.dataType, getNodeExecutionDuration]);\n\n useEffect(() => {\n if (cell?.column?.tooltipCellKey || cell?.column?.type?.toLowerCase() === 'url') {\n if (cell?.column?.type?.toLowerCase() === 'url') setTooltipText(cell?.value as string | null);\n else setTooltipText(cell?.row?.original?.[String(cell?.column?.tooltipCellKey)] as string | null);\n }\n }, [cell?.column?.tooltipCellKey, cell?.row?.original, cell?.column?.type, cell?.value]);\n\n useEffect(() => {\n if (cell?.column?.type?.toLowerCase() === 'currency') {\n if (pendingEdit?.value !== undefined) {\n const rawData = cell?.row?.original?.__rawData as Record<string, Record<string, unknown>> | undefined;\n const headerKey = cell?.column?.Header as unknown as string;\n const currencyCode = pendingEdit?.meta?.currency_code || rawData?.[headerKey]?.currency_code || 'USD';\n setCellValue(formatCurrency(pendingEdit.value, currencyCode as string));\n } else {\n const rawData = cell?.row?.original?.__rawData as Record<string, Record<string, unknown>> | undefined;\n const headerKey = cell?.column?.Header as unknown as string;\n setCellValue(formatCurrency(cell?.value, (rawData?.[headerKey]?.currency_code as string) || 'USD'));\n }\n }\n }, [cell?.value, cell?.column?.type, cell?.column?.Header, cell?.row?.original?.__rawData, pendingEdit?.value, pendingEdit?.meta?.currency_code]);\n\n useEffect(() => {\n if (cell?.column?.type?.toLowerCase() === 'percentage') {\n if (pendingEdit?.value !== undefined) setCellValue(pendingEdit.value?.toString() + '%' || '');\n else setCellValue(cell?.value?.toString() + '%' || '');\n }\n }, [cell?.value, cell?.column?.type, pendingEdit?.value]);\n\n useEffect(() => {\n const columnType = cell?.column?.type?.toLowerCase() || '';\n if (['date', 'datetime'].includes(columnType)) {\n if (pendingEdit?.value !== undefined) {\n const hasTime = columnType === 'datetime';\n const formattedValue = formatDate(pendingEdit.value as string, { withTime: hasTime, skipTimezone: true });\n setCellValue(formattedValue || pendingEdit.value);\n } else setCellValue(cell.value);\n }\n }, [cell?.value, cell?.column?.type, pendingEdit?.value]);\n\n useEffect(() => {\n const columnType = cell?.column?.type?.toLowerCase() || '';\n if (['currency', 'percentage', 'duration', 'boolean', 'date', 'datetime'].includes(columnType)) return;\n if (pendingEdit?.value !== undefined) setCellValue(pendingEdit.value);\n else if (cell?.column?.dataType !== 'duration') setCellValue(cell.value);\n }, [cell?.value, cell?.column?.type, cell?.column?.dataType, pendingEdit?.value]);\n\n useEffect(() => {\n if (cell?.column?.type?.toLowerCase() === 'boolean' && allowInlineEdit) {\n const rawValue = pendingEdit?.value !== undefined ? pendingEdit.value : cell?.value;\n const booleanValue = rawValue === true || rawValue === 'true' || rawValue === 'True' || rawValue === 'Yes' || rawValue === 1;\n setCellValue(booleanValue ? 'Yes' : 'No');\n }\n }, [cell?.value, cell?.column?.type, allowInlineEdit, pendingEdit?.value]);\n\n useEffect(() => {\n return () => {\n if (urlTooltipTimer.current) {\n clearTimeout(urlTooltipTimer.current);\n }\n if (truncateTooltipTimer.current) {\n clearTimeout(truncateTooltipTimer.current);\n }\n };\n }, []);\n\n const isUiElementCell = React.isValidElement(cellValue);\n\n return (\n <td\n key={index} id={cell.value as string | undefined} data-column-key={cell?.column?.key} {...cell.getCellProps()}\n onClick={rowLinkConfig?.isEnabled ? undefined : onClick}\n className={cn('h-row', {\n 'sticky left-0': cell?.column?.sticky,\n relative: !cell?.column?.sticky,\n 'w-full': isLastCell,\n 'overflow-visible': inlineEditing === cell.column.key,\n /** Chips/badges: avoid vertical clip from overflow-x-hidden + truncate (see isUiElementCell branch below) */\n 'overflow-x-hidden overflow-y-visible': inlineEditing !== cell.column.key && isUiElementCell,\n 'overflow-hidden': inlineEditing !== cell.column.key && !isUiElementCell,\n },\n cellValidationError && !isActuallyInlineEditing ? 'outline outline-2 outline-error-500 -outline-offset-2 z-[5]' : '',\n `${bgColor ? bgColor : 'bg-white dark:bg-black-800'}`,\n )}\n style={{ minWidth: `${cell.column.width}px`, maxWidth: `${cell.column.width}px`, right: cell?.column?.sticky ? `${nextWidthSum}px` : '0px', paddingLeft: level > 0 && index === 0 ? `${level * 16}px` : undefined }}\n onMouseEnter={onMouseEnter} onMouseLeave={onMouseLeave}\n >\n <CellWrapper withLink={rowLinkConfig?.isEnabled} linkTo={rowLinkConfig?.linkTo || undefined} rowData={cell?.row?.original} disableRowClick={cell?.column?.disableRowClick}>\n {(Array.isArray(cellEditing) ? cellEditing.includes(`${id}-${cell?.column?.id}`) : cellEditing === `${id}-${cell?.column?.id}`) ? (\n <div className='h-row top-0 font-medium font-inter w-full absolute flex items-center px-4'>\n <span className='text-neutral-400 dark:text-black-400 truncate'>\n {(() => {\n const currentCellId = `${id}-${cell?.column?.id}`;\n const editValue = typeof cellEditingValue === 'object' ? cellEditingValue?.[currentCellId] : cellEditingValue;\n const columnType = cell?.column?.type?.toLowerCase();\n\n if (columnType === 'boolean') {\n return (editValue as unknown) === true || editValue === 'true' || editValue === 'True' ? 'Yes' : 'No';\n }\n\n if ((columnType === 'date' || columnType === 'datetime') && editValue) {\n const hasTime = columnType === 'datetime';\n return formatDate(editValue as string, { withTime: hasTime, skipTimezone: true }) || String(editValue);\n }\n\n return editValue !== undefined && editValue !== null ? String(editValue) : (cellValue as React.ReactNode);\n })()}\n </span>\n <div className='ml-2 flex items-center gap-1.5'><LoadingSpinnerIcon className='spinner text-neutral-600 dark:text-white' size={12} /></div>\n </div>\n ) : inlineEditing === cell.column.key && cell?.column?.canEdit && !isLocked && !cell?.column?.is_disabled ? (\n <div className='h-row w-full absolute top-0 left-0 flex items-center' style={{ marginLeft: level > 0 && index === 0 ? `-${level * 16}px` : undefined, width: level > 0 && index === 0 ? `calc(100% + ${level * 16}px)` : '100%' }}>\n <InlineEditField cell={cell} id={id} inlineEditing={inlineEditing} cellRef={cellRef} handleCellValueChange={handleCellValueChange} handleUpdateCellData={handleUpdateCellData} registerValidation={registerValidation} />\n </div>\n ) : (\n <>\n {level > 0 && index === 0 && <div className='h-row border-l border-neutral-300 dark:border-black-600 ml-2' />}\n <div className='min-h-6'>\n <Tooltip\n title={tooltipText && cell?.column?.type?.toLowerCase() !== 'url' ? tooltipText : undefined}\n hideTooltip={!tooltipText || cell?.column?.type?.toLowerCase() === 'url'}\n delayShow\n placement='top'\n >\n <div className={cn(`h-row top-0 font-medium font-inter overflow-index-auto whitespace-nowrap text-ellipsis dark:text-black-200 w-full absolute flex items-center ${bgColor ? bgColor : 'bg-white dark:bg-black-800'}`, isUiElementCell ? 'overflow-x-hidden overflow-y-visible' : 'overflow-x-hidden', { 'border border-b-0 border-t-0 border-primary-600 dark:border-blue-800': selectedColumnIds?.includes(cell.column.id) })}\n style={cell?.column?.sticky && isFirstStickyCell ? { boxShadow: `${isDark ? '-8px 0px 8px 0px rgba(255, 255, 255, 0.01)' : '-8px 0px 8px 0px rgba(0, 0, 0, 0.02)'}` } : {}}>\n {cascadingTableConfig?.isCascading && !originalsOnly && index === 0 && (\n <div className={cn('w-[22px] h-row flex items-center px-4', `${bgColor ? bgColor : 'bg-white dark:bg-black-800'}`)} id='cascading'>\n {maxLevel! > level && (cell?.row?.original?.__has_children || cascadingTableConfig?.showAllDropdown) && (\n <div>{loadingExpand ? <LoadingSpinnerIcon className='text-neutral-600 dark:text-white' size={8} /> : <div>{expandedRows?.[id]?.isOpen ? <KeyboardArrowDownIcon size={20} className='text-neutral-400 dark:text-neutral-400' onClick={(e) => { toggleRowExpand(); e.stopPropagation(); }} /> : <KeyboardArrowRightFilledIcon size={20} className='text-neutral-400 dark:text-neutral-400' onClick={(e) => { toggleRowExpand(); e.stopPropagation(); }} />}</div>}</div>\n )}\n </div>\n )}\n\n {cell?.column?.type?.toLowerCase() === 'url' && tooltipText ? (\n <Tooltip\n title={(\n <div onMouseEnter={() => handleUrlTooltipChange(true)} onMouseLeave={() => handleUrlTooltipChange(false)}>\n <a href={tooltipText} target='_blank' rel='noopener noreferrer' onClick={(e) => e.stopPropagation()}>\n <div className='flex gap-1 items-center w-full'>\n <div className='w-4 h-4'>\n <LinkIcon height={16} width={16} />\n </div>\n <Typography variant='medium' size='small' className='truncate' appearance='custom'>{tooltipText}</Typography>\n <OpenInNewRounded sx={{ height: '16px', width: '16px', color: '#016DCF' }} />\n </div>\n </a>\n </div>\n )}\n placement='top'\n open={urlTooltipOpen}\n onOpenChange={handleUrlTooltipChange}\n className='block w-full min-w-0 overflow-hidden'\n >\n <div className='w-full h-full flex items-center px-4 min-w-0 overflow-hidden text-primary-400'>\n <span ref={textRef} onMouseEnter={checkTruncation} className='truncate w-full'>\n {highlightSubstring && shouldHighlight && !React.isValidElement(cellValue) && typeof cellValue !== 'object'\n ? highlightSubstring(cellValue as string)\n : cellValue as React.ReactNode}\n </span>\n </div>\n </Tooltip>\n ) : (\n <Tooltip\n title={\n isTruncated && cellValue && !isUiElementCell ? (\n <div\n onMouseEnter={() => handleTruncateTooltipChange(true)}\n onMouseLeave={() => handleTruncateTooltipChange(false)}\n className='max-h-96 overflow-y-auto whitespace-pre-wrap break-words no-scroll'\n >\n {String(cellValue)}\n </div>\n ) : undefined\n }\n placement='top'\n delayShow\n hideTooltip={!!tooltipText}\n open={isTruncated && !tooltipText && !isUiElementCell ? truncateTooltipOpen : undefined}\n onOpenChange={isTruncated && !tooltipText && !isUiElementCell ? handleTruncateTooltipChange : undefined}\n className={cn('block w-full min-w-0', isUiElementCell ? 'overflow-x-hidden overflow-y-visible' : 'overflow-hidden')}\n >\n <div className={cn('w-full h-full flex items-center px-4 min-w-0', isUiElementCell ? 'overflow-x-hidden overflow-y-visible' : 'overflow-hidden')}>\n <span\n ref={isUiElementCell ? undefined : textRef}\n onMouseEnter={isUiElementCell ? undefined : checkTruncation}\n className={cn(isUiElementCell ? 'flex min-w-0 max-w-full items-center justify-start gap-1' : 'truncate w-full')}\n >\n {highlightSubstring && shouldHighlight && !React.isValidElement(cellValue) && typeof cellValue !== 'object'\n ? highlightSubstring(cellValue as string)\n : React.isValidElement(cellValue)\n ? (typeof (cellValue as React.ReactElement<Record<string, unknown>>).type === 'string'\n ? cellValue\n : React.cloneElement(cellValue as React.ReactElement<Record<string, unknown>>, {\n ...((cellValue as React.ReactElement<Record<string, unknown>>).props as Record<string, unknown>),\n containerWidth: cell.column.width,\n }))\n : cellValue as React.ReactNode}\n </span>\n </div>\n </Tooltip>\n )}\n </div>\n </Tooltip>\n </div>\n </>\n )}\n </CellWrapper>\n {cellValidationError && !isActuallyInlineEditing && (\n <div className='absolute bottom-0 left-0 right-0 h-row flex items-end pointer-events-none z-[5]'>\n <div className='w-full bg-error-50 dark:bg-error-975 px-1.5 py-0.5 truncate'><span className='text-error-600 text-[10px] font-medium leading-none'>{cellValidationError}</span></div>\n </div>\n )}\n {isFieldOperationLoading && !(inlineEditing === cell.column.key && cell?.column?.canEdit && !isLocked && !cell?.column?.is_disabled) && (\n <div className='absolute top-0 right-0 bg-white dark:bg-black-800 rounded-full w-5 h-5 flex items-center justify-center border border-primary-300 dark:border-primary-600 shadow-sm z-10'>\n <LoadingSpinnerIcon className='text-primary-600 dark:text-white' size={8} />\n </div>\n )}\n </td>\n );\n};\n\nexport const DataCell = React.memo(DataCellInner);\n"],"names":["interval","formatDurationFallback","duration","durationInMs","days","hours","minutes","seconds","CellWrapper","children","withLink","linkTo","rowData","disableRowClick","jsx","Link","DataCellInner","cell","id","nextWidthSum","isLastCell","rowHovering","index","isFirstStickyCell","handleCellClick","currentData","highlightSubstring","is_read","is_modified","is_row_modified","is_deleted","is_added","level","inlineEditing","isInlineEditing","setRowHovering","handleCellValueChange","cellRef","handleUpdateCellData","registerValidation","loadingExpand","toggleRowExpand","isDraggingOver","isLoading","is_incomplete","pendingEdit","hasPendingEdit","pendingValidationError","cascadingTableConfig","originalsOnly","maxLevel","showNewItem","expandedRows","rowLinkConfig","multiSelectConfig","cellEditing","cellEditingValue","allowInlineEdit","fieldOperationLoading","contextPendingEdits","selectedRowId","useContext","TableContext","isSelectedRow","tableConfig","useTableConfig","isLocked","cellValidationError","isActuallyInlineEditing","isFieldOperationLoading","theme","useTheme","isDark","onMouseEnter","useCallback","onMouseLeave","getNodeExecutionDuration","cellValue","setCellValue","useState","tooltipText","setTooltipText","isTruncated","setIsTruncated","urlTooltipOpen","setUrlTooltipOpen","truncateTooltipOpen","setTruncateTooltipOpen","textRef","useRef","urlTooltipTimer","truncateTooltipTimer","selectedColumnIds","shouldHighlight","checkTruncation","handleUrlTooltipChange","open","handleTruncateTooltipChange","bgColor","cn","getTableRowBgClassNamesByStatus","onClick","e","useEffect","startedTime","formatDate","timeDiff","rawData","headerKey","currencyCode","formatCurrency","columnType","hasTime","formattedValue","rawValue","isUiElementCell","React","jsxs","currentCellId","editValue","LoadingSpinnerIcon","InlineEditField","Fragment","Tooltip","KeyboardArrowDownIcon","KeyboardArrowRightFilledIcon","LinkIcon","Typography","OpenInNewRounded","DataCell"],"mappings":"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"}
1
+ {"version":3,"file":"DataCell.es.js","sources":["../../../../../../src/components/data-display/infinite-table/body/cell/DataCell.tsx"],"sourcesContent":["import { useTheme } from '../../../../../hooks/useTheme';\nimport { formatCurrency } from '../../../../../utils/formatters';\nimport { formatDate } from '../../../../../utils/formatters';\nimport { getTableRowBgClassNamesByStatus } from '../../../../../constants/table';\nimport type { ICell, IPendingEdit, ValidateAndSaveResult } from '../../types';\nimport { useTableConfig } from '../../../../../providers/design-system-provider/hooks';\nimport Tooltip from '../../../../tooltip/Tooltip';\nimport { Typography } from '../../../../data-display/typography/Typography';\nimport { KeyboardArrowDownIcon, KeyboardArrowRightFilledIcon, LinkIcon, LoadingSpinnerIcon } from '../../../../icon';\nimport { OpenInNewRounded } from '@mui/icons-material';\nimport cn from 'classnames';\nimport React, { useCallback, useContext, useEffect, useRef, useState } from 'react';\nimport { Link } from 'react-router-dom';\n\nimport { TableContext } from '../../context';\nimport { InlineEditField } from './InlineEditField';\n\ntype CellProps = {\n cell: ICell;\n id: string | number;\n nextWidthSum: number;\n isLastCell: boolean;\n rowHovering: string | number | null;\n index: number;\n isFirstStickyCell: boolean;\n handleCellClick: (e?: React.MouseEvent) => void | null;\n currentData: { is_row_modified?: boolean; is_deleted?: boolean; is_added?: boolean };\n highlightSubstring?: (value: string) => JSX.Element;\n is_read: boolean;\n is_modified: boolean;\n is_row_modified: boolean;\n is_deleted: boolean;\n is_added: boolean;\n level: number;\n inlineEditing: string | null;\n isInlineEditing?: boolean;\n setRowHovering: (id: string | number | null) => void;\n handleCellValueChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n cellRef: React.RefObject<HTMLDivElement>;\n handleUpdateCellData: (directValue?: string | boolean | null, meta?: { currency_code?: string | null; reference?: unknown | null;[key: string]: unknown | null } | null) => void;\n registerValidation?: (validateFn: () => ValidateAndSaveResult) => void;\n loadingExpand: boolean;\n toggleRowExpand: () => void;\n isDraggingOver?: boolean;\n isLoading?: boolean;\n is_incomplete?: boolean;\n pendingEdit?: IPendingEdit;\n hasPendingEdit?: boolean;\n pendingValidationError?: string | null;\n};\n\nlet interval: ReturnType<typeof setInterval> | undefined;\n\nconst formatDurationFallback = (duration: unknown): string => {\n const durationInMs = Number(duration);\n\n if (Number.isNaN(durationInMs) || duration === null || duration === undefined) {\n return '0ms';\n }\n\n if (durationInMs >= 86400000) {\n const days = Math.floor(durationInMs / 86400000);\n const hours = Math.floor((durationInMs % 86400000) / 3600000);\n const minutes = Math.floor((durationInMs % 3600000) / 60000);\n const seconds = Math.floor((durationInMs % 60000) / 1000);\n return `${days}d ${hours}h ${minutes}m ${seconds}s`;\n }\n\n if (durationInMs >= 3600000) {\n const hours = Math.floor(durationInMs / 3600000);\n const minutes = Math.floor((durationInMs % 3600000) / 60000);\n const seconds = Math.floor((durationInMs % 60000) / 1000);\n return `${hours}h ${minutes}m ${seconds}s`;\n }\n\n if (durationInMs >= 60000) {\n const minutes = Math.floor(durationInMs / 60000);\n const seconds = Math.floor((durationInMs % 60000) / 1000);\n return `${minutes}m ${seconds}s`;\n }\n\n if (durationInMs >= 1000) {\n return `${(durationInMs / 1000).toFixed(2)}s`;\n }\n\n return `${durationInMs}ms`;\n};\n\nconst CellWrapper = ({ children, withLink, linkTo, rowData, disableRowClick }: { children: React.ReactNode; withLink?: boolean; linkTo?: (id: string, _rowData?: Record<string, unknown>) => string; rowData?: Record<string, unknown>; disableRowClick?: boolean }) => {\n return withLink && !disableRowClick ? <Link to={linkTo?.(rowData?.id as string, rowData) || ''}>{children}</Link> : children;\n};\n\nconst DataCellInner: React.FC<CellProps> = ({\n cell, id, nextWidthSum, isLastCell, rowHovering, index, isFirstStickyCell, handleCellClick, currentData, highlightSubstring,\n is_read, is_modified, is_row_modified, is_deleted, is_added, level, inlineEditing, isInlineEditing, setRowHovering,\n handleCellValueChange, cellRef, handleUpdateCellData, registerValidation, loadingExpand, toggleRowExpand,\n isDraggingOver, isLoading, is_incomplete, pendingEdit, hasPendingEdit, pendingValidationError,\n}) => {\n const {\n cascadingTableConfig, originalsOnly, maxLevel, showNewItem, expandedRows, rowLinkConfig, multiSelectConfig,\n cellEditing, cellEditingValue, allowInlineEdit, fieldOperationLoading, pendingEdits: contextPendingEdits,\n } = useContext(TableContext);\n\n const tableConfig = useTableConfig();\n\n const rowCellMeta = cell?.column?.key ? (cell?.row?.original?.__cellMetadata as Record<string, Record<string, unknown>> | undefined)?.[cell.column.key] : undefined;\n const isLocked = rowCellMeta?.is_locked ?? cell?.column?.is_locked;\n const cellValidationError = (cell?.column?.key ? contextPendingEdits?.[id]?.[cell.column.key]?.validationError : null) || pendingValidationError || null;\n const isActuallyInlineEditing = inlineEditing === cell.column.key && cell?.column?.canEdit && !isLocked && !cell?.column?.is_disabled;\n const isFieldOperationLoading = fieldOperationLoading === `${id}-${cell?.column?.id}`;\n const { theme } = useTheme();\n const isDark = theme === 'dark';\n const onMouseEnter = useCallback(() => setRowHovering(id), [setRowHovering, id]);\n const onMouseLeave = useCallback(() => setRowHovering(null), [setRowHovering]);\n\n const getNodeExecutionDuration = tableConfig?.formatDuration;\n const [cellValue, setCellValue] = useState(\n cell?.column?.dataType === 'duration' && cell?.value\n ? getNodeExecutionDuration\n ? getNodeExecutionDuration(cell.value)\n : formatDurationFallback(cell.value)\n : cell.value,\n );\n const [tooltipText, setTooltipText] = useState<string | null>(null);\n const [isTruncated, setIsTruncated] = useState(false);\n const [urlTooltipOpen, setUrlTooltipOpen] = useState(false);\n const [truncateTooltipOpen, setTruncateTooltipOpen] = useState(false);\n const textRef = useRef<HTMLSpanElement>(null);\n const urlTooltipTimer = useRef<ReturnType<typeof setTimeout>>();\n const truncateTooltipTimer = useRef<ReturnType<typeof setTimeout>>();\n const { selectedColumnIds = [] } = multiSelectConfig || {};\n const shouldHighlight = !Object.prototype.hasOwnProperty.call(cell?.column?.meta ?? {}, 'shouldHighlight') || cell?.column?.meta?.shouldHighlight;\n\n const checkTruncation = useCallback(() => {\n if (textRef.current) {\n setIsTruncated(textRef.current.scrollWidth > textRef.current.clientWidth);\n }\n }, []);\n\n const handleUrlTooltipChange = useCallback((open: boolean) => {\n if (urlTooltipTimer.current) {\n clearTimeout(urlTooltipTimer.current);\n }\n\n if (open) {\n setUrlTooltipOpen(true);\n } else {\n urlTooltipTimer.current = setTimeout(() => setUrlTooltipOpen(false), 200);\n }\n }, []);\n\n const handleTruncateTooltipChange = useCallback((open: boolean) => {\n if (truncateTooltipTimer.current) {\n clearTimeout(truncateTooltipTimer.current);\n }\n\n if (open) {\n setTruncateTooltipOpen(true);\n } else {\n truncateTooltipTimer.current = setTimeout(() => setTruncateTooltipOpen(false), 200);\n }\n }, []);\n\n const bgColor = cn({\n 'bg-amber-100 dark:bg-amber-900/30': hasPendingEdit,\n 'bg-neutral-100 dark:bg-black-600': rowHovering === id && !isInlineEditing && !hasPendingEdit && !(is_deleted || currentData?.is_deleted) && !(is_added || currentData?.is_added),\n 'bg-error-200 dark:bg-error-900': rowHovering === id && !isInlineEditing && !hasPendingEdit && (is_deleted || currentData?.is_deleted),\n 'bg-success-100 dark:bg-success-800': rowHovering === id && !isInlineEditing && !hasPendingEdit && (is_added || currentData?.is_added),\n 'bg-primary-50 dark:bg-black-700': !is_incomplete && !is_read && showNewItem && !isLoading && rowHovering !== id && !isInlineEditing && !hasPendingEdit,\n 'bg-warning-50 dark:bg-black-500': (is_incomplete || is_modified || is_row_modified || currentData?.is_row_modified) && !isLoading && rowHovering !== id && !isInlineEditing && !hasPendingEdit,\n 'bg-error-100 dark:bg-error-975': (is_deleted || currentData?.is_deleted) && !isLoading && rowHovering !== id && !isInlineEditing && !hasPendingEdit,\n 'bg-success-50 dark:bg-success-900': (is_added || currentData?.is_added) && !isLoading && rowHovering !== id && !isInlineEditing && !hasPendingEdit,\n 'bg-primary-50 dark:bg-primary-900': (isDraggingOver || isInlineEditing) && !hasPendingEdit,\n 'bg-primary-50 dark:bg-primary-800': selectedColumnIds?.includes(cell.column.id) && !isInlineEditing && !hasPendingEdit,\n [getTableRowBgClassNamesByStatus[cell?.row?.original?.__rowBgStatus as string]]: cell?.row?.original?.__rowBgStatus && !isInlineEditing && !hasPendingEdit,\n });\n\n const onClick = (e: React.MouseEvent) => { if (cell.column?.disableRowClick) return; handleCellClick(e); };\n\n useEffect(() => {\n const isRunning = cell?.row?.original?.status === 'running';\n if (isRunning && cell.column?.dataType === 'duration') {\n interval = setInterval(() => {\n const startedTime = new Date(formatDate((cell?.row?.original?.created_at || cell?.row?.original?.executed_on) as string | undefined, { withTime: true, format: 'yyyy-MM-dd HH:mm:ss' }) as unknown as Date);\n const timeDiff = Math.abs(new Date().getTime() - new Date(startedTime).getTime());\n setCellValue(getNodeExecutionDuration ? getNodeExecutionDuration(timeDiff) : formatDurationFallback(timeDiff));\n }, 500);\n }\n return () => { if (interval) clearInterval(interval); };\n }, [cellValue, cell.value, cell?.row?.original?.created_at, cell?.row?.original?.executed_on, cell?.row?.original?.status, cell.column?.dataType, getNodeExecutionDuration]);\n\n useEffect(() => {\n if (cell?.column?.tooltipCellKey || cell?.column?.type?.toLowerCase() === 'url') {\n if (cell?.column?.type?.toLowerCase() === 'url') setTooltipText(cell?.value as string | null);\n else setTooltipText(cell?.row?.original?.[String(cell?.column?.tooltipCellKey)] as string | null);\n }\n }, [cell?.column?.tooltipCellKey, cell?.row?.original, cell?.column?.type, cell?.value]);\n\n useEffect(() => {\n if (cell?.column?.type?.toLowerCase() === 'currency') {\n if (pendingEdit?.value !== undefined) {\n const rawData = cell?.row?.original?.__rawData as Record<string, Record<string, unknown>> | undefined;\n const headerKey = cell?.column?.Header as unknown as string;\n const currencyCode = pendingEdit?.meta?.currency_code || rawData?.[headerKey]?.currency_code || 'USD';\n setCellValue(formatCurrency(pendingEdit.value, currencyCode as string));\n } else {\n const rawData = cell?.row?.original?.__rawData as Record<string, Record<string, unknown>> | undefined;\n const headerKey = cell?.column?.Header as unknown as string;\n setCellValue(formatCurrency(cell?.value, (rawData?.[headerKey]?.currency_code as string) || 'USD'));\n }\n }\n }, [cell?.value, cell?.column?.type, cell?.column?.Header, cell?.row?.original?.__rawData, pendingEdit?.value, pendingEdit?.meta?.currency_code]);\n\n useEffect(() => {\n if (cell?.column?.type?.toLowerCase() === 'percentage') {\n if (pendingEdit?.value !== undefined) setCellValue(pendingEdit.value?.toString() + '%' || '');\n else setCellValue(cell?.value?.toString() + '%' || '');\n }\n }, [cell?.value, cell?.column?.type, pendingEdit?.value]);\n\n useEffect(() => {\n const columnType = cell?.column?.type?.toLowerCase() || '';\n if (['date', 'datetime'].includes(columnType)) {\n if (pendingEdit?.value !== undefined) {\n const hasTime = columnType === 'datetime';\n const formattedValue = formatDate(pendingEdit.value as string, { withTime: hasTime, skipTimezone: true });\n setCellValue(formattedValue || pendingEdit.value);\n } else setCellValue(cell.value);\n }\n }, [cell?.value, cell?.column?.type, pendingEdit?.value]);\n\n useEffect(() => {\n const columnType = cell?.column?.type?.toLowerCase() || '';\n if (['currency', 'percentage', 'duration', 'boolean', 'date', 'datetime'].includes(columnType)) return;\n if (pendingEdit?.value !== undefined) setCellValue(pendingEdit.value);\n else if (cell?.column?.dataType !== 'duration') setCellValue(cell.value);\n }, [cell?.value, cell?.column?.type, cell?.column?.dataType, pendingEdit?.value]);\n\n useEffect(() => {\n if (cell?.column?.type?.toLowerCase() === 'boolean' && allowInlineEdit) {\n const rawValue = pendingEdit?.value !== undefined ? pendingEdit.value : cell?.value;\n const booleanValue = rawValue === true || rawValue === 'true' || rawValue === 'True' || rawValue === 'Yes' || rawValue === 1;\n setCellValue(booleanValue ? 'Yes' : 'No');\n }\n }, [cell?.value, cell?.column?.type, allowInlineEdit, pendingEdit?.value]);\n\n useEffect(() => {\n return () => {\n if (urlTooltipTimer.current) {\n clearTimeout(urlTooltipTimer.current);\n }\n if (truncateTooltipTimer.current) {\n clearTimeout(truncateTooltipTimer.current);\n }\n };\n }, []);\n\n const isUiElementCell = React.isValidElement(cellValue);\n\n return (\n <td\n key={index} id={cell.value as string | undefined} data-column-key={cell?.column?.key} {...cell.getCellProps()}\n onClick={rowLinkConfig?.isEnabled ? undefined : onClick}\n className={cn('h-10', {\n 'sticky left-0': cell?.column?.sticky,\n relative: !cell?.column?.sticky,\n 'w-full': isLastCell,\n 'overflow-visible': inlineEditing === cell.column.key,\n /** Chips/badges: avoid vertical clip from overflow-x-hidden + truncate (see isUiElementCell branch below) */\n 'overflow-x-hidden overflow-y-visible': inlineEditing !== cell.column.key && isUiElementCell,\n 'overflow-hidden': inlineEditing !== cell.column.key && !isUiElementCell,\n },\n cellValidationError && !isActuallyInlineEditing ? 'outline outline-2 outline-error-500 -outline-offset-2 z-[5]' : '',\n `${bgColor ? bgColor : 'bg-white dark:bg-black-800'}`,\n )}\n style={{ minWidth: `${cell.column.width}px`, maxWidth: `${cell.column.width}px`, right: cell?.column?.sticky ? `${nextWidthSum}px` : '0px', paddingLeft: level > 0 && index === 0 ? `${level * 16}px` : undefined }}\n onMouseEnter={onMouseEnter} onMouseLeave={onMouseLeave}\n >\n <CellWrapper withLink={rowLinkConfig?.isEnabled} linkTo={rowLinkConfig?.linkTo || undefined} rowData={cell?.row?.original} disableRowClick={cell?.column?.disableRowClick}>\n {(Array.isArray(cellEditing) ? cellEditing.includes(`${id}-${cell?.column?.id}`) : cellEditing === `${id}-${cell?.column?.id}`) ? (\n <div className='h-10 top-0 font-medium font-inter w-full absolute flex items-center px-4'>\n <span className='text-neutral-400 dark:text-black-400 truncate'>\n {(() => {\n const currentCellId = `${id}-${cell?.column?.id}`;\n const editValue = typeof cellEditingValue === 'object' ? cellEditingValue?.[currentCellId] : cellEditingValue;\n const columnType = cell?.column?.type?.toLowerCase();\n\n if (columnType === 'boolean') {\n return (editValue as unknown) === true || editValue === 'true' || editValue === 'True' ? 'Yes' : 'No';\n }\n\n if ((columnType === 'date' || columnType === 'datetime') && editValue) {\n const hasTime = columnType === 'datetime';\n return formatDate(editValue as string, { withTime: hasTime, skipTimezone: true }) || String(editValue);\n }\n\n return editValue !== undefined && editValue !== null ? String(editValue) : (cellValue as React.ReactNode);\n })()}\n </span>\n <div className='ml-2 flex items-center gap-1.5'><LoadingSpinnerIcon className='spinner text-neutral-600 dark:text-white' size={12} /></div>\n </div>\n ) : inlineEditing === cell.column.key && cell?.column?.canEdit && !isLocked && !cell?.column?.is_disabled ? (\n <div className='h-10 w-full absolute top-0 left-0 flex items-center' style={{ marginLeft: level > 0 && index === 0 ? `-${level * 16}px` : undefined, width: level > 0 && index === 0 ? `calc(100% + ${level * 16}px)` : '100%' }}>\n <InlineEditField cell={cell} id={id} inlineEditing={inlineEditing} cellRef={cellRef} handleCellValueChange={handleCellValueChange} handleUpdateCellData={handleUpdateCellData} registerValidation={registerValidation} />\n </div>\n ) : (\n <>\n {level > 0 && index === 0 && <div className='h-10 border-l border-neutral-300 dark:border-black-600 ml-2' />}\n <div className='min-h-6'>\n <Tooltip\n title={tooltipText && cell?.column?.type?.toLowerCase() !== 'url' ? tooltipText : undefined}\n hideTooltip={!tooltipText || cell?.column?.type?.toLowerCase() === 'url'}\n delayShow\n placement='top'\n >\n <div className={cn(`h-10 top-0 font-medium font-inter overflow-index-auto whitespace-nowrap text-ellipsis dark:text-black-200 w-full absolute flex items-center ${bgColor ? bgColor : 'bg-white dark:bg-black-800'}`, isUiElementCell ? 'overflow-x-hidden overflow-y-visible' : 'overflow-x-hidden', { 'border border-b-0 border-t-0 border-primary-600 dark:border-blue-800': selectedColumnIds?.includes(cell.column.id) })}\n style={cell?.column?.sticky && isFirstStickyCell ? { boxShadow: `${isDark ? '-8px 0px 8px 0px rgba(255, 255, 255, 0.01)' : '-8px 0px 8px 0px rgba(0, 0, 0, 0.02)'}` } : {}}>\n {cascadingTableConfig?.isCascading && !originalsOnly && index === 0 && (\n <div className={cn('w-[22px] h-10 flex items-center px-4', `${bgColor ? bgColor : 'bg-white dark:bg-black-800'}`)} id='cascading'>\n {maxLevel! > level && (cell?.row?.original?.__has_children || cascadingTableConfig?.showAllDropdown) && (\n <div>{loadingExpand ? <LoadingSpinnerIcon className='text-neutral-600 dark:text-white' size={8} /> : <div>{expandedRows?.[id]?.isOpen ? <KeyboardArrowDownIcon size={20} className='text-neutral-400 dark:text-neutral-400' onClick={(e) => { toggleRowExpand(); e.stopPropagation(); }} /> : <KeyboardArrowRightFilledIcon size={20} className='text-neutral-400 dark:text-neutral-400' onClick={(e) => { toggleRowExpand(); e.stopPropagation(); }} />}</div>}</div>\n )}\n </div>\n )}\n\n {cell?.column?.type?.toLowerCase() === 'url' && tooltipText ? (\n <Tooltip\n title={(\n <div onMouseEnter={() => handleUrlTooltipChange(true)} onMouseLeave={() => handleUrlTooltipChange(false)}>\n <a href={tooltipText} target='_blank' rel='noopener noreferrer' onClick={(e) => e.stopPropagation()}>\n <div className='flex gap-1 items-center w-full'>\n <div className='w-4 h-4'>\n <LinkIcon height={16} width={16} />\n </div>\n <Typography variant='medium' size='small' className='truncate' appearance='custom'>{tooltipText}</Typography>\n <OpenInNewRounded sx={{ height: '16px', width: '16px', color: '#016DCF' }} />\n </div>\n </a>\n </div>\n )}\n placement='top'\n open={urlTooltipOpen}\n onOpenChange={handleUrlTooltipChange}\n className='block w-full min-w-0 overflow-hidden'\n >\n <div className='w-full h-full flex items-center px-4 min-w-0 overflow-hidden text-primary-400'>\n <span ref={textRef} onMouseEnter={checkTruncation} className='truncate w-full'>\n {highlightSubstring && shouldHighlight && !React.isValidElement(cellValue) && typeof cellValue !== 'object'\n ? highlightSubstring(cellValue as string)\n : cellValue as React.ReactNode}\n </span>\n </div>\n </Tooltip>\n ) : (\n <Tooltip\n title={\n isTruncated && cellValue && !isUiElementCell ? (\n <div\n onMouseEnter={() => handleTruncateTooltipChange(true)}\n onMouseLeave={() => handleTruncateTooltipChange(false)}\n className='max-h-96 overflow-y-auto whitespace-pre-wrap break-words no-scroll'\n >\n {String(cellValue)}\n </div>\n ) : undefined\n }\n placement='top'\n delayShow\n hideTooltip={!!tooltipText}\n open={isTruncated && !tooltipText && !isUiElementCell ? truncateTooltipOpen : undefined}\n onOpenChange={isTruncated && !tooltipText && !isUiElementCell ? handleTruncateTooltipChange : undefined}\n className={cn('block w-full min-w-0', isUiElementCell ? 'overflow-x-hidden overflow-y-visible' : 'overflow-hidden')}\n >\n <div className={cn('w-full h-full flex items-center px-4 min-w-0', isUiElementCell ? 'overflow-x-hidden overflow-y-visible' : 'overflow-hidden')}>\n <span\n ref={isUiElementCell ? undefined : textRef}\n onMouseEnter={isUiElementCell ? undefined : checkTruncation}\n className={cn(isUiElementCell ? 'flex min-w-0 max-w-full items-center justify-start gap-1' : 'truncate w-full')}\n >\n {highlightSubstring && shouldHighlight && !React.isValidElement(cellValue) && typeof cellValue !== 'object'\n ? highlightSubstring(cellValue as string)\n : React.isValidElement(cellValue)\n ? (typeof (cellValue as React.ReactElement<Record<string, unknown>>).type === 'string'\n ? cellValue\n : React.cloneElement(cellValue as React.ReactElement<Record<string, unknown>>, {\n ...((cellValue as React.ReactElement<Record<string, unknown>>).props as Record<string, unknown>),\n containerWidth: cell.column.width,\n }))\n : cellValue as React.ReactNode}\n </span>\n </div>\n </Tooltip>\n )}\n </div>\n </Tooltip>\n </div>\n </>\n )}\n </CellWrapper>\n {cellValidationError && !isActuallyInlineEditing && (\n <div className='absolute bottom-0 left-0 right-0 h-10 flex items-end pointer-events-none z-[5]'>\n <div className='w-full bg-error-50 dark:bg-error-975 px-1.5 py-0.5 truncate'><span className='text-error-600 text-2xs font-medium leading-none'>{cellValidationError}</span></div>\n </div>\n )}\n {isFieldOperationLoading && !(inlineEditing === cell.column.key && cell?.column?.canEdit && !isLocked && !cell?.column?.is_disabled) && (\n <div className='absolute top-0 right-0 bg-white dark:bg-black-800 rounded-full w-5 h-5 flex items-center justify-center border border-primary-300 dark:border-primary-600 shadow-sm z-10'>\n <LoadingSpinnerIcon className='text-primary-600 dark:text-white' size={8} />\n </div>\n )}\n </td>\n );\n};\n\nexport const DataCell = React.memo(DataCellInner);\n"],"names":["interval","formatDurationFallback","duration","durationInMs","days","hours","minutes","seconds","CellWrapper","children","withLink","linkTo","rowData","disableRowClick","jsx","Link","DataCellInner","cell","id","nextWidthSum","isLastCell","rowHovering","index","isFirstStickyCell","handleCellClick","currentData","highlightSubstring","is_read","is_modified","is_row_modified","is_deleted","is_added","level","inlineEditing","isInlineEditing","setRowHovering","handleCellValueChange","cellRef","handleUpdateCellData","registerValidation","loadingExpand","toggleRowExpand","isDraggingOver","isLoading","is_incomplete","pendingEdit","hasPendingEdit","pendingValidationError","cascadingTableConfig","originalsOnly","maxLevel","showNewItem","expandedRows","rowLinkConfig","multiSelectConfig","cellEditing","cellEditingValue","allowInlineEdit","fieldOperationLoading","contextPendingEdits","useContext","TableContext","tableConfig","useTableConfig","isLocked","cellValidationError","isActuallyInlineEditing","isFieldOperationLoading","theme","useTheme","isDark","onMouseEnter","useCallback","onMouseLeave","getNodeExecutionDuration","cellValue","setCellValue","useState","tooltipText","setTooltipText","isTruncated","setIsTruncated","urlTooltipOpen","setUrlTooltipOpen","truncateTooltipOpen","setTruncateTooltipOpen","textRef","useRef","urlTooltipTimer","truncateTooltipTimer","selectedColumnIds","shouldHighlight","checkTruncation","handleUrlTooltipChange","open","handleTruncateTooltipChange","bgColor","cn","getTableRowBgClassNamesByStatus","onClick","e","useEffect","startedTime","formatDate","timeDiff","rawData","headerKey","currencyCode","formatCurrency","columnType","hasTime","formattedValue","rawValue","isUiElementCell","React","jsxs","currentCellId","editValue","LoadingSpinnerIcon","InlineEditField","Fragment","Tooltip","KeyboardArrowDownIcon","KeyboardArrowRightFilledIcon","LinkIcon","Typography","OpenInNewRounded","DataCell"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),o=require("../../../../../_virtual/index.cjs.js"),m=require("react"),h=({cell:t,id:r,nextWidthSum:s,isLastCell:a,rowHovering:n,index:i,isFirstStickyCell:c})=>{const e=t?.column?.sticky,d=o("relative h-row",{"bg-neutral-100 dark:bg-black-600":n===r,"sticky left-0 bg-white dark:bg-black-600":e,"w-full":a}),b=o("h-row top-0 font-medium font-inter overflow-x-hidden overflow-y-auto whitespace-nowrap text-ellipsis px-4 w-full absolute flex items-center",{"bg-white dark:bg-black-800 border-b border-neutral-200 dark:border-black-700":e}),u=e&&c?{boxShadow:"-8px 0px 8px rgba(0, 0, 0, 0.02)"}:{},x={minWidth:`${t.column.width}px`,maxWidth:`${t.column.width}px`,right:e?`${s}px`:"0px"};return l.jsx("td",{className:d,role:"cell",style:x,children:l.jsx("div",{className:b,style:u,children:l.jsx("div",{className:"skeleton bg-neutral-200 dark:bg-black-600 animate-pulse h-4 min-w-[100px] w-full rounded"})})},i)},w=m.memo(h);exports.LoaderCell=w;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),o=require("../../../../../_virtual/index.cjs.js"),m=require("react"),h=({cell:t,id:r,nextWidthSum:s,isLastCell:a,rowHovering:n,index:i,isFirstStickyCell:c})=>{const e=t?.column?.sticky,d=o("relative h-10",{"bg-neutral-100 dark:bg-black-600":n===r,"sticky left-0 bg-white dark:bg-black-600":e,"w-full":a}),b=o("h-10 top-0 font-medium font-inter overflow-x-hidden overflow-y-auto whitespace-nowrap text-ellipsis px-4 w-full absolute flex items-center",{"bg-white dark:bg-black-800 border-b border-neutral-200 dark:border-black-700":e}),u=e&&c?{boxShadow:"-8px 0px 8px rgba(0, 0, 0, 0.02)"}:{},x={minWidth:`${t.column.width}px`,maxWidth:`${t.column.width}px`,right:e?`${s}px`:"0px"};return l.jsx("td",{className:d,role:"cell",style:x,children:l.jsx("div",{className:b,style:u,children:l.jsx("div",{className:"skeleton bg-neutral-200 dark:bg-black-600 animate-pulse h-4 min-w-[100px] w-full rounded"})})},i)},p=m.memo(h);exports.LoaderCell=p;
2
2
  //# sourceMappingURL=LoaderCell.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LoaderCell.cjs.js","sources":["../../../../../../src/components/data-display/infinite-table/body/cell/LoaderCell.tsx"],"sourcesContent":["import cn from 'classnames';\nimport React from 'react';\n\ntype TProps = {\n cell: {\n column: {\n width: number;\n sticky?: boolean;\n sequence?: number;\n };\n };\n id: string | number;\n nextWidthSum: number;\n isLastCell: boolean;\n rowHovering: string | number | null;\n index: number;\n isFirstStickyCell: boolean;\n};\n\nconst _LoaderCell: React.FC<TProps> = ({ cell, id, nextWidthSum, isLastCell, rowHovering, index, isFirstStickyCell }) => {\n const isSticky = cell?.column?.sticky;\n\n const cellClasses = cn('relative h-row', {\n 'bg-neutral-100 dark:bg-black-600': rowHovering === id,\n 'sticky left-0 bg-white dark:bg-black-600': isSticky,\n 'w-full': isLastCell,\n });\n\n const contentClasses = cn(\n 'h-row top-0 font-medium font-inter overflow-x-hidden overflow-y-auto whitespace-nowrap text-ellipsis px-4 w-full absolute flex items-center',\n {\n 'bg-white dark:bg-black-800 border-b border-neutral-200 dark:border-black-700': isSticky,\n },\n );\n\n const boxShadowStyle =\n isSticky && isFirstStickyCell\n ? { boxShadow: '-8px 0px 8px rgba(0, 0, 0, 0.02)' }\n : {};\n\n const cellStyle = {\n minWidth: `${cell.column.width}px`,\n maxWidth: `${cell.column.width}px`,\n right: isSticky ? `${nextWidthSum}px` : '0px',\n };\n\n return (\n <td key={index} className={cellClasses} role='cell' style={cellStyle}>\n <div className={contentClasses} style={boxShadowStyle}>\n <div className='skeleton bg-neutral-200 dark:bg-black-600 animate-pulse h-4 min-w-[100px] w-full rounded' />\n </div>\n </td>\n );\n};\n\nexport const LoaderCell = React.memo(_LoaderCell);\n"],"names":["_LoaderCell","cell","id","nextWidthSum","isLastCell","rowHovering","index","isFirstStickyCell","isSticky","cellClasses","cn","contentClasses","boxShadowStyle","cellStyle","jsx","LoaderCell","React"],"mappings":"0LAmBMA,EAAgC,CAAC,CAAE,KAAAC,EAAM,GAAAC,EAAI,aAAAC,EAAc,WAAAC,EAAY,YAAAC,EAAA,MAAaC,EAAO,kBAAAC,KAAwB,CACvH,MAAMC,EAAWP,GAAM,QAAQ,OAEzBQ,EAAcC,EAAG,iBAAkB,CACvC,mCAAoCL,IAAgBH,EACpD,2CAA4CM,EAC5C,SAAUJ,CAAA,CACX,EAEKO,EAAiBD,EACrB,8IACA,CACE,+EAAgFF,CAAA,CAClF,EAGII,EACJJ,GAAYD,EACR,CAAE,UAAW,kCAAA,EACb,CAAA,EAEAM,EAAY,CAChB,SAAU,GAAGZ,EAAK,OAAO,KAAK,KAC9B,SAAU,GAAGA,EAAK,OAAO,KAAK,KAC9B,MAAOO,EAAW,GAAGL,CAAY,KAAO,KAAA,EAG1C,OACEW,MAAC,MAAe,UAAWL,EAAa,KAAK,OAAO,MAAOI,EACzD,SAAAC,EAAAA,IAAC,MAAA,CAAI,UAAWH,EAAgB,MAAOC,EACrC,SAAAE,EAAAA,IAAC,MAAA,CAAI,UAAU,0FAAA,CAA2F,EAC5G,GAHOR,CAIT,CAEJ,EAEaS,EAAaC,EAAM,KAAKhB,CAAW"}
1
+ {"version":3,"file":"LoaderCell.cjs.js","sources":["../../../../../../src/components/data-display/infinite-table/body/cell/LoaderCell.tsx"],"sourcesContent":["import cn from 'classnames';\nimport React from 'react';\n\ntype TProps = {\n cell: {\n column: {\n width: number;\n sticky?: boolean;\n sequence?: number;\n };\n };\n id: string | number;\n nextWidthSum: number;\n isLastCell: boolean;\n rowHovering: string | number | null;\n index: number;\n isFirstStickyCell: boolean;\n};\n\nconst _LoaderCell: React.FC<TProps> = ({ cell, id, nextWidthSum, isLastCell, rowHovering, index, isFirstStickyCell }) => {\n const isSticky = cell?.column?.sticky;\n\n const cellClasses = cn('relative h-10', {\n 'bg-neutral-100 dark:bg-black-600': rowHovering === id,\n 'sticky left-0 bg-white dark:bg-black-600': isSticky,\n 'w-full': isLastCell,\n });\n\n const contentClasses = cn(\n 'h-10 top-0 font-medium font-inter overflow-x-hidden overflow-y-auto whitespace-nowrap text-ellipsis px-4 w-full absolute flex items-center',\n {\n 'bg-white dark:bg-black-800 border-b border-neutral-200 dark:border-black-700': isSticky,\n },\n );\n\n const boxShadowStyle =\n isSticky && isFirstStickyCell\n ? { boxShadow: '-8px 0px 8px rgba(0, 0, 0, 0.02)' }\n : {};\n\n const cellStyle = {\n minWidth: `${cell.column.width}px`,\n maxWidth: `${cell.column.width}px`,\n right: isSticky ? `${nextWidthSum}px` : '0px',\n };\n\n return (\n <td key={index} className={cellClasses} role='cell' style={cellStyle}>\n <div className={contentClasses} style={boxShadowStyle}>\n <div className='skeleton bg-neutral-200 dark:bg-black-600 animate-pulse h-4 min-w-[100px] w-full rounded' />\n </div>\n </td>\n );\n};\n\nexport const LoaderCell = React.memo(_LoaderCell);\n"],"names":["_LoaderCell","cell","id","nextWidthSum","isLastCell","rowHovering","index","isFirstStickyCell","isSticky","cellClasses","cn","contentClasses","boxShadowStyle","cellStyle","jsx","LoaderCell","React"],"mappings":"0LAmBMA,EAAgC,CAAC,CAAE,KAAAC,EAAM,GAAAC,EAAI,aAAAC,EAAc,WAAAC,EAAY,YAAAC,EAAA,MAAaC,EAAO,kBAAAC,KAAwB,CACvH,MAAMC,EAAWP,GAAM,QAAQ,OAEzBQ,EAAcC,EAAG,gBAAiB,CACtC,mCAAoCL,IAAgBH,EACpD,2CAA4CM,EAC5C,SAAUJ,CAAA,CACX,EAEKO,EAAiBD,EACrB,6IACA,CACE,+EAAgFF,CAAA,CAClF,EAGII,EACJJ,GAAYD,EACR,CAAE,UAAW,kCAAA,EACb,CAAA,EAEAM,EAAY,CAChB,SAAU,GAAGZ,EAAK,OAAO,KAAK,KAC9B,SAAU,GAAGA,EAAK,OAAO,KAAK,KAC9B,MAAOO,EAAW,GAAGL,CAAY,KAAO,KAAA,EAG1C,OACEW,MAAC,MAAe,UAAWL,EAAa,KAAK,OAAO,MAAOI,EACzD,SAAAC,EAAAA,IAAC,MAAA,CAAI,UAAWH,EAAgB,MAAOC,EACrC,SAAAE,EAAAA,IAAC,MAAA,CAAI,UAAU,0FAAA,CAA2F,EAC5G,GAHOR,CAIT,CAEJ,EAEaS,EAAaC,EAAM,KAAKhB,CAAW"}
@@ -2,12 +2,12 @@ import { jsx as l } from "react/jsx-runtime";
2
2
  import o from "../../../../../_virtual/index.es.js";
3
3
  import x from "react";
4
4
  const h = ({ cell: t, id: r, nextWidthSum: a, isLastCell: s, rowHovering: n, index: c, isFirstStickyCell: i }) => {
5
- const e = t?.column?.sticky, d = o("relative h-row", {
5
+ const e = t?.column?.sticky, d = o("relative h-10", {
6
6
  "bg-neutral-100 dark:bg-black-600": n === r,
7
7
  "sticky left-0 bg-white dark:bg-black-600": e,
8
8
  "w-full": s
9
9
  }), b = o(
10
- "h-row top-0 font-medium font-inter overflow-x-hidden overflow-y-auto whitespace-nowrap text-ellipsis px-4 w-full absolute flex items-center",
10
+ "h-10 top-0 font-medium font-inter overflow-x-hidden overflow-y-auto whitespace-nowrap text-ellipsis px-4 w-full absolute flex items-center",
11
11
  {
12
12
  "bg-white dark:bg-black-800 border-b border-neutral-200 dark:border-black-700": e
13
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LoaderCell.es.js","sources":["../../../../../../src/components/data-display/infinite-table/body/cell/LoaderCell.tsx"],"sourcesContent":["import cn from 'classnames';\nimport React from 'react';\n\ntype TProps = {\n cell: {\n column: {\n width: number;\n sticky?: boolean;\n sequence?: number;\n };\n };\n id: string | number;\n nextWidthSum: number;\n isLastCell: boolean;\n rowHovering: string | number | null;\n index: number;\n isFirstStickyCell: boolean;\n};\n\nconst _LoaderCell: React.FC<TProps> = ({ cell, id, nextWidthSum, isLastCell, rowHovering, index, isFirstStickyCell }) => {\n const isSticky = cell?.column?.sticky;\n\n const cellClasses = cn('relative h-row', {\n 'bg-neutral-100 dark:bg-black-600': rowHovering === id,\n 'sticky left-0 bg-white dark:bg-black-600': isSticky,\n 'w-full': isLastCell,\n });\n\n const contentClasses = cn(\n 'h-row top-0 font-medium font-inter overflow-x-hidden overflow-y-auto whitespace-nowrap text-ellipsis px-4 w-full absolute flex items-center',\n {\n 'bg-white dark:bg-black-800 border-b border-neutral-200 dark:border-black-700': isSticky,\n },\n );\n\n const boxShadowStyle =\n isSticky && isFirstStickyCell\n ? { boxShadow: '-8px 0px 8px rgba(0, 0, 0, 0.02)' }\n : {};\n\n const cellStyle = {\n minWidth: `${cell.column.width}px`,\n maxWidth: `${cell.column.width}px`,\n right: isSticky ? `${nextWidthSum}px` : '0px',\n };\n\n return (\n <td key={index} className={cellClasses} role='cell' style={cellStyle}>\n <div className={contentClasses} style={boxShadowStyle}>\n <div className='skeleton bg-neutral-200 dark:bg-black-600 animate-pulse h-4 min-w-[100px] w-full rounded' />\n </div>\n </td>\n );\n};\n\nexport const LoaderCell = React.memo(_LoaderCell);\n"],"names":["_LoaderCell","cell","id","nextWidthSum","isLastCell","rowHovering","index","isFirstStickyCell","isSticky","cellClasses","cn","contentClasses","boxShadowStyle","cellStyle","jsx","LoaderCell","React"],"mappings":";;;AAmBA,MAAMA,IAAgC,CAAC,EAAE,MAAAC,GAAM,IAAAC,GAAI,cAAAC,GAAc,YAAAC,GAAY,aAAAC,GAAa,OAAAC,GAAO,mBAAAC,QAAwB;AACvH,QAAMC,IAAWP,GAAM,QAAQ,QAEzBQ,IAAcC,EAAG,kBAAkB;AAAA,IACvC,oCAAoCL,MAAgBH;AAAA,IACpD,4CAA4CM;AAAA,IAC5C,UAAUJ;AAAA,EAAA,CACX,GAEKO,IAAiBD;AAAA,IACrB;AAAA,IACA;AAAA,MACE,gFAAgFF;AAAA,IAAA;AAAA,EAClF,GAGII,IACJJ,KAAYD,IACR,EAAE,WAAW,mCAAA,IACb,CAAA,GAEAM,IAAY;AAAA,IAChB,UAAU,GAAGZ,EAAK,OAAO,KAAK;AAAA,IAC9B,UAAU,GAAGA,EAAK,OAAO,KAAK;AAAA,IAC9B,OAAOO,IAAW,GAAGL,CAAY,OAAO;AAAA,EAAA;AAG1C,SACE,gBAAAW,EAAC,QAAe,WAAWL,GAAa,MAAK,QAAO,OAAOI,GACzD,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAWH,GAAgB,OAAOC,GACrC,UAAA,gBAAAE,EAAC,OAAA,EAAI,WAAU,2FAAA,CAA2F,GAC5G,KAHOR,CAIT;AAEJ,GAEaS,IAAaC,EAAM,KAAKhB,CAAW;"}
1
+ {"version":3,"file":"LoaderCell.es.js","sources":["../../../../../../src/components/data-display/infinite-table/body/cell/LoaderCell.tsx"],"sourcesContent":["import cn from 'classnames';\nimport React from 'react';\n\ntype TProps = {\n cell: {\n column: {\n width: number;\n sticky?: boolean;\n sequence?: number;\n };\n };\n id: string | number;\n nextWidthSum: number;\n isLastCell: boolean;\n rowHovering: string | number | null;\n index: number;\n isFirstStickyCell: boolean;\n};\n\nconst _LoaderCell: React.FC<TProps> = ({ cell, id, nextWidthSum, isLastCell, rowHovering, index, isFirstStickyCell }) => {\n const isSticky = cell?.column?.sticky;\n\n const cellClasses = cn('relative h-10', {\n 'bg-neutral-100 dark:bg-black-600': rowHovering === id,\n 'sticky left-0 bg-white dark:bg-black-600': isSticky,\n 'w-full': isLastCell,\n });\n\n const contentClasses = cn(\n 'h-10 top-0 font-medium font-inter overflow-x-hidden overflow-y-auto whitespace-nowrap text-ellipsis px-4 w-full absolute flex items-center',\n {\n 'bg-white dark:bg-black-800 border-b border-neutral-200 dark:border-black-700': isSticky,\n },\n );\n\n const boxShadowStyle =\n isSticky && isFirstStickyCell\n ? { boxShadow: '-8px 0px 8px rgba(0, 0, 0, 0.02)' }\n : {};\n\n const cellStyle = {\n minWidth: `${cell.column.width}px`,\n maxWidth: `${cell.column.width}px`,\n right: isSticky ? `${nextWidthSum}px` : '0px',\n };\n\n return (\n <td key={index} className={cellClasses} role='cell' style={cellStyle}>\n <div className={contentClasses} style={boxShadowStyle}>\n <div className='skeleton bg-neutral-200 dark:bg-black-600 animate-pulse h-4 min-w-[100px] w-full rounded' />\n </div>\n </td>\n );\n};\n\nexport const LoaderCell = React.memo(_LoaderCell);\n"],"names":["_LoaderCell","cell","id","nextWidthSum","isLastCell","rowHovering","index","isFirstStickyCell","isSticky","cellClasses","cn","contentClasses","boxShadowStyle","cellStyle","jsx","LoaderCell","React"],"mappings":";;;AAmBA,MAAMA,IAAgC,CAAC,EAAE,MAAAC,GAAM,IAAAC,GAAI,cAAAC,GAAc,YAAAC,GAAY,aAAAC,GAAa,OAAAC,GAAO,mBAAAC,QAAwB;AACvH,QAAMC,IAAWP,GAAM,QAAQ,QAEzBQ,IAAcC,EAAG,iBAAiB;AAAA,IACtC,oCAAoCL,MAAgBH;AAAA,IACpD,4CAA4CM;AAAA,IAC5C,UAAUJ;AAAA,EAAA,CACX,GAEKO,IAAiBD;AAAA,IACrB;AAAA,IACA;AAAA,MACE,gFAAgFF;AAAA,IAAA;AAAA,EAClF,GAGII,IACJJ,KAAYD,IACR,EAAE,WAAW,mCAAA,IACb,CAAA,GAEAM,IAAY;AAAA,IAChB,UAAU,GAAGZ,EAAK,OAAO,KAAK;AAAA,IAC9B,UAAU,GAAGA,EAAK,OAAO,KAAK;AAAA,IAC9B,OAAOO,IAAW,GAAGL,CAAY,OAAO;AAAA,EAAA;AAG1C,SACE,gBAAAW,EAAC,QAAe,WAAWL,GAAa,MAAK,QAAO,OAAOI,GACzD,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAWH,GAAgB,OAAOC,GACrC,UAAA,gBAAAE,EAAC,OAAA,EAAI,WAAU,2FAAA,CAA2F,GAC5G,KAHOR,CAIT;AAEJ,GAEaS,IAAaC,EAAM,KAAKhB,CAAW;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),r=require("../../../../../_virtual/index.cjs.js"),i=require("react"),s=require("../../../../icon/icons.generated.cjs.js"),c=({width:n,size:t=24})=>e.jsx("td",{className:r("sticky left-0 right-0 bg-white dark:bg-black-800",n&&`w-[${n}px]`),children:e.jsx("div",{className:"h-row flex items-center justify-center",children:e.jsx(s.LoadingSpinnerIcon,{size:t-4,className:"inline my-2 text-neutral-600 dark:text-white"})})}),l=i.memo(c);exports.SpinnerCell=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),r=require("../../../../../_virtual/index.cjs.js"),i=require("react"),s=require("../../../../icon/icons.generated.cjs.js"),c=({width:n,size:t=24})=>e.jsx("td",{className:r("sticky left-0 right-0 bg-white dark:bg-black-800",n&&`w-[${n}px]`),children:e.jsx("div",{className:"h-10 flex items-center justify-center",children:e.jsx(s.LoadingSpinnerIcon,{size:t-4,className:"inline my-2 text-neutral-600 dark:text-white"})})}),l=i.memo(c);exports.SpinnerCell=l;
2
2
  //# sourceMappingURL=SpinnerCell.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SpinnerCell.cjs.js","sources":["../../../../../../src/components/data-display/infinite-table/body/cell/SpinnerCell.tsx"],"sourcesContent":["import cn from 'classnames';\nimport React from 'react';\nimport { LoadingSpinnerIcon } from '../../../../icon';\n\ntype TProps = {\n width?: number;\n size?: number;\n};\n\nconst _SpinnerCell = ({ width, size = 24 }: TProps) => {\n return (\n <td className={cn('sticky left-0 right-0 bg-white dark:bg-black-800', width && `w-[${width}px]`)}>\n <div className='h-row flex items-center justify-center'>\n <LoadingSpinnerIcon size={size-4} className='inline my-2 text-neutral-600 dark:text-white' />\n </div>\n </td>\n );\n};\n\nexport const SpinnerCell = React.memo(_SpinnerCell);\n"],"names":["_SpinnerCell","width","size","jsx","cn","LoadingSpinnerIcon","SpinnerCell","React"],"mappings":"+OASMA,EAAe,CAAC,CAAE,MAAAC,EAAO,KAAAC,EAAO,MAElCC,EAAAA,IAAC,MAAG,UAAWC,EAAG,mDAAoDH,GAAS,MAAMA,CAAK,KAAK,EAC7F,SAAAE,EAAAA,IAAC,OAAI,UAAU,yCACb,eAACE,EAAAA,mBAAA,CAAmB,KAAMH,EAAK,EAAG,UAAU,8CAAA,CAA+C,CAAA,CAC7F,CAAA,CACF,EAISI,EAAcC,EAAM,KAAKP,CAAY"}
1
+ {"version":3,"file":"SpinnerCell.cjs.js","sources":["../../../../../../src/components/data-display/infinite-table/body/cell/SpinnerCell.tsx"],"sourcesContent":["import cn from 'classnames';\nimport React from 'react';\nimport { LoadingSpinnerIcon } from '../../../../icon';\n\ntype TProps = {\n width?: number;\n size?: number;\n};\n\nconst _SpinnerCell = ({ width, size = 24 }: TProps) => {\n return (\n <td className={cn('sticky left-0 right-0 bg-white dark:bg-black-800', width && `w-[${width}px]`)}>\n <div className='h-10 flex items-center justify-center'>\n <LoadingSpinnerIcon size={size-4} className='inline my-2 text-neutral-600 dark:text-white' />\n </div>\n </td>\n );\n};\n\nexport const SpinnerCell = React.memo(_SpinnerCell);\n"],"names":["_SpinnerCell","width","size","jsx","cn","LoadingSpinnerIcon","SpinnerCell","React"],"mappings":"+OASMA,EAAe,CAAC,CAAE,MAAAC,EAAO,KAAAC,EAAO,MAElCC,EAAAA,IAAC,MAAG,UAAWC,EAAG,mDAAoDH,GAAS,MAAMA,CAAK,KAAK,EAC7F,SAAAE,EAAAA,IAAC,OAAI,UAAU,wCACb,eAACE,EAAAA,mBAAA,CAAmB,KAAMH,EAAK,EAAG,UAAU,8CAAA,CAA+C,CAAA,CAC7F,CAAA,CACF,EAISI,EAAcC,EAAM,KAAKP,CAAY"}
@@ -2,7 +2,7 @@ import { jsx as e } from "react/jsx-runtime";
2
2
  import i from "../../../../../_virtual/index.es.js";
3
3
  import n from "react";
4
4
  import { LoadingSpinnerIcon as m } from "../../../../icon/icons.generated.es.js";
5
- const o = ({ width: r, size: t = 24 }) => /* @__PURE__ */ e("td", { className: i("sticky left-0 right-0 bg-white dark:bg-black-800", r && `w-[${r}px]`), children: /* @__PURE__ */ e("div", { className: "h-row flex items-center justify-center", children: /* @__PURE__ */ e(m, { size: t - 4, className: "inline my-2 text-neutral-600 dark:text-white" }) }) }), p = n.memo(o);
5
+ const c = ({ width: t, size: r = 24 }) => /* @__PURE__ */ e("td", { className: i("sticky left-0 right-0 bg-white dark:bg-black-800", t && `w-[${t}px]`), children: /* @__PURE__ */ e("div", { className: "h-10 flex items-center justify-center", children: /* @__PURE__ */ e(m, { size: r - 4, className: "inline my-2 text-neutral-600 dark:text-white" }) }) }), p = n.memo(c);
6
6
  export {
7
7
  p as SpinnerCell
8
8
  };
@@ -1 +1 @@
1
- {"version":3,"file":"SpinnerCell.es.js","sources":["../../../../../../src/components/data-display/infinite-table/body/cell/SpinnerCell.tsx"],"sourcesContent":["import cn from 'classnames';\nimport React from 'react';\nimport { LoadingSpinnerIcon } from '../../../../icon';\n\ntype TProps = {\n width?: number;\n size?: number;\n};\n\nconst _SpinnerCell = ({ width, size = 24 }: TProps) => {\n return (\n <td className={cn('sticky left-0 right-0 bg-white dark:bg-black-800', width && `w-[${width}px]`)}>\n <div className='h-row flex items-center justify-center'>\n <LoadingSpinnerIcon size={size-4} className='inline my-2 text-neutral-600 dark:text-white' />\n </div>\n </td>\n );\n};\n\nexport const SpinnerCell = React.memo(_SpinnerCell);\n"],"names":["_SpinnerCell","width","size","jsx","cn","LoadingSpinnerIcon","SpinnerCell","React"],"mappings":";;;;AASA,MAAMA,IAAe,CAAC,EAAE,OAAAC,GAAO,MAAAC,IAAO,SAElC,gBAAAC,EAAC,QAAG,WAAWC,EAAG,oDAAoDH,KAAS,MAAMA,CAAK,KAAK,GAC7F,UAAA,gBAAAE,EAAC,SAAI,WAAU,0CACb,4BAACE,GAAA,EAAmB,MAAMH,IAAK,GAAG,WAAU,+CAAA,CAA+C,EAAA,CAC7F,EAAA,CACF,GAISI,IAAcC,EAAM,KAAKP,CAAY;"}
1
+ {"version":3,"file":"SpinnerCell.es.js","sources":["../../../../../../src/components/data-display/infinite-table/body/cell/SpinnerCell.tsx"],"sourcesContent":["import cn from 'classnames';\nimport React from 'react';\nimport { LoadingSpinnerIcon } from '../../../../icon';\n\ntype TProps = {\n width?: number;\n size?: number;\n};\n\nconst _SpinnerCell = ({ width, size = 24 }: TProps) => {\n return (\n <td className={cn('sticky left-0 right-0 bg-white dark:bg-black-800', width && `w-[${width}px]`)}>\n <div className='h-10 flex items-center justify-center'>\n <LoadingSpinnerIcon size={size-4} className='inline my-2 text-neutral-600 dark:text-white' />\n </div>\n </td>\n );\n};\n\nexport const SpinnerCell = React.memo(_SpinnerCell);\n"],"names":["_SpinnerCell","width","size","jsx","cn","LoadingSpinnerIcon","SpinnerCell","React"],"mappings":";;;;AASA,MAAMA,IAAe,CAAC,EAAE,OAAAC,GAAO,MAAAC,IAAO,SAElC,gBAAAC,EAAC,QAAG,WAAWC,EAAG,oDAAoDH,KAAS,MAAMA,CAAK,KAAK,GAC7F,UAAA,gBAAAE,EAAC,SAAI,WAAU,yCACb,4BAACE,GAAA,EAAmB,MAAMH,IAAK,GAAG,WAAU,+CAAA,CAA+C,EAAA,CAC7F,EAAA,CACF,GAISI,IAAcC,EAAM,KAAKP,CAAY;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),l=require("react"),pi=require("../../../../../constants/table.cjs.js"),$i=require("../../../../../providers/design-system-provider/hooks.cjs.js"),Mi=require("@dnd-kit/core"),wi=require("@dnd-kit/sortable"),ie=require("@dnd-kit/utilities"),Fi=require("@mui/icons-material"),ee=require("@mui/icons-material/AddRounded"),Ci=require("../../../../../_virtual/index.cjs.js"),ne=require("react-dom"),Ni=require("../../context.cjs.js"),te=require("../cell/ActionCell.cjs.js"),le=require("../cell/CheckboxCell.cjs.js"),ae=require("../cell/DataCell.cjs.js"),Hi=require("../../validateCell.cjs.js"),se=require("../cell/LoaderCell.cjs.js"),oe=require("../cell/PendingEditCell.cjs.js"),de=require("../cell/RowActionCell.cjs.js"),re=require("../cell/RowOptionsCell.cjs.js"),ge=({row:i,isLastRow:$,lastRow:w,highlightSubstring:ii,index:z,style:xi,level:e=0,expandedRows:c,rows:ei})=>{const{lastNonStickyColumnIndex:M,checkboxConfig:s,onRowClick:E,rowOptions:b,disableOptionsForRowIndex:F=null,getSumOfNextVisibleColumnWidth:ni,onRowEdit:H,inlineEditColumns:vi,tableActions:ti,dndSortableUtils:li,withSortable:f,withDraggable:N,getInnerRowData:ai,showNewItem:W,rawData:O,dragConfig:p,getFullRowDataOnClick:si,selectedRowId:r,rowWrapper:U,isCellClickDisabled:hi,rowAdditionalActions:j,hoverConfig:oi,addPendingEdit:D,removePendingEdit:P,fieldOperationLoading:di,clearRowPendingEdits:q,saveRowPendingEdits:K,pendingEdits:A}=l.useContext(Ni.TableContext),B=$i.useTableConfig(),ri=!!s,{activeInlineEdit:gi,setActiveInlineEdit:L}=l.useContext(Ni.TableContext),a=gi?.rowId===i.original.id?gi?.columnKey:null,u=!!a,ci=n=>{L?.(n===null?null:{rowId:String(i.original.id),columnKey:n})},[C,Y]=l.useState(null),[ui,_]=l.useState(null),[R,G]=l.useState(null),[x,S]=l.useState(!1),[y,J]=l.useState(!1),_i=l.useRef(null);l.useEffect(()=>{const n=_i.current,g=a;if(n&&!g){const h=A?.[i.original.id]?.[n];if(h){const d=i.cells?.find(m=>m.column?.key===n);if(d){const m=Hi.validateCellValue(h.value,d.column);!m.isValid&&D&&D(String(i.original.id),n,{...h,validationError:m.error})}}}_i.current=g??null},[a,i.original.id,i.cells,A,D]),l.useEffect(()=>{if(O){const n=String(i?.original?.id);G(O[n]?.[i?.cells[0].column.Header]||O[n]?.[0])}},[O,i?.original?.id,i?.cells]);const o=wi.useSortable({id:i.original.id,data:{...i.original},disabled:!f}),v=Mi.useDraggable({id:i.original.id,data:{...i.original},disabled:!!f}),{listeners:fi,transform:mi,setNodeRef:bi,isDragging:T,attributes:Ri,active:V,over:I,...Ui}=f?o:v,{setNodeRef:ji}=Mi.useDroppable({id:`table-file-dropzone-${i?.original?.id}`,data:{type:"table-file-dropzone",folderId:i?.original?.id,isFolder:i?.original?.type==="folder"}}),Ki={transform:ie.CSS.Transform.toString(mi),transition:f?Ui.transition:void 0,cursor:T?"grabbing":"grab",opacity:T?"0.5":"1"},Yi=()=>!V||!I||!f?!1:li?.checkOverEachItem?li.checkOverEachItem(V,I)&&!!I:V.data.current?.type!==I.data.current?.type&&!!I,Di=n=>{_(n.target.value)},Gi=()=>{di||ci(null)},Si=l.useRef(null),Ii=l.useCallback(n=>{Si.current=n},[]),Pi=l.useRef(B);Pi.current=B;const Bi=l.useCallback(()=>{q&&q(String(i.original.id))},[q,i.original.id]),Oi=l.useCallback(()=>{if(Si.current){const n=Si.current();if(!n.isValid)return;a&&n.value!==void 0&&D&&D(String(i.original.id),a,{value:n.value,originalValue:i.original[a],meta:n.meta||void 0})}else if(a){const n=i.cells?.find(g=>g.column?.key===a);if(n){const g=A?.[i.original.id]?.[a]?.value,h=g!==void 0?g:n.value,d=Hi.validateCellValue(h,n.column);if(!d.isValid){Pi.current?.showNotification?.("error",d.error||"Validation failed");return}}}K&&K(String(i.original.id))},[K,i.original,i.cells,a,D,A]),qi=(n,g)=>{const h={...i.original},d=n!==void 0?n:ui;a&&d!==void 0&&(h[a]=d,H&&H(h,z,a,d,g),P&&P(String(i.original.id),a)),Gi()},Ai=l.useRef(null),Li=(n,g,h,d)=>{if(!hi&&(n?.stopPropagation(),a!==d)){if(H){if(vi?.includes(d))ci(d),_(String(i.original[d]));else{const m=B?.getSystemMessage?.("notAllowedInlineEdit")||"Inline Edit is not allowed for this column";B?.showNotification?.("error",m)}return}if(E)E(g,h,i.original,ei?.map(m=>m.original)||[]);else if(!E&&s){const m=i.original.id,Zi={target:{checked:!s.checkedIds.includes(m)}};s.onItemCheck(Zi,m)}}},Ti=async()=>{S(!0),ai&&await ai(i?.original?.id,i?.original,!(c?.[i?.original?.id]?.isOpen??!1),i?.original?.__level||0),S(!1)},Ji=l.useMemo(()=>i.cells.filter(n=>n.column?.visible).map(n=>n.column?.width??0).reduce((n,g)=>n+g,0),[i.cells]),Q=l.useMemo(()=>p?.draggingOver&&p?.draggingOver===i?.original?.id,[p,i?.original?.id]),yi=l.useMemo(()=>Q?p?.dropPosition||"inside":null,[Q,p?.dropPosition]),X=!!(Q&&yi==="inside"),k=i?.original?.__rowMetadata||i?.original?._meta,Z=C!==i?.original?.id,ki=!i?.original?.__isLoading,Vi=!!(k?.__is_new||k?.__is_added||i?.original?.is_added||R?.is_added||k?.is_added||k?.is_new),Qi=!!(i?.original?.is_deleted||k?.__is_deleted||R?.is_deleted||k?.is_deleted),Xi=!!(i?.original?.is_modified||i?.original?.is_row_modified||k?.__is_modified||k?.__is_edited||R?.is_row_modified||k?.is_modified)&&!Vi,Ei=r!=null&&String(r)===String(i?.original?.id),zi=Ci({"bg-neutral-100 dark:bg-black-600":C===i?.original?.id&&!u,"bg-primary-100 dark:bg-primary-950":Ei&&Z&&!u,"bg-primary-50 dark:bg-black-700":!i?.original?.is_read&&W&&!i?.original?.__isLoading&&Z&&!u,"bg-warning-50 dark:bg-warning-975":Xi&&ki&&Z&&!u,"bg-error-50 dark:bg-error-975":Qi&&ki&&Z&&!u,"bg-success-50 dark:bg-success-975":Vi&&ki&&Z&&!u,"bg-primary-50 dark:bg-primary-900":u,[pi.getTableRowBgClassNamesByStatus[i?.original?.__rowBgStatus]]:i?.original?.__rowBgStatus&&!u});return l.createElement("tr",{...i.getRowProps(),ref:N||f?bi:null,key:i.original.id,"data-row-id":i.original.id,className:Ci(`text-neutral-900 dark:text-white cursor-pointer min-w-full relative ${s?.selectionDisabledRowIds?.includes(i?.original?.id)?"opacity-50":""} border-t`,T?"z-40":"",Yi()?"shadow-dnd-drop":"",N&&I&&I?.data?.current?.type==="table-file-dropzone"&&I?.data?.current?.folderId===i?.original?.id&&i?.original?.type==="folder"?"bg-primary-50":"",i?.original?.isDefinedActionRow?"bg-primary-50":"",X?"z-50":"",zi||"bg-white dark:bg-black-800"),style:{...xi,...f?Ki:{},width:"max-content"},...N||f?Ri:{},...N||f?fi:{}},X&&p?.dragOperation?t.jsx("div",{className:"absolute right-2 h-row flex items-center z-20 pointer-events-none",children:t.jsx("div",{className:"bg-primary-200 px-2 py-1 rounded",children:p?.dragOperation==="COPY"?t.jsx(ee,{sx:{fontSize:12},className:"text-primary-700"}):t.jsx(Fi.SubdirectoryArrowLeftRounded,{sx:{fontSize:12},className:"text-primary-700"})})}):null,X&&!p?.dragOperation?t.jsx("div",{className:"absolute right-2 h-row flex items-center z-20 pointer-events-none",children:t.jsx(Fi.SubdirectoryArrowLeftRounded,{sx:{fontSize:16},className:"text-primary-500"})}):null,Q&&yi==="before"&&!i?.original?.isDefinedActionRow?t.jsx("div",{className:"absolute -top-[1px] left-0 right-0 h-[2px] bg-primary-500 z-20 pointer-events-none",children:t.jsx("div",{className:"absolute left-0 top-1/2 -translate-y-1/2 w-2 h-2 rounded-full bg-primary-500"})}):null,Q&&yi==="after"&&!i?.original?.isDefinedActionRow?t.jsx("div",{className:"absolute -bottom-[1px] left-0 right-0 h-[2px] bg-primary-500 z-20 pointer-events-none",children:t.jsx("div",{className:"absolute left-0 top-1/2 -translate-y-1/2 w-2 h-2 rounded-full bg-primary-500"})}):null,i?.original?.isDefinedActionRow?t.jsx(te.ActionCell,{cells:i.cells,id:i?.original?.id,isCheckbox:s,level:e,name:i?.original?.name,onClick:i?.original?.onClick,rowHovering:C||"",isRoot:i?.original?.isRoot,totalWidth:Ji,row:i.original,uploadCell:i?.original?.uploadCell,disabled:i?.original?.disabled,disabledTooltip:i?.original?.disabledTooltip}):U?t.jsx(U,{data:i.original,setIsDraggingFile:J,children:t.jsx(Wi,{isDraggingOver:X,level:e,withDraggable:N,setDroppableNodeRef:ji,isLastRow:$,lastRow:w,isCheckbox:ri,checkboxConfig:s,row:i,rowHovering:C,tableActions:ti,disableOptionsForRowIndex:F,index:z,showNewItem:W,currentData:R,lastNonStickyColumnIndex:M,getSumOfNextVisibleColumnWidth:ni,toggleRowExpand:Ti,loadingExpand:x,cellRef:Ai,handleCellClick:Li,getFullRowDataOnClick:si,handleCellValueChange:Di,handleUpdateCellData:qi,handleRowCancelEdit:Bi,handleRowConfirmEdit:Oi,registerValidation:Ii,inlineEditing:a,isInlineEditing:u,setRowHovering:Y,highlightSubstring:ii,rowOptions:b,isDraggingFile:y,rowAdditionalActions:j,hoverConfig:oi,isSelected:Ei})}):t.jsx(Wi,{level:e,withDraggable:N,setDroppableNodeRef:ji,isLastRow:$,lastRow:w,isCheckbox:ri,checkboxConfig:s,row:i,rowHovering:C,tableActions:ti,disableOptionsForRowIndex:F,index:z,showNewItem:W,currentData:R,lastNonStickyColumnIndex:M,getSumOfNextVisibleColumnWidth:ni,toggleRowExpand:Ti,loadingExpand:x,cellRef:Ai,handleCellClick:Li,getFullRowDataOnClick:si,handleCellValueChange:Di,handleUpdateCellData:qi,handleRowCancelEdit:Bi,handleRowConfirmEdit:Oi,registerValidation:Ii,inlineEditing:a,isInlineEditing:u,setRowHovering:Y,highlightSubstring:ii,rowOptions:b,isDraggingFile:y,isDraggingOver:X,rowAdditionalActions:j,hoverConfig:oi,isSelected:Ei}))},Wi=({withDraggable:i,setDroppableNodeRef:$,isLastRow:w,lastRow:ii,isCheckbox:z,checkboxConfig:xi,row:e,rowHovering:c,tableActions:ei,disableOptionsForRowIndex:M,index:s,showNewItem:E,currentData:b,lastNonStickyColumnIndex:F,getSumOfNextVisibleColumnWidth:ni,toggleRowExpand:H,loadingExpand:vi,cellRef:ti,handleCellClick:li,getFullRowDataOnClick:f,handleCellValueChange:N,handleUpdateCellData:ai,handleRowCancelEdit:W,handleRowConfirmEdit:O,registerValidation:p,inlineEditing:si,isInlineEditing:r,setRowHovering:U,highlightSubstring:hi,rowOptions:j,level:oi,isDraggingFile:D,isDraggingOver:P,rowAdditionalActions:di,hoverConfig:q,isSelected:K})=>{const[A,B]=l.useState(!1),{getPendingEdit:ri,hasPendingEdit:gi,pendingEdits:L,tableHeaders:a,pendingEditsCount:u,scrollToCell:ci}=l.useContext(Ni.TableContext),C=L?.[e.original.id]&&Object.keys(L[e.original.id]).length>0,Y=(u??0)>0,ui=l.useMemo(()=>{if(Array.isArray(j))return j;if(typeof j=="function"){const o=j({...e.original,rowIndex:s});return Array.isArray(o)?o:[]}return[]},[j,e.original,s]),_=e?.original?.__rowMetadata||e?.original?._meta,R=c!==e?.original?.id,G=!e?.original?.__isLoading,x=!!(_?.__is_new||_?.__is_added||e?.original?.is_added||b?.is_added||_?.is_added||_?.is_new),S=!!(e?.original?.is_deleted||_?.__is_deleted||b?.is_deleted||_?.is_deleted),y=!!(e?.original?.is_modified||e?.original?.is_row_modified||_?.__is_modified||_?.__is_edited||b?.is_row_modified||_?.is_deleted)&&!x,J=K&&!r&&c!==e?.original?.id?"bg-primary-100 dark:bg-primary-950":void 0,_i=Ci({"border-l-[3px] border-l-success-400 dark:border-l-success-500":x&&G&&R&&!r,"border-l-[3px] border-l-error-400 dark:border-l-error-500":S&&G&&R&&!r,"border-l-[3px] border-l-warning-400 dark:border-l-warning-500":y&&G&&R&&!r});return t.jsx("div",{ref:i?$:null,className:P?"border-2 border-primary-400 dark:border-primary-500 rounded-sm":"",children:t.jsxs("div",{className:Ci("flex",_i),ref:w?ii:null,children:[Y&&t.jsx(oe.PendingEditCell,{rowId:String(e.original.id),rowIndex:s,pendingEdits:L,tableHeaders:a,rowHasPendingEdits:!!C,rowHovering:c!=null?String(c):void 0,isInlineEditing:r,is_read:!!e.original.is_read,is_modified:y,is_row_modified:!!e.original.is_row_modified,is_deleted:S,is_added:x,is_incomplete:e?.original?.status==="Incomplete",showNewItem:E,onScrollToCell:ci}),z&&t.jsx(le.CheckboxCell,{checkboxConfig:xi,id:String(e.original.id),rowHovering:c!=null?String(c):void 0,isDisabled:!!e?.original?.__isLoading,isDraggingOver:P,is_added:x,is_deleted:S,is_incomplete:e?.original?.status==="Incomplete",is_modified:y,is_read:!!e.original.is_read,is_row_modified:!!e.original.is_row_modified,showNewItem:E,currentData:b??{},bgColor:e?.original?.__rowBgStatus?pi.getTableRowBgClassNamesByStatus[e?.original?.__rowBgStatus]:J,isInlineEditing:r,hasPendingEditsColumn:Y,rowHasPendingEdits:C}),ei?t.jsx(de.RowActionCell,{tableActions:ei,disableOptionsForRowIndex:M??null,id:String(e.original.id),index:s,is_read:!!e?.original?.is_read,is_incomplete:e?.original?.status==="Incomplete",showNewItem:!!E,is_modified:y,is_row_modified:!!e?.original?.is_row_modified,is_deleted:S,currentData:b??{},is_added:x,rowData:e.original,rowHovering:c,isDisabled:!!e?.original?.__isLoading,bgColor:D?"bg-primary-50":e?.original?.__rowBgStatus?pi.getTableRowBgClassNamesByStatus[e?.original?.__rowBgStatus]:J,isInlineEditing:r,rowHasPendingEdits:C}):null,t.jsxs("div",{className:"relative flex-1",id:`row-${e.original.id}`,onMouseEnter:()=>B(!0),onMouseLeave:()=>B(!1),children:[e.cells.filter(o=>o?.column?.visible!==!1).map((o,v)=>{const fi=v===F?.(),mi=v===(F?.()??-1)+1,bi=o?.column?.sticky?ni?.(v)??0:0;if(e.original?.__isLoading)return t.jsx(se.LoaderCell,{cell:o,id:v,nextWidthSum:bi,isLastCell:fi,rowHovering:c,index:v,isFirstStickyCell:mi},v);const T=ri?.(String(e.original.id),o?.column?.key||""),Ri=gi?.(String(e.original.id),o?.column?.key||"");return t.jsx(ae.DataCell,{cell:o,rowHovering:c,isFirstStickyCell:mi,level:oi??0,toggleRowExpand:H,loadingExpand:vi,index:v,cellRef:ti,currentData:b,handleCellClick:V=>{V&&li(V,f?e.original:String(e.original.id),v,o?.column?.key||"")},handleCellValueChange:N,handleUpdateCellData:ai,registerValidation:p,id:e.original.id,inlineEditing:si,isInlineEditing:r,isLastCell:fi,is_incomplete:e?.original?.status==="Incomplete",is_added:x,is_deleted:S,is_modified:y,is_read:!!e.original.is_read,is_row_modified:!!e.original.is_row_modified,nextWidthSum:bi,setRowHovering:U,highlightSubstring:hi,isDraggingOver:P,isLoading:!!e?.original?.__isLoading,pendingEdit:T,hasPendingEdit:Ri,pendingValidationError:T?.validationError},o?.column?.key)}),q?.onHover&&A&&ne.createPortal(t.jsx("div",{className:"absolute top-full left-10 z-50 bg-white dark:bg-black-800 rounded-xl",children:q.onHover(e.original)}),document.getElementById(`row-${e.original.id}`))]}),(ui.length>0||!!di)&&t.jsx(re.RowOptionsCell,{rowId:e.original.id,rowOptions:ui,disableOption:M!==null||!!e?.original?.__isLoading,rowHovering:c,setRowHovering:U,is_read:!!e.original.is_read,showNewItem:!!E,is_modified:y,is_row_modified:!!e.original.is_row_modified,is_incomplete:e?.original?.status==="Incomplete",currentData:b??{},is_deleted:S,is_added:x,isDraggingOver:!!P,rowAdditionalActions:di,rowData:e.original,index:s,bgColor:e?.original?.__rowBgStatus?pi.getTableRowBgClassNamesByStatus[e?.original?.__rowBgStatus]:J,isInlineEditing:r,onConfirmEdit:O,onCancelEdit:W,rowHasPendingEdits:C})]})})};exports.Row=ge;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),l=require("react"),bi=require("../../../../../constants/table.cjs.js"),Xi=require("../../../../../providers/design-system-provider/hooks.cjs.js"),Vi=require("@dnd-kit/core"),Zi=require("@dnd-kit/sortable"),$i=require("@dnd-kit/utilities"),zi=require("@mui/icons-material"),wi=require("@mui/icons-material/AddRounded"),pi=require("../../../../../_virtual/index.cjs.js"),ie=require("react-dom"),ki=require("../../context.cjs.js"),ee=require("../cell/ActionCell.cjs.js"),ne=require("../cell/CheckboxCell.cjs.js"),te=require("../cell/DataCell.cjs.js"),Mi=require("../../validateCell.cjs.js"),le=require("../cell/LoaderCell.cjs.js"),ae=require("../cell/PendingEditCell.cjs.js"),se=require("../cell/RowActionCell.cjs.js"),oe=require("../cell/RowOptionsCell.cjs.js"),de=({row:i,isLastRow:J,lastRow:Q,highlightSubstring:X,index:V,style:Ci,level:e=0,expandedRows:c,rows:Z})=>{const{lastNonStickyColumnIndex:z,checkboxConfig:o,onRowClick:E,rowOptions:b,disableOptionsForRowIndex:M=null,getSumOfNextVisibleColumnWidth:$,onRowEdit:F,inlineEditColumns:xi,tableActions:w,dndSortableUtils:ii,withSortable:u,withDraggable:N,getInnerRowData:ei,showNewItem:H,rawData:B,dragConfig:p,getFullRowDataOnClick:ni,rowWrapper:_,isCellClickDisabled:ti,rowAdditionalActions:li,hoverConfig:j,addPendingEdit:D,removePendingEdit:ai,fieldOperationLoading:O,clearRowPendingEdits:q,saveRowPendingEdits:A,pendingEdits:L}=l.useContext(ki.TableContext),P=Xi.useTableConfig(),si=!!o,{activeInlineEdit:oi,setActiveInlineEdit:T}=l.useContext(ki.TableContext),a=oi?.rowId===i.original.id?oi?.columnKey:null,f=!!a,di=n=>{T?.(n===null?null:{rowId:String(i.original.id),columnKey:n})},[C,W]=l.useState(null),[ri,g]=l.useState(null),[R,U]=l.useState(null),[x,S]=l.useState(!1),[y,vi]=l.useState(!1),s=l.useRef(null);l.useEffect(()=>{const n=s.current,r=a;if(n&&!r){const h=L?.[i.original.id]?.[n];if(h){const d=i.cells?.find(m=>m.column?.key===n);if(d){const m=Mi.validateCellValue(h.value,d.column);!m.isValid&&D&&D(String(i.original.id),n,{...h,validationError:m.error})}}}s.current=r??null},[a,i.original.id,i.cells,L,D]),l.useEffect(()=>{if(B){const n=String(i?.original?.id);U(B[n]?.[i?.cells[0].column.Header]||B[n]?.[0])}},[B,i?.original?.id,i?.cells]);const v=Zi.useSortable({id:i.original.id,data:{...i.original},disabled:!u}),gi=Vi.useDraggable({id:i.original.id,data:{...i.original},disabled:!!u}),{listeners:ci,transform:ui,setNodeRef:_i,isDragging:K,attributes:fi,active:hi,over:I,...Hi}=u?v:gi,{setNodeRef:Ei}=Vi.useDroppable({id:`table-file-dropzone-${i?.original?.id}`,data:{type:"table-file-dropzone",folderId:i?.original?.id,isFolder:i?.original?.type==="folder"}}),Wi={transform:$i.CSS.Transform.toString(ui),transition:u?Hi.transition:void 0,cursor:K?"grabbing":"grab",opacity:K?"0.5":"1"},Ui=()=>!hi||!I||!u?!1:ii?.checkOverEachItem?ii.checkOverEachItem(hi,I)&&!!I:hi.data.current?.type!==I.data.current?.type&&!!I,Ni=n=>{g(n.target.value)},Ki=()=>{O||di(null)},Ri=l.useRef(null),ji=l.useCallback(n=>{Ri.current=n},[]),Di=l.useRef(P);Di.current=P;const Ii=l.useCallback(()=>{q&&q(String(i.original.id))},[q,i.original.id]),Pi=l.useCallback(()=>{if(Ri.current){const n=Ri.current();if(!n.isValid)return;a&&n.value!==void 0&&D&&D(String(i.original.id),a,{value:n.value,originalValue:i.original[a],meta:n.meta||void 0})}else if(a){const n=i.cells?.find(r=>r.column?.key===a);if(n){const r=L?.[i.original.id]?.[a]?.value,h=r!==void 0?r:n.value,d=Mi.validateCellValue(h,n.column);if(!d.isValid){Di.current?.showNotification?.("error",d.error||"Validation failed");return}}}A&&A(String(i.original.id))},[A,i.original,i.cells,a,D,L]),Bi=(n,r)=>{const h={...i.original},d=n!==void 0?n:ri;a&&d!==void 0&&(h[a]=d,F&&F(h,V,a,d,r),ai&&ai(String(i.original.id),a)),Ki()},Oi=l.useRef(null),qi=(n,r,h,d)=>{if(!ti&&(n?.stopPropagation(),a!==d)){if(F){if(xi?.includes(d))di(d),g(String(i.original[d]));else{const m=P?.getSystemMessage?.("notAllowedInlineEdit")||"Inline Edit is not allowed for this column";P?.showNotification?.("error",m)}return}if(E)E(r,h,i.original,Z?.map(m=>m.original)||[]);else if(!E&&o){const m=i.original.id,Qi={target:{checked:!o.checkedIds.includes(m)}};o.onItemCheck(Qi,m)}}},Ai=async()=>{S(!0),ei&&await ei(i?.original?.id,i?.original,!(c?.[i?.original?.id]?.isOpen??!1),i?.original?.__level||0),S(!1)},Yi=l.useMemo(()=>i.cells.filter(n=>n.column?.visible).map(n=>n.column?.width??0).reduce((n,r)=>n+r,0),[i.cells]),Y=l.useMemo(()=>p?.draggingOver&&p?.draggingOver===i?.original?.id,[p,i?.original?.id]),Si=l.useMemo(()=>Y?p?.dropPosition||"inside":null,[Y,p?.dropPosition]),G=!!(Y&&Si==="inside"),k=i?.original?.__rowMetadata||i?.original?._meta,mi=C!==i?.original?.id,yi=!i?.original?.__isLoading,Li=!!(k?.__is_new||k?.__is_added||i?.original?.is_added||R?.is_added||k?.is_added||k?.is_new),Gi=!!(i?.original?.is_deleted||k?.__is_deleted||R?.is_deleted||k?.is_deleted),Ji=!!(i?.original?.is_modified||i?.original?.is_row_modified||k?.__is_modified||k?.__is_edited||R?.is_row_modified||k?.is_modified)&&!Li,Ti=pi({"bg-neutral-100 dark:bg-black-600":C===i?.original?.id&&!f,"bg-primary-50 dark:bg-black-700":!i?.original?.is_read&&H&&!i?.original?.__isLoading&&mi&&!f,"bg-warning-50 dark:bg-warning-975":Ji&&yi&&mi&&!f,"bg-error-50 dark:bg-error-975":Gi&&yi&&mi&&!f,"bg-success-50 dark:bg-success-975":Li&&yi&&mi&&!f,"bg-primary-50 dark:bg-primary-900":f,[bi.getTableRowBgClassNamesByStatus[i?.original?.__rowBgStatus]]:i?.original?.__rowBgStatus&&!f});return l.createElement("tr",{...i.getRowProps(),ref:N||u?_i:null,key:i.original.id,"data-row-id":i.original.id,className:pi(`text-neutral-900 dark:text-white cursor-pointer min-w-full relative ${o?.selectionDisabledRowIds?.includes(i?.original?.id)?"opacity-50":""} border-t`,K?"z-40":"",Ui()?"shadow-dnd-drop":"",N&&I&&I?.data?.current?.type==="table-file-dropzone"&&I?.data?.current?.folderId===i?.original?.id&&i?.original?.type==="folder"?"bg-primary-50":"",i?.original?.isDefinedActionRow?"bg-primary-50":"",G?"z-50":"",Ti||"bg-white dark:bg-black-800"),style:{...Ci,...u?Wi:{},width:"max-content"},...N||u?fi:{},...N||u?ci:{}},G&&p?.dragOperation?t.jsx("div",{className:"absolute right-2 h-10 flex items-center z-20 pointer-events-none",children:t.jsx("div",{className:"bg-primary-200 px-2 py-1 rounded",children:p?.dragOperation==="COPY"?t.jsx(wi,{sx:{fontSize:12},className:"text-primary-700"}):t.jsx(zi.SubdirectoryArrowLeftRounded,{sx:{fontSize:12},className:"text-primary-700"})})}):null,G&&!p?.dragOperation?t.jsx("div",{className:"absolute right-2 h-10 flex items-center z-20 pointer-events-none",children:t.jsx(zi.SubdirectoryArrowLeftRounded,{sx:{fontSize:16},className:"text-primary-500"})}):null,Y&&Si==="before"&&!i?.original?.isDefinedActionRow?t.jsx("div",{className:"absolute -top-[1px] left-0 right-0 h-[2px] bg-primary-500 z-20 pointer-events-none",children:t.jsx("div",{className:"absolute left-0 top-1/2 -translate-y-1/2 w-2 h-2 rounded-full bg-primary-500"})}):null,Y&&Si==="after"&&!i?.original?.isDefinedActionRow?t.jsx("div",{className:"absolute -bottom-[1px] left-0 right-0 h-[2px] bg-primary-500 z-20 pointer-events-none",children:t.jsx("div",{className:"absolute left-0 top-1/2 -translate-y-1/2 w-2 h-2 rounded-full bg-primary-500"})}):null,i?.original?.isDefinedActionRow?t.jsx(ee.ActionCell,{cells:i.cells,id:i?.original?.id,isCheckbox:o,level:e,name:i?.original?.name,onClick:i?.original?.onClick,rowHovering:C||"",isRoot:i?.original?.isRoot,totalWidth:Yi,row:i.original,uploadCell:i?.original?.uploadCell,disabled:i?.original?.disabled,disabledTooltip:i?.original?.disabledTooltip}):_?t.jsx(_,{data:i.original,setIsDraggingFile:vi,children:t.jsx(Fi,{isDraggingOver:G,level:e,withDraggable:N,setDroppableNodeRef:Ei,isLastRow:J,lastRow:Q,isCheckbox:si,checkboxConfig:o,row:i,rowHovering:C,tableActions:w,disableOptionsForRowIndex:M,index:V,showNewItem:H,currentData:R,lastNonStickyColumnIndex:z,getSumOfNextVisibleColumnWidth:$,toggleRowExpand:Ai,loadingExpand:x,cellRef:Oi,handleCellClick:qi,getFullRowDataOnClick:ni,handleCellValueChange:Ni,handleUpdateCellData:Bi,handleRowCancelEdit:Ii,handleRowConfirmEdit:Pi,registerValidation:ji,inlineEditing:a,isInlineEditing:f,setRowHovering:W,highlightSubstring:X,rowOptions:b,isDraggingFile:y,rowAdditionalActions:li,hoverConfig:j})}):t.jsx(Fi,{level:e,withDraggable:N,setDroppableNodeRef:Ei,isLastRow:J,lastRow:Q,isCheckbox:si,checkboxConfig:o,row:i,rowHovering:C,tableActions:w,disableOptionsForRowIndex:M,index:V,showNewItem:H,currentData:R,lastNonStickyColumnIndex:z,getSumOfNextVisibleColumnWidth:$,toggleRowExpand:Ai,loadingExpand:x,cellRef:Oi,handleCellClick:qi,getFullRowDataOnClick:ni,handleCellValueChange:Ni,handleUpdateCellData:Bi,handleRowCancelEdit:Ii,handleRowConfirmEdit:Pi,registerValidation:ji,inlineEditing:a,isInlineEditing:f,setRowHovering:W,highlightSubstring:X,rowOptions:b,isDraggingFile:y,isDraggingOver:G,rowAdditionalActions:li,hoverConfig:j}))},Fi=({withDraggable:i,setDroppableNodeRef:J,isLastRow:Q,lastRow:X,isCheckbox:V,checkboxConfig:Ci,row:e,rowHovering:c,tableActions:Z,disableOptionsForRowIndex:z,index:o,showNewItem:E,currentData:b,lastNonStickyColumnIndex:M,getSumOfNextVisibleColumnWidth:$,toggleRowExpand:F,loadingExpand:xi,cellRef:w,handleCellClick:ii,getFullRowDataOnClick:u,handleCellValueChange:N,handleUpdateCellData:ei,handleRowCancelEdit:H,handleRowConfirmEdit:B,registerValidation:p,inlineEditing:ni,isInlineEditing:_,setRowHovering:ti,highlightSubstring:li,rowOptions:j,level:D,isDraggingFile:ai,isDraggingOver:O,rowAdditionalActions:q,hoverConfig:A})=>{const[L,P]=l.useState(!1),{getPendingEdit:si,hasPendingEdit:oi,pendingEdits:T,tableHeaders:a,pendingEditsCount:f,scrollToCell:di}=l.useContext(ki.TableContext),C=T?.[e.original.id]&&Object.keys(T[e.original.id]).length>0,W=(f??0)>0,ri=l.useMemo(()=>{if(Array.isArray(j))return j;if(typeof j=="function"){const s=j({...e.original,rowIndex:o});return Array.isArray(s)?s:[]}return[]},[j,e.original,o]),g=e?.original?.__rowMetadata||e?.original?._meta,R=c!==e?.original?.id,U=!e?.original?.__isLoading,x=!!(g?.__is_new||g?.__is_added||e?.original?.is_added||b?.is_added||g?.is_added||g?.is_new),S=!!(e?.original?.is_deleted||g?.__is_deleted||b?.is_deleted||g?.is_deleted),y=!!(e?.original?.is_modified||e?.original?.is_row_modified||g?.__is_modified||g?.__is_edited||b?.is_row_modified||g?.is_deleted)&&!x,vi=pi({"border-l-[3px] border-l-success-400 dark:border-l-success-500":x&&U&&R&&!_,"border-l-[3px] border-l-error-400 dark:border-l-error-500":S&&U&&R&&!_,"border-l-[3px] border-l-warning-400 dark:border-l-warning-500":y&&U&&R&&!_});return t.jsx("div",{ref:i?J:null,className:O?"border-2 border-primary-400 dark:border-primary-500 rounded-sm":"",children:t.jsxs("div",{className:pi("flex",vi),ref:Q?X:null,children:[W&&t.jsx(ae.PendingEditCell,{rowId:String(e.original.id),rowIndex:o,pendingEdits:T,tableHeaders:a,rowHasPendingEdits:!!C,rowHovering:c!=null?String(c):void 0,isInlineEditing:_,is_read:!!e.original.is_read,is_modified:y,is_row_modified:!!e.original.is_row_modified,is_deleted:S,is_added:x,is_incomplete:e?.original?.status==="Incomplete",showNewItem:E,onScrollToCell:di}),V&&t.jsx(ne.CheckboxCell,{checkboxConfig:Ci,id:String(e.original.id),rowHovering:c!=null?String(c):void 0,isDisabled:!!e?.original?.__isLoading,isDraggingOver:O,is_added:x,is_deleted:S,is_incomplete:e?.original?.status==="Incomplete",is_modified:y,is_read:!!e.original.is_read,is_row_modified:!!e.original.is_row_modified,showNewItem:E,currentData:b??{},bgColor:e?.original?.__rowBgStatus?bi.getTableRowBgClassNamesByStatus[e?.original?.__rowBgStatus]:void 0,isInlineEditing:_,hasPendingEditsColumn:W,rowHasPendingEdits:C}),Z?t.jsx(se.RowActionCell,{tableActions:Z,disableOptionsForRowIndex:z??null,id:String(e.original.id),index:o,is_read:!!e?.original?.is_read,is_incomplete:e?.original?.status==="Incomplete",showNewItem:!!E,is_modified:y,is_row_modified:!!e?.original?.is_row_modified,is_deleted:S,currentData:b??{},is_added:x,rowData:e.original,rowHovering:c,isDisabled:!!e?.original?.__isLoading,bgColor:ai?"bg-primary-50":e?.original?.__rowBgStatus?bi.getTableRowBgClassNamesByStatus[e?.original?.__rowBgStatus]:void 0,isInlineEditing:_,rowHasPendingEdits:C}):null,t.jsxs("div",{className:"relative flex-1",id:`row-${e.original.id}`,onMouseEnter:()=>P(!0),onMouseLeave:()=>P(!1),children:[e.cells.filter(s=>s?.column?.visible!==!1).map((s,v)=>{const gi=v===M?.(),ci=v===(M?.()??-1)+1,ui=s?.column?.sticky?$?.(v)??0:0;if(e.original?.__isLoading)return t.jsx(le.LoaderCell,{cell:s,id:v,nextWidthSum:ui,isLastCell:gi,rowHovering:c,index:v,isFirstStickyCell:ci},v);const _i=si?.(String(e.original.id),s?.column?.key||""),K=oi?.(String(e.original.id),s?.column?.key||"");return t.jsx(te.DataCell,{cell:s,rowHovering:c,isFirstStickyCell:ci,level:D??0,toggleRowExpand:F,loadingExpand:xi,index:v,cellRef:w,currentData:b,handleCellClick:fi=>{fi&&ii(fi,u?e.original:String(e.original.id),v,s?.column?.key||"")},handleCellValueChange:N,handleUpdateCellData:ei,registerValidation:p,id:e.original.id,inlineEditing:ni,isInlineEditing:_,isLastCell:gi,is_incomplete:e?.original?.status==="Incomplete",is_added:x,is_deleted:S,is_modified:y,is_read:!!e.original.is_read,is_row_modified:!!e.original.is_row_modified,nextWidthSum:ui,setRowHovering:ti,highlightSubstring:li,isDraggingOver:O,isLoading:!!e?.original?.__isLoading,pendingEdit:_i,hasPendingEdit:K,pendingValidationError:_i?.validationError},s?.column?.key)}),A?.onHover&&L&&ie.createPortal(t.jsx("div",{className:"absolute top-full left-10 z-50 bg-white dark:bg-black-800 rounded-xl",children:A.onHover(e.original)}),document.getElementById(`row-${e.original.id}`))]}),(ri.length>0||!!q)&&t.jsx(oe.RowOptionsCell,{rowId:e.original.id,rowOptions:ri,disableOption:z!==null||!!e?.original?.__isLoading,rowHovering:c,setRowHovering:ti,is_read:!!e.original.is_read,showNewItem:!!E,is_modified:y,is_row_modified:!!e.original.is_row_modified,is_incomplete:e?.original?.status==="Incomplete",currentData:b??{},is_deleted:S,is_added:x,isDraggingOver:!!O,rowAdditionalActions:q,rowData:e.original,index:o,bgColor:e?.original?.__rowBgStatus?bi.getTableRowBgClassNamesByStatus[e?.original?.__rowBgStatus]:void 0,isInlineEditing:_,onConfirmEdit:B,onCancelEdit:H,rowHasPendingEdits:C})]})})};exports.Row=de;
2
2
  //# sourceMappingURL=row.cjs.js.map