@astral/ui 4.100.0 → 4.101.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.
- package/components/InfiniteTreeList/InfiniteTreeList.d.ts +18 -0
- package/components/InfiniteTreeList/InfiniteTreeList.js +26 -19
- package/components/InfiniteTreeList/InfiniteTreeListActions/InfiniteTreeListActions.d.ts +9 -0
- package/components/InfiniteTreeList/InfiniteTreeListActions/InfiniteTreeListActions.js +9 -0
- package/components/InfiniteTreeList/InfiniteTreeListActions/types.d.ts +5 -0
- package/components/InfiniteTreeList/InfiniteTreeListActions/useLogic/useLogic.js +5 -6
- package/components/InfiniteTreeList/InfiniteTreeListContext/InfiniteTreeListContext.d.ts +81 -0
- package/components/InfiniteTreeList/InfiniteTreeListContext/InfiniteTreeListContext.js +21 -0
- package/components/InfiniteTreeList/InfiniteTreeListContext/InfiniteTreeListContextProvider/InfiniteTreeListContextProvider.d.ts +3 -2
- package/components/InfiniteTreeList/InfiniteTreeListContext/InfiniteTreeListContextProvider/InfiniteTreeListContextProvider.js +69 -13
- package/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/ErrorPlaceholder.d.ts +6 -0
- package/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/ErrorPlaceholder.js +8 -0
- package/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/constants.d.ts +1 -0
- package/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/constants.js +1 -0
- package/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/index.d.ts +1 -0
- package/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/index.js +1 -0
- package/components/InfiniteTreeList/{ErrorMessage → InfiniteTreeListItem/ErrorPlaceholder}/styles.d.ts +1 -1
- package/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/styles.js +8 -0
- package/components/InfiniteTreeList/InfiniteTreeListItem/InfiniteTreeListItem.js +29 -7
- package/components/InfiniteTreeList/InfiniteTreeListItem/TreeListItemContext/TreeListItemContext.d.ts +19 -0
- package/components/InfiniteTreeList/InfiniteTreeListItem/TreeListItemContext/TreeListItemContext.js +4 -0
- package/components/InfiniteTreeList/InfiniteTreeListItem/TreeListItemContext/TreeListItemContextProvider/TreeListItemContextProvider.d.ts +4 -0
- package/components/InfiniteTreeList/InfiniteTreeListItem/TreeListItemContext/TreeListItemContextProvider/TreeListItemContextProvider.js +13 -8
- package/components/InfiniteTreeList/InfiniteTreeListItem/constants.d.ts +6 -0
- package/components/InfiniteTreeList/InfiniteTreeListItem/constants.js +7 -0
- package/components/InfiniteTreeList/InfiniteTreeListItem/styles.d.ts +4 -4
- package/components/InfiniteTreeList/InfiniteTreeListItem/styles.js +28 -5
- package/components/InfiniteTreeList/InfiniteTreeListItem/types.d.ts +20 -3
- package/components/InfiniteTreeList/InfiniteTreeListItem/useLogic/useLogic.d.ts +7 -1
- package/components/InfiniteTreeList/InfiniteTreeListItem/useLogic/useLogic.js +57 -5
- package/components/InfiniteTreeList/{EndData → ListFooter/EndData}/EndData.js +1 -1
- package/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/ErrorMessage.js +2 -2
- package/components/InfiniteTreeList/ListFooter/ErrorMessage/styles.d.ts +5 -0
- package/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/styles.js +1 -1
- package/components/InfiniteTreeList/ListFooter/ListFooter.d.ts +10 -0
- package/components/InfiniteTreeList/ListFooter/ListFooter.js +25 -0
- package/components/InfiniteTreeList/ListFooter/index.d.ts +2 -0
- package/components/InfiniteTreeList/ListFooter/index.js +1 -0
- package/components/InfiniteTreeList/{styles.d.ts → ListFooter/styles.d.ts} +2 -2
- package/components/InfiniteTreeList/{styles.js → ListFooter/styles.js} +1 -1
- package/components/InfiniteTreeList/ListFooter/types.d.ts +22 -0
- package/components/InfiniteTreeList/ListFooter/types.js +1 -0
- package/components/InfiniteTreeList/OnTopButton/OnTopButton.d.ts +8 -2
- package/components/InfiniteTreeList/OnTopButton/OnTopButton.js +6 -5
- package/components/InfiniteTreeList/OnTopButton/styles.d.ts +4 -0
- package/components/InfiniteTreeList/OnTopButton/styles.js +10 -0
- package/components/InfiniteTreeList/ParentItems/Item/CustomParentWrapper/CustomParentWrapper.d.ts +23 -0
- package/components/InfiniteTreeList/ParentItems/Item/CustomParentWrapper/CustomParentWrapper.js +12 -0
- package/components/InfiniteTreeList/ParentItems/Item/CustomParentWrapper/index.d.ts +1 -0
- package/components/InfiniteTreeList/ParentItems/Item/CustomParentWrapper/index.js +1 -0
- package/components/InfiniteTreeList/ParentItems/Item/Item.d.ts +10 -0
- package/components/InfiniteTreeList/ParentItems/Item/Item.js +22 -0
- package/components/InfiniteTreeList/ParentItems/Item/index.d.ts +2 -0
- package/components/InfiniteTreeList/ParentItems/Item/index.js +2 -0
- package/components/InfiniteTreeList/ParentItems/Item/types.d.ts +8 -0
- package/components/InfiniteTreeList/ParentItems/Item/types.js +1 -0
- package/components/InfiniteTreeList/ParentItems/Item/useLogic/index.d.ts +1 -0
- package/components/InfiniteTreeList/ParentItems/Item/useLogic/index.js +1 -0
- package/components/InfiniteTreeList/ParentItems/Item/useLogic/useLogic.d.ts +12 -0
- package/components/InfiniteTreeList/ParentItems/Item/useLogic/useLogic.js +12 -0
- package/components/InfiniteTreeList/ParentItems/ParentItems.d.ts +11 -0
- package/components/InfiniteTreeList/ParentItems/ParentItems.js +11 -0
- package/components/InfiniteTreeList/ParentItems/index.d.ts +3 -0
- package/components/InfiniteTreeList/ParentItems/index.js +3 -0
- package/components/InfiniteTreeList/ParentItems/types.d.ts +8 -0
- package/components/InfiniteTreeList/ParentItems/types.js +1 -0
- package/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/ChildrenPlaceholder.d.ts +9 -0
- package/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/ChildrenPlaceholder.js +22 -0
- package/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/NoDataRow/NoDataRow.d.ts +1 -0
- package/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/NoDataRow/NoDataRow.js +5 -0
- package/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/NoDataRow/index.d.ts +1 -0
- package/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/NoDataRow/index.js +1 -0
- package/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/index.d.ts +1 -0
- package/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/index.js +1 -0
- package/components/InfiniteTreeList/TreeItem/CustomItemWrapper/CustomItemWrapper.d.ts +20 -0
- package/components/InfiniteTreeList/TreeItem/CustomItemWrapper/CustomItemWrapper.js +10 -0
- package/components/InfiniteTreeList/TreeItem/CustomItemWrapper/index.d.ts +1 -0
- package/components/InfiniteTreeList/TreeItem/CustomItemWrapper/index.js +1 -0
- package/components/InfiniteTreeList/TreeItem/ParentSlot/ParentSlot.d.ts +5 -0
- package/components/InfiniteTreeList/TreeItem/ParentSlot/ParentSlot.js +38 -0
- package/components/InfiniteTreeList/TreeItem/ParentSlot/index.d.ts +2 -0
- package/components/InfiniteTreeList/TreeItem/ParentSlot/index.js +2 -0
- package/components/InfiniteTreeList/TreeItem/ParentSlot/styles.d.ts +9 -0
- package/components/InfiniteTreeList/TreeItem/ParentSlot/styles.js +8 -0
- package/components/InfiniteTreeList/TreeItem/ParentSlot/types.d.ts +6 -0
- package/components/InfiniteTreeList/TreeItem/ParentSlot/types.js +1 -0
- package/components/InfiniteTreeList/TreeItem/TreeItem.d.ts +5 -2
- package/components/InfiniteTreeList/TreeItem/TreeItem.js +31 -4
- package/components/InfiniteTreeList/TreeItem/constants.d.ts +3 -0
- package/components/InfiniteTreeList/TreeItem/constants.js +3 -1
- package/components/InfiniteTreeList/TreeItem/styles.d.ts +0 -3
- package/components/InfiniteTreeList/TreeItem/styles.js +23 -8
- package/components/InfiniteTreeList/TreeItem/types.d.ts +4 -9
- package/components/InfiniteTreeList/TreeItem/useLogic/useLogic.d.ts +29 -9
- package/components/InfiniteTreeList/TreeItem/useLogic/useLogic.js +61 -19
- package/components/InfiniteTreeList/constants.d.ts +14 -2
- package/components/InfiniteTreeList/constants.js +14 -2
- package/components/InfiniteTreeList/hooks/index.d.ts +5 -0
- package/components/InfiniteTreeList/hooks/index.js +5 -0
- package/components/InfiniteTreeList/hooks/useChildrenState/index.d.ts +2 -0
- package/components/InfiniteTreeList/hooks/useChildrenState/index.js +2 -0
- package/components/InfiniteTreeList/hooks/useChildrenState/types.d.ts +43 -0
- package/components/InfiniteTreeList/hooks/useChildrenState/types.js +1 -0
- package/components/InfiniteTreeList/hooks/useChildrenState/useChildrenState.d.ts +20 -0
- package/components/InfiniteTreeList/hooks/useChildrenState/useChildrenState.js +115 -0
- package/components/InfiniteTreeList/hooks/useEnterAnimation/index.d.ts +2 -0
- package/components/InfiniteTreeList/hooks/useEnterAnimation/index.js +2 -0
- package/components/InfiniteTreeList/hooks/useEnterAnimation/types.d.ts +29 -0
- package/components/InfiniteTreeList/hooks/useEnterAnimation/types.js +1 -0
- package/components/InfiniteTreeList/hooks/useEnterAnimation/useEnterAnimation.d.ts +6 -0
- package/components/InfiniteTreeList/hooks/useEnterAnimation/useEnterAnimation.js +35 -0
- package/components/InfiniteTreeList/hooks/useExpandNotifier/index.d.ts +1 -0
- package/components/InfiniteTreeList/hooks/useExpandNotifier/index.js +1 -0
- package/components/InfiniteTreeList/hooks/useExpandNotifier/useExpandNotifier.d.ts +8 -0
- package/components/InfiniteTreeList/hooks/useExpandNotifier/useExpandNotifier.js +19 -0
- package/components/InfiniteTreeList/hooks/useFlatTree/index.d.ts +2 -0
- package/components/InfiniteTreeList/hooks/useFlatTree/index.js +2 -0
- package/components/InfiniteTreeList/hooks/useFlatTree/types.d.ts +20 -0
- package/components/InfiniteTreeList/hooks/useFlatTree/types.js +1 -0
- package/components/InfiniteTreeList/hooks/useFlatTree/useFlatTree.d.ts +15 -0
- package/components/InfiniteTreeList/hooks/useFlatTree/useFlatTree.js +88 -0
- package/components/InfiniteTreeList/hooks/useListScroll/index.d.ts +2 -0
- package/components/InfiniteTreeList/hooks/useListScroll/index.js +2 -0
- package/components/InfiniteTreeList/hooks/useListScroll/types.d.ts +25 -0
- package/components/InfiniteTreeList/hooks/useListScroll/types.js +1 -0
- package/components/InfiniteTreeList/hooks/useListScroll/useListScroll.d.ts +29 -0
- package/components/InfiniteTreeList/hooks/useListScroll/useListScroll.js +59 -0
- package/components/InfiniteTreeList/index.d.ts +1 -1
- package/components/InfiniteTreeList/public.d.ts +1 -1
- package/components/InfiniteTreeList/types.d.ts +83 -17
- package/components/InfiniteTreeList/useLogic/useLogic.d.ts +22 -12
- package/components/InfiniteTreeList/useLogic/useLogic.js +66 -71
- package/components/InfiniteTreeList/utils/checkHasSkeletonPlaceholders/checkHasSkeletonPlaceholders.d.ts +5 -0
- package/components/InfiniteTreeList/utils/checkHasSkeletonPlaceholders/checkHasSkeletonPlaceholders.js +6 -0
- package/components/InfiniteTreeList/utils/checkHasSkeletonPlaceholders/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/checkHasSkeletonPlaceholders/index.js +1 -0
- package/components/InfiniteTreeList/utils/checkIsChildrenPlaceholder/checkIsChildrenPlaceholder.d.ts +5 -0
- package/components/InfiniteTreeList/utils/checkIsChildrenPlaceholder/checkIsChildrenPlaceholder.js +4 -0
- package/components/InfiniteTreeList/utils/checkIsChildrenPlaceholder/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/checkIsChildrenPlaceholder/index.js +1 -0
- package/components/InfiniteTreeList/utils/checkIsChildrenPlaceholderOf/checkIsChildrenPlaceholderOf.d.ts +5 -0
- package/components/InfiniteTreeList/utils/checkIsChildrenPlaceholderOf/checkIsChildrenPlaceholderOf.js +5 -0
- package/components/InfiniteTreeList/utils/checkIsChildrenPlaceholderOf/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/checkIsChildrenPlaceholderOf/index.js +1 -0
- package/components/InfiniteTreeList/utils/checkIsDirectChild/checkIsDirectChild.d.ts +6 -0
- package/components/InfiniteTreeList/utils/checkIsDirectChild/checkIsDirectChild.js +6 -0
- package/components/InfiniteTreeList/utils/checkIsDirectChild/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/checkIsDirectChild/index.js +1 -0
- package/components/InfiniteTreeList/utils/checkIsNoDataChildren/checkIsNoDataChildren.d.ts +12 -0
- package/components/InfiniteTreeList/utils/checkIsNoDataChildren/checkIsNoDataChildren.js +14 -0
- package/components/InfiniteTreeList/utils/checkIsNoDataChildren/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/checkIsNoDataChildren/index.js +1 -0
- package/components/InfiniteTreeList/utils/checkIsSameChildren/checkIsSameChildren.d.ts +5 -0
- package/components/InfiniteTreeList/utils/checkIsSameChildren/checkIsSameChildren.js +16 -0
- package/components/InfiniteTreeList/utils/checkIsSameChildren/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/checkIsSameChildren/index.js +1 -0
- package/components/InfiniteTreeList/utils/countDirectChildren/countDirectChildren.d.ts +5 -0
- package/components/InfiniteTreeList/utils/countDirectChildren/countDirectChildren.js +5 -0
- package/components/InfiniteTreeList/utils/countDirectChildren/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/countDirectChildren/index.js +1 -0
- package/components/InfiniteTreeList/utils/createParentSlots/createParentSlots.d.ts +24 -0
- package/components/InfiniteTreeList/utils/createParentSlots/createParentSlots.js +35 -0
- package/components/InfiniteTreeList/utils/createParentSlots/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/createParentSlots/index.js +1 -0
- package/components/InfiniteTreeList/utils/createTailRegistry/createTailRegistry.d.ts +21 -0
- package/components/InfiniteTreeList/utils/createTailRegistry/createTailRegistry.js +40 -0
- package/components/InfiniteTreeList/utils/createTailRegistry/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/createTailRegistry/index.js +1 -0
- package/components/InfiniteTreeList/utils/flattenChildren/flattenChildren.d.ts +5 -0
- package/components/InfiniteTreeList/utils/flattenChildren/flattenChildren.js +5 -0
- package/components/InfiniteTreeList/utils/flattenChildren/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/flattenChildren/index.js +1 -0
- package/components/InfiniteTreeList/utils/flattenTree/flattenTree.d.ts +6 -0
- package/components/InfiniteTreeList/{useLogic/utils → utils}/flattenTree/flattenTree.js +9 -4
- package/components/InfiniteTreeList/utils/getEnteringChildren/getEnteringChildren.d.ts +17 -0
- package/components/InfiniteTreeList/utils/getEnteringChildren/getEnteringChildren.js +14 -0
- package/components/InfiniteTreeList/utils/getEnteringChildren/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/getEnteringChildren/index.js +1 -0
- package/components/InfiniteTreeList/utils/getIdsToKeep/getIdsToKeep.d.ts +10 -0
- package/components/InfiniteTreeList/utils/getIdsToKeep/getIdsToKeep.js +27 -0
- package/components/InfiniteTreeList/utils/getIdsToKeep/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/getIdsToKeep/index.js +1 -0
- package/components/InfiniteTreeList/{useLogic/utils → utils}/getInitialExpandedIds/getInitialExpandedIds.d.ts +4 -2
- package/components/InfiniteTreeList/{useLogic/utils → utils}/getInitialExpandedIds/getInitialExpandedIds.js +5 -4
- package/components/InfiniteTreeList/utils/getNestedItems/getNestedItems.d.ts +6 -0
- package/components/InfiniteTreeList/utils/getNestedItems/getNestedItems.js +18 -0
- package/components/InfiniteTreeList/utils/getNestedItems/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/getNestedItems/index.js +1 -0
- package/components/InfiniteTreeList/utils/index.d.ts +20 -0
- package/components/InfiniteTreeList/utils/index.js +20 -0
- package/components/InfiniteTreeList/utils/insertChildren/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/insertChildren/index.js +1 -0
- package/components/InfiniteTreeList/utils/insertChildren/insertChildren.d.ts +5 -0
- package/components/InfiniteTreeList/utils/insertChildren/insertChildren.js +41 -0
- package/components/InfiniteTreeList/utils/removeChildren/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/removeChildren/index.js +1 -0
- package/components/InfiniteTreeList/utils/removeChildren/removeChildren.d.ts +5 -0
- package/components/InfiniteTreeList/utils/removeChildren/removeChildren.js +12 -0
- package/components/InfiniteTreeList/utils/sortCollapsed/sortCollapsed.d.ts +5 -0
- package/components/InfiniteTreeList/{useLogic/utils → utils}/sortCollapsed/sortCollapsed.js +1 -6
- package/components/InfiniteTreeList/utils/startRemoveAnimation/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/startRemoveAnimation/index.js +1 -0
- package/components/InfiniteTreeList/utils/startRemoveAnimation/startRemoveAnimation.d.ts +1 -0
- package/components/InfiniteTreeList/utils/startRemoveAnimation/startRemoveAnimation.js +5 -0
- package/components/InfiniteTreeList/utils/syncChildrenPlaceholders/index.d.ts +1 -0
- package/components/InfiniteTreeList/utils/syncChildrenPlaceholders/index.js +1 -0
- package/components/InfiniteTreeList/utils/syncChildrenPlaceholders/syncChildrenPlaceholders.d.ts +11 -0
- package/components/InfiniteTreeList/utils/syncChildrenPlaceholders/syncChildrenPlaceholders.js +99 -0
- package/node/components/InfiniteTreeList/InfiniteTreeList.d.ts +18 -0
- package/node/components/InfiniteTreeList/InfiniteTreeList.js +24 -17
- package/node/components/InfiniteTreeList/InfiniteTreeListActions/InfiniteTreeListActions.d.ts +9 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListActions/InfiniteTreeListActions.js +9 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListActions/types.d.ts +5 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListActions/useLogic/useLogic.js +5 -6
- package/node/components/InfiniteTreeList/InfiniteTreeListContext/InfiniteTreeListContext.d.ts +81 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListContext/InfiniteTreeListContext.js +21 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListContext/InfiniteTreeListContextProvider/InfiniteTreeListContextProvider.d.ts +3 -2
- package/node/components/InfiniteTreeList/InfiniteTreeListContext/InfiniteTreeListContextProvider/InfiniteTreeListContextProvider.js +69 -13
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/ErrorPlaceholder.d.ts +6 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/ErrorPlaceholder.js +12 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/constants.d.ts +1 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/constants.js +4 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/index.js +5 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/ErrorPlaceholder/styles.js +11 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/InfiniteTreeListItem.js +28 -6
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/TreeListItemContext/TreeListItemContext.d.ts +19 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/TreeListItemContext/TreeListItemContext.js +4 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/TreeListItemContext/TreeListItemContextProvider/TreeListItemContextProvider.d.ts +4 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/TreeListItemContext/TreeListItemContextProvider/TreeListItemContextProvider.js +13 -8
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/constants.d.ts +6 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/constants.js +10 -0
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/styles.d.ts +4 -4
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/styles.js +29 -6
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/types.d.ts +20 -3
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/useLogic/useLogic.d.ts +7 -1
- package/node/components/InfiniteTreeList/InfiniteTreeListItem/useLogic/useLogic.js +56 -4
- package/node/components/InfiniteTreeList/{EndData → ListFooter/EndData}/EndData.js +1 -1
- package/node/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/ErrorMessage.js +2 -2
- package/node/components/InfiniteTreeList/ListFooter/ErrorMessage/styles.d.ts +5 -0
- package/node/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/styles.js +1 -1
- package/node/components/InfiniteTreeList/ListFooter/ListFooter.d.ts +10 -0
- package/node/components/InfiniteTreeList/ListFooter/ListFooter.js +29 -0
- package/node/components/InfiniteTreeList/ListFooter/index.d.ts +2 -0
- package/node/components/InfiniteTreeList/ListFooter/index.js +17 -0
- package/node/components/InfiniteTreeList/{styles.js → ListFooter/styles.js} +1 -1
- package/node/components/InfiniteTreeList/ListFooter/types.d.ts +22 -0
- package/node/components/InfiniteTreeList/ListFooter/types.js +2 -0
- package/node/components/InfiniteTreeList/OnTopButton/OnTopButton.d.ts +8 -2
- package/node/components/InfiniteTreeList/OnTopButton/OnTopButton.js +6 -5
- package/node/components/InfiniteTreeList/OnTopButton/styles.d.ts +4 -0
- package/node/components/InfiniteTreeList/OnTopButton/styles.js +13 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/CustomParentWrapper/CustomParentWrapper.d.ts +23 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/CustomParentWrapper/CustomParentWrapper.js +15 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/CustomParentWrapper/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/CustomParentWrapper/index.js +17 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/Item.d.ts +10 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/Item.js +25 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/index.d.ts +2 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/index.js +18 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/types.d.ts +8 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/types.js +2 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/useLogic/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/useLogic/index.js +17 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/useLogic/useLogic.d.ts +12 -0
- package/node/components/InfiniteTreeList/ParentItems/Item/useLogic/useLogic.js +16 -0
- package/node/components/InfiniteTreeList/ParentItems/ParentItems.d.ts +11 -0
- package/node/components/InfiniteTreeList/ParentItems/ParentItems.js +15 -0
- package/node/components/InfiniteTreeList/ParentItems/index.d.ts +3 -0
- package/node/components/InfiniteTreeList/ParentItems/index.js +19 -0
- package/node/components/InfiniteTreeList/ParentItems/types.d.ts +8 -0
- package/node/components/InfiniteTreeList/ParentItems/types.js +2 -0
- package/node/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/ChildrenPlaceholder.d.ts +9 -0
- package/node/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/ChildrenPlaceholder.js +26 -0
- package/node/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/NoDataRow/NoDataRow.d.ts +1 -0
- package/node/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/NoDataRow/NoDataRow.js +9 -0
- package/node/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/NoDataRow/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/NoDataRow/index.js +17 -0
- package/node/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/TreeItem/ChildrenPlaceholder/index.js +17 -0
- package/node/components/InfiniteTreeList/TreeItem/CustomItemWrapper/CustomItemWrapper.d.ts +20 -0
- package/node/components/InfiniteTreeList/TreeItem/CustomItemWrapper/CustomItemWrapper.js +13 -0
- package/node/components/InfiniteTreeList/TreeItem/CustomItemWrapper/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/TreeItem/CustomItemWrapper/index.js +17 -0
- package/node/components/InfiniteTreeList/TreeItem/ParentSlot/ParentSlot.d.ts +5 -0
- package/node/components/InfiniteTreeList/TreeItem/ParentSlot/ParentSlot.js +42 -0
- package/node/components/InfiniteTreeList/TreeItem/ParentSlot/index.d.ts +2 -0
- package/node/components/InfiniteTreeList/TreeItem/ParentSlot/index.js +18 -0
- package/node/components/InfiniteTreeList/TreeItem/ParentSlot/styles.d.ts +9 -0
- package/node/components/InfiniteTreeList/TreeItem/ParentSlot/styles.js +11 -0
- package/node/components/InfiniteTreeList/TreeItem/ParentSlot/types.d.ts +6 -0
- package/node/components/InfiniteTreeList/TreeItem/ParentSlot/types.js +2 -0
- package/node/components/InfiniteTreeList/TreeItem/TreeItem.d.ts +5 -2
- package/node/components/InfiniteTreeList/TreeItem/TreeItem.js +31 -4
- package/node/components/InfiniteTreeList/TreeItem/constants.d.ts +3 -0
- package/node/components/InfiniteTreeList/TreeItem/constants.js +3 -1
- package/node/components/InfiniteTreeList/TreeItem/styles.d.ts +0 -3
- package/node/components/InfiniteTreeList/TreeItem/styles.js +23 -8
- package/node/components/InfiniteTreeList/TreeItem/types.d.ts +4 -9
- package/node/components/InfiniteTreeList/TreeItem/useLogic/useLogic.d.ts +29 -9
- package/node/components/InfiniteTreeList/TreeItem/useLogic/useLogic.js +60 -18
- package/node/components/InfiniteTreeList/constants.d.ts +14 -2
- package/node/components/InfiniteTreeList/constants.js +15 -3
- package/node/components/InfiniteTreeList/hooks/index.d.ts +5 -0
- package/node/components/InfiniteTreeList/hooks/index.js +21 -0
- package/node/components/InfiniteTreeList/hooks/useChildrenState/index.d.ts +2 -0
- package/node/components/InfiniteTreeList/hooks/useChildrenState/index.js +18 -0
- package/node/components/InfiniteTreeList/hooks/useChildrenState/types.d.ts +43 -0
- package/node/components/InfiniteTreeList/hooks/useChildrenState/types.js +2 -0
- package/node/components/InfiniteTreeList/hooks/useChildrenState/useChildrenState.d.ts +20 -0
- package/node/components/InfiniteTreeList/hooks/useChildrenState/useChildrenState.js +119 -0
- package/node/components/InfiniteTreeList/hooks/useEnterAnimation/index.d.ts +2 -0
- package/node/components/InfiniteTreeList/hooks/useEnterAnimation/index.js +18 -0
- package/node/components/InfiniteTreeList/hooks/useEnterAnimation/types.d.ts +29 -0
- package/node/components/InfiniteTreeList/hooks/useEnterAnimation/types.js +2 -0
- package/node/components/InfiniteTreeList/hooks/useEnterAnimation/useEnterAnimation.d.ts +6 -0
- package/node/components/InfiniteTreeList/hooks/useEnterAnimation/useEnterAnimation.js +39 -0
- package/node/components/InfiniteTreeList/hooks/useExpandNotifier/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/hooks/useExpandNotifier/index.js +17 -0
- package/node/components/InfiniteTreeList/hooks/useExpandNotifier/useExpandNotifier.d.ts +8 -0
- package/node/components/InfiniteTreeList/hooks/useExpandNotifier/useExpandNotifier.js +23 -0
- package/node/components/InfiniteTreeList/hooks/useFlatTree/index.d.ts +2 -0
- package/node/components/InfiniteTreeList/hooks/useFlatTree/index.js +18 -0
- package/node/components/InfiniteTreeList/hooks/useFlatTree/types.d.ts +20 -0
- package/node/components/InfiniteTreeList/hooks/useFlatTree/types.js +2 -0
- package/node/components/InfiniteTreeList/hooks/useFlatTree/useFlatTree.d.ts +15 -0
- package/node/components/InfiniteTreeList/hooks/useFlatTree/useFlatTree.js +92 -0
- package/node/components/InfiniteTreeList/hooks/useListScroll/index.d.ts +2 -0
- package/node/components/InfiniteTreeList/hooks/useListScroll/index.js +18 -0
- package/node/components/InfiniteTreeList/hooks/useListScroll/types.d.ts +25 -0
- package/node/components/InfiniteTreeList/hooks/useListScroll/types.js +2 -0
- package/node/components/InfiniteTreeList/hooks/useListScroll/useListScroll.d.ts +29 -0
- package/node/components/InfiniteTreeList/hooks/useListScroll/useListScroll.js +63 -0
- package/node/components/InfiniteTreeList/index.d.ts +1 -1
- package/node/components/InfiniteTreeList/public.d.ts +1 -1
- package/node/components/InfiniteTreeList/types.d.ts +83 -17
- package/node/components/InfiniteTreeList/useLogic/useLogic.d.ts +22 -12
- package/node/components/InfiniteTreeList/useLogic/useLogic.js +64 -69
- package/node/components/InfiniteTreeList/utils/checkHasSkeletonPlaceholders/checkHasSkeletonPlaceholders.d.ts +5 -0
- package/node/components/InfiniteTreeList/utils/checkHasSkeletonPlaceholders/checkHasSkeletonPlaceholders.js +10 -0
- package/node/components/InfiniteTreeList/utils/checkHasSkeletonPlaceholders/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/checkHasSkeletonPlaceholders/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/checkIsChildrenPlaceholder/checkIsChildrenPlaceholder.d.ts +5 -0
- package/node/components/InfiniteTreeList/utils/checkIsChildrenPlaceholder/checkIsChildrenPlaceholder.js +8 -0
- package/node/components/InfiniteTreeList/utils/checkIsChildrenPlaceholder/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/checkIsChildrenPlaceholder/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/checkIsChildrenPlaceholderOf/checkIsChildrenPlaceholderOf.d.ts +5 -0
- package/node/components/InfiniteTreeList/utils/checkIsChildrenPlaceholderOf/checkIsChildrenPlaceholderOf.js +9 -0
- package/node/components/InfiniteTreeList/utils/checkIsChildrenPlaceholderOf/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/checkIsChildrenPlaceholderOf/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/checkIsDirectChild/checkIsDirectChild.d.ts +6 -0
- package/node/components/InfiniteTreeList/utils/checkIsDirectChild/checkIsDirectChild.js +10 -0
- package/node/components/InfiniteTreeList/utils/checkIsDirectChild/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/checkIsDirectChild/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/checkIsNoDataChildren/checkIsNoDataChildren.d.ts +12 -0
- package/node/components/InfiniteTreeList/utils/checkIsNoDataChildren/checkIsNoDataChildren.js +18 -0
- package/node/components/InfiniteTreeList/utils/checkIsNoDataChildren/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/checkIsNoDataChildren/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/checkIsSameChildren/checkIsSameChildren.d.ts +5 -0
- package/node/components/InfiniteTreeList/utils/checkIsSameChildren/checkIsSameChildren.js +20 -0
- package/node/components/InfiniteTreeList/utils/checkIsSameChildren/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/checkIsSameChildren/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/countDirectChildren/countDirectChildren.d.ts +5 -0
- package/node/components/InfiniteTreeList/utils/countDirectChildren/countDirectChildren.js +9 -0
- package/node/components/InfiniteTreeList/utils/countDirectChildren/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/countDirectChildren/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/createParentSlots/createParentSlots.d.ts +24 -0
- package/node/components/InfiniteTreeList/utils/createParentSlots/createParentSlots.js +39 -0
- package/node/components/InfiniteTreeList/utils/createParentSlots/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/createParentSlots/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/createTailRegistry/createTailRegistry.d.ts +21 -0
- package/node/components/InfiniteTreeList/utils/createTailRegistry/createTailRegistry.js +44 -0
- package/node/components/InfiniteTreeList/utils/createTailRegistry/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/createTailRegistry/index.js +5 -0
- package/node/components/InfiniteTreeList/utils/flattenChildren/flattenChildren.d.ts +5 -0
- package/node/components/InfiniteTreeList/utils/flattenChildren/flattenChildren.js +9 -0
- package/node/components/InfiniteTreeList/utils/flattenChildren/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/flattenChildren/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/flattenTree/flattenTree.d.ts +6 -0
- package/node/components/InfiniteTreeList/{useLogic/utils → utils}/flattenTree/flattenTree.js +9 -4
- package/node/components/InfiniteTreeList/utils/getEnteringChildren/getEnteringChildren.d.ts +17 -0
- package/node/components/InfiniteTreeList/utils/getEnteringChildren/getEnteringChildren.js +18 -0
- package/node/components/InfiniteTreeList/utils/getEnteringChildren/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/getEnteringChildren/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/getIdsToKeep/getIdsToKeep.d.ts +10 -0
- package/node/components/InfiniteTreeList/utils/getIdsToKeep/getIdsToKeep.js +31 -0
- package/node/components/InfiniteTreeList/utils/getIdsToKeep/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/getIdsToKeep/index.js +17 -0
- package/node/components/InfiniteTreeList/{useLogic/utils → utils}/getInitialExpandedIds/getInitialExpandedIds.d.ts +4 -2
- package/node/components/InfiniteTreeList/{useLogic/utils → utils}/getInitialExpandedIds/getInitialExpandedIds.js +5 -4
- package/node/components/InfiniteTreeList/utils/getNestedItems/getNestedItems.d.ts +6 -0
- package/node/components/InfiniteTreeList/utils/getNestedItems/getNestedItems.js +22 -0
- package/node/components/InfiniteTreeList/utils/getNestedItems/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/{useLogic/utils/getDescendants → utils/getNestedItems}/index.js +1 -1
- package/node/components/InfiniteTreeList/utils/index.d.ts +20 -0
- package/node/components/InfiniteTreeList/utils/index.js +36 -0
- package/node/components/InfiniteTreeList/utils/insertChildren/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/insertChildren/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/insertChildren/insertChildren.d.ts +5 -0
- package/node/components/InfiniteTreeList/utils/insertChildren/insertChildren.js +45 -0
- package/node/components/InfiniteTreeList/utils/removeChildren/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/removeChildren/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/removeChildren/removeChildren.d.ts +5 -0
- package/node/components/InfiniteTreeList/utils/removeChildren/removeChildren.js +16 -0
- package/node/components/InfiniteTreeList/utils/sortCollapsed/sortCollapsed.d.ts +5 -0
- package/node/components/InfiniteTreeList/{useLogic/utils → utils}/sortCollapsed/sortCollapsed.js +1 -6
- package/node/components/InfiniteTreeList/utils/startRemoveAnimation/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/startRemoveAnimation/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/startRemoveAnimation/startRemoveAnimation.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/startRemoveAnimation/startRemoveAnimation.js +9 -0
- package/node/components/InfiniteTreeList/utils/syncChildrenPlaceholders/index.d.ts +1 -0
- package/node/components/InfiniteTreeList/utils/syncChildrenPlaceholders/index.js +17 -0
- package/node/components/InfiniteTreeList/utils/syncChildrenPlaceholders/syncChildrenPlaceholders.d.ts +11 -0
- package/node/components/InfiniteTreeList/utils/syncChildrenPlaceholders/syncChildrenPlaceholders.js +104 -0
- package/package.json +1 -1
- package/components/InfiniteTreeList/useLogic/utils/flattenTree/flattenTree.d.ts +0 -5
- package/components/InfiniteTreeList/useLogic/utils/getDescendants/getDescendants.d.ts +0 -10
- package/components/InfiniteTreeList/useLogic/utils/getDescendants/getDescendants.js +0 -22
- package/components/InfiniteTreeList/useLogic/utils/getDescendants/index.d.ts +0 -1
- package/components/InfiniteTreeList/useLogic/utils/getDescendants/index.js +0 -1
- package/components/InfiniteTreeList/useLogic/utils/index.d.ts +0 -4
- package/components/InfiniteTreeList/useLogic/utils/index.js +0 -4
- package/components/InfiniteTreeList/useLogic/utils/sortCollapsed/sortCollapsed.d.ts +0 -10
- package/node/components/InfiniteTreeList/useLogic/utils/flattenTree/flattenTree.d.ts +0 -5
- package/node/components/InfiniteTreeList/useLogic/utils/getDescendants/getDescendants.d.ts +0 -10
- package/node/components/InfiniteTreeList/useLogic/utils/getDescendants/getDescendants.js +0 -26
- package/node/components/InfiniteTreeList/useLogic/utils/getDescendants/index.d.ts +0 -1
- package/node/components/InfiniteTreeList/useLogic/utils/index.d.ts +0 -4
- package/node/components/InfiniteTreeList/useLogic/utils/index.js +0 -20
- package/node/components/InfiniteTreeList/useLogic/utils/sortCollapsed/sortCollapsed.d.ts +0 -10
- /package/components/InfiniteTreeList/{EndData → ListFooter/EndData}/EndData.d.ts +0 -0
- /package/components/InfiniteTreeList/{EndData → ListFooter/EndData}/constants.d.ts +0 -0
- /package/components/InfiniteTreeList/{EndData → ListFooter/EndData}/constants.js +0 -0
- /package/components/InfiniteTreeList/{EndData → ListFooter/EndData}/index.d.ts +0 -0
- /package/components/InfiniteTreeList/{EndData → ListFooter/EndData}/index.js +0 -0
- /package/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/ErrorMessage.d.ts +0 -0
- /package/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/constants.d.ts +0 -0
- /package/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/constants.js +0 -0
- /package/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/index.d.ts +0 -0
- /package/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/index.js +0 -0
- /package/components/InfiniteTreeList/{useLogic/utils → utils}/flattenTree/index.d.ts +0 -0
- /package/components/InfiniteTreeList/{useLogic/utils → utils}/flattenTree/index.js +0 -0
- /package/components/InfiniteTreeList/{useLogic/utils → utils}/getInitialExpandedIds/index.d.ts +0 -0
- /package/components/InfiniteTreeList/{useLogic/utils → utils}/getInitialExpandedIds/index.js +0 -0
- /package/components/InfiniteTreeList/{useLogic/utils → utils}/sortCollapsed/index.d.ts +0 -0
- /package/components/InfiniteTreeList/{useLogic/utils → utils}/sortCollapsed/index.js +0 -0
- /package/node/components/InfiniteTreeList/{ErrorMessage → InfiniteTreeListItem/ErrorPlaceholder}/styles.d.ts +0 -0
- /package/node/components/InfiniteTreeList/{EndData → ListFooter/EndData}/EndData.d.ts +0 -0
- /package/node/components/InfiniteTreeList/{EndData → ListFooter/EndData}/constants.d.ts +0 -0
- /package/node/components/InfiniteTreeList/{EndData → ListFooter/EndData}/constants.js +0 -0
- /package/node/components/InfiniteTreeList/{EndData → ListFooter/EndData}/index.d.ts +0 -0
- /package/node/components/InfiniteTreeList/{EndData → ListFooter/EndData}/index.js +0 -0
- /package/node/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/ErrorMessage.d.ts +0 -0
- /package/node/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/constants.d.ts +0 -0
- /package/node/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/constants.js +0 -0
- /package/node/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/index.d.ts +0 -0
- /package/node/components/InfiniteTreeList/{ErrorMessage → ListFooter/ErrorMessage}/index.js +0 -0
- /package/node/components/InfiniteTreeList/{styles.d.ts → ListFooter/styles.d.ts} +0 -0
- /package/node/components/InfiniteTreeList/{useLogic/utils → utils}/flattenTree/index.d.ts +0 -0
- /package/node/components/InfiniteTreeList/{useLogic/utils → utils}/flattenTree/index.js +0 -0
- /package/node/components/InfiniteTreeList/{useLogic/utils → utils}/getInitialExpandedIds/index.d.ts +0 -0
- /package/node/components/InfiniteTreeList/{useLogic/utils → utils}/getInitialExpandedIds/index.js +0 -0
- /package/node/components/InfiniteTreeList/{useLogic/utils → utils}/sortCollapsed/index.d.ts +0 -0
- /package/node/components/InfiniteTreeList/{useLogic/utils → utils}/sortCollapsed/index.js +0 -0
|
@@ -3,52 +3,54 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.useLogic = void 0;
|
|
4
4
|
const react_1 = require("react");
|
|
5
5
|
const ConfigProvider_1 = require("../../ConfigProvider");
|
|
6
|
-
const useTheme_1 = require("../../theme/hooks/useTheme");
|
|
7
|
-
const useScrollManagement_1 = require("../../useScrollManagement");
|
|
8
|
-
const useSet_1 = require("../../useSet");
|
|
9
|
-
const useStickyButton_1 = require("../../useStickyButton");
|
|
10
6
|
const constants_1 = require("../constants");
|
|
11
|
-
const
|
|
12
|
-
const
|
|
7
|
+
const hooks_1 = require("../hooks");
|
|
8
|
+
const utils_1 = require("../utils");
|
|
9
|
+
/**
|
|
10
|
+
* Логика списка: сводит плоский список, данные дочерних элементов, скролл
|
|
11
|
+
* и анимацию появления строк в props для `Virtuoso` и дочерних компонентов
|
|
12
|
+
*/
|
|
13
|
+
const useLogic = ({ initialExpandedLevel, items, onRetry, errorMsg, isError, isLoading, scrollRef, isEndReached, onLoadMore, renderItem, renderParent, itemSkeleton, endOfScrollMsg, noDataImgSrc, errorImgSrc, }) => {
|
|
13
14
|
const { imagesMap } = (0, react_1.useContext)(ConfigProvider_1.ConfigContext);
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
};
|
|
24
|
-
(0,
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
15
|
+
const enterAnimation = (0, hooks_1.useEnterAnimation)();
|
|
16
|
+
const parentSlotsRef = (0, react_1.useRef)(null);
|
|
17
|
+
if (!parentSlotsRef.current) {
|
|
18
|
+
parentSlotsRef.current = (0, utils_1.createParentSlots)();
|
|
19
|
+
}
|
|
20
|
+
const acquireParentSlot = (0, react_1.useCallback)((itemId) => parentSlotsRef.current?.acquire(itemId) ?? null, []);
|
|
21
|
+
const releaseParentSlot = (0, react_1.useCallback)((itemId) => {
|
|
22
|
+
parentSlotsRef.current?.release(itemId);
|
|
23
|
+
}, []);
|
|
24
|
+
const { notifyExpand, resetExpandNotification } = (0, hooks_1.useExpandNotifier)();
|
|
25
|
+
const { flatList, flatListRef, expandedIds, expandedIdsRef, insertChildren, syncChildrenPlaceholders, onToggle, } = (0, hooks_1.useFlatTree)({
|
|
26
|
+
items,
|
|
27
|
+
initialExpandedLevel,
|
|
28
|
+
enterAnimation,
|
|
29
|
+
onCollapse: resetExpandNotification,
|
|
30
|
+
});
|
|
31
|
+
const { registerChildren, nodePaginationMap, parentItems } = (0, hooks_1.useChildrenState)({
|
|
32
|
+
items,
|
|
33
|
+
flatList,
|
|
34
|
+
flatListRef,
|
|
35
|
+
expandedIds,
|
|
36
|
+
expandedIdsRef,
|
|
37
|
+
enterAnimation,
|
|
38
|
+
insertChildren,
|
|
39
|
+
syncChildrenPlaceholders,
|
|
40
|
+
skeletonCount: itemSkeleton ? constants_1.CHILDREN_SKELETON_COUNT : 1,
|
|
41
|
+
releaseParentSlot,
|
|
42
|
+
});
|
|
43
|
+
const { scrollParent, tailRegistry, isEndReachedWithScroll, virtuosoProps, onTopButtonProps, } = (0, hooks_1.useListScroll)({
|
|
44
|
+
scrollRef,
|
|
45
|
+
isEndReached,
|
|
46
|
+
onLoadMore,
|
|
47
|
+
flatListRef,
|
|
48
|
+
enterAnimation,
|
|
49
|
+
});
|
|
48
50
|
const contentStateProps = (0, react_1.useMemo)(() => {
|
|
49
51
|
const isNoData = !items?.length;
|
|
50
52
|
return {
|
|
51
|
-
// Проверка на текущие элементы списка необходима для рендера loading состояния при
|
|
53
|
+
// Проверка на текущие элементы списка необходима для рендера loading состояния при подгрузке данных
|
|
52
54
|
// вместо общего LoadingPlaceholder на всю страницу
|
|
53
55
|
isLoading: isNoData && isLoading,
|
|
54
56
|
isError: isNoData && isError,
|
|
@@ -60,44 +62,37 @@ const useLogic = ({ initialExpandedLevel, items, onRetry, errorMsg, isError, isL
|
|
|
60
62
|
onRetry,
|
|
61
63
|
},
|
|
62
64
|
};
|
|
63
|
-
}, [items, isLoading, isError, errorMsg, onRetry, imagesMap]);
|
|
64
|
-
const
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
65
|
+
}, [items, isLoading, isError, errorMsg, errorImgSrc, onRetry, imagesMap]);
|
|
66
|
+
const footerContext = (0, react_1.useMemo)(() => ({
|
|
67
|
+
isLoading,
|
|
68
|
+
isError,
|
|
69
|
+
isEndReached: isEndReachedWithScroll,
|
|
70
|
+
endOfScrollMsg,
|
|
71
|
+
onRetry,
|
|
72
|
+
}), [isLoading, isError, isEndReachedWithScroll, endOfScrollMsg, onRetry]);
|
|
71
73
|
return {
|
|
72
74
|
flatList,
|
|
73
75
|
onToggle,
|
|
76
|
+
nodePaginationMap,
|
|
77
|
+
registerChildren,
|
|
78
|
+
notifyExpand,
|
|
79
|
+
parentItems,
|
|
80
|
+
acquireParentSlot,
|
|
74
81
|
contentStateProps,
|
|
75
82
|
scrollParent,
|
|
76
|
-
virtuosoProps
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
rangeChanged: handleRangeChanged,
|
|
80
|
-
endReached: handleEndReach,
|
|
81
|
-
totalListHeightChanged: recalculateVerticalScroll,
|
|
82
|
-
},
|
|
83
|
-
footerProps: {
|
|
84
|
-
isError,
|
|
85
|
-
isLoading,
|
|
86
|
-
isEndReached: isEndReachedWithScroll,
|
|
87
|
-
},
|
|
88
|
-
onTopButtonProps: {
|
|
89
|
-
isActive: isStickyButtonActive,
|
|
90
|
-
handleScrollToTop,
|
|
91
|
-
scrollRef,
|
|
92
|
-
},
|
|
93
|
-
endOfScrollMsg,
|
|
83
|
+
virtuosoProps,
|
|
84
|
+
footerContext,
|
|
85
|
+
onTopButtonProps,
|
|
94
86
|
itemSkeleton,
|
|
95
87
|
renderItem,
|
|
88
|
+
// Fallback подставляется один раз: ниже по дереву строка выбирает функцию по
|
|
89
|
+
// типу узла, не проверяя, передал ли потребитель renderParent
|
|
90
|
+
renderParent: renderParent ?? renderItem,
|
|
96
91
|
items,
|
|
97
|
-
onLoadMore,
|
|
98
92
|
onRetry,
|
|
99
93
|
noDataImgSrc,
|
|
100
|
-
|
|
94
|
+
enterAnimation,
|
|
95
|
+
tailRegistry,
|
|
101
96
|
};
|
|
102
97
|
};
|
|
103
98
|
exports.useLogic = useLogic;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { FlattenTree, InfiniteTreeListData } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Есть ли у родителя строки-заглушки skeleton
|
|
4
|
+
*/
|
|
5
|
+
export declare const checkHasSkeletonPlaceholders: <TData extends InfiniteTreeListData<TData>>(flatList: FlattenTree<TData>[], parentId: string) => boolean;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.checkHasSkeletonPlaceholders = void 0;
|
|
4
|
+
const checkIsChildrenPlaceholderOf_1 = require("../checkIsChildrenPlaceholderOf");
|
|
5
|
+
/**
|
|
6
|
+
* Есть ли у родителя строки-заглушки skeleton
|
|
7
|
+
*/
|
|
8
|
+
const checkHasSkeletonPlaceholders = (flatList, parentId) => flatList.some((item) => (0, checkIsChildrenPlaceholderOf_1.checkIsChildrenPlaceholderOf)(item, parentId) &&
|
|
9
|
+
item.placeholderKind === 'skeleton');
|
|
10
|
+
exports.checkHasSkeletonPlaceholders = checkHasSkeletonPlaceholders;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './checkHasSkeletonPlaceholders';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./checkHasSkeletonPlaceholders"), exports);
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { FlattenTree, InfiniteTreeListData } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Проверяет, является ли элемент строкой-заглушкой ветки
|
|
4
|
+
*/
|
|
5
|
+
export declare const checkIsChildrenPlaceholder: <TData extends InfiniteTreeListData<TData>>(item: FlattenTree<TData>) => boolean;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.checkIsChildrenPlaceholder = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Проверяет, является ли элемент строкой-заглушкой ветки
|
|
6
|
+
*/
|
|
7
|
+
const checkIsChildrenPlaceholder = (item) => Boolean(item.placeholderKind);
|
|
8
|
+
exports.checkIsChildrenPlaceholder = checkIsChildrenPlaceholder;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './checkIsChildrenPlaceholder';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./checkIsChildrenPlaceholder"), exports);
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { FlattenTree, InfiniteTreeListData } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Проверяет, является ли элемент строкой-заглушкой ветки конкретного родителя
|
|
4
|
+
*/
|
|
5
|
+
export declare const checkIsChildrenPlaceholderOf: <TData extends InfiniteTreeListData<TData>>(item: FlattenTree<TData>, parentId: string) => boolean;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.checkIsChildrenPlaceholderOf = void 0;
|
|
4
|
+
const checkIsChildrenPlaceholder_1 = require("../checkIsChildrenPlaceholder");
|
|
5
|
+
/**
|
|
6
|
+
* Проверяет, является ли элемент строкой-заглушкой ветки конкретного родителя
|
|
7
|
+
*/
|
|
8
|
+
const checkIsChildrenPlaceholderOf = (item, parentId) => item.meta.parentId === parentId && (0, checkIsChildrenPlaceholder_1.checkIsChildrenPlaceholder)(item);
|
|
9
|
+
exports.checkIsChildrenPlaceholderOf = checkIsChildrenPlaceholderOf;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './checkIsChildrenPlaceholderOf';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./checkIsChildrenPlaceholderOf"), exports);
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { FlattenTree, InfiniteTreeListData } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Проверяет, является ли элемент прямым дочерним элементом родителя.
|
|
4
|
+
* Строки-заглушки ветки прямыми дочерними элементами не считаются
|
|
5
|
+
*/
|
|
6
|
+
export declare const checkIsDirectChild: <TData extends InfiniteTreeListData<TData>>(item: FlattenTree<TData>, parentId: string) => boolean;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.checkIsDirectChild = void 0;
|
|
4
|
+
const checkIsChildrenPlaceholder_1 = require("../checkIsChildrenPlaceholder");
|
|
5
|
+
/**
|
|
6
|
+
* Проверяет, является ли элемент прямым дочерним элементом родителя.
|
|
7
|
+
* Строки-заглушки ветки прямыми дочерними элементами не считаются
|
|
8
|
+
*/
|
|
9
|
+
const checkIsDirectChild = (item, parentId) => item.meta.parentId === parentId && !(0, checkIsChildrenPlaceholder_1.checkIsChildrenPlaceholder)(item);
|
|
10
|
+
exports.checkIsDirectChild = checkIsDirectChild;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './checkIsDirectChild';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./checkIsDirectChild"), exports);
|
package/node/components/InfiniteTreeList/utils/checkIsNoDataChildren/checkIsNoDataChildren.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { InfiniteTreeChildrenPagination, InfiniteTreeListData } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Пришли ли раскрытому узлу пустые дочерние элементы, для которых нужно
|
|
4
|
+
* показать заглушку «Нет данных».
|
|
5
|
+
*
|
|
6
|
+
* Пустые дочерние элементы без ошибки — ещё не признак отсутствия данных:
|
|
7
|
+
* до первого запроса узел отдаёт такое же пустое состояние, и заглушка мигала
|
|
8
|
+
* бы перед skeleton-строками. Поэтому дочерние элементы считаются
|
|
9
|
+
* загруженными, только если узел уже побывал в состоянии загрузки либо сам
|
|
10
|
+
* сообщил `isEndReached`
|
|
11
|
+
*/
|
|
12
|
+
export declare const checkIsNoDataChildren: <TData extends InfiniteTreeListData<TData>>(childrenState: InfiniteTreeChildrenPagination<TData>, hasLoadedOnce: boolean) => boolean;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.checkIsNoDataChildren = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Пришли ли раскрытому узлу пустые дочерние элементы, для которых нужно
|
|
6
|
+
* показать заглушку «Нет данных».
|
|
7
|
+
*
|
|
8
|
+
* Пустые дочерние элементы без ошибки — ещё не признак отсутствия данных:
|
|
9
|
+
* до первого запроса узел отдаёт такое же пустое состояние, и заглушка мигала
|
|
10
|
+
* бы перед skeleton-строками. Поэтому дочерние элементы считаются
|
|
11
|
+
* загруженными, только если узел уже побывал в состоянии загрузки либо сам
|
|
12
|
+
* сообщил `isEndReached`
|
|
13
|
+
*/
|
|
14
|
+
const checkIsNoDataChildren = (childrenState, hasLoadedOnce) => !childrenState.isLoading &&
|
|
15
|
+
!childrenState.isError &&
|
|
16
|
+
childrenState.data.length === 0 &&
|
|
17
|
+
(Boolean(childrenState.isEndReached) || hasLoadedOnce);
|
|
18
|
+
exports.checkIsNoDataChildren = checkIsNoDataChildren;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './checkIsNoDataChildren';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./checkIsNoDataChildren"), exports);
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { InfiniteTreeChildrenPagination, InfiniteTreeListData } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Сравнивает данные дочерних элементов узла по содержимому
|
|
4
|
+
*/
|
|
5
|
+
export declare const checkIsSameChildren: <TData extends InfiniteTreeListData<TData>>(current?: InfiniteTreeChildrenPagination<TData> | undefined, next?: InfiniteTreeChildrenPagination<TData> | undefined) => boolean;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.checkIsSameChildren = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Сравнивает данные дочерних элементов узла по содержимому
|
|
6
|
+
*/
|
|
7
|
+
const checkIsSameChildren = (current, next) => {
|
|
8
|
+
if (current === next) {
|
|
9
|
+
return true;
|
|
10
|
+
}
|
|
11
|
+
if (!current || !next) {
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
return (current.isLoading === next.isLoading &&
|
|
15
|
+
current.isError === next.isError &&
|
|
16
|
+
current.isEndReached === next.isEndReached &&
|
|
17
|
+
current.data.length === next.data.length &&
|
|
18
|
+
current.data.every((item, index) => item.id === next.data[index]?.id));
|
|
19
|
+
};
|
|
20
|
+
exports.checkIsSameChildren = checkIsSameChildren;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './checkIsSameChildren';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./checkIsSameChildren"), exports);
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { FlattenTree, InfiniteTreeListData } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Количество прямых дочерних элементов родителя без строк-заглушек
|
|
4
|
+
*/
|
|
5
|
+
export declare const countDirectChildren: <TData extends InfiniteTreeListData<TData>>(flatList: FlattenTree<TData>[], parentId: string) => number;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.countDirectChildren = void 0;
|
|
4
|
+
const checkIsDirectChild_1 = require("../checkIsDirectChild");
|
|
5
|
+
/**
|
|
6
|
+
* Количество прямых дочерних элементов родителя без строк-заглушек
|
|
7
|
+
*/
|
|
8
|
+
const countDirectChildren = (flatList, parentId) => flatList.filter((item) => (0, checkIsDirectChild_1.checkIsDirectChild)(item, parentId)).length;
|
|
9
|
+
exports.countDirectChildren = countDirectChildren;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './countDirectChildren';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./countDirectChildren"), exports);
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export type ParentSlots = {
|
|
2
|
+
/**
|
|
3
|
+
* Отдаёт контейнер строки узла, создавая его при первом обращении
|
|
4
|
+
*/
|
|
5
|
+
acquire: (itemId: string) => HTMLDivElement | null;
|
|
6
|
+
/**
|
|
7
|
+
* Выбрасывает контейнер узла вместе с его поддеревом
|
|
8
|
+
*/
|
|
9
|
+
release: (itemId: string) => void;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Реестр постоянных контейнеров строк узлов с подгружаемыми дочерними
|
|
13
|
+
* элементами.
|
|
14
|
+
*
|
|
15
|
+
* Такая строка монтируется один раз, вне виртуализации, и живёт, пока жив
|
|
16
|
+
* список: виртуализация переносит её готовый DOM-узел в строку скролла и
|
|
17
|
+
* обратно, а React-поддерево при этом не размонтируется. Иначе состояние
|
|
18
|
+
* строки — store, query, локальный state — умирало бы на каждом скролле.
|
|
19
|
+
*
|
|
20
|
+
* Контейнер обязан быть стабильным: смена контейнера в `createPortal` — для
|
|
21
|
+
* React другой узел, он размонтирует поддерево и состояние потеряется. Поэтому
|
|
22
|
+
* переносится сам контейнер, а не содержимое портала
|
|
23
|
+
*/
|
|
24
|
+
export declare const createParentSlots: () => ParentSlots;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createParentSlots = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Реестр постоянных контейнеров строк узлов с подгружаемыми дочерними
|
|
6
|
+
* элементами.
|
|
7
|
+
*
|
|
8
|
+
* Такая строка монтируется один раз, вне виртуализации, и живёт, пока жив
|
|
9
|
+
* список: виртуализация переносит её готовый DOM-узел в строку скролла и
|
|
10
|
+
* обратно, а React-поддерево при этом не размонтируется. Иначе состояние
|
|
11
|
+
* строки — store, query, локальный state — умирало бы на каждом скролле.
|
|
12
|
+
*
|
|
13
|
+
* Контейнер обязан быть стабильным: смена контейнера в `createPortal` — для
|
|
14
|
+
* React другой узел, он размонтирует поддерево и состояние потеряется. Поэтому
|
|
15
|
+
* переносится сам контейнер, а не содержимое портала
|
|
16
|
+
*/
|
|
17
|
+
const createParentSlots = () => {
|
|
18
|
+
const slots = new Map();
|
|
19
|
+
return {
|
|
20
|
+
acquire: (itemId) => {
|
|
21
|
+
if (typeof document === 'undefined') {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
const slot = slots.get(itemId);
|
|
25
|
+
if (slot) {
|
|
26
|
+
return slot;
|
|
27
|
+
}
|
|
28
|
+
const created = document.createElement('div');
|
|
29
|
+
created.style.display = 'contents';
|
|
30
|
+
slots.set(itemId, created);
|
|
31
|
+
return created;
|
|
32
|
+
},
|
|
33
|
+
release: (itemId) => {
|
|
34
|
+
slots.get(itemId)?.remove();
|
|
35
|
+
slots.delete(itemId);
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
exports.createParentSlots = createParentSlots;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './createParentSlots';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./createParentSlots"), exports);
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type TailRegistry = {
|
|
2
|
+
/**
|
|
3
|
+
* Регистрирует хвост ветки. Тот же `parentId` и `itemId` — обновляет callback.
|
|
4
|
+
* Новый `itemId` сбрасывает `isLoadMoreRequested`
|
|
5
|
+
*/
|
|
6
|
+
register: (parentId: string, itemId: string, endReached: () => void) => void;
|
|
7
|
+
/**
|
|
8
|
+
* Удаляет запись. Без `itemId` — всегда. С `itemId` — только если совпал хвост
|
|
9
|
+
*/
|
|
10
|
+
unregister: (parentId: string, itemId?: string) => void;
|
|
11
|
+
/**
|
|
12
|
+
* Вызывает `endReached` для хвостов, чей индекс попадает в видимый диапазон.
|
|
13
|
+
* `getIndex === -1` пропускает запись
|
|
14
|
+
*/
|
|
15
|
+
checkRange: (endIndex: number, getIndex: (itemId: string) => number) => void;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Реестр хвостов вложенных веток. Живёт на экземпляре списка и переживает
|
|
19
|
+
* размонтирование строки виртуализацией
|
|
20
|
+
*/
|
|
21
|
+
export declare const createTailRegistry: () => TailRegistry;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createTailRegistry = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Реестр хвостов вложенных веток. Живёт на экземпляре списка и переживает
|
|
6
|
+
* размонтирование строки виртуализацией
|
|
7
|
+
*/
|
|
8
|
+
const createTailRegistry = () => {
|
|
9
|
+
const entries = new Map();
|
|
10
|
+
return {
|
|
11
|
+
register(parentId, itemId, endReached) {
|
|
12
|
+
const existing = entries.get(parentId);
|
|
13
|
+
if (existing && existing.itemId === itemId) {
|
|
14
|
+
existing.endReached = endReached;
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
entries.set(parentId, { itemId, endReached, isLoadMoreRequested: false });
|
|
18
|
+
},
|
|
19
|
+
unregister(parentId, itemId) {
|
|
20
|
+
if (itemId === undefined) {
|
|
21
|
+
entries.delete(parentId);
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const existing = entries.get(parentId);
|
|
25
|
+
if (existing?.itemId === itemId) {
|
|
26
|
+
entries.delete(parentId);
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
checkRange(endIndex, getIndex) {
|
|
30
|
+
entries.forEach((entry) => {
|
|
31
|
+
if (entry.isLoadMoreRequested) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
const index = getIndex(entry.itemId);
|
|
35
|
+
if (index === -1 || endIndex < index) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
entry.isLoadMoreRequested = true;
|
|
39
|
+
entry.endReached();
|
|
40
|
+
});
|
|
41
|
+
},
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
exports.createTailRegistry = createTailRegistry;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { createTailRegistry, type TailRegistry } from './createTailRegistry';
|