@economic/taco 1.35.4 → 1.37.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. package/dist/components/Icon/components/EyeOff.d.ts +3 -0
  2. package/dist/components/Icon/components/EyeOn.d.ts +3 -0
  3. package/dist/components/Icon/components/index.d.ts +1 -1
  4. package/dist/components/Input/Input.d.ts +1 -1
  5. package/dist/components/Menu/components/Item.d.ts +1 -1
  6. package/dist/components/Menu/components/Link.d.ts +1 -1
  7. package/dist/components/Navigation2/components/Link.d.ts +1 -1
  8. package/dist/components/Provider/Localization.d.ts +5 -0
  9. package/dist/components/Select2/components/Option.d.ts +1 -1
  10. package/dist/components/Select2/components/Search.d.ts +1 -1
  11. package/dist/components/Select2/components/Trigger.d.ts +1 -0
  12. package/dist/components/Table2/Table2.d.ts +5 -0
  13. package/dist/components/Tag/Tag.d.ts +1 -1
  14. package/dist/esm/packages/taco/src/components/Icon/components/EyeOff.js +19 -0
  15. package/dist/esm/packages/taco/src/components/Icon/components/EyeOff.js.map +1 -0
  16. package/dist/esm/packages/taco/src/components/Icon/components/EyeOn.js +19 -0
  17. package/dist/esm/packages/taco/src/components/Icon/components/EyeOn.js.map +1 -0
  18. package/dist/esm/packages/taco/src/components/Icon/components/index.js +4 -0
  19. package/dist/esm/packages/taco/src/components/Icon/components/index.js.map +1 -1
  20. package/dist/esm/packages/taco/src/components/Provider/Localization.js +6 -1
  21. package/dist/esm/packages/taco/src/components/Provider/Localization.js.map +1 -1
  22. package/dist/esm/packages/taco/src/components/Select2/Select2.js +1 -0
  23. package/dist/esm/packages/taco/src/components/Select2/Select2.js.map +1 -1
  24. package/dist/esm/packages/taco/src/components/Select2/components/Create.js +1 -1
  25. package/dist/esm/packages/taco/src/components/Select2/components/Create.js.map +1 -1
  26. package/dist/esm/packages/taco/src/components/Select2/components/Option.js +2 -1
  27. package/dist/esm/packages/taco/src/components/Select2/components/Option.js.map +1 -1
  28. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js +3 -1
  29. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js.map +1 -1
  30. package/dist/esm/packages/taco/src/components/Table2/Table2.js.map +1 -1
  31. package/dist/esm/packages/taco/src/components/Table2/components/RowDensityButton.js +4 -4
  32. package/dist/esm/packages/taco/src/components/Table2/components/RowDensityButton.js.map +1 -1
  33. package/dist/esm/packages/taco/src/components/Table2/components/column/Header.js +52 -39
  34. package/dist/esm/packages/taco/src/components/Table2/components/column/Header.js.map +1 -1
  35. package/dist/esm/packages/taco/src/components/Table2/utilities/columns.js +1 -1
  36. package/dist/esm/packages/taco/src/components/Table2/utilities/columns.js.map +1 -1
  37. package/dist/taco.cjs.development.js +102 -48
  38. package/dist/taco.cjs.development.js.map +1 -1
  39. package/dist/taco.cjs.production.min.js +1 -1
  40. package/dist/taco.cjs.production.min.js.map +1 -1
  41. package/package.json +2 -2
  42. package/types.json +30 -3
@@ -1 +1 @@
1
- {"version":3,"file":"columns.js","sources":["../../../../../../../../src/components/Table2/utilities/columns.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport { CellContext, ColumnDef, DisplayColumnDef, Row, TableMeta } from '@tanstack/react-table';\nimport { Checkbox } from '../../Checkbox/Checkbox';\nimport { IconButton } from '../../IconButton/IconButton';\nimport { Shortcut } from '../../Shortcut/Shortcut';\nimport { Tooltip } from '../../Tooltip/Tooltip';\nimport { RowDragHandler, RowExpansionRenderer } from '../types';\nimport { Menu } from '../../Menu/Menu';\nimport { Icon } from '../../Icon/Icon';\nimport { LocalizationTexts } from '../../Provider/Localization';\nimport { useRowContext } from '../components/row/Context';\n\nexport const COLUMN_ID_FOR_DRAGGABLE = '__draggable';\nexport const COLUMN_ID_FOR_SELECTION = '__select';\nexport const COLUMN_ID_FOR_EXPANSION = '__expansion';\nexport const COLUMN_ID_FOR_ACTIONS = '__actions';\n\nexport const isInternalFrozenColumn = (id: string) => isInternalColumn(id) && id !== COLUMN_ID_FOR_ACTIONS;\n\nexport const isInternalColumn = (id: string) =>\n id === COLUMN_ID_FOR_SELECTION ||\n id === COLUMN_ID_FOR_EXPANSION ||\n id === COLUMN_ID_FOR_ACTIONS ||\n id === COLUMN_ID_FOR_DRAGGABLE;\n\nexport const MIN_COLUMN_SIZE = 80; // accounts for padding and sort controls\n\nconst toggleBetween = (fromRowIndex: number, toRowIndex: number): [number, number] => {\n const fromIndex = toRowIndex < fromRowIndex ? toRowIndex : fromRowIndex;\n const toIndex = toRowIndex > fromRowIndex ? toRowIndex : fromRowIndex;\n\n return [fromIndex, toIndex];\n};\n\nexport function createRowDraggableColumn<TType = any>(\n onRowDrag: RowDragHandler<TType>,\n texts: LocalizationTexts\n): DisplayColumnDef<TType, any> {\n return {\n id: COLUMN_ID_FOR_DRAGGABLE,\n cell: ({ row, table }) => {\n const meta = table.options.meta as TableMeta<any>;\n const GHOST_ELEMENT_ID = 'taco_table_dragging';\n\n const onDragStart = (event: React.DragEvent): void => {\n const rows = row.getIsSelected() ? table.getSelectedRowModel().rows : [row, ...table.getSelectedRowModel().rows];\n\n meta.setDragging(rows.reduce((dragging, rowBeingDragged) => ({ ...dragging, [rowBeingDragged.id]: true }), {}));\n\n const data = rows.map(row => row.original);\n // set a default data value so that the consumer doesn't have to\n event.dataTransfer.setData('text', JSON.stringify(data));\n\n const showPlaceholder = (text: string) => {\n const ghost = document.createElement('div');\n ghost.id = GHOST_ELEMENT_ID;\n ghost.className = 'wcag-blue rounded flex w-48 p-4 absolute -ml-[100vw]';\n ghost.innerText = text;\n document.body.appendChild(ghost);\n event.dataTransfer.setDragImage(ghost, 0, 0);\n };\n\n const setDataTransfer = (text: string) => event.dataTransfer.setData('text', text);\n\n onRowDrag(data, showPlaceholder, setDataTransfer);\n };\n\n const onDragEnd = (): void => {\n document.getElementById(GHOST_ELEMENT_ID)?.remove();\n meta.setDragging({});\n };\n\n return (\n <div draggable onDragStart={onDragStart} onDragEnd={onDragEnd}>\n <Icon\n aria-label={texts.table2.columns.drag.tooltip}\n name=\"drag\"\n className=\"text-grey-darkest invisible w-[20px] cursor-grab active:cursor-grabbing group-hover/row:visible group-[[aria-grabbed]]/row:text-white\"\n />\n </div>\n );\n },\n meta: {\n align: 'center',\n className: 'items-center !px-0',\n headerClassName: 'items-center !px-0',\n },\n // sizing\n enableResizing: false,\n size: 10,\n };\n}\n\nconst SelectCell = React.memo(({ lastSelectedRowIndex, rowIndex, isSelected, table, tableRef, texts, toggleSelected }: any) => {\n const meta = table.options.meta as TableMeta<any>;\n\n const handleClick = (event: React.MouseEvent): void => {\n event.stopPropagation();\n\n if (event.shiftKey) {\n const [fromIndex, toIndex] = toggleBetween(lastSelectedRowIndex?.current || 0, rowIndex);\n\n table\n .getRowModel()\n .rows.slice(fromIndex, toIndex + 1)\n .forEach(row => row.toggleSelected(true));\n } else {\n toggleSelected();\n }\n\n lastSelectedRowIndex.current = rowIndex;\n meta.setActiveRowIndex(rowIndex);\n tableRef.current?.focus();\n };\n\n return (\n <Tooltip\n title={\n <>\n {isSelected ? texts.table2.columns.select.select : texts.table2.columns.select.deselect}\n <Shortcut className=\"ml-2\" keys=\"Space\" />\n </>\n }>\n <Checkbox\n aria-label={isSelected ? texts.table2.columns.select.select : texts.table2.columns.select.deselect}\n className=\"hover:border-blue !mt-0\"\n checked={isSelected}\n onClick={handleClick}\n // this is necessary to remove console spam from eslint\n onChange={() => false}\n tabIndex={-1}\n />\n </Tooltip>\n );\n});\nexport function createRowSelectionColumn<TType = any>(\n enableMultipleRowSelection: boolean,\n lastSelectedRowIndex: React.MutableRefObject<number | undefined>,\n onRowDrag: RowDragHandler<TType> | undefined,\n tableRef: React.RefObject<HTMLDivElement>,\n texts: LocalizationTexts\n): DisplayColumnDef<TType, any> {\n let header;\n let cell;\n\n if (enableMultipleRowSelection) {\n header = ({ table }) => (\n <Tooltip\n title={\n <>\n {table.getIsAllPageRowsSelected()\n ? texts.table2.columns.select.deselectAll\n : texts.table2.columns.select.selectAll}\n <Shortcut className=\"ml-2\" keys={{ key: 'a', meta: true }} />\n </>\n }>\n <Checkbox\n aria-label={\n table.getIsAllPageRowsSelected()\n ? texts.table2.columns.select.deselectAll\n : texts.table2.columns.select.selectAll\n }\n className=\"hover:border-blue !mt-0\"\n checked={table.getIsAllPageRowsSelected()}\n indeterminate={table.getIsSomePageRowsSelected()}\n onChange={checked => table.toggleAllPageRowsSelected(checked)}\n onClick={() => {\n tableRef.current?.focus();\n }}\n tabIndex={-1}\n />\n </Tooltip>\n );\n cell = ({ row, table }) => (\n <SelectCell\n lastSelectedRowIndex={lastSelectedRowIndex}\n rowIndex={row.index}\n isSelected={row.getIsSelected()}\n table={table}\n tableRef={tableRef}\n texts={texts}\n toggleSelected={row.toggleSelected}\n />\n );\n } else {\n cell = ({ row, table }) => {\n const meta = table.options.meta as TableMeta<any>;\n const className =\n 'border-grey-300 focus:yt-focus flex h-5 w-5 mt-[0.45rem] flex-shrink-0 items-center justify-center self-start rounded-full border-2 bg-white hover:border-[5px] aria-checked:border-blue-500 aria-checked:bg-blue-500 hover:aria-checked:border-blue-300';\n\n const handleClick = (event: React.MouseEvent): void => {\n event.stopPropagation();\n row.toggleSelected();\n meta.setActiveRowIndex(row.index);\n tableRef.current?.focus();\n };\n\n return (\n <button\n className={className}\n aria-checked={row.getIsSelected()}\n onClick={handleClick}\n role=\"radio\"\n tabIndex={-1}\n type=\"button\">\n {row.getIsSelected() ? <span className=\"h-2.5 w-2.5 rounded-full bg-white\" /> : null}\n </button>\n );\n };\n }\n\n return {\n id: COLUMN_ID_FOR_SELECTION,\n header,\n cell,\n meta: {\n align: 'center',\n className: onRowDrag ? '!pl-0 !pr-3' : '!px-3',\n headerClassName: onRowDrag ? '!pl-0 !pr-3' : '!px-3',\n },\n // sizing\n enableResizing: false,\n size: 46,\n };\n}\n\nconst ExpandCell = React.memo(({ expandedRowRenderer, isExpanded, row, texts }: any) => {\n const hasExpandedRow = expandedRowRenderer(row.original);\n\n if (!hasExpandedRow) {\n return null;\n }\n\n return (\n <Tooltip\n title={\n <>\n {isExpanded ? texts.table2.columns.expansion.collapse : texts.table2.columns.expansion.expand}\n <Shortcut className=\"ml-2\" keys={{ key: isExpanded ? 'ArrowLeft' : 'ArrowRight', meta: true }} />\n </>\n }>\n <IconButton\n title={isExpanded ? texts.table2.columns.expansion.collapse : texts.table2.columns.expansion.expand}\n appearance=\"discrete\"\n icon={isExpanded ? 'chevron-down' : 'chevron-right'}\n onClick={event => {\n event.stopPropagation();\n row.toggleExpanded();\n }}\n tabIndex={-1}\n />\n </Tooltip>\n );\n});\n\nexport function createRowExpansionColumn<TType = any>(\n expandedRowRenderer: RowExpansionRenderer<TType>,\n texts: LocalizationTexts\n): DisplayColumnDef<TType, any> {\n return {\n id: COLUMN_ID_FOR_EXPANSION,\n header: ({ table }) => (\n <Tooltip\n title={\n table.getIsSomeRowsExpanded()\n ? texts.table2.columns.expansion.collapseAll\n : texts.table2.columns.expansion.expandAll\n }>\n <IconButton\n title={\n table.getIsSomeRowsExpanded()\n ? texts.table2.columns.expansion.collapseAll\n : texts.table2.columns.expansion.expandAll\n }\n appearance=\"discrete\"\n className=\"-mb-2 -mt-1.5\"\n icon={table.getIsSomeRowsExpanded() ? 'chevron-down-double' : 'chevron-right-double'}\n onClick={event => {\n event.stopPropagation();\n table.toggleAllRowsExpanded(table.getIsSomeRowsExpanded() ? false : true);\n }}\n tabIndex={-1}\n />\n </Tooltip>\n ),\n cell: ({ row }: CellContext<TType, any>) => (\n // ExpandCell is memoised and that's why calling row.getIsExpanded() inside it doesn't return the correct\n // expand state. This is the reason why isExpanded is pulled out of the ExpandCell component.\n <ExpandCell expandedRowRenderer={expandedRowRenderer} isExpanded={row.getIsExpanded()} row={row} texts={texts} />\n ),\n\n meta: {\n align: 'center',\n className: 'items-center !p-0',\n headerClassName: 'items-center hover:!bg-white !p-0',\n },\n // sizing\n enableResizing: false,\n size: 36,\n };\n}\n\nconst RowActionsCell = React.memo(({ row, actions, actionsLength, isEditing, shouldPauseHoverState, table, texts }: any) => {\n const { isActive, isHovered } = useRowContext();\n\n if ((!isActive && (!isHovered || shouldPauseHoverState)) || isEditing) {\n return null;\n }\n\n const visibleActions = actions.map(action => action(row.original)).filter(action => !!action);\n\n const actionsOnRow = visibleActions.length === actionsLength ? visibleActions : visibleActions.slice(0, actionsLength - 1);\n const actionsInMenu = visibleActions.slice(visibleActions.length === actionsLength ? actionsLength : actionsLength - 1);\n\n // If the row is not the active row or the hovered row then actions are hidden.\n const actionClassName = 'group-hover/row:flex group-[[aria-current]]/row:flex hidden';\n\n // only actions in the active row should be tabbable\n const tabIndex = table.options.meta.activeRowIndex === row.index ? 0 : -1;\n\n return (\n <span className=\"-mb-2 -mt-2 flex justify-end text-right\">\n {actionsOnRow.map((button, index) =>\n React.cloneElement(button, {\n appearance: 'discrete',\n className: cn(actionClassName, button.props.className),\n key: index,\n tabIndex,\n tooltip: button.props.shortcut ? (\n <>\n {button.props.tooltip ?? button.props['aria-label']}\n <Shortcut className=\"ml-2\" keys={button.props.shortcut} />\n </>\n ) : (\n button.props.tooltip ?? button.props['aria-label']\n ),\n })\n )}\n {actionsInMenu.length ? (\n <IconButton\n appearance=\"discrete\"\n aria-label={texts.table2.columns.actions.tooltip}\n icon=\"more\"\n tabIndex={tabIndex}\n menu={menuProps => (\n <Menu {...menuProps}>\n <Menu.Content>\n {actionsInMenu.map((action, i) => (\n <Menu.Item key={i} {...action.props} shortcut={action.props.shortcut}>\n {action.props['aria-label']}\n </Menu.Item>\n ))}\n </Menu.Content>\n </Menu>\n )}\n tooltip={texts.table2.columns.actions.tooltip}\n />\n ) : null}\n </span>\n );\n});\n\nexport function createRowActionsColumn<TType = any>(\n rowActions,\n rowActionsLength,\n texts: LocalizationTexts\n): DisplayColumnDef<TType, any> {\n return {\n id: COLUMN_ID_FOR_ACTIONS,\n cell: ({ row, table }) => (\n <RowActionsCell\n row={row}\n actions={rowActions}\n actionsLength={rowActionsLength}\n texts={texts}\n table={table}\n isEditing={!!table.options.meta?.editMode.isEditing}\n shouldPauseHoverState={!!table.options.meta?.shouldPauseHoverState}\n />\n ),\n meta: {\n align: 'right',\n className: (row: Row<any>, table: any) =>\n // Adding z-index so that it shows on top of frozen columns\n cn('items-center print:opacity-0 group-[[aria-current]]/row:sticky group-hover/row:sticky right-0 !px-1 z-[1]', {\n 'group-[[aria-current]]/row:!shadow-[-6px_0px_6px_theme(colors.grey.200)]': !row.getIsSelected(),\n 'group-hover/row:!shadow-[-6px_0px_6px_theme(colors.grey.100)]':\n !row.getIsSelected() &&\n (!table.options.meta?.shouldPauseHoverState || table.options.meta.editMode.isEditing),\n 'shadow-[-6px_0px_6px_theme(colors.blue.100)]': row.getIsSelected(),\n }),\n headerClassName: 'hover:!bg-white !px-1',\n },\n // sizing\n enableResizing: false,\n };\n}\n\nexport function ensureOrdering<TType = unknown>(columns: ColumnDef<TType>[], settingsOrder: string[] | undefined): string[] {\n // internal column come with a defined order\n const internalColumns = columns\n .filter(column => column.id?.startsWith('__') && column.id !== COLUMN_ID_FOR_ACTIONS)\n .map(column => column.id) as string[];\n\n // columns with ordering disabled should be moved to the front\n const orderingDisabled: string[] = [];\n const orderingEnabled: string[] = [];\n\n let orderedColumns = columns;\n\n // if settings is defined, make sure the columns that are actual children are sorted by it\n if (Array.isArray(settingsOrder)) {\n orderedColumns = columns.slice().sort(\n // the magic >>> 0 here ensures that columns that aren't found in settings, but are children, are pushed to the end\n (a, b) => (settingsOrder.indexOf(a.id as string) >>> 0) - (settingsOrder.indexOf(b.id as string) >>> 0)\n );\n }\n\n orderedColumns.forEach(column => {\n if (column.id?.startsWith('__')) {\n return;\n }\n\n if (column.meta?.disableReordering) {\n orderingDisabled.push(column.id as string);\n } else {\n orderingEnabled.push(column.id as string);\n }\n });\n\n const order = [...internalColumns, ...orderingDisabled, ...orderingEnabled];\n\n // actions should always be last, enforce that\n if (columns.findIndex(column => column.id === COLUMN_ID_FOR_ACTIONS) > -1) {\n order.push(COLUMN_ID_FOR_ACTIONS);\n }\n\n return order;\n}\n"],"names":["COLUMN_ID_FOR_DRAGGABLE","COLUMN_ID_FOR_SELECTION","COLUMN_ID_FOR_EXPANSION","COLUMN_ID_FOR_ACTIONS","isInternalFrozenColumn","id","isInternalColumn","MIN_COLUMN_SIZE","toggleBetween","fromRowIndex","toRowIndex","fromIndex","toIndex","createRowDraggableColumn","onRowDrag","texts","cell","row","table","meta","options","GHOST_ELEMENT_ID","onDragStart","event","rows","getIsSelected","getSelectedRowModel","setDragging","reduce","dragging","rowBeingDragged","data","map","original","dataTransfer","setData","JSON","stringify","showPlaceholder","text","ghost","document","createElement","className","innerText","body","appendChild","setDragImage","setDataTransfer","onDragEnd","getElementById","remove","React","draggable","Icon","table2","columns","drag","tooltip","name","align","headerClassName","enableResizing","size","SelectCell","memo","lastSelectedRowIndex","rowIndex","isSelected","tableRef","toggleSelected","handleClick","stopPropagation","shiftKey","current","getRowModel","slice","forEach","setActiveRowIndex","focus","Tooltip","title","select","deselect","Shortcut","keys","Checkbox","checked","onClick","onChange","tabIndex","createRowSelectionColumn","enableMultipleRowSelection","header","getIsAllPageRowsSelected","deselectAll","selectAll","key","indeterminate","getIsSomePageRowsSelected","toggleAllPageRowsSelected","index","role","type","ExpandCell","expandedRowRenderer","isExpanded","hasExpandedRow","expansion","collapse","expand","IconButton","appearance","icon","toggleExpanded","createRowExpansionColumn","getIsSomeRowsExpanded","collapseAll","expandAll","toggleAllRowsExpanded","getIsExpanded","RowActionsCell","actions","actionsLength","isEditing","shouldPauseHoverState","isActive","isHovered","useRowContext","visibleActions","action","filter","actionsOnRow","length","actionsInMenu","actionClassName","activeRowIndex","button","cloneElement","cn","props","shortcut","menu","menuProps","Menu","Content","i","Item","createRowActionsColumn","rowActions","rowActionsLength","editMode","ensureOrdering","settingsOrder","internalColumns","column","startsWith","orderingDisabled","orderingEnabled","orderedColumns","Array","isArray","sort","a","b","indexOf","disableReordering","push","order","findIndex"],"mappings":"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"}
1
+ {"version":3,"file":"columns.js","sources":["../../../../../../../../src/components/Table2/utilities/columns.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport { CellContext, ColumnDef, DisplayColumnDef, Row, TableMeta } from '@tanstack/react-table';\nimport { Checkbox } from '../../Checkbox/Checkbox';\nimport { IconButton } from '../../IconButton/IconButton';\nimport { Shortcut } from '../../Shortcut/Shortcut';\nimport { Tooltip } from '../../Tooltip/Tooltip';\nimport { RowDragHandler, RowExpansionRenderer } from '../types';\nimport { Menu } from '../../Menu/Menu';\nimport { Icon } from '../../Icon/Icon';\nimport { LocalizationTexts } from '../../Provider/Localization';\nimport { useRowContext } from '../components/row/Context';\n\nexport const COLUMN_ID_FOR_DRAGGABLE = '__draggable';\nexport const COLUMN_ID_FOR_SELECTION = '__select';\nexport const COLUMN_ID_FOR_EXPANSION = '__expansion';\nexport const COLUMN_ID_FOR_ACTIONS = '__actions';\n\nexport const isInternalFrozenColumn = (id: string) => isInternalColumn(id) && id !== COLUMN_ID_FOR_ACTIONS;\n\nexport const isInternalColumn = (id: string) =>\n id === COLUMN_ID_FOR_SELECTION ||\n id === COLUMN_ID_FOR_EXPANSION ||\n id === COLUMN_ID_FOR_ACTIONS ||\n id === COLUMN_ID_FOR_DRAGGABLE;\n\nexport const MIN_COLUMN_SIZE = 80; // accounts for padding and sort controls\n\nconst toggleBetween = (fromRowIndex: number, toRowIndex: number): [number, number] => {\n const fromIndex = toRowIndex < fromRowIndex ? toRowIndex : fromRowIndex;\n const toIndex = toRowIndex > fromRowIndex ? toRowIndex : fromRowIndex;\n\n return [fromIndex, toIndex];\n};\n\nexport function createRowDraggableColumn<TType = any>(\n onRowDrag: RowDragHandler<TType>,\n texts: LocalizationTexts\n): DisplayColumnDef<TType, any> {\n return {\n id: COLUMN_ID_FOR_DRAGGABLE,\n cell: ({ row, table }) => {\n const meta = table.options.meta as TableMeta<any>;\n const GHOST_ELEMENT_ID = 'taco_table_dragging';\n\n const onDragStart = (event: React.DragEvent): void => {\n const rows = row.getIsSelected() ? table.getSelectedRowModel().rows : [row, ...table.getSelectedRowModel().rows];\n\n meta.setDragging(rows.reduce((dragging, rowBeingDragged) => ({ ...dragging, [rowBeingDragged.id]: true }), {}));\n\n const data = rows.map(row => row.original);\n // set a default data value so that the consumer doesn't have to\n event.dataTransfer.setData('text', JSON.stringify(data));\n\n const showPlaceholder = (text: string) => {\n const ghost = document.createElement('div');\n ghost.id = GHOST_ELEMENT_ID;\n ghost.className = 'wcag-blue rounded flex w-48 p-4 absolute -ml-[100vw]';\n ghost.innerText = text;\n document.body.appendChild(ghost);\n event.dataTransfer.setDragImage(ghost, 0, 0);\n };\n\n const setDataTransfer = (text: string) => event.dataTransfer.setData('text', text);\n\n onRowDrag(data, showPlaceholder, setDataTransfer);\n };\n\n const onDragEnd = (): void => {\n document.getElementById(GHOST_ELEMENT_ID)?.remove();\n meta.setDragging({});\n };\n\n return (\n <div draggable onDragStart={onDragStart} onDragEnd={onDragEnd}>\n <Icon\n aria-label={texts.table2.columns.drag.tooltip}\n name=\"drag\"\n className=\"text-grey-darkest invisible w-[20px] cursor-grab active:cursor-grabbing group-hover/row:visible group-[[aria-grabbed]]/row:text-white\"\n />\n </div>\n );\n },\n meta: {\n align: 'center',\n className: 'items-center !px-0',\n headerClassName: 'items-center !px-0',\n },\n // sizing\n enableResizing: false,\n size: 10,\n };\n}\n\nconst SelectCell = React.memo(({ lastSelectedRowIndex, rowIndex, isSelected, table, tableRef, texts, toggleSelected }: any) => {\n const meta = table.options.meta as TableMeta<any>;\n\n const handleClick = (event: React.MouseEvent): void => {\n event.stopPropagation();\n\n if (event.shiftKey) {\n const [fromIndex, toIndex] = toggleBetween(lastSelectedRowIndex?.current || 0, rowIndex);\n\n table\n .getRowModel()\n .rows.slice(fromIndex, toIndex + 1)\n .forEach(row => row.toggleSelected(true));\n } else {\n toggleSelected();\n }\n\n lastSelectedRowIndex.current = rowIndex;\n meta.setActiveRowIndex(rowIndex);\n tableRef.current?.focus();\n };\n\n return (\n <Tooltip\n title={\n <>\n {isSelected ? texts.table2.columns.select.deselect : texts.table2.columns.select.select}\n <Shortcut className=\"ml-2\" keys=\"Space\" />\n </>\n }>\n <Checkbox\n aria-label={isSelected ? texts.table2.columns.select.select : texts.table2.columns.select.deselect}\n className=\"hover:border-blue !mt-0\"\n checked={isSelected}\n onClick={handleClick}\n // this is necessary to remove console spam from eslint\n onChange={() => false}\n tabIndex={-1}\n />\n </Tooltip>\n );\n});\nexport function createRowSelectionColumn<TType = any>(\n enableMultipleRowSelection: boolean,\n lastSelectedRowIndex: React.MutableRefObject<number | undefined>,\n onRowDrag: RowDragHandler<TType> | undefined,\n tableRef: React.RefObject<HTMLDivElement>,\n texts: LocalizationTexts\n): DisplayColumnDef<TType, any> {\n let header;\n let cell;\n\n if (enableMultipleRowSelection) {\n header = ({ table }) => (\n <Tooltip\n title={\n <>\n {table.getIsAllPageRowsSelected()\n ? texts.table2.columns.select.deselectAll\n : texts.table2.columns.select.selectAll}\n <Shortcut className=\"ml-2\" keys={{ key: 'a', meta: true }} />\n </>\n }>\n <Checkbox\n aria-label={\n table.getIsAllPageRowsSelected()\n ? texts.table2.columns.select.deselectAll\n : texts.table2.columns.select.selectAll\n }\n className=\"hover:border-blue !mt-0\"\n checked={table.getIsAllPageRowsSelected()}\n indeterminate={table.getIsSomePageRowsSelected()}\n onChange={checked => table.toggleAllPageRowsSelected(checked)}\n onClick={() => {\n tableRef.current?.focus();\n }}\n tabIndex={-1}\n />\n </Tooltip>\n );\n cell = ({ row, table }) => (\n <SelectCell\n lastSelectedRowIndex={lastSelectedRowIndex}\n rowIndex={row.index}\n isSelected={row.getIsSelected()}\n table={table}\n tableRef={tableRef}\n texts={texts}\n toggleSelected={row.toggleSelected}\n />\n );\n } else {\n cell = ({ row, table }) => {\n const meta = table.options.meta as TableMeta<any>;\n const className =\n 'border-grey-300 focus:yt-focus flex h-5 w-5 mt-[0.45rem] flex-shrink-0 items-center justify-center self-start rounded-full border-2 bg-white hover:border-[5px] aria-checked:border-blue-500 aria-checked:bg-blue-500 hover:aria-checked:border-blue-300';\n\n const handleClick = (event: React.MouseEvent): void => {\n event.stopPropagation();\n row.toggleSelected();\n meta.setActiveRowIndex(row.index);\n tableRef.current?.focus();\n };\n\n return (\n <button\n className={className}\n aria-checked={row.getIsSelected()}\n onClick={handleClick}\n role=\"radio\"\n tabIndex={-1}\n type=\"button\">\n {row.getIsSelected() ? <span className=\"h-2.5 w-2.5 rounded-full bg-white\" /> : null}\n </button>\n );\n };\n }\n\n return {\n id: COLUMN_ID_FOR_SELECTION,\n header,\n cell,\n meta: {\n align: 'center',\n className: onRowDrag ? '!pl-0 !pr-3' : '!px-3',\n headerClassName: onRowDrag ? '!pl-0 !pr-3' : '!px-3',\n },\n // sizing\n enableResizing: false,\n size: 46,\n };\n}\n\nconst ExpandCell = React.memo(({ expandedRowRenderer, isExpanded, row, texts }: any) => {\n const hasExpandedRow = expandedRowRenderer(row.original);\n\n if (!hasExpandedRow) {\n return null;\n }\n\n return (\n <Tooltip\n title={\n <>\n {isExpanded ? texts.table2.columns.expansion.collapse : texts.table2.columns.expansion.expand}\n <Shortcut className=\"ml-2\" keys={{ key: isExpanded ? 'ArrowLeft' : 'ArrowRight', meta: true }} />\n </>\n }>\n <IconButton\n title={isExpanded ? texts.table2.columns.expansion.collapse : texts.table2.columns.expansion.expand}\n appearance=\"discrete\"\n icon={isExpanded ? 'chevron-down' : 'chevron-right'}\n onClick={event => {\n event.stopPropagation();\n row.toggleExpanded();\n }}\n tabIndex={-1}\n />\n </Tooltip>\n );\n});\n\nexport function createRowExpansionColumn<TType = any>(\n expandedRowRenderer: RowExpansionRenderer<TType>,\n texts: LocalizationTexts\n): DisplayColumnDef<TType, any> {\n return {\n id: COLUMN_ID_FOR_EXPANSION,\n header: ({ table }) => (\n <Tooltip\n title={\n table.getIsSomeRowsExpanded()\n ? texts.table2.columns.expansion.collapseAll\n : texts.table2.columns.expansion.expandAll\n }>\n <IconButton\n title={\n table.getIsSomeRowsExpanded()\n ? texts.table2.columns.expansion.collapseAll\n : texts.table2.columns.expansion.expandAll\n }\n appearance=\"discrete\"\n className=\"-mb-2 -mt-1.5\"\n icon={table.getIsSomeRowsExpanded() ? 'chevron-down-double' : 'chevron-right-double'}\n onClick={event => {\n event.stopPropagation();\n table.toggleAllRowsExpanded(table.getIsSomeRowsExpanded() ? false : true);\n }}\n tabIndex={-1}\n />\n </Tooltip>\n ),\n cell: ({ row }: CellContext<TType, any>) => (\n // ExpandCell is memoised and that's why calling row.getIsExpanded() inside it doesn't return the correct\n // expand state. This is the reason why isExpanded is pulled out of the ExpandCell component.\n <ExpandCell expandedRowRenderer={expandedRowRenderer} isExpanded={row.getIsExpanded()} row={row} texts={texts} />\n ),\n\n meta: {\n align: 'center',\n className: 'items-center !p-0',\n headerClassName: 'items-center hover:!bg-white !p-0',\n },\n // sizing\n enableResizing: false,\n size: 36,\n };\n}\n\nconst RowActionsCell = React.memo(({ row, actions, actionsLength, isEditing, shouldPauseHoverState, table, texts }: any) => {\n const { isActive, isHovered } = useRowContext();\n\n if ((!isActive && (!isHovered || shouldPauseHoverState)) || isEditing) {\n return null;\n }\n\n const visibleActions = actions.map(action => action(row.original)).filter(action => !!action);\n\n const actionsOnRow = visibleActions.length === actionsLength ? visibleActions : visibleActions.slice(0, actionsLength - 1);\n const actionsInMenu = visibleActions.slice(visibleActions.length === actionsLength ? actionsLength : actionsLength - 1);\n\n // If the row is not the active row or the hovered row then actions are hidden.\n const actionClassName = 'group-hover/row:flex group-[[aria-current]]/row:flex hidden';\n\n // only actions in the active row should be tabbable\n const tabIndex = table.options.meta.activeRowIndex === row.index ? 0 : -1;\n\n return (\n <span className=\"-mb-2 -mt-2 flex justify-end text-right\">\n {actionsOnRow.map((button, index) =>\n React.cloneElement(button, {\n appearance: 'discrete',\n className: cn(actionClassName, button.props.className),\n key: index,\n tabIndex,\n tooltip: button.props.shortcut ? (\n <>\n {button.props.tooltip ?? button.props['aria-label']}\n <Shortcut className=\"ml-2\" keys={button.props.shortcut} />\n </>\n ) : (\n button.props.tooltip ?? button.props['aria-label']\n ),\n })\n )}\n {actionsInMenu.length ? (\n <IconButton\n appearance=\"discrete\"\n aria-label={texts.table2.columns.actions.tooltip}\n icon=\"more\"\n tabIndex={tabIndex}\n menu={menuProps => (\n <Menu {...menuProps}>\n <Menu.Content>\n {actionsInMenu.map((action, i) => (\n <Menu.Item key={i} {...action.props} shortcut={action.props.shortcut}>\n {action.props['aria-label']}\n </Menu.Item>\n ))}\n </Menu.Content>\n </Menu>\n )}\n tooltip={texts.table2.columns.actions.tooltip}\n />\n ) : null}\n </span>\n );\n});\n\nexport function createRowActionsColumn<TType = any>(\n rowActions,\n rowActionsLength,\n texts: LocalizationTexts\n): DisplayColumnDef<TType, any> {\n return {\n id: COLUMN_ID_FOR_ACTIONS,\n cell: ({ row, table }) => (\n <RowActionsCell\n row={row}\n actions={rowActions}\n actionsLength={rowActionsLength}\n texts={texts}\n table={table}\n isEditing={!!table.options.meta?.editMode.isEditing}\n shouldPauseHoverState={!!table.options.meta?.shouldPauseHoverState}\n />\n ),\n meta: {\n align: 'right',\n className: (row: Row<any>, table: any) =>\n // Adding z-index so that it shows on top of frozen columns\n cn('items-center print:opacity-0 group-[[aria-current]]/row:sticky group-hover/row:sticky right-0 !px-1 z-[1]', {\n 'group-[[aria-current]]/row:!shadow-[-6px_0px_6px_theme(colors.grey.200)]': !row.getIsSelected(),\n 'group-hover/row:!shadow-[-6px_0px_6px_theme(colors.grey.100)]':\n !row.getIsSelected() &&\n (!table.options.meta?.shouldPauseHoverState || table.options.meta.editMode.isEditing),\n 'shadow-[-6px_0px_6px_theme(colors.blue.100)]': row.getIsSelected(),\n }),\n headerClassName: 'hover:!bg-white !px-1',\n },\n // sizing\n enableResizing: false,\n };\n}\n\nexport function ensureOrdering<TType = unknown>(columns: ColumnDef<TType>[], settingsOrder: string[] | undefined): string[] {\n // internal column come with a defined order\n const internalColumns = columns\n .filter(column => column.id?.startsWith('__') && column.id !== COLUMN_ID_FOR_ACTIONS)\n .map(column => column.id) as string[];\n\n // columns with ordering disabled should be moved to the front\n const orderingDisabled: string[] = [];\n const orderingEnabled: string[] = [];\n\n let orderedColumns = columns;\n\n // if settings is defined, make sure the columns that are actual children are sorted by it\n if (Array.isArray(settingsOrder)) {\n orderedColumns = columns.slice().sort(\n // the magic >>> 0 here ensures that columns that aren't found in settings, but are children, are pushed to the end\n (a, b) => (settingsOrder.indexOf(a.id as string) >>> 0) - (settingsOrder.indexOf(b.id as string) >>> 0)\n );\n }\n\n orderedColumns.forEach(column => {\n if (column.id?.startsWith('__')) {\n return;\n }\n\n if (column.meta?.disableReordering) {\n orderingDisabled.push(column.id as string);\n } else {\n orderingEnabled.push(column.id as string);\n }\n });\n\n const order = [...internalColumns, ...orderingDisabled, ...orderingEnabled];\n\n // actions should always be last, enforce that\n if (columns.findIndex(column => column.id === COLUMN_ID_FOR_ACTIONS) > -1) {\n order.push(COLUMN_ID_FOR_ACTIONS);\n }\n\n return order;\n}\n"],"names":["COLUMN_ID_FOR_DRAGGABLE","COLUMN_ID_FOR_SELECTION","COLUMN_ID_FOR_EXPANSION","COLUMN_ID_FOR_ACTIONS","isInternalFrozenColumn","id","isInternalColumn","MIN_COLUMN_SIZE","toggleBetween","fromRowIndex","toRowIndex","fromIndex","toIndex","createRowDraggableColumn","onRowDrag","texts","cell","row","table","meta","options","GHOST_ELEMENT_ID","onDragStart","event","rows","getIsSelected","getSelectedRowModel","setDragging","reduce","dragging","rowBeingDragged","data","map","original","dataTransfer","setData","JSON","stringify","showPlaceholder","text","ghost","document","createElement","className","innerText","body","appendChild","setDragImage","setDataTransfer","onDragEnd","getElementById","remove","React","draggable","Icon","table2","columns","drag","tooltip","name","align","headerClassName","enableResizing","size","SelectCell","memo","lastSelectedRowIndex","rowIndex","isSelected","tableRef","toggleSelected","handleClick","stopPropagation","shiftKey","current","getRowModel","slice","forEach","setActiveRowIndex","focus","Tooltip","title","select","deselect","Shortcut","keys","Checkbox","checked","onClick","onChange","tabIndex","createRowSelectionColumn","enableMultipleRowSelection","header","getIsAllPageRowsSelected","deselectAll","selectAll","key","indeterminate","getIsSomePageRowsSelected","toggleAllPageRowsSelected","index","role","type","ExpandCell","expandedRowRenderer","isExpanded","hasExpandedRow","expansion","collapse","expand","IconButton","appearance","icon","toggleExpanded","createRowExpansionColumn","getIsSomeRowsExpanded","collapseAll","expandAll","toggleAllRowsExpanded","getIsExpanded","RowActionsCell","actions","actionsLength","isEditing","shouldPauseHoverState","isActive","isHovered","useRowContext","visibleActions","action","filter","actionsOnRow","length","actionsInMenu","actionClassName","activeRowIndex","button","cloneElement","cn","props","shortcut","menu","menuProps","Menu","Content","i","Item","createRowActionsColumn","rowActions","rowActionsLength","editMode","ensureOrdering","settingsOrder","internalColumns","column","startsWith","orderingDisabled","orderingEnabled","orderedColumns","Array","isArray","sort","a","b","indexOf","disableReordering","push","order","findIndex"],"mappings":"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"}
@@ -1460,6 +1460,36 @@ function IconExport(props, svgRef) {
1460
1460
  }
1461
1461
  var Export = /*#__PURE__*/React.forwardRef(IconExport);
1462
1462
 
1463
+ function IconEyeOff(props, svgRef) {
1464
+ return /*#__PURE__*/React.createElement("svg", Object.assign({
1465
+ fill: "none",
1466
+ xmlns: "http://www.w3.org/2000/svg",
1467
+ viewBox: "0 0 24 24",
1468
+ ref: svgRef
1469
+ }, props), /*#__PURE__*/React.createElement("path", {
1470
+ fillRule: "evenodd",
1471
+ clipRule: "evenodd",
1472
+ d: "M3.53 2.47a.75.75 0 00-1.06 1.06l3.605 3.605a10.258 10.258 0 00-4.097 6.208.75.75 0 101.466.314 8.757 8.757 0 013.71-5.443l1.987 1.988a4 4 0 005.656 5.656l5.673 5.672a.75.75 0 101.06-1.06l-18-18zm10.207 12.328l-3.535-3.535a2.5 2.5 0 003.535 3.535zM12.061 9L16 12.94A4 4 0 0012.06 9zM8.815 5.754l1.218 1.218a8.753 8.753 0 0110.523 6.685.75.75 0 101.467-.314C21.032 8.718 16.922 5.25 12 5.25c-1.112 0-2.182.177-3.185.504z",
1473
+ fill: "currentColor"
1474
+ }));
1475
+ }
1476
+ var EyeOff = /*#__PURE__*/React.forwardRef(IconEyeOff);
1477
+
1478
+ function IconEyeOn(props, svgRef) {
1479
+ return /*#__PURE__*/React.createElement("svg", Object.assign({
1480
+ fill: "none",
1481
+ xmlns: "http://www.w3.org/2000/svg",
1482
+ viewBox: "0 0 24 24",
1483
+ ref: svgRef
1484
+ }, props), /*#__PURE__*/React.createElement("path", {
1485
+ fillRule: "evenodd",
1486
+ clipRule: "evenodd",
1487
+ d: "M3.444 13.657a8.753 8.753 0 0117.112 0 .75.75 0 101.466-.314C21.033 8.718 16.922 5.25 12 5.25c-4.922 0-9.031 3.468-10.022 8.093a.75.75 0 101.466.314zM14.5 13a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0zm1.5 0a4 4 0 11-8 0 4 4 0 018 0z",
1488
+ fill: "currentColor"
1489
+ }));
1490
+ }
1491
+ var EyeOn = /*#__PURE__*/React.forwardRef(IconEyeOn);
1492
+
1463
1493
  function IconFilterSolid(props, svgRef) {
1464
1494
  return /*#__PURE__*/React.createElement("svg", Object.assign({
1465
1495
  xmlns: "http://www.w3.org/2000/svg",
@@ -3139,6 +3169,8 @@ const icons = {
3139
3169
  'export-to-excel': ExportToExcel,
3140
3170
  'export-to-pdf': ExportToPdf,
3141
3171
  export: Export,
3172
+ 'eye-off': EyeOff,
3173
+ 'eye-on': EyeOn,
3142
3174
  'filter-solid': FilterSolid,
3143
3175
  filter: Filter,
3144
3176
  'graph-solid': GraphSolid,
@@ -3960,6 +3992,7 @@ const defaultLocalisationTexts = {
3960
3992
  selectAll: 'Select all rows'
3961
3993
  },
3962
3994
  menu: {
3995
+ hideColumn: 'Hide column',
3963
3996
  freezeColumns: (count = 1) => count === 1 ? 'Freeze the first column' : `Freeze first ${count} columns`,
3964
3997
  unfreezeColumns: 'Unfreeze all columns'
3965
3998
  }
@@ -4006,7 +4039,11 @@ const defaultLocalisationTexts = {
4006
4039
  total: 'Viewing [CURRENT] of [TOTAL]'
4007
4040
  },
4008
4041
  rowDensity: {
4009
- tooltip: 'Row density'
4042
+ tooltip: 'Row density',
4043
+ compact: 'compact',
4044
+ normal: 'normal',
4045
+ comfortable: 'comfortable',
4046
+ spacious: 'spacious'
4010
4047
  },
4011
4048
  search: {
4012
4049
  placeholder: 'Search...'
@@ -9104,7 +9141,8 @@ const Option$1 = /*#__PURE__*/React__default.forwardRef(function Select2Option(p
9104
9141
  }
9105
9142
  }
9106
9143
  };
9107
- const popover = onEdit || onDelete ? popoverProps => {
9144
+ const isEmptyOption = children !== '';
9145
+ const popover = isEmptyOption && (onEdit || onDelete) ? popoverProps => {
9108
9146
  var _props$textValue, _props$textValue2;
9109
9147
  return /*#__PURE__*/React__default.createElement(EditPopover, Object.assign({}, popoverProps, {
9110
9148
  color: props.color,
@@ -9256,6 +9294,7 @@ const Button$2 = /*#__PURE__*/React__default.forwardRef(function Select2TriggerB
9256
9294
  const Single = /*#__PURE__*/React__default.forwardRef(function Select2TriggerSingle(props, ref) {
9257
9295
  const {
9258
9296
  children,
9297
+ emptyValue,
9259
9298
  value,
9260
9299
  ...buttonProps
9261
9300
  } = props;
@@ -9268,7 +9307,7 @@ const Single = /*#__PURE__*/React__default.forwardRef(function Select2TriggerSin
9268
9307
  const currentValue = children.find(matchesValue(value));
9269
9308
  let output;
9270
9309
  if (currentValue) {
9271
- if (tags) {
9310
+ if (tags && emptyValue !== undefined && emptyValue !== value) {
9272
9311
  output = /*#__PURE__*/React__default.createElement(Tag$1, {
9273
9312
  className: "truncate",
9274
9313
  color: currentValue.props.color,
@@ -9292,6 +9331,7 @@ const Multiple = /*#__PURE__*/React__default.forwardRef(function Select2TriggerM
9292
9331
  var _buttonRef$current;
9293
9332
  const {
9294
9333
  children,
9334
+ emptyValue: _,
9295
9335
  values = [],
9296
9336
  ...buttonProps
9297
9337
  } = props;
@@ -9607,7 +9647,7 @@ const getNextColor = options => {
9607
9647
  }, {});
9608
9648
  const colors = Object.keys(occurences);
9609
9649
  if (colors.length) {
9610
- return colors.sort((a, b) => occurences[b] - occurences[a])[0];
9650
+ return colors.sort((a, b) => occurences[a] - occurences[b])[0];
9611
9651
  }
9612
9652
  return undefined;
9613
9653
  };
@@ -9842,6 +9882,7 @@ const Select2 = /*#__PURE__*/React__default.forwardRef(function Select2(props, r
9842
9882
  "data-taco": "Select2"
9843
9883
  }, /*#__PURE__*/React__default.createElement(Trigger$7, Object.assign({}, otherProps, {
9844
9884
  "aria-haspopup": "listbox",
9885
+ emptyValue: emptyValue,
9845
9886
  onBlur: handleBlur,
9846
9887
  onKeyDown: handleKeyDown,
9847
9888
  ref: internalRef
@@ -11584,7 +11625,7 @@ const SelectCell = /*#__PURE__*/React__default.memo(({
11584
11625
  (_tableRef$current = tableRef.current) === null || _tableRef$current === void 0 ? void 0 : _tableRef$current.focus();
11585
11626
  };
11586
11627
  return /*#__PURE__*/React__default.createElement(Tooltip, {
11587
- title: /*#__PURE__*/React__default.createElement(React__default.Fragment, null, isSelected ? texts.table2.columns.select.select : texts.table2.columns.select.deselect, /*#__PURE__*/React__default.createElement(Shortcut, {
11628
+ title: /*#__PURE__*/React__default.createElement(React__default.Fragment, null, isSelected ? texts.table2.columns.select.deselect : texts.table2.columns.select.select, /*#__PURE__*/React__default.createElement(Shortcut, {
11588
11629
  className: "ml-2",
11589
11630
  keys: "Space"
11590
11631
  }))
@@ -12866,7 +12907,7 @@ const EditingCell = /*#__PURE__*/React__default.memo( /*#__PURE__*/React__defaul
12866
12907
  }));
12867
12908
 
12868
12909
  const Header$1 = function Header(props) {
12869
- var _header$column$column, _header$column$column2, _asc$desc$header$colu, _header$column$column4, _header$column$column5, _header$column$column6, _header$column$column7, _asc$desc$header$colu2, _header$column$column8, _header$column$column9;
12910
+ var _header$column$column, _header$column$column2, _asc$desc$header$colu, _header$column$column4, _header$column$column5, _header$column$column6, _header$column$column7, _asc$desc$header$colu2, _header$column$column8;
12870
12911
  const {
12871
12912
  header,
12872
12913
  index,
@@ -12972,8 +13013,7 @@ const Header$1 = function Header(props) {
12972
13013
  className: "pointer-events-none -my-0.5"
12973
13014
  })
12974
13015
  }[header.column.getIsSorted()]) !== null && _asc$desc$header$colu2 !== void 0 ? _asc$desc$header$colu2 : null), !isInternalColumn(header.column.id) && ((_header$column$column8 = header.column.columnDef.meta) !== null && _header$column$column8 !== void 0 && _header$column$column8.menu || enableColumnFreezing) ? /*#__PURE__*/React__default.createElement(HeaderMenu, {
12975
- menu: (_header$column$column9 = header.column.columnDef.meta) === null || _header$column$column9 === void 0 ? void 0 : _header$column$column9.menu,
12976
- enableColumnFreezing: enableColumnFreezing,
13016
+ header: header,
12977
13017
  table: table,
12978
13018
  columnIndex: index
12979
13019
  }) : null), header.column.getCanResize() ? /*#__PURE__*/React__default.createElement(Tooltip, {
@@ -12998,46 +13038,62 @@ const Header$1 = function Header(props) {
12998
13038
  }))) : null);
12999
13039
  };
13000
13040
  const HeaderMenu = ({
13001
- menu,
13002
- enableColumnFreezing,
13041
+ header,
13003
13042
  table,
13004
13043
  columnIndex
13005
13044
  }) => {
13045
+ var _header$column$column9;
13006
13046
  const [open, setOpen] = React__default.useState(false);
13007
13047
  const {
13008
13048
  texts
13009
13049
  } = useLocalization();
13050
+ const menu = (_header$column$column9 = header.column.columnDef.meta) === null || _header$column$column9 === void 0 ? void 0 : _header$column$column9.menu;
13051
+ const meta = table.options.meta;
13010
13052
  const {
13011
13053
  frozenColumnsCount,
13012
13054
  setFrozenColumnsCount
13013
- } = table.options.meta;
13014
- const columns = table.getAllLeafColumns();
13055
+ } = meta;
13056
+ const columns = table.getVisibleLeafColumns();
13015
13057
  const {
13016
13058
  columnVisibility,
13017
13059
  columnOrder
13018
13060
  } = table.getState();
13019
13061
  const visibleInternalColumnsCount = React__default.useMemo(() => columns.filter(column => isInternalFrozenColumn(column.id)).length, [columns]);
13020
- const columnPosition = columnIndex + 1;
13021
- const externalFrozenColumnsCount = columnPosition - visibleInternalColumnsCount;
13022
- const isSomeExternalColumnFrozen = frozenColumnsCount !== 0;
13023
- const freeAllColumns = () => {
13024
- setFrozenColumnsCount(0);
13025
- };
13026
- const freezeColumns = () => {
13027
- setFrozenColumnsCount(externalFrozenColumnsCount);
13028
- };
13029
13062
  const className = cn('-my-0.5 -mr-1 -ml-0.5 hidden !h-6 !min-h-[theme(spacing.6)] !w-6 !min-w-[theme(spacing.6)] flex-shrink-0 justify-end group-hover/header:flex', {
13030
13063
  '!flex': open
13031
13064
  });
13032
- const freezeMenuItems = [/*#__PURE__*/React__default.createElement(Menu$1.Item, {
13033
- icon: "column-freeze",
13034
- onClick: freezeColumns,
13035
- key: "_freeze-columns_"
13036
- }, texts.table2.columns.menu.freezeColumns(externalFrozenColumnsCount)), ...(isSomeExternalColumnFrozen ? [/*#__PURE__*/React__default.createElement(Menu$1.Item, {
13037
- icon: "column-unfreeze",
13038
- onClick: freeAllColumns,
13039
- key: "_unfreeze-columns_"
13040
- }, texts.table2.columns.menu.unfreezeColumns)] : [])];
13065
+ const menuItems = [];
13066
+ if (table.options.enableHiding) {
13067
+ // we do this in the next tick, otherwise the menu closes and react throws a "state update on unmounted component" error
13068
+ const handleClick = () => setTimeout(() => header.column.toggleVisibility(), 1);
13069
+ menuItems.push( /*#__PURE__*/React__default.createElement(Menu$1.Item, {
13070
+ icon: "eye-off",
13071
+ onClick: handleClick
13072
+ }, texts.table2.columns.menu.hideColumn));
13073
+ }
13074
+ if (meta.enableColumnFreezing) {
13075
+ const columnPosition = columnIndex + 1;
13076
+ const externalFrozenColumnsCount = columnPosition - visibleInternalColumnsCount;
13077
+ const isSomeExternalColumnFrozen = frozenColumnsCount !== 0;
13078
+ const freeAllColumns = () => {
13079
+ setFrozenColumnsCount(0);
13080
+ };
13081
+ const freezeColumns = () => {
13082
+ setFrozenColumnsCount(externalFrozenColumnsCount);
13083
+ };
13084
+ menuItems.push( /*#__PURE__*/React__default.createElement(Menu$1.Item, {
13085
+ icon: "column-freeze",
13086
+ onClick: freezeColumns,
13087
+ key: "_freeze-columns_"
13088
+ }, texts.table2.columns.menu.freezeColumns(externalFrozenColumnsCount)));
13089
+ if (isSomeExternalColumnFrozen) {
13090
+ menuItems.push( /*#__PURE__*/React__default.createElement(Menu$1.Item, {
13091
+ icon: "column-unfreeze",
13092
+ onClick: freeAllColumns,
13093
+ key: "_unfreeze-columns_"
13094
+ }, texts.table2.columns.menu.unfreezeColumns));
13095
+ }
13096
+ }
13041
13097
  React__default.useEffect(() => {
13042
13098
  // Update column pinning/freezing whenever frozen columns count changes, or column order or visiblity changes
13043
13099
  const totalFrozenColumnsCount = visibleInternalColumnsCount + frozenColumnsCount;
@@ -13054,23 +13110,21 @@ const HeaderMenu = ({
13054
13110
  open: open,
13055
13111
  onChange: setOpen
13056
13112
  };
13057
- let menuComponent = null;
13058
13113
  if (menu) {
13059
- menuComponent = menu(menuProps);
13060
- if (enableColumnFreezing) {
13061
- const menuContent = React__default.Children.only(menuComponent.props.children);
13062
- const menuContentChildren = React__default.Children.toArray(menuContent.props.children);
13063
- const menuItemsWithFreezingItems = [...menuContentChildren, /*#__PURE__*/React__default.createElement(Menu$1.Separator, null), ...freezeMenuItems];
13064
- const menuContentWithFreezingItems = /*#__PURE__*/React__default.createElement(Menu$1.Content, null, menuItemsWithFreezingItems.map((item, key) => /*#__PURE__*/React__default.cloneElement(item, {
13065
- key
13066
- })));
13067
- menuComponent = /*#__PURE__*/React__default.cloneElement(menuComponent, {
13068
- children: menuContentWithFreezingItems
13069
- });
13114
+ const customMenu = menu({
13115
+ trigger: undefined
13116
+ });
13117
+ const customItems = React__default.Children.toArray(customMenu.props.children.props.children);
13118
+ if (customItems.length) {
13119
+ if (menuItems.length) {
13120
+ menuItems.push( /*#__PURE__*/React__default.createElement(Menu$1.Separator, null));
13121
+ }
13122
+ menuItems.push(...customItems);
13070
13123
  }
13071
- } else if (enableColumnFreezing) {
13072
- menuComponent = /*#__PURE__*/React__default.createElement(Menu$1, Object.assign({}, menuProps), /*#__PURE__*/React__default.createElement(Menu$1.Content, null, freezeMenuItems));
13073
13124
  }
13125
+ const menuComponent = /*#__PURE__*/React__default.createElement(Menu$1, Object.assign({}, menuProps), /*#__PURE__*/React__default.createElement(Menu$1.Content, null, menuItems.map((item, key) => /*#__PURE__*/React__default.cloneElement(item, {
13126
+ key
13127
+ }))));
13074
13128
  // This div catches the mousedown events from menu item and menu trigger and prevents
13075
13129
  // mousedown event from bubbling up to the Header component to prevent toggling sorting
13076
13130
  return menuComponent ? /*#__PURE__*/React__default.createElement("div", {
@@ -13612,13 +13666,13 @@ const RowDensityButton = ({
13612
13666
  value: meta.rowDensity
13613
13667
  }, /*#__PURE__*/React__default.createElement(Menu$1.RadioGroup.Item, {
13614
13668
  value: "compact"
13615
- }, "Compact"), /*#__PURE__*/React__default.createElement(Menu$1.RadioGroup.Item, {
13669
+ }, texts.table2.rowDensity.compact), /*#__PURE__*/React__default.createElement(Menu$1.RadioGroup.Item, {
13616
13670
  value: "normal"
13617
- }, "Normal"), /*#__PURE__*/React__default.createElement(Menu$1.RadioGroup.Item, {
13671
+ }, texts.table2.rowDensity.normal), /*#__PURE__*/React__default.createElement(Menu$1.RadioGroup.Item, {
13618
13672
  value: "comfortable"
13619
- }, "Comfortable"), /*#__PURE__*/React__default.createElement(Menu$1.RadioGroup.Item, {
13673
+ }, texts.table2.rowDensity.comfortable), /*#__PURE__*/React__default.createElement(Menu$1.RadioGroup.Item, {
13620
13674
  value: "spacious"
13621
- }, "Spacious")))),
13675
+ }, texts.table2.rowDensity.spacious)))),
13622
13676
  tooltip: texts.table2.rowDensity.tooltip
13623
13677
  });
13624
13678
  };