@purpurds/table 8.3.1 → 8.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 (82) hide show
  1. package/dist/LICENSE.txt +205 -35
  2. package/dist/drag-indicator-circle.d.ts +13 -0
  3. package/dist/drag-indicator-circle.d.ts.map +1 -0
  4. package/dist/draggable-table.d.ts +23 -0
  5. package/dist/draggable-table.d.ts.map +1 -0
  6. package/dist/empty-table.d.ts +14 -0
  7. package/dist/empty-table.d.ts.map +1 -0
  8. package/dist/loading-table-rows.d.ts +13 -0
  9. package/dist/loading-table-rows.d.ts.map +1 -0
  10. package/dist/styles.css +1 -1
  11. package/dist/table-body.d.ts +2 -2
  12. package/dist/table-body.d.ts.map +1 -1
  13. package/dist/table-column-header-cell.d.ts +15 -2
  14. package/dist/table-column-header-cell.d.ts.map +1 -1
  15. package/dist/table-content.d.ts +42 -0
  16. package/dist/table-content.d.ts.map +1 -0
  17. package/dist/table-headers.d.ts +28 -0
  18. package/dist/table-headers.d.ts.map +1 -0
  19. package/dist/table-row-cell-skeleton.d.ts +1 -1
  20. package/dist/table-row-cell-skeleton.d.ts.map +1 -1
  21. package/dist/table-row-cell.d.ts +5 -2
  22. package/dist/table-row-cell.d.ts.map +1 -1
  23. package/dist/table-row.d.ts +2 -2
  24. package/dist/table-row.d.ts.map +1 -1
  25. package/dist/table-settings-drawer.d.ts +44 -11
  26. package/dist/table-settings-drawer.d.ts.map +1 -1
  27. package/dist/table.cjs.js +89 -85
  28. package/dist/table.cjs.js.map +1 -1
  29. package/dist/table.d.ts +3 -3
  30. package/dist/table.d.ts.map +1 -1
  31. package/dist/table.es.js +14040 -9810
  32. package/dist/table.es.js.map +1 -1
  33. package/dist/test-utils/helpers.d.ts +1 -0
  34. package/dist/test-utils/helpers.d.ts.map +1 -1
  35. package/dist/types.d.ts +23 -2
  36. package/dist/types.d.ts.map +1 -1
  37. package/dist/use-drag-handle.hook.d.ts +15 -0
  38. package/dist/use-drag-handle.hook.d.ts.map +1 -0
  39. package/dist/use-drag-indicator-position.hook.d.ts +19 -0
  40. package/dist/use-drag-indicator-position.hook.d.ts.map +1 -0
  41. package/dist/use-drop-indicator.hook.d.ts +15 -0
  42. package/dist/use-drop-indicator.hook.d.ts.map +1 -0
  43. package/dist/use-element-visibility.hook.d.ts +4 -0
  44. package/dist/use-element-visibility.hook.d.ts.map +1 -0
  45. package/dist/use-table-scroll.hook.d.ts +6 -0
  46. package/dist/use-table-scroll.hook.d.ts.map +1 -0
  47. package/dist/utils/custom-keyboard-coordinates.d.ts +8 -0
  48. package/dist/utils/custom-keyboard-coordinates.d.ts.map +1 -0
  49. package/package.json +27 -23
  50. package/src/drag-indicator-circle.tsx +36 -0
  51. package/src/draggable-table.test.tsx +381 -0
  52. package/src/draggable-table.tsx +191 -0
  53. package/src/empty-table.tsx +54 -0
  54. package/src/loading-table-rows.tsx +41 -0
  55. package/src/table-body.tsx +1 -3
  56. package/src/table-column-header-cell.tsx +135 -64
  57. package/src/table-content-drag.test.tsx +505 -0
  58. package/src/table-content.tsx +165 -0
  59. package/src/table-dnd-integration.test.tsx +425 -0
  60. package/src/table-drag-and-drop.test.tsx +276 -0
  61. package/src/table-headers.tsx +118 -0
  62. package/src/table-row-cell-skeleton.tsx +1 -1
  63. package/src/table-row-cell.test.tsx +2 -1
  64. package/src/table-row-cell.tsx +42 -31
  65. package/src/table-row.tsx +1 -3
  66. package/src/table-settings-drawer.module.scss +165 -2
  67. package/src/table-settings-drawer.test.tsx +0 -99
  68. package/src/table-settings-drawer.tsx +359 -53
  69. package/src/table.module.scss +191 -30
  70. package/src/table.stories.tsx +60 -4
  71. package/src/table.test.tsx +5 -1
  72. package/src/table.tsx +255 -213
  73. package/src/test-utils/helpers.ts +2 -0
  74. package/src/types.ts +25 -2
  75. package/src/use-drag-handle.hook.tsx +60 -0
  76. package/src/use-drag-handle.test.tsx +380 -0
  77. package/src/use-drag-indicator-position.hook.ts +74 -0
  78. package/src/use-drop-indicator.hook.ts +46 -0
  79. package/src/use-element-visibility.hook.ts +28 -0
  80. package/src/use-table-scroll.hook.tsx +30 -0
  81. package/src/utils/custom-keyboard-coordinates.ts +83 -0
  82. package/vitest.setup.ts +1 -1
package/dist/table.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { default as React, ReactElement } from 'react';
2
2
  import { ColumnDef, ColumnFiltersState, CoreOptions, PaginationState, RowData, RowSelectionState, SortingState, TableOptions, VisibilityState } from '@tanstack/react-table';
3
3
  import { PaginationProps } from '@purpurds/pagination';
4
- import { WithActionBarProps, WithEmptyTableProps, WithLoadingProps, WithoutActionBarProps, WithoutEmptyTableProps, WithoutLoadingProps, WithoutRowSelectionProps, WithoutSortingProps, WithoutToolbarProps, WithRowSelectionProps, WithSortingProps, WithToolbarProps } from './types';
4
+ import { WithActionBarProps, WithColumnDragProps, WithEmptyTableProps, WithLoadingProps, WithoutActionBarProps, WithoutColumnDragProps, WithoutEmptyTableProps, WithoutLoadingProps, WithoutRowSelectionProps, WithoutSortingProps, WithoutToolbarProps, WithRowSelectionProps, WithSortingProps, WithToolbarProps } from './types';
5
5
 
6
6
  export { createColumnHelper } from '@tanstack/react-table';
7
7
  export type { ColumnDef, ColumnFiltersState, CoreOptions, PaginationState, RowData, RowSelectionState, SortingState, TableOptions, VisibilityState, };
@@ -16,9 +16,9 @@ export type TableProps<TData extends RowData> = {
16
16
  stickyFirstColumn?: boolean;
17
17
  onRowsCountChange?: (rowsCount: number) => void;
18
18
  drawerZIndex?: number;
19
- } & (WithToolbarProps | WithoutToolbarProps) & (WithSortingProps | WithoutSortingProps) & (WithActionBarProps | WithoutActionBarProps) & (WithEmptyTableProps | WithoutEmptyTableProps) & (WithoutLoadingProps | WithLoadingProps) & (WithoutRowSelectionProps | WithRowSelectionProps<TData>) & Partial<TableOptions<TData>>;
19
+ } & (WithToolbarProps | WithoutToolbarProps) & (WithSortingProps | WithoutSortingProps) & (WithActionBarProps | WithoutActionBarProps) & (WithEmptyTableProps | WithoutEmptyTableProps) & (WithoutLoadingProps | WithLoadingProps) & (WithoutRowSelectionProps | WithRowSelectionProps<TData>) & (WithColumnDragProps | WithoutColumnDragProps) & Partial<TableOptions<TData>>;
20
20
  export declare const Table: {
21
- <TData extends RowData>({ actionbarCopy, actionBarTotalRowCount, className, columns, data, emptyTableCopy, emptyTableHeadingTag, emptyTableIcon, enableActionBar, enableToolbar, exportDrawerCopy, exportFormats, fullWidth, loading, paginationComponent, rowSelectionAriaLabels, settingsDrawerCopy, showOnlySelectedRows, skeletonRows, sortingAriaLabels, state, stickyFirstColumn: stickyFirstColumnProp, stickyHeaders: stickyHeadersProp, toolbarCopy, toolbarTotalRowCount, variant, getRowId, onExportData, onRowsCountChange, onToggleExpand, onPrimaryButtonClick, onSecondaryButtonClick, setShowOnlySelectedRows, drawerZIndex, ...props }: TableProps<TData>): React.JSX.Element;
21
+ <TData extends RowData>({ actionbarCopy, actionBarTotalRowCount, className, columns, data, emptyTableCopy, emptyTableHeadingTag, emptyTableIcon, enableActionBar, enableToolbar, exportDrawerCopy, exportFormats, fullWidth, loading, paginationComponent, rowSelectionAriaLabels, settingsDrawerCopy, showOnlySelectedRows, skeletonRows, sortingAriaLabels, state, stickyFirstColumn: stickyFirstColumnProp, stickyHeaders: stickyHeadersProp, toolbarCopy, toolbarTotalRowCount, variant, getRowId, onExportData, onRowsCountChange, onToggleExpand, onPrimaryButtonClick, onSecondaryButtonClick, setShowOnlySelectedRows, drawerZIndex, enableColumnDrag, columnDragAriaLabelsCopy, ...props }: TableProps<TData>): React.JSX.Element;
22
22
  displayName: string;
23
23
  };
24
24
  //# sourceMappingURL=table.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../src/table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,YAAY,EAAsC,MAAM,OAAO,CAAC;AACrF,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,OAAO,EACP,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,eAAe,EAChB,MAAM,uBAAuB,CAAC;AAQ/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAI5D,YAAY,EACV,SAAS,EACT,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,OAAO,EACP,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,eAAe,GAChB,CAAC;AAaF,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,SAAS,CAAC;AAKjB,MAAM,MAAM,UAAU,CAAC,KAAK,SAAS,OAAO,IAAI;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;IAClC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC;IACvC,IAAI,EAAE,KAAK,EAAE,CAAC;IACd,mBAAmB,CAAC,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC;IACpD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,GAC1C,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,GACxC,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,GAC5C,CAAC,mBAAmB,GAAG,sBAAsB,CAAC,GAC9C,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,GACxC,CAAC,wBAAwB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC,GACzD,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;AAI/B,eAAO,MAAM,KAAK;KAAI,KAAK,SAAS,OAAO,mmBAoCxC,UAAU,CAAC,KAAK,CAAC;;CAmUnB,CAAC"}
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../src/table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,YAAY,EAA+C,MAAM,OAAO,CAAC;AAE9F,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,OAAO,EACP,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,eAAe,EAChB,MAAM,uBAAuB,CAAC;AAQ/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAK5D,YAAY,EACV,SAAS,EACT,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,OAAO,EACP,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,eAAe,GAChB,CAAC;AASF,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAMjB,MAAM,MAAM,UAAU,CAAC,KAAK,SAAS,OAAO,IAAI;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;IAClC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC;IACvC,IAAI,EAAE,KAAK,EAAE,CAAC;IACd,mBAAmB,CAAC,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC;IACpD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,GAC1C,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,GACxC,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,GAC5C,CAAC,mBAAmB,GAAG,sBAAsB,CAAC,GAC9C,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,GACxC,CAAC,wBAAwB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC,GACzD,CAAC,mBAAmB,GAAG,sBAAsB,CAAC,GAC9C,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;AAI/B,eAAO,MAAM,KAAK;KAAI,KAAK,SAAS,OAAO,+oBAsCxC,UAAU,CAAC,KAAK,CAAC;;CA6anB,CAAC"}