@snack-uikit/table 0.32.0 → 0.33.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 (62) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +2 -2
  3. package/dist/cjs/components/ServerTable/ServerTable.js +1 -4
  4. package/dist/cjs/components/Table/Table.js +47 -16
  5. package/dist/cjs/components/Table/hooks/useSaveTableSettings/index.d.ts +1 -0
  6. package/dist/cjs/components/Table/hooks/useSaveTableSettings/index.js +25 -0
  7. package/dist/cjs/components/Table/hooks/useSaveTableSettings/types.d.ts +7 -0
  8. package/dist/cjs/components/Table/hooks/useSaveTableSettings/types.js +5 -0
  9. package/dist/cjs/components/Table/hooks/useSaveTableSettings/useSaveTableSettings.d.ts +12 -0
  10. package/dist/cjs/components/Table/hooks/useSaveTableSettings/useSaveTableSettings.js +44 -0
  11. package/dist/cjs/components/Table/hooks/useSaveTableSettings/utils/index.d.ts +2 -0
  12. package/dist/cjs/components/Table/hooks/useSaveTableSettings/utils/index.js +26 -0
  13. package/dist/cjs/components/Table/hooks/useSaveTableSettings/utils/parser.d.ts +3 -0
  14. package/dist/cjs/components/Table/hooks/useSaveTableSettings/utils/parser.js +42 -0
  15. package/dist/cjs/components/Table/hooks/useSaveTableSettings/utils/serializer.d.ts +3 -0
  16. package/dist/cjs/components/Table/hooks/useSaveTableSettings/utils/serializer.js +43 -0
  17. package/dist/cjs/components/Table/hooks/useSaveTableSettings/vallidators.d.ts +5 -0
  18. package/dist/cjs/components/Table/hooks/useSaveTableSettings/vallidators.js +12 -0
  19. package/dist/cjs/components/Table/hooks/useStateControl.d.ts +1 -4
  20. package/dist/cjs/components/Table/hooks/useStateControl.js +7 -9
  21. package/dist/cjs/components/types.d.ts +1 -0
  22. package/dist/cjs/constants.d.ts +3 -0
  23. package/dist/cjs/constants.js +5 -2
  24. package/dist/cjs/utils.d.ts +1 -0
  25. package/dist/cjs/utils.js +14 -2
  26. package/dist/esm/components/ServerTable/ServerTable.js +1 -1
  27. package/dist/esm/components/Table/Table.js +39 -8
  28. package/dist/esm/components/Table/hooks/useSaveTableSettings/index.d.ts +1 -0
  29. package/dist/esm/components/Table/hooks/useSaveTableSettings/index.js +1 -0
  30. package/dist/esm/components/Table/hooks/useSaveTableSettings/types.d.ts +7 -0
  31. package/dist/esm/components/Table/hooks/useSaveTableSettings/types.js +1 -0
  32. package/dist/esm/components/Table/hooks/useSaveTableSettings/useSaveTableSettings.d.ts +12 -0
  33. package/dist/esm/components/Table/hooks/useSaveTableSettings/useSaveTableSettings.js +26 -0
  34. package/dist/esm/components/Table/hooks/useSaveTableSettings/utils/index.d.ts +2 -0
  35. package/dist/esm/components/Table/hooks/useSaveTableSettings/utils/index.js +2 -0
  36. package/dist/esm/components/Table/hooks/useSaveTableSettings/utils/parser.d.ts +3 -0
  37. package/dist/esm/components/Table/hooks/useSaveTableSettings/utils/parser.js +30 -0
  38. package/dist/esm/components/Table/hooks/useSaveTableSettings/utils/serializer.d.ts +3 -0
  39. package/dist/esm/components/Table/hooks/useSaveTableSettings/utils/serializer.js +34 -0
  40. package/dist/esm/components/Table/hooks/useSaveTableSettings/vallidators.d.ts +5 -0
  41. package/dist/esm/components/Table/hooks/useSaveTableSettings/vallidators.js +5 -0
  42. package/dist/esm/components/Table/hooks/useStateControl.d.ts +1 -4
  43. package/dist/esm/components/Table/hooks/useStateControl.js +7 -9
  44. package/dist/esm/components/types.d.ts +1 -0
  45. package/dist/esm/constants.d.ts +3 -0
  46. package/dist/esm/constants.js +3 -0
  47. package/dist/esm/utils.d.ts +1 -0
  48. package/dist/esm/utils.js +10 -0
  49. package/package.json +17 -16
  50. package/src/components/ServerTable/ServerTable.tsx +1 -1
  51. package/src/components/Table/Table.tsx +72 -11
  52. package/src/components/Table/hooks/useSaveTableSettings/index.ts +1 -0
  53. package/src/components/Table/hooks/useSaveTableSettings/types.ts +8 -0
  54. package/src/components/Table/hooks/useSaveTableSettings/useSaveTableSettings.ts +54 -0
  55. package/src/components/Table/hooks/useSaveTableSettings/utils/index.ts +2 -0
  56. package/src/components/Table/hooks/useSaveTableSettings/utils/parser.ts +40 -0
  57. package/src/components/Table/hooks/useSaveTableSettings/utils/serializer.ts +53 -0
  58. package/src/components/Table/hooks/useSaveTableSettings/vallidators.ts +17 -0
  59. package/src/components/Table/hooks/useStateControl.ts +12 -10
  60. package/src/components/types.ts +1 -0
  61. package/src/constants.tsx +3 -0
  62. package/src/utils.ts +14 -0
package/src/utils.ts CHANGED
@@ -22,3 +22,17 @@ export const preciseFilter: FilterFn<any> = (row, columnId, value, addMeta) => {
22
22
 
23
23
  return itemRank.passed;
24
24
  };
25
+
26
+ const isDateString = (value: unknown): value is string => typeof value === 'string' && !isNaN(Number(new Date(value)));
27
+ export const customDateParser = <T>(value: Record<string, unknown>): T =>
28
+ Object.fromEntries(
29
+ Object.entries(value).map(([key, value]) => {
30
+ if (isDateString(value)) {
31
+ return [key, new Date(value)];
32
+ }
33
+ if (Array.isArray(value) && value.some(isDateString)) {
34
+ return [key, value.map(element => (isDateString(element) ? new Date(element) : element))];
35
+ }
36
+ return [key, value];
37
+ }),
38
+ ) as T;