slick-table 1.1.67 → 1.1.69

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 (68) hide show
  1. package/dist/index.cjs.js +88 -88
  2. package/dist/index.es.js +4274 -4221
  3. package/dist/types/features/header-context-menu/lib/index.d.ts +1 -1
  4. package/dist/types/features/header-context-menu/lib/index.d.ts.map +1 -1
  5. package/dist/types/features/header-context-menu/lib/visibility/getHidableColumnIds.d.ts +3 -0
  6. package/dist/types/features/header-context-menu/lib/visibility/getHidableColumnIds.d.ts.map +1 -0
  7. package/dist/types/features/header-context-menu/lib/visibility/hideColumns.d.ts +1 -1
  8. package/dist/types/features/header-context-menu/lib/visibility/hideColumns.d.ts.map +1 -1
  9. package/dist/types/features/header-context-menu/lib/visibility/index.d.ts +1 -0
  10. package/dist/types/features/header-context-menu/lib/visibility/index.d.ts.map +1 -1
  11. package/dist/types/features/header-context-menu/ui/ButtonCheckAll/ButtonCheckAll.d.ts +1 -1
  12. package/dist/types/features/header-context-menu/ui/ButtonCheckAll/ButtonCheckAll.d.ts.map +1 -1
  13. package/dist/types/features/header-context-menu/ui/ButtonUncheckAll/ButtonUncheckAll.d.ts +1 -2
  14. package/dist/types/features/header-context-menu/ui/ButtonUncheckAll/ButtonUncheckAll.d.ts.map +1 -1
  15. package/dist/types/features/header-context-menu/ui/HeaderContextMenu.d.ts.map +1 -1
  16. package/dist/types/features/header-context-menu/ui/Item/Item.d.ts +2 -2
  17. package/dist/types/features/header-context-menu/ui/Item/Item.d.ts.map +1 -1
  18. package/dist/types/index.d.ts +1 -1
  19. package/dist/types/index.d.ts.map +1 -1
  20. package/dist/types/shared/lib/localStrore/lib/getFromStorage.d.ts +4 -0
  21. package/dist/types/shared/lib/localStrore/lib/getFromStorage.d.ts.map +1 -0
  22. package/dist/types/shared/lib/localStrore/lib/index.d.ts +2 -2
  23. package/dist/types/shared/lib/localStrore/lib/index.d.ts.map +1 -1
  24. package/dist/types/shared/lib/localStrore/lib/updateStorage.d.ts +4 -0
  25. package/dist/types/shared/lib/localStrore/lib/updateStorage.d.ts.map +1 -0
  26. package/dist/types/shared/lib/localStrore/model/classes/HiddenColumns.d.ts +5 -0
  27. package/dist/types/shared/lib/localStrore/model/classes/HiddenColumns.d.ts.map +1 -0
  28. package/dist/types/shared/lib/localStrore/model/classes/Sorting.d.ts +7 -0
  29. package/dist/types/shared/lib/localStrore/model/classes/Sorting.d.ts.map +1 -0
  30. package/dist/types/shared/lib/localStrore/model/classes/index.d.ts +3 -0
  31. package/dist/types/shared/lib/localStrore/model/classes/index.d.ts.map +1 -0
  32. package/dist/types/shared/lib/localStrore/model/enums/EStorageKey.d.ts +1 -0
  33. package/dist/types/shared/lib/localStrore/model/enums/EStorageKey.d.ts.map +1 -1
  34. package/dist/types/shared/lib/localStrore/model/localStore.d.ts +3 -4
  35. package/dist/types/shared/lib/localStrore/model/localStore.d.ts.map +1 -1
  36. package/dist/types/shared/lib/slickgrid/model/SlickTable/column-picker/ColumnPicker.d.ts +5 -11
  37. package/dist/types/shared/lib/slickgrid/model/SlickTable/column-picker/ColumnPicker.d.ts.map +1 -1
  38. package/dist/types/shared/lib/slickgrid/ui/SlickgridTable/lib/hooks/useGrid.d.ts.map +1 -1
  39. package/dist/types/shared/model/types/IColumnPicker.d.ts +3 -2
  40. package/dist/types/shared/model/types/IColumnPicker.d.ts.map +1 -1
  41. package/package.json +1 -1
  42. package/src/features/header-context-menu/lib/index.ts +1 -1
  43. package/src/features/header-context-menu/lib/visibility/getHidableColumnIds.ts +8 -0
  44. package/src/features/header-context-menu/lib/visibility/hideColumns.ts +5 -5
  45. package/src/features/header-context-menu/lib/visibility/index.ts +1 -0
  46. package/src/features/header-context-menu/ui/ButtonCheckAll/ButtonCheckAll.tsx +4 -11
  47. package/src/features/header-context-menu/ui/ButtonUncheckAll/ButtonUncheckAll.tsx +11 -9
  48. package/src/features/header-context-menu/ui/HeaderContextMenu.tsx +18 -26
  49. package/src/features/header-context-menu/ui/Item/Item.tsx +11 -11
  50. package/src/index.ts +2 -0
  51. package/src/shared/lib/localStrore/lib/getFromStorage.ts +8 -0
  52. package/src/shared/lib/localStrore/lib/index.ts +2 -2
  53. package/src/shared/lib/localStrore/lib/updateStorage.ts +11 -0
  54. package/src/shared/lib/localStrore/model/classes/HiddenColumns.ts +14 -0
  55. package/src/shared/lib/localStrore/model/classes/Sorting.ts +20 -0
  56. package/src/shared/lib/localStrore/model/classes/index.ts +2 -0
  57. package/src/shared/lib/localStrore/model/enums/EStorageKey.ts +1 -0
  58. package/src/shared/lib/localStrore/model/localStore.ts +3 -23
  59. package/src/shared/lib/slickgrid/lib/sorting/ColumnSorter.ts +3 -3
  60. package/src/shared/lib/slickgrid/model/SlickTable/column-picker/ColumnPicker.ts +13 -23
  61. package/src/shared/lib/slickgrid/ui/SlickgridTable/lib/hooks/useGrid.ts +2 -8
  62. package/src/shared/model/types/IColumnPicker.ts +3 -2
  63. package/dist/types/shared/lib/localStrore/lib/getSorting.d.ts +0 -3
  64. package/dist/types/shared/lib/localStrore/lib/getSorting.d.ts.map +0 -1
  65. package/dist/types/shared/lib/localStrore/lib/setSorting.d.ts +0 -3
  66. package/dist/types/shared/lib/localStrore/lib/setSorting.d.ts.map +0 -1
  67. package/src/shared/lib/localStrore/lib/getSorting.ts +0 -5
  68. package/src/shared/lib/localStrore/lib/setSorting.ts +0 -8
@@ -1,3 +1,3 @@
1
1
  export { useSubscribeToEvent } from './hooks';
2
- export { hideColumns } from './visibility';
2
+ export { getHideableColumns, hideColumns } from './visibility';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/header-context-menu/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/header-context-menu/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IColumn, ISlickTable } from '../../../../shared/model/types';
2
+ export declare function getHideableColumns(table: ISlickTable): IColumn[];
3
+ //# sourceMappingURL=getHidableColumnIds.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getHidableColumnIds.d.ts","sourceRoot":"","sources":["../../../../../../src/features/header-context-menu/lib/visibility/getHidableColumnIds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE1D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,EAAE,CAKhE"}
@@ -1,2 +1,2 @@
1
- export declare function hideColumns(newChecked: string[]): void;
1
+ export declare function hideColumns(columnIds: string[]): void;
2
2
  //# sourceMappingURL=hideColumns.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hideColumns.d.ts","sourceRoot":"","sources":["../../../../../../src/features/header-context-menu/lib/visibility/hideColumns.ts"],"names":[],"mappings":"AAEA,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,QAe/C"}
1
+ {"version":3,"file":"hideColumns.d.ts","sourceRoot":"","sources":["../../../../../../src/features/header-context-menu/lib/visibility/hideColumns.ts"],"names":[],"mappings":"AAEA,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,QAe9C"}
@@ -1,2 +1,3 @@
1
1
  export { hideColumns } from './hideColumns';
2
+ export { getHideableColumns } from './getHidableColumnIds';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/features/header-context-menu/lib/visibility/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/features/header-context-menu/lib/visibility/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { Dispatch, FC, SetStateAction } from 'react';
2
2
  export declare const ButtonCheckAll: FC<IProps>;
3
3
  interface IProps {
4
- setChecked: Dispatch<SetStateAction<string[]>>;
4
+ setHidden: Dispatch<SetStateAction<string[]>>;
5
5
  }
6
6
  export {};
7
7
  //# sourceMappingURL=ButtonCheckAll.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonCheckAll.d.ts","sourceRoot":"","sources":["../../../../../../src/features/header-context-menu/ui/ButtonCheckAll/ButtonCheckAll.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAMrD,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,MAAM,CAqBrC,CAAC;AAEF,UAAU,MAAM;IACf,UAAU,EAAE,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CAC/C"}
1
+ {"version":3,"file":"ButtonCheckAll.d.ts","sourceRoot":"","sources":["../../../../../../src/features/header-context-menu/ui/ButtonCheckAll/ButtonCheckAll.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAIrD,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,MAAM,CAgBrC,CAAC;AAEF,UAAU,MAAM;IACf,SAAS,EAAE,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CAC9C"}
@@ -1,8 +1,7 @@
1
1
  import { Dispatch, FC, SetStateAction } from 'react';
2
2
  export declare const ButtonUncheckAll: FC<IProps>;
3
3
  interface IProps {
4
- checked: string[];
5
- setChecked: Dispatch<SetStateAction<string[]>>;
4
+ setHidden: Dispatch<SetStateAction<string[]>>;
6
5
  }
7
6
  export {};
8
7
  //# sourceMappingURL=ButtonUncheckAll.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonUncheckAll.d.ts","sourceRoot":"","sources":["../../../../../../src/features/header-context-menu/ui/ButtonUncheckAll/ButtonUncheckAll.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAIrD,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,MAAM,CAmBvC,CAAC;AAEF,UAAU,MAAM;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CAC/C"}
1
+ {"version":3,"file":"ButtonUncheckAll.d.ts","sourceRoot":"","sources":["../../../../../../src/features/header-context-menu/ui/ButtonUncheckAll/ButtonUncheckAll.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAMrD,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,MAAM,CAoBvC,CAAC;AAEF,UAAU,MAAM;IACf,SAAS,EAAE,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CAC9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderContextMenu.d.ts","sourceRoot":"","sources":["../../../../../src/features/header-context-menu/ui/HeaderContextMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAiC,MAAM,OAAO,CAAC;AAe1D,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,KAAK,CA6CvC,CAAC;AAEF,UAAU,KAAK;IACd,OAAO,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"HeaderContextMenu.d.ts","sourceRoot":"","sources":["../../../../../src/features/header-context-menu/ui/HeaderContextMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAsB,MAAM,OAAO,CAAC;AAgB/C,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,KAAK,CAoCvC,CAAC;AAEF,UAAU,KAAK;IACd,OAAO,EAAE,MAAM,CAAC;CAChB"}
@@ -1,10 +1,10 @@
1
1
  import { Dispatch, FC, SetStateAction } from 'react';
2
2
  export declare const Item: FC<IProps>;
3
3
  interface IProps {
4
- checked: string[];
4
+ hidden: string[];
5
5
  columnId: string;
6
6
  columnName: string;
7
- setChecked: Dispatch<SetStateAction<string[]>>;
7
+ setHidden: Dispatch<SetStateAction<string[]>>;
8
8
  }
9
9
  export {};
10
10
  //# sourceMappingURL=Item.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../../../../../src/features/header-context-menu/ui/Item/Item.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAMrD,eAAO,MAAM,IAAI,EAAE,EAAE,CAAC,MAAM,CAwB3B,CAAC;AAEF,UAAU,MAAM;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CAC/C"}
1
+ {"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../../../../../src/features/header-context-menu/ui/Item/Item.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAMrD,eAAO,MAAM,IAAI,EAAE,EAAE,CAAC,MAAM,CAwB3B,CAAC;AAEF,UAAU,MAAM;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CAC9C"}
@@ -1,5 +1,5 @@
1
1
  export { Skeleton } from './entities/skeleton';
2
- export { Autocomplete, ColumnPicker, ColumnSorter, DecoratorColumnFilter, DecoratorFilter, DefaultHotKeys, DefaultPrinter, DeletedRowsFilter, EditorAutocomplete, FORMATTER_NUMBER, Filter, HotKeysDecorator, PreventCopying, RedoUndoOnly, SlickTable, SlickgridTable, TotalCalculator, WithSummary, WithoutHotKeys, columnIsEdited, columnCheckboxSelector, commitCurrentEdit, copySelectedRows, eventContextMenu, formatterGroupTotals, formatterCheckMark, getDisplayedRows, getFormatterNumber, getNextId, handleHeaderButtons, headerButtons, highlightCell, highlightColumns, hotKeysCopy, hotKeysDelete, hotKeysRedo, hotKeysUndo, openColumnFilter, printerCheckMark, useListenIfTablesWereEdited, } from './shared/lib/slickgrid';
2
+ export { Autocomplete, ColumnPicker, ColumnSorter, DecoratorColumnFilter, DecoratorFilter, DefaultHotKeys, DefaultPrinter, DeletedRowsFilter, EditorAutocomplete, EditorSelectNumber, EditorSelectString, FORMATTER_NUMBER, Filter, HotKeysDecorator, PreventCopying, RedoUndoOnly, SlickTable, SlickgridTable, TotalCalculator, WithSummary, WithoutHotKeys, columnIsEdited, columnCheckboxSelector, commitCurrentEdit, copySelectedRows, eventContextMenu, formatterGroupTotals, formatterCheckMark, getDisplayedRows, getFormatterNumber, getNextId, handleHeaderButtons, headerButtons, highlightCell, highlightColumns, hotKeysCopy, hotKeysDelete, hotKeysRedo, hotKeysUndo, openColumnFilter, printerCheckMark, useListenIfTablesWereEdited, } from './shared/lib/slickgrid';
3
3
  export { formatNumber } from './shared/lib/format';
4
4
  export type { IColumn, IFilter, IFilterArguments, IFormatterNumberOptions, IHotKeysBehavior, IPrinter, ISlickTable, ITotalCalculator, } from './shared/model/types';
5
5
  export { BOLD, WINK } from './shared/model/consts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EACN,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,MAAM,EACN,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,UAAU,EACV,cAAc,EACd,eAAe,EACf,WAAW,EACX,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,SAAS,EACT,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,2BAA2B,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,YAAY,EACX,OAAO,EACP,OAAO,EACP,gBAAgB,EAChB,uBAAuB,EACvB,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,gBAAgB,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EACN,aAAa,EACb,mBAAmB,EACnB,SAAS,GACT,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EACN,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,MAAM,EACN,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,UAAU,EACV,cAAc,EACd,eAAe,EACf,WAAW,EACX,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,SAAS,EACT,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,2BAA2B,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,YAAY,EACX,OAAO,EACP,OAAO,EACP,gBAAgB,EAChB,uBAAuB,EACvB,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,gBAAgB,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EACN,aAAa,EACb,mBAAmB,EACnB,SAAS,GACT,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { EStorageKey } from '../model';
2
+ /** Returns value from local storage */
3
+ export declare function getFromStorage(key: EStorageKey): Record<string, any>;
4
+ //# sourceMappingURL=getFromStorage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getFromStorage.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/lib/localStrore/lib/getFromStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAe,MAAM,UAAU,CAAC;AAGpD,uCAAuC;AACvC,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAGpE"}
@@ -1,4 +1,4 @@
1
1
  export { getSlickTable } from './getSlickTable';
2
- export { getSorting } from './getSorting';
3
- export { setSorting } from './setSorting';
2
+ export { getFromStorage } from './getFromStorage';
3
+ export { updateStorage } from './updateStorage';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/lib/localStrore/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/lib/localStrore/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { EStorageKey } from '../model';
2
+ /** Saves value to local storage */
3
+ export declare function updateStorage(key: EStorageKey, value: any): void;
4
+ //# sourceMappingURL=updateStorage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateStorage.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/lib/localStrore/lib/updateStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,mCAAmC;AACnC,wBAAgB,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,QAMzD"}
@@ -0,0 +1,5 @@
1
+ export declare class HiddenColumns {
2
+ get(tableId: string): string[];
3
+ set(tableId: string, columnIds: string[]): void;
4
+ }
5
+ //# sourceMappingURL=HiddenColumns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HiddenColumns.d.ts","sourceRoot":"","sources":["../../../../../../../src/shared/lib/localStrore/model/classes/HiddenColumns.ts"],"names":[],"mappings":"AAGA,qBAAa,aAAa;IACzB,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAI9B,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;CAKxC"}
@@ -0,0 +1,7 @@
1
+ import { ILastSorting } from '../types';
2
+ export declare class Sorting {
3
+ get(tableId: string): ILastSorting | undefined;
4
+ reset(tableId: string): void;
5
+ set(tableId: string, columnId: string | number, isAscending: boolean): void;
6
+ }
7
+ //# sourceMappingURL=Sorting.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sorting.d.ts","sourceRoot":"","sources":["../../../../../../../src/shared/lib/localStrore/model/classes/Sorting.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,qBAAa,OAAO;IACnB,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAI9C,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK5B,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,IAAI;CAK3E"}
@@ -0,0 +1,3 @@
1
+ export { HiddenColumns } from './HiddenColumns';
2
+ export { Sorting } from './Sorting';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/shared/lib/localStrore/model/classes/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export declare enum EStorageKey {
2
+ hiddenColumnIds = "hidden-column-ids",
2
3
  slickTable = "slick-table",
3
4
  sorting = "sorting"
4
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EStorageKey.d.ts","sourceRoot":"","sources":["../../../../../../../src/shared/lib/localStrore/model/enums/EStorageKey.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACtB,UAAU,gBAAgB;IAC1B,OAAO,YAAY;CACnB"}
1
+ {"version":3,"file":"EStorageKey.d.ts","sourceRoot":"","sources":["../../../../../../../src/shared/lib/localStrore/model/enums/EStorageKey.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACtB,eAAe,sBAAsB;IACrC,UAAU,gBAAgB;IAC1B,OAAO,YAAY;CACnB"}
@@ -1,8 +1,7 @@
1
- import { ILastSorting } from './types';
1
+ import { HiddenColumns, Sorting } from './classes';
2
2
  declare class LocalStore {
3
- getTableSorting(tableId: string): ILastSorting | undefined;
4
- resetTableSorting(tableId: string): void;
5
- setTableSorting(tableId: string, columnId: string | number, isAscending: boolean): void;
3
+ hiddenColumns: HiddenColumns;
4
+ sorting: Sorting;
6
5
  }
7
6
  export declare const localStore: LocalStore;
8
7
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"localStore.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/lib/localStrore/model/localStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAe,MAAM,SAAS,CAAC;AAEpD,cAAM,UAAU;IACf,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAK1D,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAMxC,eAAe,CACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,WAAW,EAAE,OAAO,GAClB,IAAI;CAMP;AAED,eAAO,MAAM,UAAU,YAAmB,CAAC"}
1
+ {"version":3,"file":"localStore.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/lib/localStrore/model/localStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEnD,cAAM,UAAU;IACf,aAAa,gBAAuB;IACpC,OAAO,UAAiB;CACxB;AAED,eAAO,MAAM,UAAU,YAAmB,CAAC"}
@@ -1,17 +1,11 @@
1
1
  import { IColumn, IColumnPicker } from '../../../../../model/types';
2
2
  export declare class ColumnPicker implements IColumnPicker {
3
3
  private _initialColumns;
4
- private _visibleColumnIds;
5
4
  private _hiddenColumnIds;
6
- constructor({ hiddenColumnIds }?: IOptions);
7
- get visibleColumnIds(): string[];
8
- set visibleColumnIds(ids: string[]);
9
- get initialColumns(): IColumn[];
10
- set initialColumns(columns: IColumn[]);
5
+ private _tableId;
6
+ getInitialColumns(): IColumn[];
7
+ setInitialColumns(columns: IColumn[], tableId: string): void;
8
+ get hiddenColumnIds(): string[];
9
+ set hiddenColumnIds(columnIds: string[]);
11
10
  }
12
- interface IOptions {
13
- /** Columns with specified IDs will be initially hidden. */
14
- hiddenColumnIds?: string[];
15
- }
16
- export {};
17
11
  //# sourceMappingURL=ColumnPicker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnPicker.d.ts","sourceRoot":"","sources":["../../../../../../../../src/shared/lib/slickgrid/model/SlickTable/column-picker/ColumnPicker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAE5D,qBAAa,YAAa,YAAW,aAAa;IACjD,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,iBAAiB,CAAgB;IACzC,OAAO,CAAC,gBAAgB,CAAgB;gBAE5B,EAAE,eAAe,EAAE,GAAE,QAAa;IAI9C,IAAI,gBAAgB,aAEnB;IACD,IAAI,gBAAgB,CAAC,GAAG,UAAA,EAEvB;IAED,IAAI,cAAc,cAEjB;IACD,IAAI,cAAc,CAAC,OAAO,WAAA,EAOzB;CACD;AAED,UAAU,QAAQ;IACjB,2DAA2D;IAC3D,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B"}
1
+ {"version":3,"file":"ColumnPicker.d.ts","sourceRoot":"","sources":["../../../../../../../../src/shared/lib/slickgrid/model/SlickTable/column-picker/ColumnPicker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAE5D,qBAAa,YAAa,YAAW,aAAa;IACjD,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,gBAAgB,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAM;IAEtB,iBAAiB,IAAI,OAAO,EAAE;IAG9B,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAM5D,IAAI,eAAe,aAElB;IACD,IAAI,eAAe,CAAC,SAAS,UAAA,EAG5B;CACD"}
@@ -1 +1 @@
1
- {"version":3,"file":"useGrid.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/shared/lib/slickgrid/ui/SlickgridTable/lib/hooks/useGrid.ts"],"names":[],"mappings":"AACA,OAAO,EACN,OAAO,EACP,oBAAoB,EACpB,qBAAqB,EAOrB,MAAM,WAAW,CAAC;AAYnB,OAAO,EAAE,KAAK,EAAkB,MAAM,aAAa,CAAC;AAEpD,wBAAgB,OAAO,CAAC,EACvB,aAAiC,EACjC,kBAAkB,EAClB,SAAiB,EACjB,YAAqB,EACrB,OAAO,EACP,eAAe,EACf,MAAM,EACN,cAAqB,EACrB,KAAK,EACL,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,OAAO,EACP,UAAU,EACV,mBAAmB,EACnB,YAAY,EACZ,YAAY,EACZ,iBAAkC,EAClC,qBAAqB,EACrB,OAAY,EACZ,KAAK,GACL,EAAE,KAAK,GAAG;IACV,WAAW,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC3C,YAAY,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;CAC7C,QAiIA"}
1
+ {"version":3,"file":"useGrid.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/shared/lib/slickgrid/ui/SlickgridTable/lib/hooks/useGrid.ts"],"names":[],"mappings":"AACA,OAAO,EACN,OAAO,EACP,oBAAoB,EACpB,qBAAqB,EAOrB,MAAM,WAAW,CAAC;AAYnB,OAAO,EAAE,KAAK,EAAkB,MAAM,aAAa,CAAC;AAEpD,wBAAgB,OAAO,CAAC,EACvB,aAAiC,EACjC,kBAAkB,EAClB,SAAiB,EACjB,YAAqB,EACrB,OAAO,EACP,eAAe,EACf,MAAM,EACN,cAAqB,EACrB,KAAK,EACL,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,OAAO,EACP,UAAU,EACV,mBAAmB,EACnB,YAAY,EACZ,YAAY,EACZ,iBAAkC,EAClC,qBAAqB,EACrB,OAAY,EACZ,KAAK,GACL,EAAE,KAAK,GAAG;IACV,WAAW,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC3C,YAAY,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;CAC7C,QA2HA"}
@@ -1,6 +1,7 @@
1
1
  import { IColumn } from './IColumn';
2
2
  export interface IColumnPicker {
3
- initialColumns: IColumn[];
4
- visibleColumnIds: string[];
3
+ hiddenColumnIds: string[];
4
+ getInitialColumns(): IColumn[];
5
+ setInitialColumns(columns: IColumn[], tableId: string): void;
5
6
  }
6
7
  //# sourceMappingURL=IColumnPicker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IColumnPicker.d.ts","sourceRoot":"","sources":["../../../../../src/shared/model/types/IColumnPicker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,WAAW,aAAa;IAC7B,cAAc,EAAE,OAAO,EAAE,CAAC;IAC1B,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC3B"}
1
+ {"version":3,"file":"IColumnPicker.d.ts","sourceRoot":"","sources":["../../../../../src/shared/model/types/IColumnPicker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,WAAW,aAAa;IAC7B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,iBAAiB,IAAI,OAAO,EAAE,CAAC;IAC/B,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7D"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "slick-table",
3
- "version": "1.1.67",
3
+ "version": "1.1.69",
4
4
  "description": "Enhanced version of SlickGrid library",
5
5
  "private": false,
6
6
  "type": "module",
@@ -1,2 +1,2 @@
1
1
  export { useSubscribeToEvent } from "./hooks";
2
- export { hideColumns } from "./visibility";
2
+ export { getHideableColumns, hideColumns } from "./visibility";
@@ -0,0 +1,8 @@
1
+ import { IColumn, ISlickTable } from "shared/model/types";
2
+
3
+ export function getHideableColumns(table: ISlickTable): IColumn[] {
4
+ if (!table?.columnPicker) return [];
5
+ return table.columnPicker
6
+ .getInitialColumns()
7
+ .filter(({ id }) => id !== "_checkbox_selector" && id !== "isEdited");
8
+ }
@@ -1,15 +1,15 @@
1
1
  import { eventHeaderContextMenu, headerButtons } from "shared/lib/slickgrid";
2
2
 
3
- export function hideColumns(newChecked: string[]) {
3
+ export function hideColumns(columnIds: string[]) {
4
4
  const table = eventHeaderContextMenu.table;
5
5
  if (!table?.columnPicker) return;
6
- table.columnPicker.visibleColumnIds = [...newChecked];
6
+ table.columnPicker.hiddenColumnIds = [...columnIds];
7
7
  const grid = table.grid;
8
8
  if (!grid) return;
9
9
  grid.setColumns(
10
- table.columnPicker.initialColumns.filter(({ id }) =>
11
- newChecked.includes(id as string),
12
- ),
10
+ table.columnPicker
11
+ .getInitialColumns()
12
+ .filter(({ id }) => !columnIds.includes(id as string)),
13
13
  );
14
14
  const args = table.filter.args;
15
15
  table.filter.register(grid, table.id);
@@ -1 +1,2 @@
1
1
  export { hideColumns } from "./hideColumns";
2
+ export { getHideableColumns } from "./getHidableColumnIds";
@@ -1,19 +1,12 @@
1
1
  import { Button } from "@mui/material";
2
2
  import { Dispatch, FC, SetStateAction } from "react";
3
3
 
4
- import { eventHeaderContextMenu } from "shared/lib/slickgrid";
5
-
6
4
  import { hideColumns } from "../../lib";
7
5
 
8
- export const ButtonCheckAll: FC<IProps> = ({ setChecked }) => {
6
+ export const ButtonCheckAll: FC<IProps> = ({ setHidden }) => {
9
7
  function onClick() {
10
- const table = eventHeaderContextMenu.table;
11
- if (!table?.columnPicker) return;
12
- const newChecked = table.columnPicker.initialColumns.map(
13
- ({ id }) => id,
14
- ) as string[];
15
- setChecked(newChecked);
16
- hideColumns(newChecked);
8
+ setHidden([]);
9
+ hideColumns([]);
17
10
  }
18
11
 
19
12
  return (
@@ -29,5 +22,5 @@ export const ButtonCheckAll: FC<IProps> = ({ setChecked }) => {
29
22
  };
30
23
 
31
24
  interface IProps {
32
- setChecked: Dispatch<SetStateAction<string[]>>;
25
+ setHidden: Dispatch<SetStateAction<string[]>>;
33
26
  }
@@ -1,15 +1,18 @@
1
1
  import { Button } from "@mui/material";
2
2
  import { Dispatch, FC, SetStateAction } from "react";
3
3
 
4
- import { hideColumns } from "../../lib";
4
+ import { eventHeaderContextMenu } from "shared/lib/slickgrid";
5
5
 
6
- export const ButtonUncheckAll: FC<IProps> = ({ checked, setChecked }) => {
6
+ import { getHideableColumns, hideColumns } from "../../lib";
7
+
8
+ export const ButtonUncheckAll: FC<IProps> = ({ setHidden }) => {
7
9
  function onClick() {
8
- const newChecked = checked.filter(
9
- (id) => id === "_checkbox_selector" || id === "isEdited",
10
- );
11
- setChecked(newChecked);
12
- hideColumns(newChecked);
10
+ const table = eventHeaderContextMenu.table;
11
+ if (!table) return;
12
+ const columns = getHideableColumns(table);
13
+ const columnIds = columns.map(({ id }) => id as string);
14
+ setHidden(columnIds);
15
+ hideColumns(columnIds);
13
16
  }
14
17
 
15
18
  return (
@@ -25,6 +28,5 @@ export const ButtonUncheckAll: FC<IProps> = ({ checked, setChecked }) => {
25
28
  };
26
29
 
27
30
  interface IProps {
28
- checked: string[];
29
- setChecked: Dispatch<SetStateAction<string[]>>;
31
+ setHidden: Dispatch<SetStateAction<string[]>>;
30
32
  }
@@ -1,10 +1,11 @@
1
- import { FC, Fragment, useEffect, useState } from "react";
1
+ import { FC, Fragment, useState } from "react";
2
2
 
3
+ import { localStore } from "shared/lib/localStrore";
3
4
  import { eventHeaderContextMenu } from "shared/lib/slickgrid";
4
5
 
5
6
  import { Overlay, Popup } from "entities/popup";
6
7
 
7
- import { useSubscribeToEvent } from "../lib";
8
+ import { getHideableColumns, useSubscribeToEvent } from "../lib";
8
9
  import { HEADER_CONTEXT_MENU } from "../model";
9
10
  import { ButtonCheckAll } from "./ButtonCheckAll";
10
11
  import { ButtonUncheckAll } from "./ButtonUncheckAll";
@@ -14,18 +15,13 @@ import { Title } from "./Title";
14
15
  import Styled from "./HeaderContextMenu.style";
15
16
 
16
17
  export const HeaderContextMenu: FC<Props> = ({ tableId }) => {
17
- const [checked, setChecked] = useState<string[]>([]);
18
+ const [hidden, setHidden] = useState<string[]>(
19
+ localStore.hiddenColumns.get(tableId),
20
+ );
18
21
  const [isOpened, setIsOpened] = useState(false);
19
22
 
20
23
  useSubscribeToEvent(setIsOpened, tableId);
21
24
 
22
- useEffect(() => {
23
- if (!isOpened) return;
24
- const table = eventHeaderContextMenu.table;
25
- if (!table?.columnPicker) return;
26
- setChecked([...table.columnPicker.visibleColumnIds]);
27
- }, [isOpened]);
28
-
29
25
  if (!isOpened) return null;
30
26
  const table = eventHeaderContextMenu.table;
31
27
  if (!table?.columnPicker) return null;
@@ -36,24 +32,20 @@ export const HeaderContextMenu: FC<Props> = ({ tableId }) => {
36
32
  <Popup id={HEADER_CONTEXT_MENU}>
37
33
  <Title />
38
34
  <Styled.ItemsGroup>
39
- {table.columnPicker.initialColumns
40
- .filter(
41
- ({ id }) => id !== "_checkbox_selector" && id !== "isEdited",
42
- )
43
- .map(({ id, name }) => (
44
- <Fragment key={id}>
45
- <Item
46
- checked={checked}
47
- columnId={id as string}
48
- columnName={name as string}
49
- setChecked={setChecked}
50
- />
51
- </Fragment>
52
- ))}
35
+ {getHideableColumns(table).map(({ id, name }) => (
36
+ <Fragment key={id}>
37
+ <Item
38
+ columnId={id as string}
39
+ columnName={name as string}
40
+ hidden={hidden}
41
+ setHidden={setHidden}
42
+ />
43
+ </Fragment>
44
+ ))}
53
45
  </Styled.ItemsGroup>
54
46
  <Styled.ButtonsGroup className={"header-context-menu-footer"}>
55
- <ButtonCheckAll setChecked={setChecked} />
56
- <ButtonUncheckAll checked={checked} setChecked={setChecked} />
47
+ <ButtonCheckAll setHidden={setHidden} />
48
+ <ButtonUncheckAll setHidden={setHidden} />
57
49
  </Styled.ButtonsGroup>
58
50
  </Popup>
59
51
  </Fragment>
@@ -6,34 +6,34 @@ import { hideColumns } from "../../lib";
6
6
  import Styled from "./Item.style";
7
7
 
8
8
  export const Item: FC<IProps> = ({
9
- checked,
9
+ hidden,
10
10
  columnId,
11
11
  columnName,
12
- setChecked,
12
+ setHidden,
13
13
  }) => {
14
14
  function onClick() {
15
- const index = checked.indexOf(columnId);
16
- const newChecked = [...checked];
15
+ const index = hidden.indexOf(columnId);
16
+ const hiddenCopy = [...hidden];
17
17
  if (~index) {
18
- newChecked.splice(index, 1);
18
+ hiddenCopy.splice(index, 1);
19
19
  } else {
20
- newChecked.push(columnId);
20
+ hiddenCopy.push(columnId);
21
21
  }
22
- setChecked(newChecked);
23
- hideColumns(newChecked);
22
+ setHidden(hiddenCopy);
23
+ hideColumns(hiddenCopy);
24
24
  }
25
25
 
26
26
  return (
27
27
  <Styled.Button onClick={onClick}>
28
- <Styled.Checkbox checked={checked.includes(columnId)} size={"small"} />
28
+ <Styled.Checkbox checked={!hidden.includes(columnId)} size={"small"} />
29
29
  <Box>{columnName}</Box>
30
30
  </Styled.Button>
31
31
  );
32
32
  };
33
33
 
34
34
  interface IProps {
35
- checked: string[];
35
+ hidden: string[];
36
36
  columnId: string;
37
37
  columnName: string;
38
- setChecked: Dispatch<SetStateAction<string[]>>;
38
+ setHidden: Dispatch<SetStateAction<string[]>>;
39
39
  }
package/src/index.ts CHANGED
@@ -9,6 +9,8 @@ export {
9
9
  DefaultPrinter,
10
10
  DeletedRowsFilter,
11
11
  EditorAutocomplete,
12
+ EditorSelectNumber,
13
+ EditorSelectString,
12
14
  FORMATTER_NUMBER,
13
15
  Filter,
14
16
  HotKeysDecorator,
@@ -0,0 +1,8 @@
1
+ import { EStorageKey, ISlickTable } from "../model";
2
+ import { getSlickTable } from "./getSlickTable";
3
+
4
+ /** Returns value from local storage */
5
+ export function getFromStorage(key: EStorageKey): Record<string, any> {
6
+ const slickTable: ISlickTable = getSlickTable();
7
+ return slickTable[key] || {};
8
+ }
@@ -1,3 +1,3 @@
1
1
  export { getSlickTable } from "./getSlickTable";
2
- export { getSorting } from "./getSorting";
3
- export { setSorting } from "./setSorting";
2
+ export { getFromStorage } from "./getFromStorage";
3
+ export { updateStorage } from "./updateStorage";
@@ -0,0 +1,11 @@
1
+ import { EStorageKey } from "../model";
2
+ import { getSlickTable } from "./getSlickTable";
3
+
4
+ /** Saves value to local storage */
5
+ export function updateStorage(key: EStorageKey, value: any) {
6
+ const slickTable = getSlickTable();
7
+ localStorage.setItem(
8
+ EStorageKey.slickTable,
9
+ JSON.stringify({ ...slickTable, [key]: value }),
10
+ );
11
+ }
@@ -0,0 +1,14 @@
1
+ import { getFromStorage, updateStorage } from "../../lib";
2
+ import { EStorageKey } from "../index";
3
+
4
+ export class HiddenColumns {
5
+ get(tableId: string): string[] {
6
+ const hidden = getFromStorage(EStorageKey.hiddenColumnIds);
7
+ return hidden[tableId] || [];
8
+ }
9
+ set(tableId: string, columnIds: string[]) {
10
+ const hidden = getFromStorage(EStorageKey.hiddenColumnIds);
11
+ hidden[tableId] = columnIds.length ? columnIds : undefined;
12
+ updateStorage(EStorageKey.hiddenColumnIds, hidden);
13
+ }
14
+ }
@@ -0,0 +1,20 @@
1
+ import { getFromStorage, updateStorage } from "../../lib";
2
+ import { EStorageKey } from "../enums";
3
+ import { ILastSorting } from "../types";
4
+
5
+ export class Sorting {
6
+ get(tableId: string): ILastSorting | undefined {
7
+ const sorting = getFromStorage(EStorageKey.sorting);
8
+ return sorting[tableId];
9
+ }
10
+ reset(tableId: string): void {
11
+ const sorting = getFromStorage(EStorageKey.sorting);
12
+ sorting[tableId] = undefined;
13
+ updateStorage(EStorageKey.sorting, sorting);
14
+ }
15
+ set(tableId: string, columnId: string | number, isAscending: boolean): void {
16
+ const sorting = getFromStorage(EStorageKey.sorting);
17
+ sorting[tableId] = { columnId, isAscending };
18
+ updateStorage(EStorageKey.sorting, sorting);
19
+ }
20
+ }
@@ -0,0 +1,2 @@
1
+ export { HiddenColumns } from "./HiddenColumns";
2
+ export { Sorting } from "./Sorting";
@@ -1,4 +1,5 @@
1
1
  export enum EStorageKey {
2
+ hiddenColumnIds = "hidden-column-ids",
2
3
  slickTable = "slick-table",
3
4
  sorting = "sorting",
4
5
  }