@economic/taco 2.4.2 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/dist/components/Icon/components/PaymentPaid.d.ts +1 -1
  2. package/dist/components/Icon/components/PaymentUnpaid.d.ts +1 -1
  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/Select2/components/Option.d.ts +1 -1
  9. package/dist/components/Select2/components/Search.d.ts +1 -1
  10. package/dist/components/Table3/hooks/features/useSettings.d.ts +1 -0
  11. package/dist/components/Table3/hooks/useTable.d.ts +1 -0
  12. package/dist/components/Table3/types.d.ts +1 -0
  13. package/dist/components/Tag/Tag.d.ts +1 -1
  14. package/dist/esm/index.css +5 -0
  15. package/dist/esm/packages/taco/src/components/Icon/components/PaymentPaid.js +19 -0
  16. package/dist/esm/packages/taco/src/components/Icon/components/PaymentPaid.js.map +1 -0
  17. package/dist/esm/packages/taco/src/components/Icon/components/PaymentUnpaid.js +19 -0
  18. package/dist/esm/packages/taco/src/components/Icon/components/PaymentUnpaid.js.map +1 -0
  19. package/dist/esm/packages/taco/src/components/Icon/components/index.js +4 -0
  20. package/dist/esm/packages/taco/src/components/Icon/components/index.js.map +1 -1
  21. package/dist/esm/packages/taco/src/components/Table2/components/column/Cell.js +1 -1
  22. package/dist/esm/packages/taco/src/components/Table2/components/column/Cell.js.map +1 -1
  23. package/dist/esm/packages/taco/src/components/Table2/components/row/Row.js +2 -1
  24. package/dist/esm/packages/taco/src/components/Table2/components/row/Row.js.map +1 -1
  25. package/dist/esm/packages/taco/src/components/Table3/Table3.js +3 -1
  26. package/dist/esm/packages/taco/src/components/Table3/Table3.js.map +1 -1
  27. package/dist/esm/packages/taco/src/components/Table3/components/rows/Row.js +2 -1
  28. package/dist/esm/packages/taco/src/components/Table3/components/rows/Row.js.map +1 -1
  29. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintButton.js +7 -1
  30. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintButton.js.map +1 -1
  31. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useSettings.js +6 -3
  32. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useSettings.js.map +1 -1
  33. package/dist/esm/packages/taco/src/components/Table3/hooks/useCssGrid.js +5 -1
  34. package/dist/esm/packages/taco/src/components/Table3/hooks/useCssGrid.js.map +1 -1
  35. package/dist/esm/packages/taco/src/components/Table3/hooks/useTable.js +1 -0
  36. package/dist/esm/packages/taco/src/components/Table3/hooks/useTable.js.map +1 -1
  37. package/dist/esm/packages/taco/src/components/Table3/hooks/useTablePreset.js +5 -1
  38. package/dist/esm/packages/taco/src/components/Table3/hooks/useTablePreset.js.map +1 -1
  39. package/dist/esm/packages/taco/src/components/Table3/types.js.map +1 -1
  40. package/dist/esm/packages/taco/src/utils/hooks/useDropTarget.js +1 -1
  41. package/dist/esm/packages/taco/src/utils/hooks/useDropTarget.js.map +1 -1
  42. package/dist/index.css +5 -0
  43. package/dist/taco.cjs.development.js +63 -10
  44. package/dist/taco.cjs.development.js.map +1 -1
  45. package/dist/taco.cjs.production.min.js +1 -1
  46. package/dist/taco.cjs.production.min.js.map +1 -1
  47. package/package.json +2 -2
  48. package/types.json +21425 -17457
@@ -1 +1 @@
1
- {"version":3,"file":"useTablePreset.js","sources":["../../../../../../../../src/components/Table3/hooks/useTablePreset.ts"],"sourcesContent":["import React from 'react';\nimport { Table3Options, Table3Preset, Table3Props } from '../types';\n\nconst DEFAULT_ALL_DISABLED: Table3Options = {\n enableColumnFreezing: false,\n enableColumnHiding: false,\n enableColumnOrdering: false,\n enableColumnResizing: false,\n enableFontSize: false,\n enablePrinting: false,\n enableRowDrag: false,\n enableRowDrop: false,\n enableRowExpansion: false,\n enableRowGoto: false,\n enableRowHeight: false,\n enableRowSelection: false,\n enableRowSelectionSingle: false,\n enableEditing: false,\n enableFiltering: false,\n enableSearch: false,\n enableSorting: false,\n};\n\nconst presets: Record<Table3Preset, Table3Options> = {\n display: {\n enableColumnFreezing: true,\n enableColumnHiding: true,\n enableColumnOrdering: true,\n enableColumnResizing: true,\n enableFontSize: true,\n enablePrinting: false,\n enableRowDrag: true,\n enableRowDrop: true,\n enableRowExpansion: true,\n enableRowGoto: true,\n enableRowHeight: true,\n enableRowSelection: true,\n enableRowSelectionSingle: false,\n enableEditing: false,\n enableFiltering: true,\n enableSearch: true,\n enableSorting: true,\n },\n editable: {\n enableColumnFreezing: true,\n enableColumnHiding: true,\n enableColumnOrdering: true,\n enableColumnResizing: true,\n enableFontSize: true,\n enablePrinting: false,\n enableRowDrag: true,\n enableRowDrop: true,\n enableRowExpansion: true,\n enableRowGoto: true,\n enableRowHeight: true,\n enableRowSelection: true,\n enableRowSelectionSingle: false,\n enableEditing: true,\n enableFiltering: true,\n enableSearch: true,\n enableSorting: true,\n },\n};\n\nexport function useTablePreset<TType = unknown>(props: Table3Props<TType>): Table3Options {\n const presetOptions = props.preset ? presets[props.preset] : DEFAULT_ALL_DISABLED;\n\n const enableRowExpansion = props.enableRowExpansion ?? presetOptions.enableRowExpansion;\n const enableRowSelection = props.enableRowSelection ?? presetOptions.enableRowSelection;\n\n // guard options that might be unintentionally broken\n React.useEffect(() => {\n if (enableRowExpansion && !props.expandedRowRenderer) {\n console.warn(\n `Table3 (id: ${props.id}) - Row expansion is enabled but no \\`expandedRowRenderer\\` has been provided. Provide one to enable row expansion or set \\`enableRowExpansion\\` to \\`false\\`.`\n );\n }\n\n if (enableRowSelection && !props.onRowSelect) {\n console.warn(\n `Table3 (id: ${props.id}) - Row selection is enabled but no \\`onRowSelect\\` handler has been provided. Provide one to enable row selection or set \\`enableRowSelection\\` to \\`false\\`.`\n );\n }\n }, []);\n\n return {\n enableColumnFreezing: props.enableColumnFreezing ?? presetOptions.enableColumnFreezing,\n enableColumnHiding: props.enableColumnHiding ?? presetOptions.enableColumnHiding,\n enableColumnOrdering: props.enableColumnOrdering ?? presetOptions.enableColumnOrdering,\n enableColumnResizing: props.enableColumnResizing ?? presetOptions.enableColumnResizing,\n enableFontSize: props.enableFontSize ?? presetOptions.enableFontSize,\n enablePrinting: props.enablePrinting ?? presetOptions.enablePrinting,\n enableRowDrag: (props.enableRowDrag ?? presetOptions.enableRowDrag) && !!props.onRowDrag,\n enableRowDrop: (props.enableRowDrop ?? presetOptions.enableRowDrop) && !!props.onRowDrop,\n enableRowExpansion: enableRowExpansion && !!props.expandedRowRenderer,\n enableRowGoto: (props.enableRowGoto ?? presetOptions.enableRowGoto) && !!props.onRowGoto,\n enableRowHeight: props.enableRowHeight ?? presetOptions.enableRowHeight,\n enableRowSelection: enableRowSelection && !!props.onRowSelect,\n enableRowSelectionSingle:\n (props.enableRowSelectionSingle ?? presetOptions.enableRowSelectionSingle) &&\n enableRowSelection &&\n !!props.onRowSelect,\n enableEditing: props.enableEditing ?? presetOptions.enableEditing,\n enableFiltering: props.enableFiltering ?? presetOptions.enableFiltering,\n enableSearch: props.enableSearch ?? presetOptions.enableSearch,\n enableSorting: props.enableSorting ?? presetOptions.enableSorting,\n };\n}\n"],"names":["DEFAULT_ALL_DISABLED","enableColumnFreezing","enableColumnHiding","enableColumnOrdering","enableColumnResizing","enableFontSize","enablePrinting","enableRowDrag","enableRowDrop","enableRowExpansion","enableRowGoto","enableRowHeight","enableRowSelection","enableRowSelectionSingle","enableEditing","enableFiltering","enableSearch","enableSorting","presets","display","editable","useTablePreset","props","presetOptions","preset","_props$enableRowExpan","_props$enableRowSelec","React","useEffect","expandedRowRenderer","console","warn","id","onRowSelect","_props$enableColumnFr","_props$enableColumnHi","_props$enableColumnOr","_props$enableColumnRe","_props$enableFontSize","_props$enablePrinting","_props$enableRowDrag","onRowDrag","_props$enableRowDrop","onRowDrop","_props$enableRowGoto","onRowGoto","_props$enableRowHeigh","_props$enableRowSelec2","_props$enableEditing","_props$enableFilterin","_props$enableSearch","_props$enableSorting"],"mappings":"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"}
1
+ {"version":3,"file":"useTablePreset.js","sources":["../../../../../../../../src/components/Table3/hooks/useTablePreset.ts"],"sourcesContent":["import React from 'react';\nimport { Table3Options, Table3Preset, Table3Props } from '../types';\n\nconst DEFAULT_ALL_DISABLED: Table3Options = {\n enableColumnFreezing: false,\n enableColumnHiding: false,\n enableColumnOrdering: false,\n enableColumnResizing: false,\n enableFontSize: false,\n enableFooter: false,\n enablePrinting: false,\n enableRowDrag: false,\n enableRowDrop: false,\n enableRowExpansion: false,\n enableRowGoto: false,\n enableRowHeight: false,\n enableRowSelection: false,\n enableRowSelectionSingle: false,\n enableEditing: false,\n enableFiltering: false,\n enableSearch: false,\n enableSorting: false,\n};\n\nconst presets: Record<Table3Preset, Table3Options> = {\n display: {\n enableColumnFreezing: true,\n enableColumnHiding: true,\n enableColumnOrdering: true,\n enableColumnResizing: true,\n enableFontSize: true,\n enableFooter: true,\n enablePrinting: false,\n enableRowDrag: true,\n enableRowDrop: true,\n enableRowExpansion: true,\n enableRowGoto: true,\n enableRowHeight: true,\n enableRowSelection: true,\n enableRowSelectionSingle: false,\n enableEditing: false,\n enableFiltering: true,\n enableSearch: true,\n enableSorting: true,\n },\n editable: {\n enableColumnFreezing: true,\n enableColumnHiding: true,\n enableColumnOrdering: true,\n enableColumnResizing: true,\n enableFontSize: true,\n enableFooter: true,\n enablePrinting: false,\n enableRowDrag: true,\n enableRowDrop: true,\n enableRowExpansion: true,\n enableRowGoto: true,\n enableRowHeight: true,\n enableRowSelection: true,\n enableRowSelectionSingle: false,\n enableEditing: true,\n enableFiltering: true,\n enableSearch: true,\n enableSorting: true,\n },\n};\n\nexport function useTablePreset<TType = unknown>(props: Table3Props<TType>): Table3Options {\n const presetOptions = props.preset ? presets[props.preset] : DEFAULT_ALL_DISABLED;\n\n const enableRowExpansion = props.enableRowExpansion ?? presetOptions.enableRowExpansion;\n const enableRowSelection = props.enableRowSelection ?? presetOptions.enableRowSelection;\n\n // guard options that might be unintentionally broken\n React.useEffect(() => {\n if (enableRowExpansion && !props.expandedRowRenderer) {\n console.warn(\n `Table3 (id: ${props.id}) - Row expansion is enabled but no \\`expandedRowRenderer\\` has been provided. Provide one to enable row expansion or set \\`enableRowExpansion\\` to \\`false\\`.`\n );\n }\n\n if (enableRowSelection && !props.onRowSelect) {\n console.warn(\n `Table3 (id: ${props.id}) - Row selection is enabled but no \\`onRowSelect\\` handler has been provided. Provide one to enable row selection or set \\`enableRowSelection\\` to \\`false\\`.`\n );\n }\n }, []);\n\n return {\n enableColumnFreezing: props.enableColumnFreezing ?? presetOptions.enableColumnFreezing,\n enableColumnHiding: props.enableColumnHiding ?? presetOptions.enableColumnHiding,\n enableColumnOrdering: props.enableColumnOrdering ?? presetOptions.enableColumnOrdering,\n enableColumnResizing: props.enableColumnResizing ?? presetOptions.enableColumnResizing,\n enableFontSize: props.enableFontSize ?? presetOptions.enableFontSize,\n enableFooter: props.enableFooter ?? presetOptions.enableFooter,\n enablePrinting: props.enablePrinting ?? presetOptions.enablePrinting,\n enableRowDrag: (props.enableRowDrag ?? presetOptions.enableRowDrag) && !!props.onRowDrag,\n enableRowDrop: (props.enableRowDrop ?? presetOptions.enableRowDrop) && !!props.onRowDrop,\n enableRowExpansion: enableRowExpansion && !!props.expandedRowRenderer,\n enableRowGoto: (props.enableRowGoto ?? presetOptions.enableRowGoto) && !!props.onRowGoto,\n enableRowHeight: props.enableRowHeight ?? presetOptions.enableRowHeight,\n enableRowSelection: enableRowSelection && !!props.onRowSelect,\n enableRowSelectionSingle:\n (props.enableRowSelectionSingle ?? presetOptions.enableRowSelectionSingle) &&\n enableRowSelection &&\n !!props.onRowSelect,\n enableEditing: props.enableEditing ?? presetOptions.enableEditing,\n enableFiltering: props.enableFiltering ?? presetOptions.enableFiltering,\n enableSearch: props.enableSearch ?? presetOptions.enableSearch,\n enableSorting: props.enableSorting ?? presetOptions.enableSorting,\n };\n}\n"],"names":["DEFAULT_ALL_DISABLED","enableColumnFreezing","enableColumnHiding","enableColumnOrdering","enableColumnResizing","enableFontSize","enableFooter","enablePrinting","enableRowDrag","enableRowDrop","enableRowExpansion","enableRowGoto","enableRowHeight","enableRowSelection","enableRowSelectionSingle","enableEditing","enableFiltering","enableSearch","enableSorting","presets","display","editable","useTablePreset","props","presetOptions","preset","_props$enableRowExpan","_props$enableRowSelec","React","useEffect","expandedRowRenderer","console","warn","id","onRowSelect","_props$enableColumnFr","_props$enableColumnHi","_props$enableColumnOr","_props$enableColumnRe","_props$enableFontSize","_props$enableFooter","_props$enablePrinting","_props$enableRowDrag","onRowDrag","_props$enableRowDrop","onRowDrop","_props$enableRowGoto","onRowGoto","_props$enableRowHeigh","_props$enableRowSelec2","_props$enableEditing","_props$enableFilterin","_props$enableSearch","_props$enableSorting"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../../../../../../src/components/Table3/types.ts"],"sourcesContent":["import {\n ColumnFilter as RTColumnFilter,\n ColumnOrderState,\n ColumnSizingState,\n ColumnSort as RTTableColumnSort,\n SortingState,\n VisibilityState,\n BuiltInSortingFn,\n} from '@tanstack/react-table';\nimport { MenuProps } from '../Menu/Menu';\n\nexport type Table3SortDirection = 'asc' | 'desc';\nexport type Table3SortFn<TType = unknown> =\n | ((rowA: TType, rowB: TType, columnId: string) => -1 | 0 | 1)\n | BuiltInSortingFn\n | 'auto';\n\n// columns\nexport type Table3ColumnRenderer<TValue = unknown, TType = unknown> = (\n value: TValue,\n row: TType\n) => JSX.Element | string | number | null;\nexport type Table3ColumnFooterRenderer<TValue = unknown> = (values: TValue[]) => JSX.Element | string | number | null;\nexport type Table3ColumnClassNameHandler<TType = unknown> = string | ((row: TType) => string | undefined);\nexport type Table3ColumnAlignment = 'left' | 'center' | 'right';\nexport type Table3ColumnDataType = 'auto' | 'number' | 'alphanumeric' | 'alphanumericCaseSensitive' | 'datetime' | 'boolean';\nexport type Table3ColumnHeaderMenu = (props: Partial<MenuProps>) => JSX.Element;\n\nexport type Table3ColumnControlProps = {\n className?: string;\n disabled?: boolean;\n invalid?: boolean;\n onBlur?: (value: any) => void;\n onFocus?: React.FocusEventHandler;\n readOnly?: boolean;\n ref: React.RefObject<HTMLElement>;\n setValue: (value: any) => void;\n value: any;\n};\nexport type Table3ColumnControlRenderer<TType = unknown> =\n | ((props: Table3ColumnControlProps, row?: TType) => JSX.Element)\n | 'datepicker'\n | 'input'\n | 'numberInput'\n | 'switch'\n | 'textarea';\n\ntype ValueOf<T> = T[keyof T];\n\nexport type Table3ColumnProps<TType = unknown> = ValueOf<{\n [K in keyof TType]: {\n accessor: K;\n } & {\n align?: Table3ColumnAlignment;\n className?: Table3ColumnClassNameHandler<TType>;\n control?: Table3ColumnControlRenderer<TType>;\n dataType?: Table3ColumnDataType;\n defaultHidden?: boolean;\n defaultWidth?: number | 'grow';\n enableFiltering?: boolean;\n enableHiding?: boolean;\n enableOrdering?: boolean;\n enableResizing?: boolean;\n enableSearch?: boolean;\n enableSorting?: boolean;\n enableTruncate?: boolean;\n filters?: Table3FilterComparator[];\n footer?: Table3ColumnFooterRenderer;\n header: string;\n headerClassName?: string;\n menu?: Table3ColumnHeaderMenu;\n minWidth?: number;\n renderer?: Table3ColumnRenderer<TType[K], TType>;\n sort?: Table3SortDirection;\n sortFn?: Table3SortFn<TType>;\n tooltip?: string;\n };\n}>;\n\n// rows\nexport type DeprecatedRowDensity = 'compact' | 'normal' | 'comfortable' | 'spacious';\nexport type Table3RowHeight = 'short' | 'medium' | 'tall' | 'extra-tall';\nexport type Table3FontSize = 'small' | 'medium' | 'large';\nexport type Table3RowClickHandler<TType = unknown> = (row: TType) => void;\nexport type Table3RowDragHandler<TType = unknown> = (\n rows: TType[],\n showPlaceholder: (string) => void,\n setDataTransfer: (data: string) => void\n) => void;\nexport type Table3RowDropHandler<TType = any> = (event: React.DragEvent, row: TType) => void;\nexport type Table3RowExpansionRenderer<TType = unknown> = (row: TType) => (() => JSX.Element) | null;\nexport type Table3RowSelectionHandler<TType = unknown> = (rows: TType[]) => void;\nexport type Table3RowActionRenderer<TType = unknown> = (row: TType) => JSX.Element | null;\n\n// table\nexport type Table3Preset = 'display' | 'editable';\nexport type Table3Settings = {\n columnFreezingIndex?: number;\n columnOrder?: ColumnOrderState;\n columnSizing?: ColumnSizingState;\n columnVisibility?: VisibilityState;\n excludeUnmatchedRecordsInSearch?: boolean;\n fontSize?: Table3FontSize;\n rowHeight?: Table3RowHeight;\n showWarningWhenPrintingLargeDataset?: boolean;\n sorting?: SortingState;\n};\nexport type Table3SettingsHandler = (settings: Table3Settings) => void | Promise<void>;\n\nexport enum Table3FilterComparator {\n Contains,\n DoesNotContain,\n IsEqualTo,\n IsNotEqualTo,\n IsGreaterThan,\n IsLessThan,\n IsBetween,\n IsEmpty,\n IsNotEmpty,\n IsLessThanOrEqualTo,\n IsGreaterThanOrEqualTo,\n HasAnyOf,\n HasAllOf,\n HasNoneOf,\n}\n\nexport type Table3FilterValue = {\n comparator: Table3FilterComparator;\n value: any;\n};\n\nexport type Table3Filter = { id: string; value: Table3FilterValue };\n\nexport type ColumnFilter = RTColumnFilter;\nexport type Table3FilterHandler = (filters: ColumnFilter[]) => void;\nexport type Table3LoadPageHandler = (\n pageIndex: number,\n sorting: Table3ColumnSort[],\n filters: ColumnFilter[],\n search: string | undefined\n) => Promise<void>;\nexport type Table3LoadAllHandler = (\n sorting: Table3ColumnSort[],\n filters: ColumnFilter[],\n search: string | undefined\n) => Promise<void>;\nexport type Table3RowGotoHandler = (\n column: string,\n query: string,\n sorting: Table3ColumnSort[],\n filters: ColumnFilter[],\n search: string | undefined\n) => Promise<number>;\nexport type Table3ColumnSort = RTTableColumnSort;\nexport type Table3SortHandler = (sorting: Table3ColumnSort[]) => void;\nexport type TableStrategy = {\n renderBody: () => JSX.Element | JSX.Element[] | null;\n scrollToIndex: (index: number, options?: { align: 'start' | 'center' | 'end' | 'auto' }) => void;\n};\nexport type Table3ShortcutHandlerFn<TType = unknown> = (row: TType) => void;\nexport type Table3ShortcutHandlerObject<TType = unknown> = {\n handler: Table3ShortcutHandlerFn<TType>;\n meta?: boolean;\n shift?: boolean;\n};\nexport type Table3Shortcuts<TType = unknown> = Record<\n string,\n Table3ShortcutHandlerFn<TType> | Table3ShortcutHandlerObject<TType>\n>;\nexport type Table3SaveHandler<TType = unknown> = (data: TType) => Promise<void>;\n\nexport type Table3Options = {\n enableColumnFreezing: boolean;\n enableColumnHiding: boolean;\n enableColumnOrdering: boolean;\n enableColumnResizing: boolean;\n enableFontSize: boolean;\n enablePrinting: boolean;\n enableRowDrag: boolean;\n enableRowDrop: boolean;\n enableRowExpansion: boolean;\n enableRowGoto: boolean;\n enableRowHeight: boolean;\n enableRowSelection: boolean;\n enableRowSelectionSingle: boolean;\n enableEditing: boolean;\n enableFiltering: boolean;\n enableSearch: boolean;\n enableSorting: boolean;\n};\n\nexport type Table3CommonProps<TType = unknown> = Partial<Table3Options> & {\n actionsForRow?: Table3RowActionRenderer<TType>[];\n actionsForRowLength?: number;\n autoFocus?: boolean;\n children: (JSX.Element | boolean | null | undefined)[];\n data: TType[];\n defaultColumnFreezingIndex?: number;\n defaultCurrentRowIndex?: number;\n defaultSettings?: Table3Settings;\n emptyState?: () => JSX.Element | null;\n expandedRowRenderer?: Table3RowExpansionRenderer<TType>;\n id: string;\n onChangeSettings?: Table3SettingsHandler;\n onRowClick?: Table3RowClickHandler<TType>;\n onRowDrag?: Table3RowDragHandler<TType>;\n onRowDrop?: Table3RowDropHandler<TType>;\n onRowGoto?: Table3RowGotoHandler;\n onRowSelect?: Table3RowSelectionHandler<TType>;\n onFilter?: Table3FilterHandler;\n onSave?: Table3SaveHandler<TType>;\n onSort?: Table3SortHandler;\n preset?: Table3Preset;\n shortcuts?: Table3Shortcuts<TType>;\n toolbarLeft?: JSX.Element;\n toolbarRight?: JSX.Element;\n};\n\ninterface Table3ClientProps<TType = unknown> extends Table3CommonProps<TType> {\n length?: never;\n loadPage?: never;\n loadAll?: never;\n pageSize?: never;\n}\n\ninterface Table3ServerProps<TType = unknown> extends Table3CommonProps<TType> {\n length: number | undefined;\n loadPage: Table3LoadPageHandler;\n loadAll: Table3LoadAllHandler;\n pageSize?: number;\n}\n\nexport type Table3Props<TType = unknown> = Table3ClientProps<TType> | Table3ServerProps<TType>;\n\nexport type Table3Ref = HTMLDivElement & {\n instance: {\n resetFiltering: () => void;\n resetRowExpansion: () => void;\n resetRowSelection: () => void;\n resetSorting: () => void;\n toggleEditing: (enabled: boolean | undefined) => void;\n };\n};\n\nexport type Table3Texts = {\n columns: {\n actions: {\n tooltip: string;\n };\n drag: {\n tooltip: string;\n };\n expansion: {\n collapse: string;\n collapseAll: string;\n expand: string;\n expandAll: string;\n };\n menu: {\n freezeFirstColumn: string;\n freezeUptoColumn: string;\n gotoRow: string;\n hideColumn: string;\n unfreezeColumns: string;\n };\n resize: {\n tooltip: string;\n };\n select: {\n deselect: string;\n deselectAll: string;\n select: string;\n selectAll: string;\n };\n };\n columnSettings: {\n button: string;\n noResults: string;\n search: string;\n tooltip: string;\n };\n editing: {\n actions: {\n tooltip: string;\n save: string;\n clear: string;\n exit: string;\n };\n buttons: {\n edit: {\n text: string;\n tooltip: string;\n };\n };\n rowIndicator: {\n rowWillMove: string;\n rowWillBeHidden: string;\n rowWillMoveReasonSearch: string;\n rowWillMoveReasonFilter: string;\n rowWillMoveReasonSorting: string;\n };\n saving: {\n progress: string;\n complete: string;\n };\n };\n filters: {\n button: string;\n buttons: {\n addFilter: string;\n clearFilters: string;\n };\n comparators: {\n contains: string;\n doesNotContain: string;\n isEqualTo: string;\n isNotEqualTo: string;\n isGreaterThan: string;\n isLessThan: string;\n isBetween: string;\n isEmpty: string;\n isNotEmpty: string;\n isBefore: string;\n isAfter: string;\n isLessThanOrEqualTo: string;\n isGreaterThanOrEqualTo: string;\n isOnOrBefore: string;\n isOnOrAfter: string;\n hasAnyOf: string;\n hasAllOf: string;\n hasNoneOf: string;\n };\n conditions: {\n and: string;\n where: string;\n };\n emptyFilter: {\n condition: string;\n value: string;\n };\n tooltip: string;\n total: string;\n };\n fontSize: {\n tooltip: string;\n sizes: {\n small: string;\n medium: string;\n large: string;\n };\n };\n footer: {\n summary: {\n count: string;\n records: string;\n selected: string;\n };\n };\n print: {\n error: string;\n loading: string;\n tooltip: string;\n warningDialog: {\n title: string;\n description: string;\n checkboxVisibilityLabel: string;\n cancelButtonText: string;\n printButtonText: string;\n };\n };\n rowHeight: {\n tooltip: string;\n sizes: {\n short: string;\n medium: string;\n tall: string;\n extraTall: string;\n };\n };\n search: {\n excludeUnmatchedResults: string;\n placeholder: string;\n };\n otherOptions: {\n tooltip: string;\n };\n};\n"],"names":["Table3FilterComparator"],"mappings":"IA6GYA;AAAZ,WAAYA,sBAAsB;EAC9BA,2EAAQ;EACRA,uFAAc;EACdA,6EAAS;EACTA,mFAAY;EACZA,qFAAa;EACbA,+EAAU;EACVA,6EAAS;EACTA,yEAAO;EACPA,+EAAU;EACVA,iGAAmB;EACnBA,wGAAsB;EACtBA,4EAAQ;EACRA,4EAAQ;EACRA,8EAAS;AACb,CAAC,EAfWA,sBAAsB,KAAtBA,sBAAsB;;;;"}
1
+ {"version":3,"file":"types.js","sources":["../../../../../../../src/components/Table3/types.ts"],"sourcesContent":["import {\n ColumnFilter as RTColumnFilter,\n ColumnOrderState,\n ColumnSizingState,\n ColumnSort as RTTableColumnSort,\n SortingState,\n VisibilityState,\n BuiltInSortingFn,\n} from '@tanstack/react-table';\nimport { MenuProps } from '../Menu/Menu';\n\nexport type Table3SortDirection = 'asc' | 'desc';\nexport type Table3SortFn<TType = unknown> =\n | ((rowA: TType, rowB: TType, columnId: string) => -1 | 0 | 1)\n | BuiltInSortingFn\n | 'auto';\n\n// columns\nexport type Table3ColumnRenderer<TValue = unknown, TType = unknown> = (\n value: TValue,\n row: TType\n) => JSX.Element | string | number | null;\nexport type Table3ColumnFooterRenderer<TValue = unknown> = (values: TValue[]) => JSX.Element | string | number | null;\nexport type Table3ColumnClassNameHandler<TType = unknown> = string | ((row: TType) => string | undefined);\nexport type Table3ColumnAlignment = 'left' | 'center' | 'right';\nexport type Table3ColumnDataType = 'auto' | 'number' | 'alphanumeric' | 'alphanumericCaseSensitive' | 'datetime' | 'boolean';\nexport type Table3ColumnHeaderMenu = (props: Partial<MenuProps>) => JSX.Element;\n\nexport type Table3ColumnControlProps = {\n className?: string;\n disabled?: boolean;\n invalid?: boolean;\n onBlur?: (value: any) => void;\n onFocus?: React.FocusEventHandler;\n readOnly?: boolean;\n ref: React.RefObject<HTMLElement>;\n setValue: (value: any) => void;\n value: any;\n};\nexport type Table3ColumnControlRenderer<TType = unknown> =\n | ((props: Table3ColumnControlProps, row?: TType) => JSX.Element)\n | 'datepicker'\n | 'input'\n | 'numberInput'\n | 'switch'\n | 'textarea';\n\ntype ValueOf<T> = T[keyof T];\n\nexport type Table3ColumnProps<TType = unknown> = ValueOf<{\n [K in keyof TType]: {\n accessor: K;\n } & {\n align?: Table3ColumnAlignment;\n className?: Table3ColumnClassNameHandler<TType>;\n control?: Table3ColumnControlRenderer<TType>;\n dataType?: Table3ColumnDataType;\n defaultHidden?: boolean;\n defaultWidth?: number | 'grow';\n enableFiltering?: boolean;\n enableHiding?: boolean;\n enableOrdering?: boolean;\n enableResizing?: boolean;\n enableSearch?: boolean;\n enableSorting?: boolean;\n enableTruncate?: boolean;\n filters?: Table3FilterComparator[];\n footer?: Table3ColumnFooterRenderer;\n header: string;\n headerClassName?: string;\n menu?: Table3ColumnHeaderMenu;\n minWidth?: number;\n renderer?: Table3ColumnRenderer<TType[K], TType>;\n sort?: Table3SortDirection;\n sortFn?: Table3SortFn<TType>;\n tooltip?: string;\n };\n}>;\n\n// rows\nexport type DeprecatedRowDensity = 'compact' | 'normal' | 'comfortable' | 'spacious';\nexport type Table3RowHeight = 'short' | 'medium' | 'tall' | 'extra-tall';\nexport type Table3FontSize = 'small' | 'medium' | 'large';\nexport type Table3RowClickHandler<TType = unknown> = (row: TType) => void;\nexport type Table3RowDragHandler<TType = unknown> = (\n rows: TType[],\n showPlaceholder: (string) => void,\n setDataTransfer: (data: string) => void\n) => void;\nexport type Table3RowDropHandler<TType = any> = (event: React.DragEvent, row: TType) => void;\nexport type Table3RowExpansionRenderer<TType = unknown> = (row: TType) => (() => JSX.Element) | null;\nexport type Table3RowSelectionHandler<TType = unknown> = (rows: TType[]) => void;\nexport type Table3RowActionRenderer<TType = unknown> = (row: TType) => JSX.Element | null;\n\n// table\nexport type Table3Preset = 'display' | 'editable';\nexport type Table3Settings = {\n columnFreezingIndex?: number;\n columnOrder?: ColumnOrderState;\n columnSizing?: ColumnSizingState;\n columnVisibility?: VisibilityState;\n excludeUnmatchedRecordsInSearch?: boolean;\n fontSize?: Table3FontSize;\n rowHeight?: Table3RowHeight;\n showWarningWhenPrintingLargeDataset?: boolean;\n sorting?: SortingState;\n};\nexport type Table3SettingsHandler = (settings: Table3Settings) => void | Promise<void>;\n\nexport enum Table3FilterComparator {\n Contains,\n DoesNotContain,\n IsEqualTo,\n IsNotEqualTo,\n IsGreaterThan,\n IsLessThan,\n IsBetween,\n IsEmpty,\n IsNotEmpty,\n IsLessThanOrEqualTo,\n IsGreaterThanOrEqualTo,\n HasAnyOf,\n HasAllOf,\n HasNoneOf,\n}\n\nexport type Table3FilterValue = {\n comparator: Table3FilterComparator;\n value: any;\n};\n\nexport type Table3Filter = { id: string; value: Table3FilterValue };\n\nexport type ColumnFilter = RTColumnFilter;\nexport type Table3FilterHandler = (filters: ColumnFilter[]) => void;\nexport type Table3LoadPageHandler = (\n pageIndex: number,\n sorting: Table3ColumnSort[],\n filters: ColumnFilter[],\n search: string | undefined\n) => Promise<void>;\nexport type Table3LoadAllHandler = (\n sorting: Table3ColumnSort[],\n filters: ColumnFilter[],\n search: string | undefined\n) => Promise<void>;\nexport type Table3RowGotoHandler = (\n column: string,\n query: string,\n sorting: Table3ColumnSort[],\n filters: ColumnFilter[],\n search: string | undefined\n) => Promise<number>;\nexport type Table3ColumnSort = RTTableColumnSort;\nexport type Table3SortHandler = (sorting: Table3ColumnSort[]) => void;\nexport type TableStrategy = {\n renderBody: () => JSX.Element | JSX.Element[] | null;\n scrollToIndex: (index: number, options?: { align: 'start' | 'center' | 'end' | 'auto' }) => void;\n};\nexport type Table3ShortcutHandlerFn<TType = unknown> = (row: TType) => void;\nexport type Table3ShortcutHandlerObject<TType = unknown> = {\n handler: Table3ShortcutHandlerFn<TType>;\n meta?: boolean;\n shift?: boolean;\n};\nexport type Table3Shortcuts<TType = unknown> = Record<\n string,\n Table3ShortcutHandlerFn<TType> | Table3ShortcutHandlerObject<TType>\n>;\nexport type Table3SaveHandler<TType = unknown> = (data: TType) => Promise<void>;\n\nexport type Table3Options = {\n enableColumnFreezing: boolean;\n enableColumnHiding: boolean;\n enableColumnOrdering: boolean;\n enableColumnResizing: boolean;\n enableFontSize: boolean;\n enableFooter: boolean;\n enablePrinting: boolean;\n enableRowDrag: boolean;\n enableRowDrop: boolean;\n enableRowExpansion: boolean;\n enableRowGoto: boolean;\n enableRowHeight: boolean;\n enableRowSelection: boolean;\n enableRowSelectionSingle: boolean;\n enableEditing: boolean;\n enableFiltering: boolean;\n enableSearch: boolean;\n enableSorting: boolean;\n};\n\nexport type Table3CommonProps<TType = unknown> = Partial<Table3Options> & {\n actionsForRow?: Table3RowActionRenderer<TType>[];\n actionsForRowLength?: number;\n autoFocus?: boolean;\n children: (JSX.Element | boolean | null | undefined)[];\n data: TType[];\n defaultColumnFreezingIndex?: number;\n defaultCurrentRowIndex?: number;\n defaultSettings?: Table3Settings;\n emptyState?: () => JSX.Element | null;\n expandedRowRenderer?: Table3RowExpansionRenderer<TType>;\n id: string;\n onChangeSettings?: Table3SettingsHandler;\n onRowClick?: Table3RowClickHandler<TType>;\n onRowDrag?: Table3RowDragHandler<TType>;\n onRowDrop?: Table3RowDropHandler<TType>;\n onRowGoto?: Table3RowGotoHandler;\n onRowSelect?: Table3RowSelectionHandler<TType>;\n onFilter?: Table3FilterHandler;\n onSave?: Table3SaveHandler<TType>;\n onSort?: Table3SortHandler;\n preset?: Table3Preset;\n shortcuts?: Table3Shortcuts<TType>;\n toolbarLeft?: JSX.Element;\n toolbarRight?: JSX.Element;\n};\n\ninterface Table3ClientProps<TType = unknown> extends Table3CommonProps<TType> {\n length?: never;\n loadPage?: never;\n loadAll?: never;\n pageSize?: never;\n}\n\ninterface Table3ServerProps<TType = unknown> extends Table3CommonProps<TType> {\n length: number | undefined;\n loadPage: Table3LoadPageHandler;\n loadAll: Table3LoadAllHandler;\n pageSize?: number;\n}\n\nexport type Table3Props<TType = unknown> = Table3ClientProps<TType> | Table3ServerProps<TType>;\n\nexport type Table3Ref = HTMLDivElement & {\n instance: {\n resetFiltering: () => void;\n resetRowExpansion: () => void;\n resetRowSelection: () => void;\n resetSorting: () => void;\n toggleEditing: (enabled: boolean | undefined) => void;\n };\n};\n\nexport type Table3Texts = {\n columns: {\n actions: {\n tooltip: string;\n };\n drag: {\n tooltip: string;\n };\n expansion: {\n collapse: string;\n collapseAll: string;\n expand: string;\n expandAll: string;\n };\n menu: {\n freezeFirstColumn: string;\n freezeUptoColumn: string;\n gotoRow: string;\n hideColumn: string;\n unfreezeColumns: string;\n };\n resize: {\n tooltip: string;\n };\n select: {\n deselect: string;\n deselectAll: string;\n select: string;\n selectAll: string;\n };\n };\n columnSettings: {\n button: string;\n noResults: string;\n search: string;\n tooltip: string;\n };\n editing: {\n actions: {\n tooltip: string;\n save: string;\n clear: string;\n exit: string;\n };\n buttons: {\n edit: {\n text: string;\n tooltip: string;\n };\n };\n rowIndicator: {\n rowWillMove: string;\n rowWillBeHidden: string;\n rowWillMoveReasonSearch: string;\n rowWillMoveReasonFilter: string;\n rowWillMoveReasonSorting: string;\n };\n saving: {\n progress: string;\n complete: string;\n };\n };\n filters: {\n button: string;\n buttons: {\n addFilter: string;\n clearFilters: string;\n };\n comparators: {\n contains: string;\n doesNotContain: string;\n isEqualTo: string;\n isNotEqualTo: string;\n isGreaterThan: string;\n isLessThan: string;\n isBetween: string;\n isEmpty: string;\n isNotEmpty: string;\n isBefore: string;\n isAfter: string;\n isLessThanOrEqualTo: string;\n isGreaterThanOrEqualTo: string;\n isOnOrBefore: string;\n isOnOrAfter: string;\n hasAnyOf: string;\n hasAllOf: string;\n hasNoneOf: string;\n };\n conditions: {\n and: string;\n where: string;\n };\n emptyFilter: {\n condition: string;\n value: string;\n };\n tooltip: string;\n total: string;\n };\n fontSize: {\n tooltip: string;\n sizes: {\n small: string;\n medium: string;\n large: string;\n };\n };\n footer: {\n summary: {\n count: string;\n records: string;\n selected: string;\n };\n };\n print: {\n error: string;\n loading: string;\n tooltip: string;\n warningDialog: {\n title: string;\n description: string;\n checkboxVisibilityLabel: string;\n cancelButtonText: string;\n printButtonText: string;\n };\n };\n rowHeight: {\n tooltip: string;\n sizes: {\n short: string;\n medium: string;\n tall: string;\n extraTall: string;\n };\n };\n search: {\n excludeUnmatchedResults: string;\n placeholder: string;\n };\n otherOptions: {\n tooltip: string;\n };\n};\n"],"names":["Table3FilterComparator"],"mappings":"IA6GYA;AAAZ,WAAYA,sBAAsB;EAC9BA,2EAAQ;EACRA,uFAAc;EACdA,6EAAS;EACTA,mFAAY;EACZA,qFAAa;EACbA,+EAAU;EACVA,6EAAS;EACTA,yEAAO;EACPA,+EAAU;EACVA,iGAAmB;EACnBA,wGAAsB;EACtBA,4EAAQ;EACRA,4EAAQ;EACRA,8EAAS;AACb,CAAC,EAfWA,sBAAsB,KAAtBA,sBAAsB;;;;"}
@@ -8,7 +8,7 @@ const useDropTarget = onDrop => {
8
8
  }, []);
9
9
  const handleDragLeave = React__default.useCallback(event => {
10
10
  event.preventDefault();
11
- if (event.target === event.currentTarget) {
11
+ if (event.target === event.currentTarget || event.relatedTarget && !event.currentTarget.contains(event.relatedTarget)) {
12
12
  setDraggedOver(false);
13
13
  }
14
14
  }, []);
@@ -1 +1 @@
1
- {"version":3,"file":"useDropTarget.js","sources":["../../../../../../../src/utils/hooks/useDropTarget.ts"],"sourcesContent":["import React from 'react';\n\nexport type useDropTarget = [\n boolean,\n (\n | undefined\n | {\n onDragEnter: React.DragEventHandler;\n onDragLeave: React.DragEventHandler;\n onDragOver: React.DragEventHandler;\n onDrop: React.DragEventHandler;\n }\n )\n];\n\nexport const useDropTarget = (onDrop: React.DragEventHandler | undefined): useDropTarget => {\n const [isDraggedOver, setDraggedOver] = React.useState(false);\n\n const handleDragEnter = React.useCallback((event: React.DragEvent<HTMLElement>) => {\n event.preventDefault();\n setDraggedOver(true);\n }, []);\n\n const handleDragLeave = React.useCallback((event: React.DragEvent<HTMLElement>) => {\n event.preventDefault();\n\n if (event.target === event.currentTarget) {\n setDraggedOver(false);\n }\n }, []);\n\n const handleDragOver = React.useCallback((event: React.DragEvent<HTMLElement>) => {\n event.preventDefault();\n }, []);\n\n const handleDrop = React.useCallback(\n (event: React.DragEvent<HTMLElement>) => {\n event.preventDefault();\n event.persist();\n\n setDraggedOver(false);\n\n if (onDrop) {\n onDrop(event);\n }\n },\n [onDrop]\n );\n\n const props = onDrop\n ? {\n onDragEnter: handleDragEnter,\n onDragLeave: handleDragLeave,\n onDragOver: handleDragOver,\n onDrop: handleDrop,\n }\n : undefined;\n\n return [isDraggedOver, props];\n};\n"],"names":["useDropTarget","onDrop","isDraggedOver","setDraggedOver","React","useState","handleDragEnter","useCallback","event","preventDefault","handleDragLeave","target","currentTarget","handleDragOver","handleDrop","persist","props","onDragEnter","onDragLeave","onDragOver","undefined"],"mappings":";;MAeaA,aAAa,GAAIC,MAA0C;EACpE,MAAM,CAACC,aAAa,EAAEC,cAAc,CAAC,GAAGC,cAAK,CAACC,QAAQ,CAAC,KAAK,CAAC;EAE7D,MAAMC,eAAe,GAAGF,cAAK,CAACG,WAAW,CAAEC,KAAmC;IAC1EA,KAAK,CAACC,cAAc,EAAE;IACtBN,cAAc,CAAC,IAAI,CAAC;GACvB,EAAE,EAAE,CAAC;EAEN,MAAMO,eAAe,GAAGN,cAAK,CAACG,WAAW,CAAEC,KAAmC;IAC1EA,KAAK,CAACC,cAAc,EAAE;IAEtB,IAAID,KAAK,CAACG,MAAM,KAAKH,KAAK,CAACI,aAAa,EAAE;MACtCT,cAAc,CAAC,KAAK,CAAC;;GAE5B,EAAE,EAAE,CAAC;EAEN,MAAMU,cAAc,GAAGT,cAAK,CAACG,WAAW,CAAEC,KAAmC;IACzEA,KAAK,CAACC,cAAc,EAAE;GACzB,EAAE,EAAE,CAAC;EAEN,MAAMK,UAAU,GAAGV,cAAK,CAACG,WAAW,CAC/BC,KAAmC;IAChCA,KAAK,CAACC,cAAc,EAAE;IACtBD,KAAK,CAACO,OAAO,EAAE;IAEfZ,cAAc,CAAC,KAAK,CAAC;IAErB,IAAIF,MAAM,EAAE;MACRA,MAAM,CAACO,KAAK,CAAC;;GAEpB,EACD,CAACP,MAAM,CAAC,CACX;EAED,MAAMe,KAAK,GAAGf,MAAM,GACd;IACIgB,WAAW,EAAEX,eAAe;IAC5BY,WAAW,EAAER,eAAe;IAC5BS,UAAU,EAAEN,cAAc;IAC1BZ,MAAM,EAAEa;GACX,GACDM,SAAS;EAEf,OAAO,CAAClB,aAAa,EAAEc,KAAK,CAAC;AACjC;;;;"}
1
+ {"version":3,"file":"useDropTarget.js","sources":["../../../../../../../src/utils/hooks/useDropTarget.ts"],"sourcesContent":["import React from 'react';\n\nexport type useDropTarget = [\n boolean,\n (\n | undefined\n | {\n onDragEnter: React.DragEventHandler;\n onDragLeave: React.DragEventHandler;\n onDragOver: React.DragEventHandler;\n onDrop: React.DragEventHandler;\n }\n )\n];\n\nexport const useDropTarget = (onDrop: React.DragEventHandler | undefined): useDropTarget => {\n const [isDraggedOver, setDraggedOver] = React.useState(false);\n\n const handleDragEnter = React.useCallback((event: React.DragEvent<HTMLElement>) => {\n event.preventDefault();\n setDraggedOver(true);\n }, []);\n\n const handleDragLeave = React.useCallback((event: React.DragEvent<HTMLElement>) => {\n event.preventDefault();\n\n if (\n event.target === event.currentTarget ||\n (event.relatedTarget && !event.currentTarget.contains(event.relatedTarget as HTMLElement))\n ) {\n setDraggedOver(false);\n }\n }, []);\n\n const handleDragOver = React.useCallback((event: React.DragEvent<HTMLElement>) => {\n event.preventDefault();\n }, []);\n\n const handleDrop = React.useCallback(\n (event: React.DragEvent<HTMLElement>) => {\n event.preventDefault();\n event.persist();\n\n setDraggedOver(false);\n\n if (onDrop) {\n onDrop(event);\n }\n },\n [onDrop]\n );\n\n const props = onDrop\n ? {\n onDragEnter: handleDragEnter,\n onDragLeave: handleDragLeave,\n onDragOver: handleDragOver,\n onDrop: handleDrop,\n }\n : undefined;\n\n return [isDraggedOver, props];\n};\n"],"names":["useDropTarget","onDrop","isDraggedOver","setDraggedOver","React","useState","handleDragEnter","useCallback","event","preventDefault","handleDragLeave","target","currentTarget","relatedTarget","contains","handleDragOver","handleDrop","persist","props","onDragEnter","onDragLeave","onDragOver","undefined"],"mappings":";;MAeaA,aAAa,GAAIC,MAA0C;EACpE,MAAM,CAACC,aAAa,EAAEC,cAAc,CAAC,GAAGC,cAAK,CAACC,QAAQ,CAAC,KAAK,CAAC;EAE7D,MAAMC,eAAe,GAAGF,cAAK,CAACG,WAAW,CAAEC,KAAmC;IAC1EA,KAAK,CAACC,cAAc,EAAE;IACtBN,cAAc,CAAC,IAAI,CAAC;GACvB,EAAE,EAAE,CAAC;EAEN,MAAMO,eAAe,GAAGN,cAAK,CAACG,WAAW,CAAEC,KAAmC;IAC1EA,KAAK,CAACC,cAAc,EAAE;IAEtB,IACID,KAAK,CAACG,MAAM,KAAKH,KAAK,CAACI,aAAa,IACnCJ,KAAK,CAACK,aAAa,IAAI,CAACL,KAAK,CAACI,aAAa,CAACE,QAAQ,CAACN,KAAK,CAACK,aAA4B,CAAE,EAC5F;MACEV,cAAc,CAAC,KAAK,CAAC;;GAE5B,EAAE,EAAE,CAAC;EAEN,MAAMY,cAAc,GAAGX,cAAK,CAACG,WAAW,CAAEC,KAAmC;IACzEA,KAAK,CAACC,cAAc,EAAE;GACzB,EAAE,EAAE,CAAC;EAEN,MAAMO,UAAU,GAAGZ,cAAK,CAACG,WAAW,CAC/BC,KAAmC;IAChCA,KAAK,CAACC,cAAc,EAAE;IACtBD,KAAK,CAACS,OAAO,EAAE;IAEfd,cAAc,CAAC,KAAK,CAAC;IAErB,IAAIF,MAAM,EAAE;MACRA,MAAM,CAACO,KAAK,CAAC;;GAEpB,EACD,CAACP,MAAM,CAAC,CACX;EAED,MAAMiB,KAAK,GAAGjB,MAAM,GACd;IACIkB,WAAW,EAAEb,eAAe;IAC5Bc,WAAW,EAAEV,eAAe;IAC5BW,UAAU,EAAEN,cAAc;IAC1Bd,MAAM,EAAEe;GACX,GACDM,SAAS;EAEf,OAAO,CAACpB,aAAa,EAAEgB,KAAK,CAAC;AACjC;;;;"}
package/dist/index.css CHANGED
@@ -673,6 +673,11 @@
673
673
  @apply bg-grey-100;
674
674
  }
675
675
 
676
+ /* dragged over row */
677
+ [data-pause-hover='false'] [data-taco='table2-body'] [role='row'][data-dragged-over='true'] [role='cell'] {
678
+ @apply bg-grey-100;
679
+ }
680
+
676
681
  /* current row */
677
682
  [data-taco='table2-body'] [role='row'][data-current='true'] [role='cell'] {
678
683
  @apply bg-grey-200;
@@ -2210,6 +2210,36 @@ function IconPartnerApi(props, svgRef) {
2210
2210
  }
2211
2211
  var PartnerApi = /*#__PURE__*/React.forwardRef(IconPartnerApi);
2212
2212
 
2213
+ function IconPaymentPaid(props, svgRef) {
2214
+ return /*#__PURE__*/React.createElement("svg", Object.assign({
2215
+ fill: "none",
2216
+ xmlns: "http://www.w3.org/2000/svg",
2217
+ viewBox: "0 0 24 24",
2218
+ ref: svgRef
2219
+ }, props), /*#__PURE__*/React.createElement("path", {
2220
+ fillRule: "evenodd",
2221
+ clipRule: "evenodd",
2222
+ d: "M17.535 6.5h2.715a.25.25 0 01.25.25v2.715A3.502 3.502 0 0117.535 6.5zm-11.07 0H3.75a.25.25 0 00-.25.25v2.715A3.502 3.502 0 006.465 6.5zm1.51 0A5.002 5.002 0 013.5 10.975v2.05A5.002 5.002 0 017.975 17.5H14.5V19H3.75A1.75 1.75 0 012 17.25V6.75C2 5.784 2.784 5 3.75 5h16.5c.966 0 1.75.784 1.75 1.75v4.75h-1.5v-.525A5.002 5.002 0 0116.025 6.5h-8.05zM3.5 17.25v-2.715A3.502 3.502 0 016.465 17.5H3.75a.25.25 0 01-.25-.25zM14 12a2 2 0 11-4 0 2 2 0 014 0zm1.5 0a3.5 3.5 0 11-7 0 3.5 3.5 0 017 0zm5.095 1.608a.86.86 0 011.049-.14c.344.201.467.603.306.937l-.057.098-3.118 4.152-.07.087a.859.859 0 01-1.17.059l-.079-.08-1.878-2.164-.068-.092a.713.713 0 01.194-.962.863.863 0 011.06.035l.081.082 1.169 1.345 2.51-3.268.071-.089z",
2223
+ fill: "currentColor"
2224
+ }));
2225
+ }
2226
+ var PaymentPaid = /*#__PURE__*/React.forwardRef(IconPaymentPaid);
2227
+
2228
+ function IconPaymentUnpaid(props, svgRef) {
2229
+ return /*#__PURE__*/React.createElement("svg", Object.assign({
2230
+ fill: "none",
2231
+ xmlns: "http://www.w3.org/2000/svg",
2232
+ viewBox: "0 0 24 24",
2233
+ ref: svgRef
2234
+ }, props), /*#__PURE__*/React.createElement("path", {
2235
+ fillRule: "evenodd",
2236
+ clipRule: "evenodd",
2237
+ d: "M17.535 6.5h2.715a.25.25 0 01.25.25v2.715A3.502 3.502 0 0117.535 6.5zm-11.07 0H3.75a.25.25 0 00-.25.25v2.715A3.502 3.502 0 006.465 6.5zm1.51 0A5.002 5.002 0 013.5 10.975v2.05A5.002 5.002 0 017.975 17.5H14.5V19H3.75A1.75 1.75 0 012 17.25V6.75C2 5.784 2.784 5 3.75 5h16.5c.966 0 1.75.784 1.75 1.75v4.75h-1.5v-.525A5.002 5.002 0 0116.025 6.5h-8.05zM3.5 17.25v-2.715A3.502 3.502 0 016.465 17.5H3.75a.25.25 0 01-.25-.25zM14 12a2 2 0 11-4 0 2 2 0 014 0zm1.5 0a3.5 3.5 0 11-7 0 3.5 3.5 0 017 0zm6.297 1.203a.692.692 0 00-.901-.067l-.078.067L19 15.02l-1.818-1.818-.078-.067a.692.692 0 00-.901 1.046L18.02 16l-1.818 1.818-.067.078a.692.692 0 00.968.968l.078-.067L19 16.98l1.818 1.818.078.067a.692.692 0 00.901-1.046L19.98 16l1.818-1.818.067-.078a.692.692 0 00-.067-.901z",
2238
+ fill: "currentColor"
2239
+ }));
2240
+ }
2241
+ var PaymentUnpaid = /*#__PURE__*/React.forwardRef(IconPaymentUnpaid);
2242
+
2213
2243
  function IconPeriod(props, svgRef) {
2214
2244
  return /*#__PURE__*/React.createElement("svg", Object.assign({
2215
2245
  xmlns: "http://www.w3.org/2000/svg",
@@ -3241,6 +3271,8 @@ const icons = {
3241
3271
  note: Note,
3242
3272
  numbers: Numbers,
3243
3273
  'partner-api': PartnerApi,
3274
+ 'payment-paid': PaymentPaid,
3275
+ 'payment-unpaid': PaymentUnpaid,
3244
3276
  period: Period,
3245
3277
  'person-change': PersonChange,
3246
3278
  'person-minus': PersonMinus,
@@ -7800,7 +7832,7 @@ const useDropTarget = onDrop => {
7800
7832
  }, []);
7801
7833
  const handleDragLeave = React__default.useCallback(event => {
7802
7834
  event.preventDefault();
7803
- if (event.target === event.currentTarget) {
7835
+ if (event.target === event.currentTarget || event.relatedTarget && !event.currentTarget.contains(event.relatedTarget)) {
7804
7836
  setDraggedOver(false);
7805
7837
  }
7806
7838
  }, []);
@@ -12886,7 +12918,7 @@ const Cell = function Cell(props) {
12886
12918
  return (_tableRef$current2 = tableRef.current) === null || _tableRef$current2 === void 0 ? void 0 : _tableRef$current2.classList.remove('pb-4');
12887
12919
  };
12888
12920
  }, [isIndicatorVisible, isLastRow]);
12889
- const className = cn('[&>[data-taco="tag"]]:-my-0.5', {
12921
+ const className = cn('[&>[data-taco="tag"]]:-my-0.5', '[[data-dragged-over="true"]_&]:bg-grey-100', {
12890
12922
  'border-b': !isLastRow,
12891
12923
  'sticky z-[1]': isFrozen,
12892
12924
  // use isHoveredRow rather than css group-hover/row because we want to hide hover state when keyboard navigating
@@ -14624,13 +14656,14 @@ const InternalRow = ({
14624
14656
  const meta = table.options.meta;
14625
14657
  const isActiveRow = meta.activeRowIndex === rowIndex;
14626
14658
  const isDragging = meta.dragging[row.id];
14627
- const [, dropTargetProps] = useDropTarget(event => onRowDrop(event, row.original));
14659
+ const [isDraggedOver, dropTargetProps] = useDropTarget(event => onRowDrop(event, row.original));
14628
14660
  const attributes = {
14629
14661
  ...props,
14630
14662
  ...(typeof onRowDrop === 'function' ? dropTargetProps : undefined),
14631
14663
  'aria-current': isActiveRow ? true : undefined,
14632
14664
  'aria-grabbed': isDragging ? true : undefined,
14633
14665
  'data-row-index': rowIndex,
14666
+ 'data-dragged-over': isDraggedOver,
14634
14667
  draggable: meta.enableRowDragging ? true : undefined,
14635
14668
  onMouseEnter: () => setIsHovered(true),
14636
14669
  onMouseLeave: () => setIsHovered(false),
@@ -16354,7 +16387,9 @@ const getInputAppearanceClassnames = () => {
16354
16387
  const useCssGrid = table => {
16355
16388
  const allVisibleColumns = table.getVisibleLeafColumns();
16356
16389
  const columnSizing = table.getState().columnSizing;
16357
- const length = table.getRowModel().rows.length;
16390
+ const rowsLength = table.getRowModel().rows.length;
16391
+ const expandedRowsLength = Object.keys(table.getState().expanded).length;
16392
+ const length = rowsLength + expandedRowsLength;
16358
16393
  const gridTemplateColumns = React__default.useMemo(() => {
16359
16394
  return allVisibleColumns.reduce((accum, column, index) => {
16360
16395
  let size;
@@ -16387,6 +16422,8 @@ const useCssGrid = table => {
16387
16422
  }, '');
16388
16423
  }, [allVisibleColumns, columnSizing]);
16389
16424
  const gridTemplateRows = React__default.useMemo(() => {
16425
+ // 1fr makes sure that there is always a free space between the rows and footer when table height exceeds the
16426
+ // cumulative height of all rows
16390
16427
  return `min-content repeat(${length}, min-content) 1fr min-content`;
16391
16428
  }, [length]);
16392
16429
  const style = {
@@ -16469,6 +16506,7 @@ const DEFAULT_ALL_DISABLED = {
16469
16506
  enableColumnOrdering: false,
16470
16507
  enableColumnResizing: false,
16471
16508
  enableFontSize: false,
16509
+ enableFooter: false,
16472
16510
  enablePrinting: false,
16473
16511
  enableRowDrag: false,
16474
16512
  enableRowDrop: false,
@@ -16489,6 +16527,7 @@ const presets = {
16489
16527
  enableColumnOrdering: true,
16490
16528
  enableColumnResizing: true,
16491
16529
  enableFontSize: true,
16530
+ enableFooter: true,
16492
16531
  enablePrinting: false,
16493
16532
  enableRowDrag: true,
16494
16533
  enableRowDrop: true,
@@ -16508,6 +16547,7 @@ const presets = {
16508
16547
  enableColumnOrdering: true,
16509
16548
  enableColumnResizing: true,
16510
16549
  enableFontSize: true,
16550
+ enableFooter: true,
16511
16551
  enablePrinting: false,
16512
16552
  enableRowDrag: true,
16513
16553
  enableRowDrop: true,
@@ -16523,7 +16563,7 @@ const presets = {
16523
16563
  }
16524
16564
  };
16525
16565
  function useTablePreset(props) {
16526
- var _props$enableRowExpan, _props$enableRowSelec, _props$enableColumnFr, _props$enableColumnHi, _props$enableColumnOr, _props$enableColumnRe, _props$enableFontSize, _props$enablePrinting, _props$enableRowDrag, _props$enableRowDrop, _props$enableRowGoto, _props$enableRowHeigh, _props$enableRowSelec2, _props$enableEditing, _props$enableFilterin, _props$enableSearch, _props$enableSorting;
16566
+ var _props$enableRowExpan, _props$enableRowSelec, _props$enableColumnFr, _props$enableColumnHi, _props$enableColumnOr, _props$enableColumnRe, _props$enableFontSize, _props$enableFooter, _props$enablePrinting, _props$enableRowDrag, _props$enableRowDrop, _props$enableRowGoto, _props$enableRowHeigh, _props$enableRowSelec2, _props$enableEditing, _props$enableFilterin, _props$enableSearch, _props$enableSorting;
16527
16567
  const presetOptions = props.preset ? presets[props.preset] : DEFAULT_ALL_DISABLED;
16528
16568
  const enableRowExpansion = (_props$enableRowExpan = props.enableRowExpansion) !== null && _props$enableRowExpan !== void 0 ? _props$enableRowExpan : presetOptions.enableRowExpansion;
16529
16569
  const enableRowSelection = (_props$enableRowSelec = props.enableRowSelection) !== null && _props$enableRowSelec !== void 0 ? _props$enableRowSelec : presetOptions.enableRowSelection;
@@ -16542,6 +16582,7 @@ function useTablePreset(props) {
16542
16582
  enableColumnOrdering: (_props$enableColumnOr = props.enableColumnOrdering) !== null && _props$enableColumnOr !== void 0 ? _props$enableColumnOr : presetOptions.enableColumnOrdering,
16543
16583
  enableColumnResizing: (_props$enableColumnRe = props.enableColumnResizing) !== null && _props$enableColumnRe !== void 0 ? _props$enableColumnRe : presetOptions.enableColumnResizing,
16544
16584
  enableFontSize: (_props$enableFontSize = props.enableFontSize) !== null && _props$enableFontSize !== void 0 ? _props$enableFontSize : presetOptions.enableFontSize,
16585
+ enableFooter: (_props$enableFooter = props.enableFooter) !== null && _props$enableFooter !== void 0 ? _props$enableFooter : presetOptions.enableFooter,
16545
16586
  enablePrinting: (_props$enablePrinting = props.enablePrinting) !== null && _props$enablePrinting !== void 0 ? _props$enablePrinting : presetOptions.enablePrinting,
16546
16587
  enableRowDrag: ((_props$enableRowDrag = props.enableRowDrag) !== null && _props$enableRowDrag !== void 0 ? _props$enableRowDrag : presetOptions.enableRowDrag) && !!props.onRowDrag,
16547
16588
  enableRowDrop: ((_props$enableRowDrop = props.enableRowDrop) !== null && _props$enableRowDrop !== void 0 ? _props$enableRowDrop : presetOptions.enableRowDrop) && !!props.onRowDrop,
@@ -18231,9 +18272,12 @@ function useTacoSettings() {
18231
18272
  return React__default.useContext(TacoContext);
18232
18273
  }
18233
18274
 
18234
- function useSettings(id, defaultSettings = {}, onChangeSettings) {
18275
+ function useUniqueTableId(tableId) {
18235
18276
  const tacoSettings = useTacoSettings();
18236
- const uniqueId = `taco.${tacoSettings.uniqueUserIdentifier}.table3.${id}.settings`;
18277
+ return `taco.${tacoSettings.uniqueUserIdentifier}.table3.${tableId}.settings`;
18278
+ }
18279
+ function useSettings(id, defaultSettings = {}, onChangeSettings) {
18280
+ const uniqueId = useUniqueTableId(id);
18237
18281
  const [persistedSettings, setPersistedSettings] = useLocalStorage(uniqueId, defaultSettings);
18238
18282
  return React__default.useMemo(() => {
18239
18283
  if (onChangeSettings) {
@@ -18361,6 +18405,7 @@ function useTable$2(props) {
18361
18405
  columnOrdering,
18362
18406
  currentRow,
18363
18407
  editing,
18408
+ enableFooter: options.enableFooter,
18364
18409
  fontSize,
18365
18410
  hoverState,
18366
18411
  isUsingServer: !!props.loadPage,
@@ -18627,7 +18672,7 @@ const MemoedRow = /*#__PURE__*/React__default.memo(function MemoedRow(props) {
18627
18672
  }
18628
18673
  setIsHovered(false);
18629
18674
  };
18630
- const [, dropTargetProps] = useDropTarget(event => onDrop === null || onDrop === void 0 ? void 0 : onDrop(event, row.original));
18675
+ const [isDraggedOver, dropTargetProps] = useDropTarget(event => onDrop === null || onDrop === void 0 ? void 0 : onDrop(event, row.original));
18631
18676
  const className = cn('group/row contents',
18632
18677
  // resizing column requires dragging, which means the mouse might (on rare occasions) move over rows and trigger hover state
18633
18678
  // that in turn triggers rendering of e.g. row actions, which could cause janky ui - so don't allow mouse interaction when resizing
@@ -18637,6 +18682,7 @@ const MemoedRow = /*#__PURE__*/React__default.memo(function MemoedRow(props) {
18637
18682
  return /*#__PURE__*/React__default.createElement("div", Object.assign({}, attributes, onDrop ? dropTargetProps : undefined, {
18638
18683
  className: className,
18639
18684
  "data-row-index": index,
18685
+ "data-dragged-over": isDraggedOver,
18640
18686
  onClick: handleClick,
18641
18687
  onClickCapture: handleClickCapture,
18642
18688
  onMouseEnter: handleMouseEnter,
@@ -19897,6 +19943,8 @@ function PrintButton(props) {
19897
19943
  const {
19898
19944
  printWarningDialogVisibility
19899
19945
  } = tableMeta.printing;
19946
+ const printTableId = `${tableProps.id}_print`;
19947
+ const printTableLocalStorageKey = useUniqueTableId(printTableId);
19900
19948
  const defaultSettings = React__default.useMemo(() => ({
19901
19949
  columnFreezingIndex: tableMeta.columnFreezing.frozenColumnIndex,
19902
19950
  columnOrder: state.columnOrder,
@@ -19913,7 +19961,7 @@ function PrintButton(props) {
19913
19961
  const iframeTableProps = {
19914
19962
  ...tableProps,
19915
19963
  defaultSettings,
19916
- id: `${tableProps.id}_print`
19964
+ id: printTableId
19917
19965
  };
19918
19966
  useGlobalKeyDown({
19919
19967
  key: 'p',
@@ -19929,6 +19977,9 @@ function PrintButton(props) {
19929
19977
  var _loadingToastRef$curr;
19930
19978
  setIsPrinting(false);
19931
19979
  (_loadingToastRef$curr = loadingToastRef.current) === null || _loadingToastRef$curr === void 0 ? void 0 : _loadingToastRef$curr.close();
19980
+ // Remove print table settings after printing. Doing this will not only remove unwanted localstorage space, but
19981
+ // will also make sure that the table that is getting printed will always have the fresh table settings
19982
+ localStorage.removeItem(printTableLocalStorageKey);
19932
19983
  };
19933
19984
  const handleBeforePrint = () => {
19934
19985
  var _loadingToastRef$curr2;
@@ -20446,6 +20497,8 @@ const Table$1 = /*#__PURE__*/fixedForwardRef(function Table3(props, ref) {
20446
20497
  "data-taco": "table2-body",
20447
20498
  role: "rowgroup"
20448
20499
  }, renderBody())), /*#__PURE__*/React__default.createElement("div", {
20500
+ className: "border-grey-300 col-span-full -mt-px border-t"
20501
+ }), tableMeta.enableFooter ? /*#__PURE__*/React__default.createElement("div", {
20449
20502
  className: "group/footer contents",
20450
20503
  "data-taco": "table2-footer",
20451
20504
  role: "rowgroup"
@@ -20458,7 +20511,7 @@ const Table$1 = /*#__PURE__*/fixedForwardRef(function Table3(props, ref) {
20458
20511
  }, reactTable$1.flexRender(footer.column.columnDef.footer, footer.getContext()))))), length ? /*#__PURE__*/React__default.createElement(Summary$1, {
20459
20512
  length: length,
20460
20513
  table: table
20461
- }) : null)) : /*#__PURE__*/React__default.createElement("div", {
20514
+ }) : null) : null) : /*#__PURE__*/React__default.createElement("div", {
20462
20515
  className: "col-span-full min-h-[theme(spacing.8)]"
20463
20516
  }, EmptyState ? /*#__PURE__*/React__default.createElement(EmptyState, null) : null)));
20464
20517
  });