@legendapp/list 2.0.0-beta.0 → 2.0.0-beta.1

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.
package/index.d.mts CHANGED
@@ -204,7 +204,7 @@ interface LegendListSpecificProps<ItemT, TItemType extends string | undefined> {
204
204
  /**
205
205
  * Called when the viewability of items changes.
206
206
  */
207
- onViewableItemsChanged?: OnViewableItemsChanged | undefined;
207
+ onViewableItemsChanged?: OnViewableItemsChanged<ItemT> | undefined;
208
208
  /**
209
209
  * Offset in pixels for the refresh indicator.
210
210
  * @default 0
@@ -242,7 +242,7 @@ interface LegendListSpecificProps<ItemT, TItemType extends string | undefined> {
242
242
  /**
243
243
  * Pairs of viewability configs and their callbacks for tracking visibility.
244
244
  */
245
- viewabilityConfigCallbackPairs?: ViewabilityConfigCallbackPairs | undefined;
245
+ viewabilityConfigCallbackPairs?: ViewabilityConfigCallbackPairs<ItemT> | undefined;
246
246
  /**
247
247
  * If true, delays rendering until initial layout is complete.
248
248
  * @default false
@@ -310,7 +310,7 @@ interface InternalState {
310
310
  nativeMarginTop: number;
311
311
  indexByKey: Map<string, number>;
312
312
  idCache: Map<number, string>;
313
- viewabilityConfigCallbackPairs: ViewabilityConfigCallbackPairs | undefined;
313
+ viewabilityConfigCallbackPairs: ViewabilityConfigCallbackPairs<any> | undefined;
314
314
  scrollHistory: Array<{
315
315
  scroll: number;
316
316
  time: number;
@@ -405,6 +405,7 @@ interface LegendListRenderItemProps<ItemT, TItemType extends string | number | u
405
405
  item: ItemT;
406
406
  type: TItemType;
407
407
  index: number;
408
+ data: readonly ItemT[];
408
409
  extraData: any;
409
410
  }
410
411
  type ScrollState = {
@@ -538,14 +539,14 @@ interface ViewAmountToken<ItemT = any> extends ViewToken<ItemT> {
538
539
  percentOfScroller: number;
539
540
  scrollSize: number;
540
541
  }
541
- interface ViewabilityConfigCallbackPair {
542
+ interface ViewabilityConfigCallbackPair<ItemT> {
542
543
  viewabilityConfig: ViewabilityConfig;
543
- onViewableItemsChanged?: OnViewableItemsChanged;
544
+ onViewableItemsChanged?: OnViewableItemsChanged<ItemT>;
544
545
  }
545
- type ViewabilityConfigCallbackPairs = ViewabilityConfigCallbackPair[];
546
- type OnViewableItemsChanged = ((info: {
547
- viewableItems: Array<ViewToken>;
548
- changed: Array<ViewToken>;
546
+ type ViewabilityConfigCallbackPairs<ItemT> = ViewabilityConfigCallbackPair<ItemT>[];
547
+ type OnViewableItemsChanged<ItemT> = ((info: {
548
+ viewableItems: Array<ViewToken<ItemT>>;
549
+ changed: Array<ViewToken<ItemT>>;
549
550
  }) => void) | null;
550
551
  interface ViewabilityConfig {
551
552
  /**
@@ -576,8 +577,8 @@ interface ViewabilityConfig {
576
577
  */
577
578
  waitForInteraction?: boolean | undefined;
578
579
  }
579
- type ViewabilityCallback = (viewToken: ViewToken) => void;
580
- type ViewabilityAmountCallback = (viewToken: ViewAmountToken) => void;
580
+ type ViewabilityCallback<ItemT = any> = (viewToken: ViewToken<ItemT>) => void;
581
+ type ViewabilityAmountCallback<ItemT = any> = (viewToken: ViewAmountToken<ItemT>) => void;
581
582
  interface LegendListRecyclingState<T> {
582
583
  item: T;
583
584
  prevItem: T | undefined;
@@ -608,8 +609,8 @@ declare const LegendList: (<T>(props: LegendListProps<T> & React$1.RefAttributes
608
609
  displayName?: string;
609
610
  };
610
611
 
611
- declare function useViewability(callback: ViewabilityCallback, configId?: string): void;
612
- declare function useViewabilityAmount(callback: ViewabilityAmountCallback): void;
612
+ declare function useViewability<ItemT = any>(callback: ViewabilityCallback<ItemT>, configId?: string): void;
613
+ declare function useViewabilityAmount<ItemT = any>(callback: ViewabilityAmountCallback<ItemT>): void;
613
614
  declare function useRecyclingEffect(effect: (info: LegendListRecyclingState<unknown>) => void | (() => void)): void;
614
615
  declare function useRecyclingState<ItemT>(valueOrFun: ((info: LegendListRecyclingState<ItemT>) => ItemT) | ItemT): readonly [ItemT | null, Dispatch<SetStateAction<ItemT>>];
615
616
  declare function useIsLastItem(): boolean;
package/index.d.ts CHANGED
@@ -204,7 +204,7 @@ interface LegendListSpecificProps<ItemT, TItemType extends string | undefined> {
204
204
  /**
205
205
  * Called when the viewability of items changes.
206
206
  */
207
- onViewableItemsChanged?: OnViewableItemsChanged | undefined;
207
+ onViewableItemsChanged?: OnViewableItemsChanged<ItemT> | undefined;
208
208
  /**
209
209
  * Offset in pixels for the refresh indicator.
210
210
  * @default 0
@@ -242,7 +242,7 @@ interface LegendListSpecificProps<ItemT, TItemType extends string | undefined> {
242
242
  /**
243
243
  * Pairs of viewability configs and their callbacks for tracking visibility.
244
244
  */
245
- viewabilityConfigCallbackPairs?: ViewabilityConfigCallbackPairs | undefined;
245
+ viewabilityConfigCallbackPairs?: ViewabilityConfigCallbackPairs<ItemT> | undefined;
246
246
  /**
247
247
  * If true, delays rendering until initial layout is complete.
248
248
  * @default false
@@ -310,7 +310,7 @@ interface InternalState {
310
310
  nativeMarginTop: number;
311
311
  indexByKey: Map<string, number>;
312
312
  idCache: Map<number, string>;
313
- viewabilityConfigCallbackPairs: ViewabilityConfigCallbackPairs | undefined;
313
+ viewabilityConfigCallbackPairs: ViewabilityConfigCallbackPairs<any> | undefined;
314
314
  scrollHistory: Array<{
315
315
  scroll: number;
316
316
  time: number;
@@ -405,6 +405,7 @@ interface LegendListRenderItemProps<ItemT, TItemType extends string | number | u
405
405
  item: ItemT;
406
406
  type: TItemType;
407
407
  index: number;
408
+ data: readonly ItemT[];
408
409
  extraData: any;
409
410
  }
410
411
  type ScrollState = {
@@ -538,14 +539,14 @@ interface ViewAmountToken<ItemT = any> extends ViewToken<ItemT> {
538
539
  percentOfScroller: number;
539
540
  scrollSize: number;
540
541
  }
541
- interface ViewabilityConfigCallbackPair {
542
+ interface ViewabilityConfigCallbackPair<ItemT> {
542
543
  viewabilityConfig: ViewabilityConfig;
543
- onViewableItemsChanged?: OnViewableItemsChanged;
544
+ onViewableItemsChanged?: OnViewableItemsChanged<ItemT>;
544
545
  }
545
- type ViewabilityConfigCallbackPairs = ViewabilityConfigCallbackPair[];
546
- type OnViewableItemsChanged = ((info: {
547
- viewableItems: Array<ViewToken>;
548
- changed: Array<ViewToken>;
546
+ type ViewabilityConfigCallbackPairs<ItemT> = ViewabilityConfigCallbackPair<ItemT>[];
547
+ type OnViewableItemsChanged<ItemT> = ((info: {
548
+ viewableItems: Array<ViewToken<ItemT>>;
549
+ changed: Array<ViewToken<ItemT>>;
549
550
  }) => void) | null;
550
551
  interface ViewabilityConfig {
551
552
  /**
@@ -576,8 +577,8 @@ interface ViewabilityConfig {
576
577
  */
577
578
  waitForInteraction?: boolean | undefined;
578
579
  }
579
- type ViewabilityCallback = (viewToken: ViewToken) => void;
580
- type ViewabilityAmountCallback = (viewToken: ViewAmountToken) => void;
580
+ type ViewabilityCallback<ItemT = any> = (viewToken: ViewToken<ItemT>) => void;
581
+ type ViewabilityAmountCallback<ItemT = any> = (viewToken: ViewAmountToken<ItemT>) => void;
581
582
  interface LegendListRecyclingState<T> {
582
583
  item: T;
583
584
  prevItem: T | undefined;
@@ -608,8 +609,8 @@ declare const LegendList: (<T>(props: LegendListProps<T> & React$1.RefAttributes
608
609
  displayName?: string;
609
610
  };
610
611
 
611
- declare function useViewability(callback: ViewabilityCallback, configId?: string): void;
612
- declare function useViewabilityAmount(callback: ViewabilityAmountCallback): void;
612
+ declare function useViewability<ItemT = any>(callback: ViewabilityCallback<ItemT>, configId?: string): void;
613
+ declare function useViewabilityAmount<ItemT = any>(callback: ViewabilityAmountCallback<ItemT>): void;
613
614
  declare function useRecyclingEffect(effect: (info: LegendListRecyclingState<unknown>) => void | (() => void)): void;
614
615
  declare function useRecyclingState<ItemT>(valueOrFun: ((info: LegendListRecyclingState<ItemT>) => ItemT) | ItemT): readonly [ItemT | null, Dispatch<SetStateAction<ItemT>>];
615
616
  declare function useIsLastItem(): boolean;
package/index.js CHANGED
@@ -2539,6 +2539,7 @@ function getRenderedItem(ctx, state, key) {
2539
2539
  let renderedItem = null;
2540
2540
  if (renderItem && data[index]) {
2541
2541
  const itemProps = {
2542
+ data,
2542
2543
  extraData: peek$(ctx, "extraData"),
2543
2544
  index,
2544
2545
  item: data[index],
package/index.mjs CHANGED
@@ -2518,6 +2518,7 @@ function getRenderedItem(ctx, state, key) {
2518
2518
  let renderedItem = null;
2519
2519
  if (renderItem && data[index]) {
2520
2520
  const itemProps = {
2521
+ data,
2521
2522
  extraData: peek$(ctx, "extraData"),
2522
2523
  index,
2523
2524
  item: data[index],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@legendapp/list",
3
- "version": "2.0.0-beta.0",
3
+ "version": "2.0.0-beta.1",
4
4
  "description": "Legend List is a drop-in replacement for FlatList with much better performance and supporting dynamically sized items.",
5
5
  "sideEffects": false,
6
6
  "private": false,
package/.DS_Store DELETED
Binary file