@charcuterie/ui 3.28.0 → 3.28.2

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 (46) hide show
  1. package/dist/Main/Main.js +1 -1
  2. package/dist/Main/Main.js.map +1 -1
  3. package/dist/Rail/Rail.js +1 -1
  4. package/dist/Rail/Rail.js.map +1 -1
  5. package/dist/Shell/Shell.js +1 -1
  6. package/dist/Shell/Shell.js.map +1 -1
  7. package/dist/VirtualizedGrid/ElementGrid.d.ts +7 -0
  8. package/dist/VirtualizedGrid/ElementGrid.d.ts.map +1 -0
  9. package/dist/VirtualizedGrid/ElementGrid.js +19 -0
  10. package/dist/VirtualizedGrid/ElementGrid.js.map +1 -0
  11. package/dist/VirtualizedGrid/GridRows.d.ts +4 -0
  12. package/dist/VirtualizedGrid/GridRows.d.ts.map +1 -0
  13. package/dist/VirtualizedGrid/GridRows.js +40 -0
  14. package/dist/VirtualizedGrid/GridRows.js.map +1 -0
  15. package/dist/VirtualizedGrid/VirtualizedGrid.d.ts +6 -8
  16. package/dist/VirtualizedGrid/VirtualizedGrid.d.ts.map +1 -1
  17. package/dist/VirtualizedGrid/VirtualizedGrid.js +30 -87
  18. package/dist/VirtualizedGrid/VirtualizedGrid.js.map +1 -1
  19. package/dist/VirtualizedGrid/WindowGrid.d.ts +3 -0
  20. package/dist/VirtualizedGrid/WindowGrid.d.ts.map +1 -0
  21. package/dist/VirtualizedGrid/WindowGrid.js +20 -0
  22. package/dist/VirtualizedGrid/WindowGrid.js.map +1 -0
  23. package/dist/VirtualizedGrid/virtualizedGridScroll.d.ts +25 -0
  24. package/dist/VirtualizedGrid/virtualizedGridScroll.d.ts.map +1 -0
  25. package/dist/VirtualizedGrid/virtualizedGridScroll.js +50 -0
  26. package/dist/VirtualizedGrid/virtualizedGridScroll.js.map +1 -0
  27. package/dist/VirtualizedGrid/virtualizedGridTypes.d.ts +27 -0
  28. package/dist/VirtualizedGrid/virtualizedGridTypes.d.ts.map +1 -0
  29. package/dist/VirtualizedGrid/virtualizedGridTypes.js +2 -0
  30. package/dist/VirtualizedGrid/virtualizedGridTypes.js.map +1 -0
  31. package/package.json +1 -1
  32. package/src/Main/Main.tsx +1 -1
  33. package/src/Rail/Rail.tsx +1 -1
  34. package/src/Shell/Shell.mdx +8 -0
  35. package/src/Shell/Shell.stories.tsx +24 -0
  36. package/src/Shell/Shell.test.tsx +29 -0
  37. package/src/Shell/Shell.tsx +1 -1
  38. package/src/VirtualizedGrid/ElementGrid.tsx +45 -0
  39. package/src/VirtualizedGrid/GridRows.tsx +90 -0
  40. package/src/VirtualizedGrid/VirtualizedGrid.mdx +9 -8
  41. package/src/VirtualizedGrid/VirtualizedGrid.stories.tsx +26 -0
  42. package/src/VirtualizedGrid/VirtualizedGrid.test.tsx +60 -1
  43. package/src/VirtualizedGrid/VirtualizedGrid.tsx +42 -142
  44. package/src/VirtualizedGrid/WindowGrid.tsx +39 -0
  45. package/src/VirtualizedGrid/virtualizedGridScroll.ts +69 -0
  46. package/src/VirtualizedGrid/virtualizedGridTypes.ts +32 -0
@@ -0,0 +1,32 @@
1
+ import type { VirtualItem } from "@tanstack/react-virtual"
2
+ import type { ReactNode, RefObject } from "react"
3
+
4
+ export type ScrollOwner =
5
+ | { kind: "element"; element: HTMLElement }
6
+ | { kind: "window" }
7
+
8
+ export type GridWindowProps<Item> = {
9
+ drawnColumns: number
10
+ gap: number
11
+ getItemKey?: (
12
+ item: Item,
13
+ index: number,
14
+ ) => string | number
15
+ itemBlockSize: number
16
+ items: readonly Item[]
17
+ label?: string
18
+ overscanRows: number
19
+ renderItem: (item: Item, index: number) => ReactNode
20
+ rowCount: number
21
+ }
22
+
23
+ export type GridRowsProps<Item> = Omit<
24
+ GridWindowProps<Item>,
25
+ "itemBlockSize" | "overscanRows" | "rowCount"
26
+ > & {
27
+ gridElement: RefObject<HTMLUListElement | null>
28
+ measureElement: (element: Element | null) => void
29
+ scrollMargin: number
30
+ totalSize: number
31
+ virtualRows: VirtualItem[]
32
+ }