@economic/taco 2.4.2 → 2.5.0

Sign up to get free protection for your applications and to get access to all the features.
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
  });