@elliemae/ds-legacy-shuttle-v2 1.0.0-rc.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/dist/cjs/DSShuttleV2.js +46 -0
- package/dist/cjs/DSShuttleV2.js.map +7 -0
- package/dist/cjs/config/DSShuttleV2Definitions.js +74 -0
- package/dist/cjs/config/DSShuttleV2Definitions.js.map +7 -0
- package/dist/cjs/config/itemMovementHelpers.js +133 -0
- package/dist/cjs/config/itemMovementHelpers.js.map +7 -0
- package/dist/cjs/config/useAutoCalculated/index.js +43 -0
- package/dist/cjs/config/useAutoCalculated/index.js.map +7 -0
- package/dist/cjs/config/useAutoCalculated/useDataStructure.js +182 -0
- package/dist/cjs/config/useAutoCalculated/useDataStructure.js.map +7 -0
- package/dist/cjs/config/useAutoCalculated/useShuttleVirtualized.js +51 -0
- package/dist/cjs/config/useAutoCalculated/useShuttleVirtualized.js.map +7 -0
- package/dist/cjs/config/useFocusTracker/index.js +42 -0
- package/dist/cjs/config/useFocusTracker/index.js.map +7 -0
- package/dist/cjs/config/useFocusTracker/useFocusActionTrackers.js +149 -0
- package/dist/cjs/config/useFocusTracker/useFocusActionTrackers.js.map +7 -0
- package/dist/cjs/config/useFocusTracker/useFocusItemTracker.js +103 -0
- package/dist/cjs/config/useFocusTracker/useFocusItemTracker.js.map +7 -0
- package/dist/cjs/config/useFocusTracker/useFocusRegionTrackers.js +87 -0
- package/dist/cjs/config/useFocusTracker/useFocusRegionTrackers.js.map +7 -0
- package/dist/cjs/config/useFocusTracker/useFocusTracker.js +52 -0
- package/dist/cjs/config/useFocusTracker/useFocusTracker.js.map +7 -0
- package/dist/cjs/config/useStore/focusAndTabIndexManager.js +77 -0
- package/dist/cjs/config/useStore/focusAndTabIndexManager.js.map +7 -0
- package/dist/cjs/config/useStore/index.js +30 -0
- package/dist/cjs/config/useStore/index.js.map +7 -0
- package/dist/cjs/config/useStore/useStore.js +86 -0
- package/dist/cjs/config/useStore/useStore.js.map +7 -0
- package/dist/cjs/config/useValidateProps.js +40 -0
- package/dist/cjs/config/useValidateProps.js.map +7 -0
- package/dist/cjs/constants/index.js +69 -0
- package/dist/cjs/constants/index.js.map +7 -0
- package/dist/cjs/exported-related/ShuttleItem.js +60 -0
- package/dist/cjs/exported-related/ShuttleItem.js.map +7 -0
- package/dist/cjs/exported-related/index.js +36 -0
- package/dist/cjs/exported-related/index.js.map +7 -0
- package/dist/cjs/index.js +43 -0
- package/dist/cjs/index.js.map +7 -0
- package/dist/cjs/package.json +7 -0
- package/dist/cjs/parts/Dnd/DndHandle.js +89 -0
- package/dist/cjs/parts/Dnd/DndHandle.js.map +7 -0
- package/dist/cjs/parts/Dnd/DragOverlay.js +51 -0
- package/dist/cjs/parts/Dnd/DragOverlay.js.map +7 -0
- package/dist/cjs/parts/Dnd/DropIndicator.js +92 -0
- package/dist/cjs/parts/Dnd/DropIndicator.js.map +7 -0
- package/dist/cjs/parts/Header.js +91 -0
- package/dist/cjs/parts/Header.js.map +7 -0
- package/dist/cjs/parts/HoC/withConditionalDnDRowContext.js +121 -0
- package/dist/cjs/parts/HoC/withConditionalDnDRowContext.js.map +7 -0
- package/dist/cjs/parts/HoC/withConditionalUseSortable.js +43 -0
- package/dist/cjs/parts/HoC/withConditionalUseSortable.js.map +7 -0
- package/dist/cjs/parts/Item/Item.js +222 -0
- package/dist/cjs/parts/Item/Item.js.map +7 -0
- package/dist/cjs/parts/Item/ItemActions/ItemActions.js +164 -0
- package/dist/cjs/parts/Item/ItemActions/ItemActions.js.map +7 -0
- package/dist/cjs/parts/Item/ItemActions/index.js +30 -0
- package/dist/cjs/parts/Item/ItemActions/index.js.map +7 -0
- package/dist/cjs/parts/Item/ItemActions/useActionsHandlers.js +54 -0
- package/dist/cjs/parts/Item/ItemActions/useActionsHandlers.js.map +7 -0
- package/dist/cjs/parts/Item/ItemActions/useActionsLogicHandlers.js +82 -0
- package/dist/cjs/parts/Item/ItemActions/useActionsLogicHandlers.js.map +7 -0
- package/dist/cjs/parts/Item/ItemActions/useInnerRefHandlers.js +69 -0
- package/dist/cjs/parts/Item/ItemActions/useInnerRefHandlers.js.map +7 -0
- package/dist/cjs/parts/Item/ItemMiddleSection.js +140 -0
- package/dist/cjs/parts/Item/ItemMiddleSection.js.map +7 -0
- package/dist/cjs/parts/Item/ItemOverlay.js +76 -0
- package/dist/cjs/parts/Item/ItemOverlay.js.map +7 -0
- package/dist/cjs/parts/Item/ItemSelection.js +70 -0
- package/dist/cjs/parts/Item/ItemSelection.js.map +7 -0
- package/dist/cjs/parts/Item/TextSection.js +56 -0
- package/dist/cjs/parts/Item/TextSection.js.map +7 -0
- package/dist/cjs/parts/Item/useItemArrowNavigation.js +104 -0
- package/dist/cjs/parts/Item/useItemArrowNavigation.js.map +7 -0
- package/dist/cjs/parts/Item/useItemKeyboardSelection.js +61 -0
- package/dist/cjs/parts/Item/useItemKeyboardSelection.js.map +7 -0
- package/dist/cjs/parts/Item/useSelectionLogic.js +128 -0
- package/dist/cjs/parts/Item/useSelectionLogic.js.map +7 -0
- package/dist/cjs/parts/Item/useThisItemIsFocused.js +47 -0
- package/dist/cjs/parts/Item/useThisItemIsFocused.js.map +7 -0
- package/dist/cjs/parts/MainContent.js +116 -0
- package/dist/cjs/parts/MainContent.js.map +7 -0
- package/dist/cjs/parts/Panel/bottom/LoadMoreBtn.js +81 -0
- package/dist/cjs/parts/Panel/bottom/LoadMoreBtn.js.map +7 -0
- package/dist/cjs/parts/Panel/bottom/LoadingMore.js +59 -0
- package/dist/cjs/parts/Panel/bottom/LoadingMore.js.map +7 -0
- package/dist/cjs/parts/Panel/bottom/PanelContentBottomSection.js +97 -0
- package/dist/cjs/parts/Panel/bottom/PanelContentBottomSection.js.map +7 -0
- package/dist/cjs/parts/Panel/bottom/useInnerRefHandlers.js +51 -0
- package/dist/cjs/parts/Panel/bottom/useInnerRefHandlers.js.map +7 -0
- package/dist/cjs/parts/Panel/bottom/useLoadMoreBtnArrowNavigation.js +77 -0
- package/dist/cjs/parts/Panel/bottom/useLoadMoreBtnArrowNavigation.js.map +7 -0
- package/dist/cjs/parts/Panel/middle/EmptyItems.js +58 -0
- package/dist/cjs/parts/Panel/middle/EmptyItems.js.map +7 -0
- package/dist/cjs/parts/Panel/middle/ItemListWrapper/Index.js +93 -0
- package/dist/cjs/parts/Panel/middle/ItemListWrapper/Index.js.map +7 -0
- package/dist/cjs/parts/Panel/middle/ItemListWrapper/getDatumFlags.js +48 -0
- package/dist/cjs/parts/Panel/middle/ItemListWrapper/getDatumFlags.js.map +7 -0
- package/dist/cjs/parts/Panel/middle/ItemListWrapper/useGetDatumHydratables.js +60 -0
- package/dist/cjs/parts/Panel/middle/ItemListWrapper/useGetDatumHydratables.js.map +7 -0
- package/dist/cjs/parts/Panel/middle/LoadingItems.js +68 -0
- package/dist/cjs/parts/Panel/middle/LoadingItems.js.map +7 -0
- package/dist/cjs/parts/Panel/middle/MultipleSelectionAction.js +186 -0
- package/dist/cjs/parts/Panel/middle/MultipleSelectionAction.js.map +7 -0
- package/dist/cjs/parts/Panel/middle/PanelContentMiddleSection.js +174 -0
- package/dist/cjs/parts/Panel/middle/PanelContentMiddleSection.js.map +7 -0
- package/dist/cjs/parts/Panel/top/PanelContentTopSection.js +71 -0
- package/dist/cjs/parts/Panel/top/PanelContentTopSection.js.map +7 -0
- package/dist/cjs/parts/Panel/top/PanelFilterSection.js +79 -0
- package/dist/cjs/parts/Panel/top/PanelFilterSection.js.map +7 -0
- package/dist/cjs/parts/Panel/top/SelectionHeader.js +137 -0
- package/dist/cjs/parts/Panel/top/SelectionHeader.js.map +7 -0
- package/dist/cjs/parts/PanelWrapper.js +83 -0
- package/dist/cjs/parts/PanelWrapper.js.map +7 -0
- package/dist/cjs/react-desc-prop-types.js +157 -0
- package/dist/cjs/react-desc-prop-types.js.map +7 -0
- package/dist/cjs/tests/configs/basic.js +164 -0
- package/dist/cjs/tests/configs/basic.js.map +7 -0
- package/dist/cjs/tests/configs/filter.js +199 -0
- package/dist/cjs/tests/configs/filter.js.map +7 -0
- package/dist/cjs/tests/configs/loadMore.js +179 -0
- package/dist/cjs/tests/configs/loadMore.js.map +7 -0
- package/dist/esm/DSShuttleV2.js +16 -0
- package/dist/esm/DSShuttleV2.js.map +7 -0
- package/dist/esm/config/DSShuttleV2Definitions.js +44 -0
- package/dist/esm/config/DSShuttleV2Definitions.js.map +7 -0
- package/dist/esm/config/itemMovementHelpers.js +103 -0
- package/dist/esm/config/itemMovementHelpers.js.map +7 -0
- package/dist/esm/config/useAutoCalculated/index.js +13 -0
- package/dist/esm/config/useAutoCalculated/index.js.map +7 -0
- package/dist/esm/config/useAutoCalculated/useDataStructure.js +152 -0
- package/dist/esm/config/useAutoCalculated/useDataStructure.js.map +7 -0
- package/dist/esm/config/useAutoCalculated/useShuttleVirtualized.js +21 -0
- package/dist/esm/config/useAutoCalculated/useShuttleVirtualized.js.map +7 -0
- package/dist/esm/config/useFocusTracker/index.js +12 -0
- package/dist/esm/config/useFocusTracker/index.js.map +7 -0
- package/dist/esm/config/useFocusTracker/useFocusActionTrackers.js +119 -0
- package/dist/esm/config/useFocusTracker/useFocusActionTrackers.js.map +7 -0
- package/dist/esm/config/useFocusTracker/useFocusItemTracker.js +73 -0
- package/dist/esm/config/useFocusTracker/useFocusItemTracker.js.map +7 -0
- package/dist/esm/config/useFocusTracker/useFocusRegionTrackers.js +57 -0
- package/dist/esm/config/useFocusTracker/useFocusRegionTrackers.js.map +7 -0
- package/dist/esm/config/useFocusTracker/useFocusTracker.js +22 -0
- package/dist/esm/config/useFocusTracker/useFocusTracker.js.map +7 -0
- package/dist/esm/config/useStore/focusAndTabIndexManager.js +47 -0
- package/dist/esm/config/useStore/focusAndTabIndexManager.js.map +7 -0
- package/dist/esm/config/useStore/index.js +3 -0
- package/dist/esm/config/useStore/index.js.map +7 -0
- package/dist/esm/config/useStore/useStore.js +56 -0
- package/dist/esm/config/useStore/useStore.js.map +7 -0
- package/dist/esm/config/useValidateProps.js +10 -0
- package/dist/esm/config/useValidateProps.js.map +7 -0
- package/dist/esm/constants/index.js +39 -0
- package/dist/esm/constants/index.js.map +7 -0
- package/dist/esm/exported-related/ShuttleItem.js +30 -0
- package/dist/esm/exported-related/ShuttleItem.js.map +7 -0
- package/dist/esm/exported-related/index.js +6 -0
- package/dist/esm/exported-related/index.js.map +7 -0
- package/dist/esm/index.js +13 -0
- package/dist/esm/index.js.map +7 -0
- package/dist/esm/package.json +7 -0
- package/dist/esm/parts/Dnd/DndHandle.js +59 -0
- package/dist/esm/parts/Dnd/DndHandle.js.map +7 -0
- package/dist/esm/parts/Dnd/DragOverlay.js +21 -0
- package/dist/esm/parts/Dnd/DragOverlay.js.map +7 -0
- package/dist/esm/parts/Dnd/DropIndicator.js +62 -0
- package/dist/esm/parts/Dnd/DropIndicator.js.map +7 -0
- package/dist/esm/parts/Header.js +63 -0
- package/dist/esm/parts/Header.js.map +7 -0
- package/dist/esm/parts/HoC/withConditionalDnDRowContext.js +91 -0
- package/dist/esm/parts/HoC/withConditionalDnDRowContext.js.map +7 -0
- package/dist/esm/parts/HoC/withConditionalUseSortable.js +13 -0
- package/dist/esm/parts/HoC/withConditionalUseSortable.js.map +7 -0
- package/dist/esm/parts/Item/Item.js +192 -0
- package/dist/esm/parts/Item/Item.js.map +7 -0
- package/dist/esm/parts/Item/ItemActions/ItemActions.js +134 -0
- package/dist/esm/parts/Item/ItemActions/ItemActions.js.map +7 -0
- package/dist/esm/parts/Item/ItemActions/index.js +3 -0
- package/dist/esm/parts/Item/ItemActions/index.js.map +7 -0
- package/dist/esm/parts/Item/ItemActions/useActionsHandlers.js +24 -0
- package/dist/esm/parts/Item/ItemActions/useActionsHandlers.js.map +7 -0
- package/dist/esm/parts/Item/ItemActions/useActionsLogicHandlers.js +52 -0
- package/dist/esm/parts/Item/ItemActions/useActionsLogicHandlers.js.map +7 -0
- package/dist/esm/parts/Item/ItemActions/useInnerRefHandlers.js +39 -0
- package/dist/esm/parts/Item/ItemActions/useInnerRefHandlers.js.map +7 -0
- package/dist/esm/parts/Item/ItemMiddleSection.js +110 -0
- package/dist/esm/parts/Item/ItemMiddleSection.js.map +7 -0
- package/dist/esm/parts/Item/ItemOverlay.js +46 -0
- package/dist/esm/parts/Item/ItemOverlay.js.map +7 -0
- package/dist/esm/parts/Item/ItemSelection.js +40 -0
- package/dist/esm/parts/Item/ItemSelection.js.map +7 -0
- package/dist/esm/parts/Item/TextSection.js +26 -0
- package/dist/esm/parts/Item/TextSection.js.map +7 -0
- package/dist/esm/parts/Item/useItemArrowNavigation.js +78 -0
- package/dist/esm/parts/Item/useItemArrowNavigation.js.map +7 -0
- package/dist/esm/parts/Item/useItemKeyboardSelection.js +31 -0
- package/dist/esm/parts/Item/useItemKeyboardSelection.js.map +7 -0
- package/dist/esm/parts/Item/useSelectionLogic.js +98 -0
- package/dist/esm/parts/Item/useSelectionLogic.js.map +7 -0
- package/dist/esm/parts/Item/useThisItemIsFocused.js +17 -0
- package/dist/esm/parts/Item/useThisItemIsFocused.js.map +7 -0
- package/dist/esm/parts/MainContent.js +86 -0
- package/dist/esm/parts/MainContent.js.map +7 -0
- package/dist/esm/parts/Panel/bottom/LoadMoreBtn.js +51 -0
- package/dist/esm/parts/Panel/bottom/LoadMoreBtn.js.map +7 -0
- package/dist/esm/parts/Panel/bottom/LoadingMore.js +29 -0
- package/dist/esm/parts/Panel/bottom/LoadingMore.js.map +7 -0
- package/dist/esm/parts/Panel/bottom/PanelContentBottomSection.js +67 -0
- package/dist/esm/parts/Panel/bottom/PanelContentBottomSection.js.map +7 -0
- package/dist/esm/parts/Panel/bottom/useInnerRefHandlers.js +21 -0
- package/dist/esm/parts/Panel/bottom/useInnerRefHandlers.js.map +7 -0
- package/dist/esm/parts/Panel/bottom/useLoadMoreBtnArrowNavigation.js +51 -0
- package/dist/esm/parts/Panel/bottom/useLoadMoreBtnArrowNavigation.js.map +7 -0
- package/dist/esm/parts/Panel/middle/EmptyItems.js +28 -0
- package/dist/esm/parts/Panel/middle/EmptyItems.js.map +7 -0
- package/dist/esm/parts/Panel/middle/ItemListWrapper/Index.js +63 -0
- package/dist/esm/parts/Panel/middle/ItemListWrapper/Index.js.map +7 -0
- package/dist/esm/parts/Panel/middle/ItemListWrapper/getDatumFlags.js +18 -0
- package/dist/esm/parts/Panel/middle/ItemListWrapper/getDatumFlags.js.map +7 -0
- package/dist/esm/parts/Panel/middle/ItemListWrapper/useGetDatumHydratables.js +30 -0
- package/dist/esm/parts/Panel/middle/ItemListWrapper/useGetDatumHydratables.js.map +7 -0
- package/dist/esm/parts/Panel/middle/LoadingItems.js +38 -0
- package/dist/esm/parts/Panel/middle/LoadingItems.js.map +7 -0
- package/dist/esm/parts/Panel/middle/MultipleSelectionAction.js +156 -0
- package/dist/esm/parts/Panel/middle/MultipleSelectionAction.js.map +7 -0
- package/dist/esm/parts/Panel/middle/PanelContentMiddleSection.js +144 -0
- package/dist/esm/parts/Panel/middle/PanelContentMiddleSection.js.map +7 -0
- package/dist/esm/parts/Panel/top/PanelContentTopSection.js +41 -0
- package/dist/esm/parts/Panel/top/PanelContentTopSection.js.map +7 -0
- package/dist/esm/parts/Panel/top/PanelFilterSection.js +49 -0
- package/dist/esm/parts/Panel/top/PanelFilterSection.js.map +7 -0
- package/dist/esm/parts/Panel/top/SelectionHeader.js +107 -0
- package/dist/esm/parts/Panel/top/SelectionHeader.js.map +7 -0
- package/dist/esm/parts/PanelWrapper.js +53 -0
- package/dist/esm/parts/PanelWrapper.js.map +7 -0
- package/dist/esm/react-desc-prop-types.js +132 -0
- package/dist/esm/react-desc-prop-types.js.map +7 -0
- package/dist/esm/tests/configs/basic.js +134 -0
- package/dist/esm/tests/configs/basic.js.map +7 -0
- package/dist/esm/tests/configs/filter.js +169 -0
- package/dist/esm/tests/configs/filter.js.map +7 -0
- package/dist/esm/tests/configs/loadMore.js +149 -0
- package/dist/esm/tests/configs/loadMore.js.map +7 -0
- package/dist/types/DSShuttleV2.d.ts +4 -0
- package/dist/types/config/DSShuttleV2Definitions.d.ts +36 -0
- package/dist/types/config/itemMovementHelpers.d.ts +7 -0
- package/dist/types/config/useAutoCalculated/index.d.ts +32 -0
- package/dist/types/config/useAutoCalculated/useDataStructure.d.ts +25 -0
- package/dist/types/config/useAutoCalculated/useShuttleVirtualized.d.ts +9 -0
- package/dist/types/config/useFocusTracker/index.d.ts +4 -0
- package/dist/types/config/useFocusTracker/useFocusActionTrackers.d.ts +10 -0
- package/dist/types/config/useFocusTracker/useFocusItemTracker.d.ts +11 -0
- package/dist/types/config/useFocusTracker/useFocusRegionTrackers.d.ts +18 -0
- package/dist/types/config/useFocusTracker/useFocusTracker.d.ts +33 -0
- package/dist/types/config/useStore/focusAndTabIndexManager.d.ts +10 -0
- package/dist/types/config/useStore/index.d.ts +1 -0
- package/dist/types/config/useStore/useStore.d.ts +301 -0
- package/dist/types/config/useValidateProps.d.ts +3 -0
- package/dist/types/constants/index.d.ts +32 -0
- package/dist/types/exported-related/ShuttleItem.d.ts +8 -0
- package/dist/types/exported-related/index.d.ts +1 -0
- package/dist/types/index.d.ts +3 -0
- package/dist/types/parts/Dnd/DndHandle.d.ts +15 -0
- package/dist/types/parts/Dnd/DragOverlay.d.ts +6 -0
- package/dist/types/parts/Dnd/DropIndicator.d.ts +15 -0
- package/dist/types/parts/Header.d.ts +3 -0
- package/dist/types/parts/HoC/withConditionalDnDRowContext.d.ts +10 -0
- package/dist/types/parts/HoC/withConditionalUseSortable.d.ts +8 -0
- package/dist/types/parts/Item/Item.d.ts +6 -0
- package/dist/types/parts/Item/ItemActions/ItemActions.d.ts +3 -0
- package/dist/types/parts/Item/ItemActions/index.d.ts +1 -0
- package/dist/types/parts/Item/ItemActions/useActionsHandlers.d.ts +7 -0
- package/dist/types/parts/Item/ItemActions/useActionsLogicHandlers.d.ts +7 -0
- package/dist/types/parts/Item/ItemActions/useInnerRefHandlers.d.ts +6 -0
- package/dist/types/parts/Item/ItemMiddleSection.d.ts +5 -0
- package/dist/types/parts/Item/ItemOverlay.d.ts +5 -0
- package/dist/types/parts/Item/ItemSelection.d.ts +3 -0
- package/dist/types/parts/Item/TextSection.d.ts +3 -0
- package/dist/types/parts/Item/useItemArrowNavigation.d.ts +5 -0
- package/dist/types/parts/Item/useItemKeyboardSelection.d.ts +5 -0
- package/dist/types/parts/Item/useSelectionLogic.d.ts +6 -0
- package/dist/types/parts/Item/useThisItemIsFocused.d.ts +4 -0
- package/dist/types/parts/MainContent.d.ts +2 -0
- package/dist/types/parts/Panel/bottom/LoadMoreBtn.d.ts +2 -0
- package/dist/types/parts/Panel/bottom/LoadingMore.d.ts +2 -0
- package/dist/types/parts/Panel/bottom/PanelContentBottomSection.d.ts +3 -0
- package/dist/types/parts/Panel/bottom/useInnerRefHandlers.d.ts +4 -0
- package/dist/types/parts/Panel/bottom/useLoadMoreBtnArrowNavigation.d.ts +5 -0
- package/dist/types/parts/Panel/middle/EmptyItems.d.ts +2 -0
- package/dist/types/parts/Panel/middle/ItemListWrapper/Index.d.ts +4 -0
- package/dist/types/parts/Panel/middle/ItemListWrapper/getDatumFlags.d.ts +15 -0
- package/dist/types/parts/Panel/middle/ItemListWrapper/useGetDatumHydratables.d.ts +11 -0
- package/dist/types/parts/Panel/middle/LoadingItems.d.ts +2 -0
- package/dist/types/parts/Panel/middle/MultipleSelectionAction.d.ts +3 -0
- package/dist/types/parts/Panel/middle/PanelContentMiddleSection.d.ts +3 -0
- package/dist/types/parts/Panel/top/PanelContentTopSection.d.ts +2 -0
- package/dist/types/parts/Panel/top/PanelFilterSection.d.ts +2 -0
- package/dist/types/parts/Panel/top/SelectionHeader.d.ts +3 -0
- package/dist/types/parts/PanelWrapper.d.ts +3 -0
- package/dist/types/react-desc-prop-types.d.ts +199 -0
- package/dist/types/tests/configs/basic.d.ts +25 -0
- package/dist/types/tests/configs/filter.d.ts +29 -0
- package/dist/types/tests/configs/loadMore.d.ts +29 -0
- package/dist/types/tests/shuttle-v2.basic.test.d.ts +1 -0
- package/dist/types/tests/shuttle-v2.filter.test.d.ts +1 -0
- package/dist/types/tests/shuttle-v2.load-more.test.d.ts +1 -0
- package/package.json +87 -0
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import React2, { useMemo } from "react";
|
|
4
|
+
import { useFontSizeDetector } from "@elliemae/ds-legacy-hooks-fontsize-detector";
|
|
5
|
+
import { styled } from "@elliemae/ds-legacy-system";
|
|
6
|
+
import { Grid } from "@elliemae/ds-legacy-grid";
|
|
7
|
+
import { useOnBlurOut } from "@elliemae/ds-legacy-utilities";
|
|
8
|
+
import { PanelWrapper } from "./PanelWrapper.js";
|
|
9
|
+
import { usePropsStore } from "../config/useStore/index.js";
|
|
10
|
+
import { DSShuttleV2Name, DSShuttleV2Slots } from "../config/DSShuttleV2Definitions.js";
|
|
11
|
+
import { useFocusTracker } from "../config/useFocusTracker/index.js";
|
|
12
|
+
const StyledWrapper = styled(Grid, { name: DSShuttleV2Name, slot: DSShuttleV2Slots.WRAPPER })``;
|
|
13
|
+
const layoutWithSmallFont = {
|
|
14
|
+
cols: { small: ["auto"], medium: ["1fr", "1fr"] },
|
|
15
|
+
rows: { small: ["1fr", "1fr"], medium: ["auto"] }
|
|
16
|
+
};
|
|
17
|
+
const layoutWithBigFont = {
|
|
18
|
+
cols: ["auto"],
|
|
19
|
+
rows: ["1fr", "1fr"]
|
|
20
|
+
};
|
|
21
|
+
const useResizeObserver = (ref) => {
|
|
22
|
+
const [dimensions, setDimensions] = React2.useState(0);
|
|
23
|
+
React2.useEffect(() => {
|
|
24
|
+
if (ref) {
|
|
25
|
+
const observeTarget = ref;
|
|
26
|
+
const resizeObserver = new ResizeObserver((entries) => {
|
|
27
|
+
entries.forEach((entry) => {
|
|
28
|
+
setDimensions(Math.ceil(entry.contentRect.height));
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
resizeObserver.observe(observeTarget);
|
|
32
|
+
return () => {
|
|
33
|
+
resizeObserver.unobserve(observeTarget);
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
}, [ref]);
|
|
37
|
+
return dimensions;
|
|
38
|
+
};
|
|
39
|
+
const MainContent = React2.memo(() => {
|
|
40
|
+
const { trackFocusRegionReset, trackFocusItemReset, trackFocusActionReset } = useFocusTracker();
|
|
41
|
+
const config = React2.useMemo(
|
|
42
|
+
() => ({
|
|
43
|
+
onBlur: () => {
|
|
44
|
+
trackFocusRegionReset();
|
|
45
|
+
trackFocusItemReset();
|
|
46
|
+
trackFocusActionReset();
|
|
47
|
+
}
|
|
48
|
+
}),
|
|
49
|
+
[trackFocusActionReset, trackFocusItemReset, trackFocusRegionReset]
|
|
50
|
+
);
|
|
51
|
+
const handleOnBlurOut = useOnBlurOut(config);
|
|
52
|
+
const destinationHasMultipleSelectedItems = usePropsStore((store) => store.destinationHasMultipleSelectedItems);
|
|
53
|
+
const sourceHasMultipleSelectedItems = usePropsStore((store) => store.sourceHasMultipleSelectedItems);
|
|
54
|
+
const getOwnerProps = usePropsStore((store) => store.get);
|
|
55
|
+
const metaInfo = useFontSizeDetector();
|
|
56
|
+
const colsAndRowsLayout = useMemo(() => {
|
|
57
|
+
if (metaInfo.isLarge) {
|
|
58
|
+
return layoutWithBigFont;
|
|
59
|
+
} else {
|
|
60
|
+
return layoutWithSmallFont;
|
|
61
|
+
}
|
|
62
|
+
}, [metaInfo]);
|
|
63
|
+
const [ref, setRef] = React2.useState();
|
|
64
|
+
const parentNode = ref?.parentNode;
|
|
65
|
+
const height = useResizeObserver(parentNode);
|
|
66
|
+
const finalHeight = height !== 0 ? height : 208;
|
|
67
|
+
return /* @__PURE__ */ jsxs(
|
|
68
|
+
StyledWrapper,
|
|
69
|
+
{
|
|
70
|
+
gutter: "xs",
|
|
71
|
+
onBlur: handleOnBlurOut,
|
|
72
|
+
...colsAndRowsLayout,
|
|
73
|
+
getOwnerProps,
|
|
74
|
+
style: { height: `${finalHeight}px` },
|
|
75
|
+
ref: setRef,
|
|
76
|
+
children: [
|
|
77
|
+
/* @__PURE__ */ jsx(PanelWrapper, { isDestinationPanel: false, hasMultipleSelection: sourceHasMultipleSelectedItems }),
|
|
78
|
+
/* @__PURE__ */ jsx(PanelWrapper, { isDestinationPanel: true, hasMultipleSelection: destinationHasMultipleSelectedItems })
|
|
79
|
+
]
|
|
80
|
+
}
|
|
81
|
+
);
|
|
82
|
+
});
|
|
83
|
+
export {
|
|
84
|
+
MainContent
|
|
85
|
+
};
|
|
86
|
+
//# sourceMappingURL=MainContent.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/parts/MainContent.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useMemo } from 'react';\nimport { useFontSizeDetector } from '@elliemae/ds-legacy-hooks-fontsize-detector';\nimport { styled } from '@elliemae/ds-legacy-system';\nimport { Grid } from '@elliemae/ds-legacy-grid';\nimport { useOnBlurOut } from '@elliemae/ds-legacy-utilities';\nimport { PanelWrapper } from './PanelWrapper.js';\nimport { usePropsStore } from '../config/useStore/index.js';\nimport { DSShuttleV2Name, DSShuttleV2Slots } from '../config/DSShuttleV2Definitions.js';\nimport { useFocusTracker } from '../config/useFocusTracker/index.js';\n\nconst StyledWrapper = styled(Grid, { name: DSShuttleV2Name, slot: DSShuttleV2Slots.WRAPPER })``;\n\nconst layoutWithSmallFont = {\n cols: { small: ['auto'], medium: ['1fr', '1fr'] },\n rows: { small: ['1fr', '1fr'], medium: ['auto'] },\n};\nconst layoutWithBigFont = {\n cols: ['auto'],\n rows: ['1fr', '1fr'],\n};\n\ntype ResizeObserverConstructorEntries = Parameters<ConstructorParameters<typeof ResizeObserver>[0]>[0];\n\nconst useResizeObserver = (ref: HTMLElement | null | undefined) => {\n const [dimensions, setDimensions] = React.useState<number>(0);\n\n React.useEffect(() => {\n if (ref) {\n const observeTarget = ref;\n const resizeObserver = new ResizeObserver((entries: ResizeObserverConstructorEntries) => {\n entries.forEach((entry) => {\n setDimensions(Math.ceil(entry.contentRect.height));\n });\n });\n resizeObserver.observe(observeTarget);\n\n return () => {\n resizeObserver.unobserve(observeTarget);\n };\n }\n }, [ref]);\n return dimensions;\n};\n\n// this custom hook will return the font size of the font detector element\n\nexport const MainContent = React.memo(() => {\n const { trackFocusRegionReset, trackFocusItemReset, trackFocusActionReset } = useFocusTracker();\n const config = React.useMemo(\n () => ({\n onBlur: () => {\n trackFocusRegionReset();\n trackFocusItemReset();\n trackFocusActionReset();\n },\n }),\n [trackFocusActionReset, trackFocusItemReset, trackFocusRegionReset],\n );\n const handleOnBlurOut = useOnBlurOut(config);\n const destinationHasMultipleSelectedItems = usePropsStore((store) => store.destinationHasMultipleSelectedItems);\n const sourceHasMultipleSelectedItems = usePropsStore((store) => store.sourceHasMultipleSelectedItems);\n const getOwnerProps = usePropsStore((store) => store.get);\n\n const metaInfo = useFontSizeDetector();\n\n const colsAndRowsLayout = useMemo(() => {\n if (metaInfo.isLarge) {\n return layoutWithBigFont;\n } else {\n return layoutWithSmallFont;\n }\n }, [metaInfo]);\n\n const [ref, setRef] = React.useState<HTMLDivElement | null>();\n const parentNode = ref?.parentNode as HTMLElement | null | undefined;\n const height = useResizeObserver(parentNode);\n const finalHeight = height !== 0 ? height : 208;\n return (\n <StyledWrapper\n gutter=\"xs\"\n onBlur={handleOnBlurOut}\n {...colsAndRowsLayout}\n getOwnerProps={getOwnerProps}\n style={{ height: `${finalHeight}px` }}\n ref={setRef}\n >\n <PanelWrapper isDestinationPanel={false} hasMultipleSelection={sourceHasMultipleSelectedItems} />\n <PanelWrapper isDestinationPanel hasMultipleSelection={destinationHasMultipleSelectedItems} />\n </StyledWrapper>\n );\n});\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;AC8EnB,SAQE,KARF;AA9EJ,OAAOA,UAAS,eAAe;AAC/B,SAAS,2BAA2B;AACpC,SAAS,cAAc;AACvB,SAAS,YAAY;AACrB,SAAS,oBAAoB;AAC7B,SAAS,oBAAoB;AAC7B,SAAS,qBAAqB;AAC9B,SAAS,iBAAiB,wBAAwB;AAClD,SAAS,uBAAuB;AAEhC,MAAM,gBAAgB,OAAO,MAAM,EAAE,MAAM,iBAAiB,MAAM,iBAAiB,QAAQ,CAAC;AAE5F,MAAM,sBAAsB;AAAA,EAC1B,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,OAAO,KAAK,EAAE;AAAA,EAChD,MAAM,EAAE,OAAO,CAAC,OAAO,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE;AAClD;AACA,MAAM,oBAAoB;AAAA,EACxB,MAAM,CAAC,MAAM;AAAA,EACb,MAAM,CAAC,OAAO,KAAK;AACrB;AAIA,MAAM,oBAAoB,CAAC,QAAwC;AACjE,QAAM,CAAC,YAAY,aAAa,IAAIA,OAAM,SAAiB,CAAC;AAE5D,EAAAA,OAAM,UAAU,MAAM;AACpB,QAAI,KAAK;AACP,YAAM,gBAAgB;AACtB,YAAM,iBAAiB,IAAI,eAAe,CAAC,YAA8C;AACvF,gBAAQ,QAAQ,CAAC,UAAU;AACzB,wBAAc,KAAK,KAAK,MAAM,YAAY,MAAM,CAAC;AAAA,QACnD,CAAC;AAAA,MACH,CAAC;AACD,qBAAe,QAAQ,aAAa;AAEpC,aAAO,MAAM;AACX,uBAAe,UAAU,aAAa;AAAA,MACxC;AAAA,IACF;AAAA,EACF,GAAG,CAAC,GAAG,CAAC;AACR,SAAO;AACT;AAIO,MAAM,cAAcA,OAAM,KAAK,MAAM;AAC1C,QAAM,EAAE,uBAAuB,qBAAqB,sBAAsB,IAAI,gBAAgB;AAC9F,QAAM,SAASA,OAAM;AAAA,IACnB,OAAO;AAAA,MACL,QAAQ,MAAM;AACZ,8BAAsB;AACtB,4BAAoB;AACpB,8BAAsB;AAAA,MACxB;AAAA,IACF;AAAA,IACA,CAAC,uBAAuB,qBAAqB,qBAAqB;AAAA,EACpE;AACA,QAAM,kBAAkB,aAAa,MAAM;AAC3C,QAAM,sCAAsC,cAAc,CAAC,UAAU,MAAM,mCAAmC;AAC9G,QAAM,iCAAiC,cAAc,CAAC,UAAU,MAAM,8BAA8B;AACpG,QAAM,gBAAgB,cAAc,CAAC,UAAU,MAAM,GAAG;AAExD,QAAM,WAAW,oBAAoB;AAErC,QAAM,oBAAoB,QAAQ,MAAM;AACtC,QAAI,SAAS,SAAS;AACpB,aAAO;AAAA,IACT,OAAO;AACL,aAAO;AAAA,IACT;AAAA,EACF,GAAG,CAAC,QAAQ,CAAC;AAEb,QAAM,CAAC,KAAK,MAAM,IAAIA,OAAM,SAAgC;AAC5D,QAAM,aAAa,KAAK;AACxB,QAAM,SAAS,kBAAkB,UAAU;AAC3C,QAAM,cAAc,WAAW,IAAI,SAAS;AAC5C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,QAAO;AAAA,MACP,QAAQ;AAAA,MACP,GAAG;AAAA,MACJ;AAAA,MACA,OAAO,EAAE,QAAQ,GAAG,gBAAgB;AAAA,MACpC,KAAK;AAAA,MAEL;AAAA,4BAAC,gBAAa,oBAAoB,OAAO,sBAAsB,gCAAgC;AAAA,QAC/F,oBAAC,gBAAa,oBAAkB,MAAC,sBAAsB,qCAAqC;AAAA;AAAA;AAAA,EAC9F;AAEJ,CAAC;",
|
|
6
|
+
"names": ["React"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import React2 from "react";
|
|
4
|
+
import { styled } from "@elliemae/ds-legacy-system";
|
|
5
|
+
import { DSButtonV2, BUTTON_SIZES } from "@elliemae/ds-legacy-button-v2";
|
|
6
|
+
import { usePropsStore } from "../../../config/useStore/index.js";
|
|
7
|
+
import { useInnerRefHandlers } from "./useInnerRefHandlers.js";
|
|
8
|
+
import { useFocusTracker } from "../../../config/useFocusTracker/index.js";
|
|
9
|
+
import { DSShuttleV2Name, DSShuttleV2Slots } from "../../../config/DSShuttleV2Definitions.js";
|
|
10
|
+
const StyledLoadMoreBtn = styled(DSButtonV2, {
|
|
11
|
+
name: DSShuttleV2Name,
|
|
12
|
+
slot: DSShuttleV2Slots.LIST_BOTTOM_LOAD_MORE_BTN
|
|
13
|
+
})`
|
|
14
|
+
width: 100%;
|
|
15
|
+
height: 100%;
|
|
16
|
+
`;
|
|
17
|
+
const LoadMoreBtn = (panelMetaInfo) => {
|
|
18
|
+
const { isDestinationPanel = false } = panelMetaInfo;
|
|
19
|
+
const { trackFocusItemLast, trackFocusActionParent, trackFocusRegionPanelItem } = useFocusTracker();
|
|
20
|
+
const onLoadMore = usePropsStore(
|
|
21
|
+
(state) => isDestinationPanel ? state.onDestinationLoadMore : state.onSourceLoadMore
|
|
22
|
+
);
|
|
23
|
+
const handleOnClick = React2.useCallback(
|
|
24
|
+
(e) => {
|
|
25
|
+
onLoadMore(e);
|
|
26
|
+
trackFocusItemLast(panelMetaInfo);
|
|
27
|
+
trackFocusRegionPanelItem(panelMetaInfo.isDestinationPanel);
|
|
28
|
+
trackFocusActionParent();
|
|
29
|
+
},
|
|
30
|
+
[onLoadMore, panelMetaInfo, trackFocusActionParent, trackFocusItemLast, trackFocusRegionPanelItem]
|
|
31
|
+
);
|
|
32
|
+
const { innerRefHandlerLoadMoreBtn } = useInnerRefHandlers(panelMetaInfo);
|
|
33
|
+
const getOwnerProps = usePropsStore((store) => store.get);
|
|
34
|
+
const getOwnerPropsArguments = React2.useCallback(() => panelMetaInfo, [panelMetaInfo]);
|
|
35
|
+
return /* @__PURE__ */ jsx(
|
|
36
|
+
StyledLoadMoreBtn,
|
|
37
|
+
{
|
|
38
|
+
buttonType: "text",
|
|
39
|
+
onClick: handleOnClick,
|
|
40
|
+
size: BUTTON_SIZES.S,
|
|
41
|
+
innerRef: innerRefHandlerLoadMoreBtn,
|
|
42
|
+
getOwnerProps,
|
|
43
|
+
getOwnerPropsArguments,
|
|
44
|
+
children: "Load More..."
|
|
45
|
+
}
|
|
46
|
+
);
|
|
47
|
+
};
|
|
48
|
+
export {
|
|
49
|
+
LoadMoreBtn
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=LoadMoreBtn.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Panel/bottom/LoadMoreBtn.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { styled } from '@elliemae/ds-legacy-system';\nimport { DSButtonV2, BUTTON_SIZES, type DSButtonT } from '@elliemae/ds-legacy-button-v2';\nimport { usePropsStore } from '../../../config/useStore/index.js';\nimport { type DSShuttleV2T } from '../../../react-desc-prop-types.js';\nimport { useInnerRefHandlers } from './useInnerRefHandlers.js';\nimport { useFocusTracker } from '../../../config/useFocusTracker/index.js';\nimport { DSShuttleV2Name, DSShuttleV2Slots } from '../../../config/DSShuttleV2Definitions.js';\n\nconst StyledLoadMoreBtn = styled(DSButtonV2, {\n name: DSShuttleV2Name,\n slot: DSShuttleV2Slots.LIST_BOTTOM_LOAD_MORE_BTN,\n})`\n width: 100%;\n height: 100%;\n`;\n\nexport const LoadMoreBtn = (panelMetaInfo: DSShuttleV2T.PanelMetaInfo) => {\n const { isDestinationPanel = false } = panelMetaInfo;\n const { trackFocusItemLast, trackFocusActionParent, trackFocusRegionPanelItem } = useFocusTracker();\n const onLoadMore = usePropsStore((state) =>\n isDestinationPanel ? state.onDestinationLoadMore : state.onSourceLoadMore,\n );\n const handleOnClick = React.useCallback(\n (e: Parameters<Required<DSButtonT.Props>['onClick']>[0]) => {\n onLoadMore(e);\n trackFocusItemLast(panelMetaInfo);\n trackFocusRegionPanelItem(panelMetaInfo.isDestinationPanel);\n trackFocusActionParent();\n },\n [onLoadMore, panelMetaInfo, trackFocusActionParent, trackFocusItemLast, trackFocusRegionPanelItem],\n );\n const { innerRefHandlerLoadMoreBtn } = useInnerRefHandlers(panelMetaInfo);\n const getOwnerProps = usePropsStore((store) => store.get);\n const getOwnerPropsArguments = React.useCallback(() => panelMetaInfo, [panelMetaInfo]);\n\n return (\n <StyledLoadMoreBtn\n buttonType=\"text\"\n onClick={handleOnClick}\n size={BUTTON_SIZES.S}\n innerRef={innerRefHandlerLoadMoreBtn}\n getOwnerProps={getOwnerProps}\n getOwnerPropsArguments={getOwnerPropsArguments}\n >\n Load More...\n </StyledLoadMoreBtn>\n );\n};\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACqCnB;AArCJ,OAAOA,YAAW;AAClB,SAAS,cAAc;AACvB,SAAS,YAAY,oBAAoC;AACzD,SAAS,qBAAqB;AAE9B,SAAS,2BAA2B;AACpC,SAAS,uBAAuB;AAChC,SAAS,iBAAiB,wBAAwB;AAElD,MAAM,oBAAoB,OAAO,YAAY;AAAA,EAC3C,MAAM;AAAA,EACN,MAAM,iBAAiB;AACzB,CAAC;AAAA;AAAA;AAAA;AAKM,MAAM,cAAc,CAAC,kBAA8C;AACxE,QAAM,EAAE,qBAAqB,MAAM,IAAI;AACvC,QAAM,EAAE,oBAAoB,wBAAwB,0BAA0B,IAAI,gBAAgB;AAClG,QAAM,aAAa;AAAA,IAAc,CAAC,UAChC,qBAAqB,MAAM,wBAAwB,MAAM;AAAA,EAC3D;AACA,QAAM,gBAAgBA,OAAM;AAAA,IAC1B,CAAC,MAA2D;AAC1D,iBAAW,CAAC;AACZ,yBAAmB,aAAa;AAChC,gCAA0B,cAAc,kBAAkB;AAC1D,6BAAuB;AAAA,IACzB;AAAA,IACA,CAAC,YAAY,eAAe,wBAAwB,oBAAoB,yBAAyB;AAAA,EACnG;AACA,QAAM,EAAE,2BAA2B,IAAI,oBAAoB,aAAa;AACxE,QAAM,gBAAgB,cAAc,CAAC,UAAU,MAAM,GAAG;AACxD,QAAM,yBAAyBA,OAAM,YAAY,MAAM,eAAe,CAAC,aAAa,CAAC;AAErF,SACE;AAAA,IAAC;AAAA;AAAA,MACC,YAAW;AAAA,MACX,SAAS;AAAA,MACT,MAAM,aAAa;AAAA,MACnB,UAAU;AAAA,MACV;AAAA,MACA;AAAA,MACD;AAAA;AAAA,EAED;AAEJ;",
|
|
6
|
+
"names": ["React"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import React2 from "react";
|
|
4
|
+
import { styled } from "@elliemae/ds-legacy-system";
|
|
5
|
+
import { Grid } from "@elliemae/ds-legacy-grid";
|
|
6
|
+
import { DSIndeterminateProgressIndicator } from "@elliemae/ds-legacy-indeterminate-progress-indicator";
|
|
7
|
+
import { DSShuttleV2Name, DSShuttleV2Slots } from "../../../config/DSShuttleV2Definitions.js";
|
|
8
|
+
import { usePropsStore } from "../../../config/useStore/useStore.js";
|
|
9
|
+
const StyledBottomLoadingMore = styled(Grid, {
|
|
10
|
+
name: DSShuttleV2Name,
|
|
11
|
+
slot: DSShuttleV2Slots.LIST_BOTTOM_LOADING_MORE
|
|
12
|
+
})``;
|
|
13
|
+
const LoadingMore = (panelMetaInfo) => {
|
|
14
|
+
const getOwnerProps = usePropsStore((store) => store.get);
|
|
15
|
+
const getOwnerPropsArguments = React2.useCallback(() => panelMetaInfo, [panelMetaInfo]);
|
|
16
|
+
return /* @__PURE__ */ jsx(
|
|
17
|
+
StyledBottomLoadingMore,
|
|
18
|
+
{
|
|
19
|
+
px: "1.846rem",
|
|
20
|
+
getOwnerProps,
|
|
21
|
+
getOwnerPropsArguments,
|
|
22
|
+
children: /* @__PURE__ */ jsx(DSIndeterminateProgressIndicator, { processing: true, title: "Loading" })
|
|
23
|
+
}
|
|
24
|
+
);
|
|
25
|
+
};
|
|
26
|
+
export {
|
|
27
|
+
LoadingMore
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=LoadingMore.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Panel/bottom/LoadingMore.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { styled } from '@elliemae/ds-legacy-system';\nimport { Grid } from '@elliemae/ds-legacy-grid';\nimport { DSIndeterminateProgressIndicator } from '@elliemae/ds-legacy-indeterminate-progress-indicator';\nimport { type DSShuttleV2T } from '../../../react-desc-prop-types.js';\nimport { DSShuttleV2Name, DSShuttleV2Slots } from '../../../config/DSShuttleV2Definitions.js';\nimport { usePropsStore } from '../../../config/useStore/useStore.js';\n\nconst StyledBottomLoadingMore = styled(Grid, {\n name: DSShuttleV2Name,\n slot: DSShuttleV2Slots.LIST_BOTTOM_LOADING_MORE,\n})``;\nexport const LoadingMore = (panelMetaInfo: DSShuttleV2T.PanelMetaInfo) => {\n const getOwnerProps = usePropsStore((store) => store.get);\n const getOwnerPropsArguments = React.useCallback(() => panelMetaInfo, [panelMetaInfo]);\n\n return (\n <StyledBottomLoadingMore\n px=\"1.846rem\"\n getOwnerProps={getOwnerProps}\n getOwnerPropsArguments={getOwnerPropsArguments}\n >\n <DSIndeterminateProgressIndicator processing title=\"Loading\" />\n </StyledBottomLoadingMore>\n );\n};\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACsBjB;AAtBN,OAAOA,YAAW;AAClB,SAAS,cAAc;AACvB,SAAS,YAAY;AACrB,SAAS,wCAAwC;AAEjD,SAAS,iBAAiB,wBAAwB;AAClD,SAAS,qBAAqB;AAE9B,MAAM,0BAA0B,OAAO,MAAM;AAAA,EAC3C,MAAM;AAAA,EACN,MAAM,iBAAiB;AACzB,CAAC;AACM,MAAM,cAAc,CAAC,kBAA8C;AACxE,QAAM,gBAAgB,cAAc,CAAC,UAAU,MAAM,GAAG;AACxD,QAAM,yBAAyBA,OAAM,YAAY,MAAM,eAAe,CAAC,aAAa,CAAC;AAErF,SACE;AAAA,IAAC;AAAA;AAAA,MACC,IAAG;AAAA,MACH;AAAA,MACA;AAAA,MAEA,8BAAC,oCAAiC,YAAU,MAAC,OAAM,WAAU;AAAA;AAAA,EAC/D;AAEJ;",
|
|
6
|
+
"names": ["React"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import React2 from "react";
|
|
4
|
+
import { styled } from "@elliemae/ds-legacy-system";
|
|
5
|
+
import { Grid } from "@elliemae/ds-legacy-grid";
|
|
6
|
+
import { useFocusTracker } from "../../../config/useFocusTracker/index.js";
|
|
7
|
+
import { usePropsStore } from "../../../config/useStore/index.js";
|
|
8
|
+
import { LoadMoreBtn } from "./LoadMoreBtn.js";
|
|
9
|
+
import { LoadingMore } from "./LoadingMore.js";
|
|
10
|
+
import { useLoadMoreBtnArrowNavigation } from "./useLoadMoreBtnArrowNavigation.js";
|
|
11
|
+
import { DSShuttleV2Name, DSShuttleV2Slots } from "../../../config/DSShuttleV2Definitions.js";
|
|
12
|
+
const StyledListWrapperBottom = styled(Grid, { name: DSShuttleV2Name, slot: DSShuttleV2Slots.LIST_WRAPPER_BOTTOM })`
|
|
13
|
+
min-height: 2.769rem;
|
|
14
|
+
border-top: 1px solid neutral-400;
|
|
15
|
+
`;
|
|
16
|
+
const wrapperColsRows = ["1fr"];
|
|
17
|
+
const PanelContentBottomSection = React2.memo((panelMetaInfo) => {
|
|
18
|
+
const { isDestinationPanel = false } = panelMetaInfo;
|
|
19
|
+
const withLoadMore = usePropsStore(
|
|
20
|
+
(state) => isDestinationPanel ? state.destinationWithLoadMore : state.sourceWithLoadMore
|
|
21
|
+
);
|
|
22
|
+
const isLoadingMore = usePropsStore(
|
|
23
|
+
(state) => isDestinationPanel ? state.destinationIsLoadingMore : state.sourceIsLoadingMore
|
|
24
|
+
);
|
|
25
|
+
const { trackFocusRegionBottom, trackFocusLoadMoreBtn, trackFocusLoadMoreBtnDestination, trackFocusActionReset } = useFocusTracker();
|
|
26
|
+
const onBottomSectionFocus = React2.useCallback(() => {
|
|
27
|
+
trackFocusRegionBottom(isDestinationPanel);
|
|
28
|
+
if (isDestinationPanel)
|
|
29
|
+
trackFocusLoadMoreBtnDestination();
|
|
30
|
+
else
|
|
31
|
+
trackFocusLoadMoreBtn();
|
|
32
|
+
trackFocusActionReset();
|
|
33
|
+
}, [
|
|
34
|
+
isDestinationPanel,
|
|
35
|
+
trackFocusActionReset,
|
|
36
|
+
trackFocusLoadMoreBtn,
|
|
37
|
+
trackFocusLoadMoreBtnDestination,
|
|
38
|
+
trackFocusRegionBottom
|
|
39
|
+
]);
|
|
40
|
+
const shouldDisplayLoadingMore = isLoadingMore;
|
|
41
|
+
const shouldDisplayLoadMoreBtn = withLoadMore && !isLoadingMore;
|
|
42
|
+
const shouldNotTakeSpace = !withLoadMore && !isLoadingMore;
|
|
43
|
+
const { onLoadMoreButtonKeyDown } = useLoadMoreBtnArrowNavigation(panelMetaInfo);
|
|
44
|
+
const getOwnerProps = usePropsStore((store) => store.get);
|
|
45
|
+
const getOwnerPropsArguments = React2.useCallback(() => panelMetaInfo, [panelMetaInfo]);
|
|
46
|
+
if (shouldNotTakeSpace)
|
|
47
|
+
return /* @__PURE__ */ jsx("div", {});
|
|
48
|
+
return /* @__PURE__ */ jsxs(
|
|
49
|
+
StyledListWrapperBottom,
|
|
50
|
+
{
|
|
51
|
+
cols: wrapperColsRows,
|
|
52
|
+
rows: wrapperColsRows,
|
|
53
|
+
onFocus: onBottomSectionFocus,
|
|
54
|
+
onKeyDown: onLoadMoreButtonKeyDown,
|
|
55
|
+
getOwnerProps,
|
|
56
|
+
getOwnerPropsArguments,
|
|
57
|
+
children: [
|
|
58
|
+
shouldDisplayLoadingMore ? /* @__PURE__ */ jsx(LoadingMore, { ...panelMetaInfo }) : null,
|
|
59
|
+
shouldDisplayLoadMoreBtn ? /* @__PURE__ */ jsx(LoadMoreBtn, { ...panelMetaInfo }) : null
|
|
60
|
+
]
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
});
|
|
64
|
+
export {
|
|
65
|
+
PanelContentBottomSection
|
|
66
|
+
};
|
|
67
|
+
//# sourceMappingURL=PanelContentBottomSection.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Panel/bottom/PanelContentBottomSection.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-unused-vars */\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport React from 'react';\nimport { styled } from '@elliemae/ds-legacy-system';\nimport { Grid } from '@elliemae/ds-legacy-grid';\nimport { useFocusTracker } from '../../../config/useFocusTracker/index.js';\nimport { usePropsStore } from '../../../config/useStore/index.js';\nimport { type DSShuttleV2T } from '../../../react-desc-prop-types.js';\nimport { LoadMoreBtn } from './LoadMoreBtn.js';\nimport { LoadingMore } from './LoadingMore.js';\nimport { useLoadMoreBtnArrowNavigation } from './useLoadMoreBtnArrowNavigation.js';\nimport { DSShuttleV2Name, DSShuttleV2Slots } from '../../../config/DSShuttleV2Definitions.js';\n\nconst StyledListWrapperBottom = styled(Grid, { name: DSShuttleV2Name, slot: DSShuttleV2Slots.LIST_WRAPPER_BOTTOM })`\n min-height: 2.769rem;\n border-top: 1px solid neutral-400;\n`;\nconst wrapperColsRows = ['1fr'];\n\nexport const PanelContentBottomSection = React.memo((panelMetaInfo: DSShuttleV2T.PanelMetaInfo) => {\n const { isDestinationPanel = false } = panelMetaInfo;\n\n const withLoadMore = usePropsStore((state) =>\n isDestinationPanel ? state.destinationWithLoadMore : state.sourceWithLoadMore,\n );\n const isLoadingMore = usePropsStore((state) =>\n isDestinationPanel ? state.destinationIsLoadingMore : state.sourceIsLoadingMore,\n );\n const { trackFocusRegionBottom, trackFocusLoadMoreBtn, trackFocusLoadMoreBtnDestination, trackFocusActionReset } =\n useFocusTracker();\n const onBottomSectionFocus = React.useCallback(() => {\n trackFocusRegionBottom(isDestinationPanel);\n if (isDestinationPanel) trackFocusLoadMoreBtnDestination();\n else trackFocusLoadMoreBtn();\n trackFocusActionReset();\n }, [\n isDestinationPanel,\n trackFocusActionReset,\n trackFocusLoadMoreBtn,\n trackFocusLoadMoreBtnDestination,\n trackFocusRegionBottom,\n ]);\n\n // this 3 booleans MUST be auto-exclusives with each other\n const shouldDisplayLoadingMore = isLoadingMore;\n const shouldDisplayLoadMoreBtn = withLoadMore && !isLoadingMore;\n const shouldNotTakeSpace = !withLoadMore && !isLoadingMore;\n const { onLoadMoreButtonKeyDown } = useLoadMoreBtnArrowNavigation(panelMetaInfo);\n\n const getOwnerProps = usePropsStore((store) => store.get);\n const getOwnerPropsArguments = React.useCallback(() => panelMetaInfo, [panelMetaInfo]);\n\n if (shouldNotTakeSpace) return <div />;\n return (\n <StyledListWrapperBottom\n cols={wrapperColsRows}\n rows={wrapperColsRows}\n onFocus={onBottomSectionFocus}\n onKeyDown={onLoadMoreButtonKeyDown}\n getOwnerProps={getOwnerProps}\n getOwnerPropsArguments={getOwnerPropsArguments}\n >\n {shouldDisplayLoadingMore ? <LoadingMore {...panelMetaInfo} /> : null}\n {shouldDisplayLoadMoreBtn ? <LoadMoreBtn {...panelMetaInfo} /> : null}\n </StyledListWrapperBottom>\n );\n});\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACoDU,cAE7B,YAF6B;AAlDjC,OAAOA,YAAW;AAClB,SAAS,cAAc;AACvB,SAAS,YAAY;AACrB,SAAS,uBAAuB;AAChC,SAAS,qBAAqB;AAE9B,SAAS,mBAAmB;AAC5B,SAAS,mBAAmB;AAC5B,SAAS,qCAAqC;AAC9C,SAAS,iBAAiB,wBAAwB;AAElD,MAAM,0BAA0B,OAAO,MAAM,EAAE,MAAM,iBAAiB,MAAM,iBAAiB,oBAAoB,CAAC;AAAA;AAAA;AAAA;AAIlH,MAAM,kBAAkB,CAAC,KAAK;AAEvB,MAAM,4BAA4BA,OAAM,KAAK,CAAC,kBAA8C;AACjG,QAAM,EAAE,qBAAqB,MAAM,IAAI;AAEvC,QAAM,eAAe;AAAA,IAAc,CAAC,UAClC,qBAAqB,MAAM,0BAA0B,MAAM;AAAA,EAC7D;AACA,QAAM,gBAAgB;AAAA,IAAc,CAAC,UACnC,qBAAqB,MAAM,2BAA2B,MAAM;AAAA,EAC9D;AACA,QAAM,EAAE,wBAAwB,uBAAuB,kCAAkC,sBAAsB,IAC7G,gBAAgB;AAClB,QAAM,uBAAuBA,OAAM,YAAY,MAAM;AACnD,2BAAuB,kBAAkB;AACzC,QAAI;AAAoB,uCAAiC;AAAA;AACpD,4BAAsB;AAC3B,0BAAsB;AAAA,EACxB,GAAG;AAAA,IACD;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAGD,QAAM,2BAA2B;AACjC,QAAM,2BAA2B,gBAAgB,CAAC;AAClD,QAAM,qBAAqB,CAAC,gBAAgB,CAAC;AAC7C,QAAM,EAAE,wBAAwB,IAAI,8BAA8B,aAAa;AAE/E,QAAM,gBAAgB,cAAc,CAAC,UAAU,MAAM,GAAG;AACxD,QAAM,yBAAyBA,OAAM,YAAY,MAAM,eAAe,CAAC,aAAa,CAAC;AAErF,MAAI;AAAoB,WAAO,oBAAC,SAAI;AACpC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAM;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW;AAAA,MACX;AAAA,MACA;AAAA,MAEC;AAAA,mCAA2B,oBAAC,eAAa,GAAG,eAAe,IAAK;AAAA,QAChE,2BAA2B,oBAAC,eAAa,GAAG,eAAe,IAAK;AAAA;AAAA;AAAA,EACnE;AAEJ,CAAC;",
|
|
6
|
+
"names": ["React"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import React2 from "react";
|
|
3
|
+
import { useInternalStore } from "../../../config/useStore/index.js";
|
|
4
|
+
import { ITEMS_FOCUSES } from "../../../constants/index.js";
|
|
5
|
+
const useInnerRefHandlers = ({ isDestinationPanel }) => {
|
|
6
|
+
const setZustandRef = useInternalStore((state) => state.setZustandRef);
|
|
7
|
+
const innerRefHandlerLoadMoreBtn = React2.useCallback(
|
|
8
|
+
(node) => {
|
|
9
|
+
setZustandRef(
|
|
10
|
+
[isDestinationPanel ? ITEMS_FOCUSES.LOAD_MORE_BTN_DESTINATION : ITEMS_FOCUSES.LOAD_MORE_BTN_SOURCE],
|
|
11
|
+
node
|
|
12
|
+
);
|
|
13
|
+
},
|
|
14
|
+
[isDestinationPanel, setZustandRef]
|
|
15
|
+
);
|
|
16
|
+
return React2.useMemo(() => ({ innerRefHandlerLoadMoreBtn }), [innerRefHandlerLoadMoreBtn]);
|
|
17
|
+
};
|
|
18
|
+
export {
|
|
19
|
+
useInnerRefHandlers
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=useInnerRefHandlers.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Panel/bottom/useInnerRefHandlers.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/no-unused-vars */\n/* eslint-disable no-unused-vars */\nimport React from 'react';\nimport { useInternalStore } from '../../../config/useStore/index.js';\nimport { type DSShuttleV2T } from '../../../react-desc-prop-types.js';\nimport { ITEMS_FOCUSES } from '../../../constants/index.js';\n\nexport const useInnerRefHandlers = ({ isDestinationPanel }: DSShuttleV2T.PanelMetaInfo) => {\n const setZustandRef = useInternalStore((state) => state.setZustandRef);\n\n const innerRefHandlerLoadMoreBtn = React.useCallback(\n (node: HTMLButtonElement) => {\n setZustandRef(\n [isDestinationPanel ? ITEMS_FOCUSES.LOAD_MORE_BTN_DESTINATION : ITEMS_FOCUSES.LOAD_MORE_BTN_SOURCE],\n node,\n );\n },\n [isDestinationPanel, setZustandRef],\n );\n return React.useMemo(() => ({ innerRefHandlerLoadMoreBtn }), [innerRefHandlerLoadMoreBtn]);\n};\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACEvB,OAAOA,YAAW;AAClB,SAAS,wBAAwB;AAEjC,SAAS,qBAAqB;AAEvB,MAAM,sBAAsB,CAAC,EAAE,mBAAmB,MAAkC;AACzF,QAAM,gBAAgB,iBAAiB,CAAC,UAAU,MAAM,aAAa;AAErE,QAAM,6BAA6BA,OAAM;AAAA,IACvC,CAAC,SAA4B;AAC3B;AAAA,QACE,CAAC,qBAAqB,cAAc,4BAA4B,cAAc,oBAAoB;AAAA,QAClG;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,oBAAoB,aAAa;AAAA,EACpC;AACA,SAAOA,OAAM,QAAQ,OAAO,EAAE,2BAA2B,IAAI,CAAC,0BAA0B,CAAC;AAC3F;",
|
|
6
|
+
"names": ["React"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import React2 from "react";
|
|
3
|
+
import {
|
|
4
|
+
useFocusItemTracker,
|
|
5
|
+
useFocusActionTrackers,
|
|
6
|
+
useFocusRegionTrackers
|
|
7
|
+
} from "../../../config/useFocusTracker/index.js";
|
|
8
|
+
import { useInternalStore } from "../../../config/useStore/index.js";
|
|
9
|
+
const useLoadMoreBtnArrowNavigation = (panelMetaInfo) => {
|
|
10
|
+
const { trackFocusPrevItem, trackFocusNextItem } = useFocusItemTracker();
|
|
11
|
+
const { trackFocusActionParent } = useFocusActionTrackers();
|
|
12
|
+
const { trackFocusRegionPanelItem } = useFocusRegionTrackers();
|
|
13
|
+
const getIsDragAndDropHappening = useInternalStore((state) => state.getIsDragAndDropHappening);
|
|
14
|
+
const onLoadMoreButtonKeyDown = React2.useCallback(
|
|
15
|
+
(e) => {
|
|
16
|
+
const { key } = e;
|
|
17
|
+
const isDragAndDropHappening = getIsDragAndDropHappening();
|
|
18
|
+
if (isDragAndDropHappening) {
|
|
19
|
+
e.preventDefault();
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
if (["ArrowUp", "ArrowDown"].includes(key))
|
|
23
|
+
e.preventDefault();
|
|
24
|
+
if (["ArrowUp", "ArrowDown"].includes(key))
|
|
25
|
+
e.stopPropagation();
|
|
26
|
+
if (key === "ArrowUp") {
|
|
27
|
+
trackFocusRegionPanelItem(panelMetaInfo.isDestinationPanel);
|
|
28
|
+
trackFocusNextItem(panelMetaInfo);
|
|
29
|
+
trackFocusActionParent();
|
|
30
|
+
}
|
|
31
|
+
if (key === "ArrowDown") {
|
|
32
|
+
trackFocusRegionPanelItem(panelMetaInfo.isDestinationPanel);
|
|
33
|
+
trackFocusPrevItem(panelMetaInfo);
|
|
34
|
+
trackFocusActionParent();
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
[
|
|
38
|
+
getIsDragAndDropHappening,
|
|
39
|
+
trackFocusRegionPanelItem,
|
|
40
|
+
panelMetaInfo,
|
|
41
|
+
trackFocusNextItem,
|
|
42
|
+
trackFocusActionParent,
|
|
43
|
+
trackFocusPrevItem
|
|
44
|
+
]
|
|
45
|
+
);
|
|
46
|
+
return React2.useMemo(() => ({ onLoadMoreButtonKeyDown }), [onLoadMoreButtonKeyDown]);
|
|
47
|
+
};
|
|
48
|
+
export {
|
|
49
|
+
useLoadMoreBtnArrowNavigation
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=useLoadMoreBtnArrowNavigation.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Panel/bottom/useLoadMoreBtnArrowNavigation.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport {\n useFocusItemTracker,\n useFocusActionTrackers,\n useFocusRegionTrackers,\n} from '../../../config/useFocusTracker/index.js';\nimport { type DSShuttleV2T } from '../../../react-desc-prop-types.js';\nimport { useInternalStore } from '../../../config/useStore/index.js';\n\nexport const useLoadMoreBtnArrowNavigation = (panelMetaInfo: DSShuttleV2T.PanelMetaInfo) => {\n const { trackFocusPrevItem, trackFocusNextItem } = useFocusItemTracker();\n const { trackFocusActionParent } = useFocusActionTrackers();\n const { trackFocusRegionPanelItem } = useFocusRegionTrackers();\n const getIsDragAndDropHappening = useInternalStore((state) => state.getIsDragAndDropHappening);\n\n const onLoadMoreButtonKeyDown = React.useCallback<React.KeyboardEventHandler<HTMLDivElement>>(\n (e) => {\n const { key } = e;\n // we need to invoke \"getIsDragAndDropHappening\" here to ensure we have the latest info at the moment of the event\n const isDragAndDropHappening = getIsDragAndDropHappening();\n if (isDragAndDropHappening) {\n e.preventDefault();\n return;\n }\n // stopping prepagation it's required to avoid \"ArrowUp/ArrowDown\" to trigger parents logic\n // preventDefault it's just me thinking it's good idea when stopping propagation\n if (['ArrowUp', 'ArrowDown'].includes(key)) e.preventDefault();\n if (['ArrowUp', 'ArrowDown'].includes(key)) e.stopPropagation();\n\n // =============================================================================\n // THIS IS NOT LIKE /src/parts/Item/useItemArrowNavigation.tsx\n // THIS IS INVERTED BY DESIGN AND DESIRED TO BE INVERTED\n // =============================================================================\n // load-more-btn -> last element\n if (key === 'ArrowUp') {\n trackFocusRegionPanelItem(panelMetaInfo.isDestinationPanel);\n trackFocusNextItem(panelMetaInfo); // this results in \"Last\" element of the list\n trackFocusActionParent();\n }\n // load-more-btn -> first element\n if (key === 'ArrowDown') {\n trackFocusRegionPanelItem(panelMetaInfo.isDestinationPanel);\n trackFocusPrevItem(panelMetaInfo); // this results in \"First\" element of the list\n trackFocusActionParent();\n }\n },\n [\n getIsDragAndDropHappening,\n trackFocusRegionPanelItem,\n panelMetaInfo,\n trackFocusNextItem,\n trackFocusActionParent,\n trackFocusPrevItem,\n ],\n );\n\n return React.useMemo(() => ({ onLoadMoreButtonKeyDown }), [onLoadMoreButtonKeyDown]);\n};\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACAvB,OAAOA,YAAW;AAClB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,wBAAwB;AAE1B,MAAM,gCAAgC,CAAC,kBAA8C;AAC1F,QAAM,EAAE,oBAAoB,mBAAmB,IAAI,oBAAoB;AACvE,QAAM,EAAE,uBAAuB,IAAI,uBAAuB;AAC1D,QAAM,EAAE,0BAA0B,IAAI,uBAAuB;AAC7D,QAAM,4BAA4B,iBAAiB,CAAC,UAAU,MAAM,yBAAyB;AAE7F,QAAM,0BAA0BA,OAAM;AAAA,IACpC,CAAC,MAAM;AACL,YAAM,EAAE,IAAI,IAAI;AAEhB,YAAM,yBAAyB,0BAA0B;AACzD,UAAI,wBAAwB;AAC1B,UAAE,eAAe;AACjB;AAAA,MACF;AAGA,UAAI,CAAC,WAAW,WAAW,EAAE,SAAS,GAAG;AAAG,UAAE,eAAe;AAC7D,UAAI,CAAC,WAAW,WAAW,EAAE,SAAS,GAAG;AAAG,UAAE,gBAAgB;AAO9D,UAAI,QAAQ,WAAW;AACrB,kCAA0B,cAAc,kBAAkB;AAC1D,2BAAmB,aAAa;AAChC,+BAAuB;AAAA,MACzB;AAEA,UAAI,QAAQ,aAAa;AACvB,kCAA0B,cAAc,kBAAkB;AAC1D,2BAAmB,aAAa;AAChC,+BAAuB;AAAA,MACzB;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,SAAOA,OAAM,QAAQ,OAAO,EAAE,wBAAwB,IAAI,CAAC,uBAAuB,CAAC;AACrF;",
|
|
6
|
+
"names": ["React"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { useCallback } from "react";
|
|
4
|
+
import { styled } from "@elliemae/ds-legacy-system";
|
|
5
|
+
import { Grid } from "@elliemae/ds-legacy-grid";
|
|
6
|
+
import { DSShuttleV2Name, DSShuttleV2Slots } from "../../../config/DSShuttleV2Definitions.js";
|
|
7
|
+
import { usePropsStore } from "../../../config/useStore/useStore.js";
|
|
8
|
+
const StyledEmptyListWrapper = styled(Grid, { name: DSShuttleV2Name, slot: DSShuttleV2Slots.EMPTY_LIST_WRAPPER })`
|
|
9
|
+
color: neutral-500;
|
|
10
|
+
`;
|
|
11
|
+
const EmptyItems = (panelMetaInfo) => {
|
|
12
|
+
const getOwnerProps = usePropsStore((store) => store.get);
|
|
13
|
+
const getOwnerPropsArguments = useCallback(() => panelMetaInfo, [panelMetaInfo]);
|
|
14
|
+
return /* @__PURE__ */ jsx(
|
|
15
|
+
StyledEmptyListWrapper,
|
|
16
|
+
{
|
|
17
|
+
alignItems: "center",
|
|
18
|
+
justifyContent: "center",
|
|
19
|
+
getOwnerProps,
|
|
20
|
+
getOwnerPropsArguments,
|
|
21
|
+
children: "There are no items to display"
|
|
22
|
+
}
|
|
23
|
+
);
|
|
24
|
+
};
|
|
25
|
+
export {
|
|
26
|
+
EmptyItems
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=EmptyItems.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Panel/middle/EmptyItems.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useCallback } from 'react';\nimport { styled } from '@elliemae/ds-legacy-system';\nimport { Grid } from '@elliemae/ds-legacy-grid';\nimport { type DSShuttleV2T } from '../../../react-desc-prop-types.js';\nimport { DSShuttleV2Name, DSShuttleV2Slots } from '../../../config/DSShuttleV2Definitions.js';\nimport { usePropsStore } from '../../../config/useStore/useStore.js';\n\nconst StyledEmptyListWrapper = styled(Grid, { name: DSShuttleV2Name, slot: DSShuttleV2Slots.EMPTY_LIST_WRAPPER })`\n color: neutral-500;\n`;\nexport const EmptyItems = (panelMetaInfo: DSShuttleV2T.PanelMetaInfo) => {\n const getOwnerProps = usePropsStore((store) => store.get);\n const getOwnerPropsArguments = useCallback(() => panelMetaInfo, [panelMetaInfo]);\n\n return (\n <StyledEmptyListWrapper\n alignItems=\"center\"\n justifyContent=\"center\"\n getOwnerProps={getOwnerProps}\n getOwnerPropsArguments={getOwnerPropsArguments}\n >\n There are no items to display\n </StyledEmptyListWrapper>\n );\n};\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACenB;AAfJ,SAAgB,mBAAmB;AACnC,SAAS,cAAc;AACvB,SAAS,YAAY;AAErB,SAAS,iBAAiB,wBAAwB;AAClD,SAAS,qBAAqB;AAE9B,MAAM,yBAAyB,OAAO,MAAM,EAAE,MAAM,iBAAiB,MAAM,iBAAiB,mBAAmB,CAAC;AAAA;AAAA;AAGzG,MAAM,aAAa,CAAC,kBAA8C;AACvE,QAAM,gBAAgB,cAAc,CAAC,UAAU,MAAM,GAAG;AACxD,QAAM,yBAAyB,YAAY,MAAM,eAAe,CAAC,aAAa,CAAC;AAE/E,SACE;AAAA,IAAC;AAAA;AAAA,MACC,YAAW;AAAA,MACX,gBAAe;AAAA,MACf;AAAA,MACA;AAAA,MACD;AAAA;AAAA,EAED;AAEJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import React2 from "react";
|
|
4
|
+
import { Grid } from "@elliemae/ds-legacy-grid";
|
|
5
|
+
import { DSFastList } from "@elliemae/ds-legacy-fast-list";
|
|
6
|
+
import { styled } from "@elliemae/ds-legacy-system";
|
|
7
|
+
import { usePropsStore } from "../../../../config/useStore/index.js";
|
|
8
|
+
import { DSShuttleV2Name, DSShuttleV2Slots } from "../../../../config/DSShuttleV2Definitions.js";
|
|
9
|
+
import { ItemSortable } from "../../../Item/Item.js";
|
|
10
|
+
import { withConditionalDnDRowContext } from "../../../HoC/withConditionalDnDRowContext.js";
|
|
11
|
+
import { useGetDatumHydratables } from "./useGetDatumHydratables.js";
|
|
12
|
+
import { getDatumFlags } from "./getDatumFlags.js";
|
|
13
|
+
const StyledItemsWrapper = styled(Grid, { name: DSShuttleV2Name, slot: DSShuttleV2Slots.ITEMS_WRAPPER })`
|
|
14
|
+
position: relative;
|
|
15
|
+
`;
|
|
16
|
+
const ItemRenderer = React2.memo(
|
|
17
|
+
({ index, itemList, getDatumHydratables, panelMetaInfo, withDragNDrop }) => {
|
|
18
|
+
const item = itemList[index];
|
|
19
|
+
const { original: datum, ...datumInternalMeta } = item;
|
|
20
|
+
const datumHydratables = getDatumHydratables(item);
|
|
21
|
+
const datumRenderFlags = getDatumFlags({ ...datumInternalMeta, ...datumHydratables, ...panelMetaInfo });
|
|
22
|
+
const itemMeta = {
|
|
23
|
+
datum,
|
|
24
|
+
datumHydratables,
|
|
25
|
+
datumInternalMeta,
|
|
26
|
+
datumRenderFlags,
|
|
27
|
+
...panelMetaInfo,
|
|
28
|
+
withDragNDrop
|
|
29
|
+
};
|
|
30
|
+
return /* @__PURE__ */ jsx(ItemSortable, { ...itemMeta }, datumHydratables.id);
|
|
31
|
+
}
|
|
32
|
+
);
|
|
33
|
+
const ItemListWrapper = React2.memo((panelMetaInfo) => {
|
|
34
|
+
const { isDestinationPanel } = panelMetaInfo;
|
|
35
|
+
const itemList = usePropsStore(
|
|
36
|
+
(state) => isDestinationPanel ? state.destinationConfiguredData : state.sourceConfiguredData
|
|
37
|
+
);
|
|
38
|
+
const actionRef = usePropsStore(
|
|
39
|
+
(state) => isDestinationPanel ? state.destinationVirtualRef : state.sourceVirtualRef
|
|
40
|
+
);
|
|
41
|
+
const withDragNDrop = usePropsStore(
|
|
42
|
+
(state) => isDestinationPanel ? !state.removeDragAndDropFromDestination : state.addDragAndDropFromSource
|
|
43
|
+
);
|
|
44
|
+
const getDatumHydratables = useGetDatumHydratables(panelMetaInfo);
|
|
45
|
+
const getOwnerProps = usePropsStore((store) => store.get);
|
|
46
|
+
const getOwnerPropsArguments = React2.useCallback(() => panelMetaInfo, [panelMetaInfo]);
|
|
47
|
+
return /* @__PURE__ */ jsx(StyledItemsWrapper, { getOwnerProps, getOwnerPropsArguments, children: /* @__PURE__ */ jsx(
|
|
48
|
+
DSFastList,
|
|
49
|
+
{
|
|
50
|
+
actionRef,
|
|
51
|
+
count: itemList.length,
|
|
52
|
+
ItemRenderer,
|
|
53
|
+
extraItemProps: { itemList, getDatumHydratables, panelMetaInfo, withDragNDrop }
|
|
54
|
+
}
|
|
55
|
+
) });
|
|
56
|
+
});
|
|
57
|
+
const ItemListWrapperWithContext = withConditionalDnDRowContext(ItemListWrapper);
|
|
58
|
+
var Index_default = ItemListWrapperWithContext;
|
|
59
|
+
export {
|
|
60
|
+
ItemListWrapperWithContext,
|
|
61
|
+
Index_default as default
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=Index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/parts/Panel/middle/ItemListWrapper/Index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable indent */\nimport React from 'react';\nimport { Grid } from '@elliemae/ds-legacy-grid';\nimport { DSFastList } from '@elliemae/ds-legacy-fast-list';\nimport { styled } from '@elliemae/ds-legacy-system';\nimport { usePropsStore } from '../../../../config/useStore/index.js';\nimport { type DSShuttleV2T } from '../../../../react-desc-prop-types.js';\nimport { DSShuttleV2Name, DSShuttleV2Slots } from '../../../../config/DSShuttleV2Definitions.js';\nimport { ItemSortable } from '../../../Item/Item.js';\nimport { withConditionalDnDRowContext } from '../../../HoC/withConditionalDnDRowContext.js';\nimport { useGetDatumHydratables } from './useGetDatumHydratables.js';\nimport { getDatumFlags } from './getDatumFlags.js';\n\ninterface ItemRendererT {\n itemList: DSShuttleV2T.ConfiguredDatum[];\n getDatumHydratables: ReturnType<typeof useGetDatumHydratables>;\n panelMetaInfo: DSShuttleV2T.PanelMetaInfo;\n withDragNDrop: boolean;\n index: number;\n}\nconst StyledItemsWrapper = styled(Grid, { name: DSShuttleV2Name, slot: DSShuttleV2Slots.ITEMS_WRAPPER })`\n position: relative;\n`;\n\nconst ItemRenderer = React.memo(\n ({ index, itemList, getDatumHydratables, panelMetaInfo, withDragNDrop }: ItemRendererT) => {\n const item = itemList[index];\n const { original: datum, ...datumInternalMeta } = item;\n const datumHydratables = getDatumHydratables(item);\n const datumRenderFlags = getDatumFlags({ ...datumInternalMeta, ...datumHydratables, ...panelMetaInfo });\n const itemMeta = {\n datum,\n datumHydratables,\n datumInternalMeta,\n datumRenderFlags,\n ...panelMetaInfo,\n withDragNDrop,\n };\n return <ItemSortable key={datumHydratables.id} {...itemMeta} />;\n },\n);\n\nconst ItemListWrapper = React.memo((panelMetaInfo: DSShuttleV2T.PanelMetaInfo) => {\n const { isDestinationPanel } = panelMetaInfo;\n const itemList = usePropsStore((state) =>\n isDestinationPanel ? state.destinationConfiguredData : state.sourceConfiguredData,\n );\n\n const actionRef = usePropsStore((state) =>\n isDestinationPanel ? state.destinationVirtualRef : state.sourceVirtualRef,\n );\n\n const withDragNDrop = usePropsStore((state) =>\n isDestinationPanel ? !state.removeDragAndDropFromDestination : state.addDragAndDropFromSource,\n );\n\n const getDatumHydratables = useGetDatumHydratables(panelMetaInfo);\n\n const getOwnerProps = usePropsStore((store) => store.get);\n const getOwnerPropsArguments = React.useCallback(() => panelMetaInfo, [panelMetaInfo]);\n\n return (\n <StyledItemsWrapper getOwnerProps={getOwnerProps} getOwnerPropsArguments={getOwnerPropsArguments}>\n <DSFastList\n actionRef={actionRef}\n count={itemList.length}\n ItemRenderer={ItemRenderer}\n extraItemProps={{ itemList, getDatumHydratables, panelMetaInfo, withDragNDrop }}\n />\n </StyledItemsWrapper>\n );\n});\n\nexport const ItemListWrapperWithContext = withConditionalDnDRowContext(ItemListWrapper);\nexport default ItemListWrapperWithContext;\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACsCZ;AArCX,OAAOA,YAAW;AAClB,SAAS,YAAY;AACrB,SAAS,kBAAkB;AAC3B,SAAS,cAAc;AACvB,SAAS,qBAAqB;AAE9B,SAAS,iBAAiB,wBAAwB;AAClD,SAAS,oBAAoB;AAC7B,SAAS,oCAAoC;AAC7C,SAAS,8BAA8B;AACvC,SAAS,qBAAqB;AAS9B,MAAM,qBAAqB,OAAO,MAAM,EAAE,MAAM,iBAAiB,MAAM,iBAAiB,cAAc,CAAC;AAAA;AAAA;AAIvG,MAAM,eAAeA,OAAM;AAAA,EACzB,CAAC,EAAE,OAAO,UAAU,qBAAqB,eAAe,cAAc,MAAqB;AACzF,UAAM,OAAO,SAAS,KAAK;AAC3B,UAAM,EAAE,UAAU,OAAO,GAAG,kBAAkB,IAAI;AAClD,UAAM,mBAAmB,oBAAoB,IAAI;AACjD,UAAM,mBAAmB,cAAc,EAAE,GAAG,mBAAmB,GAAG,kBAAkB,GAAG,cAAc,CAAC;AACtG,UAAM,WAAW;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG;AAAA,MACH;AAAA,IACF;AACA,WAAO,oBAAC,gBAAwC,GAAG,YAAzB,iBAAiB,EAAkB;AAAA,EAC/D;AACF;AAEA,MAAM,kBAAkBA,OAAM,KAAK,CAAC,kBAA8C;AAChF,QAAM,EAAE,mBAAmB,IAAI;AAC/B,QAAM,WAAW;AAAA,IAAc,CAAC,UAC9B,qBAAqB,MAAM,4BAA4B,MAAM;AAAA,EAC/D;AAEA,QAAM,YAAY;AAAA,IAAc,CAAC,UAC/B,qBAAqB,MAAM,wBAAwB,MAAM;AAAA,EAC3D;AAEA,QAAM,gBAAgB;AAAA,IAAc,CAAC,UACnC,qBAAqB,CAAC,MAAM,mCAAmC,MAAM;AAAA,EACvE;AAEA,QAAM,sBAAsB,uBAAuB,aAAa;AAEhE,QAAM,gBAAgB,cAAc,CAAC,UAAU,MAAM,GAAG;AACxD,QAAM,yBAAyBA,OAAM,YAAY,MAAM,eAAe,CAAC,aAAa,CAAC;AAErF,SACE,oBAAC,sBAAmB,eAA8B,wBAChD;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,OAAO,SAAS;AAAA,MAChB;AAAA,MACA,gBAAgB,EAAE,UAAU,qBAAqB,eAAe,cAAc;AAAA;AAAA,EAChF,GACF;AAEJ,CAAC;AAEM,MAAM,6BAA6B,6BAA6B,eAAe;AACtF,IAAO,gBAAQ;",
|
|
6
|
+
"names": ["React"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
const getDatumFlags = ({
|
|
3
|
+
softDeleted,
|
|
4
|
+
preventMove = false,
|
|
5
|
+
preventDrilldown = false,
|
|
6
|
+
hasMultipleSelection = false
|
|
7
|
+
}) => ({
|
|
8
|
+
selectionPrevented: Boolean(softDeleted || preventMove),
|
|
9
|
+
withActions: !softDeleted,
|
|
10
|
+
withMoveBtn: !softDeleted && !preventMove,
|
|
11
|
+
withDrilldownBtn: !softDeleted && !preventDrilldown,
|
|
12
|
+
internallyDisabledMove: hasMultipleSelection,
|
|
13
|
+
internallyDisabledDrilldown: hasMultipleSelection
|
|
14
|
+
});
|
|
15
|
+
export {
|
|
16
|
+
getDatumFlags
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=getDatumFlags.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/parts/Panel/middle/ItemListWrapper/getDatumFlags.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "type GetDatumFlagsConfig = {\n softDeleted: boolean;\n preventMove?: boolean;\n preventDrilldown?: boolean;\n hasMultipleSelection?: boolean;\n};\nexport const getDatumFlags = ({\n softDeleted,\n preventMove = false,\n preventDrilldown = false,\n hasMultipleSelection = false,\n}: GetDatumFlagsConfig) => ({\n selectionPrevented: Boolean(softDeleted || preventMove),\n withActions: !softDeleted,\n withMoveBtn: !softDeleted && !preventMove,\n withDrilldownBtn: !softDeleted && !preventDrilldown,\n internallyDisabledMove: hasMultipleSelection,\n internallyDisabledDrilldown: hasMultipleSelection,\n});\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACMhB,MAAM,gBAAgB,CAAC;AAAA,EAC5B;AAAA,EACA,cAAc;AAAA,EACd,mBAAmB;AAAA,EACnB,uBAAuB;AACzB,OAA4B;AAAA,EAC1B,oBAAoB,QAAQ,eAAe,WAAW;AAAA,EACtD,aAAa,CAAC;AAAA,EACd,aAAa,CAAC,eAAe,CAAC;AAAA,EAC9B,kBAAkB,CAAC,eAAe,CAAC;AAAA,EACnC,wBAAwB;AAAA,EACxB,6BAA6B;AAC/B;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import React2 from "react";
|
|
3
|
+
import { usePropsStore } from "../../../../config/useStore/index.js";
|
|
4
|
+
const useGetDatumHydratables = (panelMetaInfo) => {
|
|
5
|
+
const getLabel = usePropsStore((state) => state.getLabel);
|
|
6
|
+
const getSubtitle = usePropsStore((state) => state.getSubtitle);
|
|
7
|
+
const getIcon = usePropsStore((state) => state.getIcon);
|
|
8
|
+
const getCustomRenderer = usePropsStore((state) => state.getCustomRenderer);
|
|
9
|
+
const getPreventDrilldown = usePropsStore((state) => state.getPreventDrilldown);
|
|
10
|
+
const getDatumHydratables = React2.useCallback(
|
|
11
|
+
(item) => {
|
|
12
|
+
const { original, ...datumMeta } = item;
|
|
13
|
+
return {
|
|
14
|
+
id: datumMeta.hydratedId,
|
|
15
|
+
preventMove: datumMeta.hydratedPreventMove,
|
|
16
|
+
label: getLabel(original, { datumMeta, panelMetaInfo }),
|
|
17
|
+
...getSubtitle !== void 0 ? { subtitle: getSubtitle(original, { datumMeta, panelMetaInfo }) } : {},
|
|
18
|
+
...getIcon !== void 0 ? { Icon: getIcon(original, { datumMeta, panelMetaInfo }) } : {},
|
|
19
|
+
...getCustomRenderer !== void 0 ? { CustomRenderer: getCustomRenderer(original, { datumMeta, panelMetaInfo }) } : {},
|
|
20
|
+
...getPreventDrilldown !== void 0 ? { preventDrilldown: getPreventDrilldown(original, { datumMeta, panelMetaInfo }) } : {}
|
|
21
|
+
};
|
|
22
|
+
},
|
|
23
|
+
[getCustomRenderer, getIcon, getLabel, getPreventDrilldown, getSubtitle, panelMetaInfo]
|
|
24
|
+
);
|
|
25
|
+
return getDatumHydratables;
|
|
26
|
+
};
|
|
27
|
+
export {
|
|
28
|
+
useGetDatumHydratables
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=useGetDatumHydratables.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../../src/parts/Panel/middle/ItemListWrapper/useGetDatumHydratables.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { usePropsStore } from '../../../../config/useStore/index.js';\nimport { type DSShuttleV2T } from '../../../../react-desc-prop-types.js';\n\nexport const useGetDatumHydratables = (panelMetaInfo: DSShuttleV2T.PanelMetaInfo) => {\n const getLabel = usePropsStore((state) => state.getLabel);\n const getSubtitle = usePropsStore((state) => state.getSubtitle);\n const getIcon = usePropsStore((state) => state.getIcon);\n const getCustomRenderer = usePropsStore((state) => state.getCustomRenderer);\n const getPreventDrilldown = usePropsStore((state) => state.getPreventDrilldown);\n\n const getDatumHydratables = React.useCallback(\n (item: DSShuttleV2T.ConfiguredDatum) => {\n const { original, ...datumMeta } = item;\n\n return {\n id: datumMeta.hydratedId,\n preventMove: datumMeta.hydratedPreventMove,\n label: getLabel(original, { datumMeta, panelMetaInfo }),\n ...(getSubtitle !== undefined ? { subtitle: getSubtitle(original, { datumMeta, panelMetaInfo }) } : {}),\n ...(getIcon !== undefined ? { Icon: getIcon(original, { datumMeta, panelMetaInfo }) } : {}),\n ...(getCustomRenderer !== undefined\n ? { CustomRenderer: getCustomRenderer(original, { datumMeta, panelMetaInfo }) }\n : {}),\n ...(getPreventDrilldown !== undefined\n ? { preventDrilldown: getPreventDrilldown(original, { datumMeta, panelMetaInfo }) }\n : {}),\n };\n },\n [getCustomRenderer, getIcon, getLabel, getPreventDrilldown, getSubtitle, panelMetaInfo],\n );\n return getDatumHydratables;\n};\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACAvB,OAAOA,YAAW;AAClB,SAAS,qBAAqB;AAGvB,MAAM,yBAAyB,CAAC,kBAA8C;AACnF,QAAM,WAAW,cAAc,CAAC,UAAU,MAAM,QAAQ;AACxD,QAAM,cAAc,cAAc,CAAC,UAAU,MAAM,WAAW;AAC9D,QAAM,UAAU,cAAc,CAAC,UAAU,MAAM,OAAO;AACtD,QAAM,oBAAoB,cAAc,CAAC,UAAU,MAAM,iBAAiB;AAC1E,QAAM,sBAAsB,cAAc,CAAC,UAAU,MAAM,mBAAmB;AAE9E,QAAM,sBAAsBA,OAAM;AAAA,IAChC,CAAC,SAAuC;AACtC,YAAM,EAAE,UAAU,GAAG,UAAU,IAAI;AAEnC,aAAO;AAAA,QACL,IAAI,UAAU;AAAA,QACd,aAAa,UAAU;AAAA,QACvB,OAAO,SAAS,UAAU,EAAE,WAAW,cAAc,CAAC;AAAA,QACtD,GAAI,gBAAgB,SAAY,EAAE,UAAU,YAAY,UAAU,EAAE,WAAW,cAAc,CAAC,EAAE,IAAI,CAAC;AAAA,QACrG,GAAI,YAAY,SAAY,EAAE,MAAM,QAAQ,UAAU,EAAE,WAAW,cAAc,CAAC,EAAE,IAAI,CAAC;AAAA,QACzF,GAAI,sBAAsB,SACtB,EAAE,gBAAgB,kBAAkB,UAAU,EAAE,WAAW,cAAc,CAAC,EAAE,IAC5E,CAAC;AAAA,QACL,GAAI,wBAAwB,SACxB,EAAE,kBAAkB,oBAAoB,UAAU,EAAE,WAAW,cAAc,CAAC,EAAE,IAChF,CAAC;AAAA,MACP;AAAA,IACF;AAAA,IACA,CAAC,mBAAmB,SAAS,UAAU,qBAAqB,aAAa,aAAa;AAAA,EACxF;AACA,SAAO;AACT;",
|
|
6
|
+
"names": ["React"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { useCallback } from "react";
|
|
4
|
+
import { styled } from "@elliemae/ds-legacy-system";
|
|
5
|
+
import { Grid } from "@elliemae/ds-legacy-grid";
|
|
6
|
+
import { DSCircularIndeterminateIndicator } from "@elliemae/ds-legacy-circular-progress-indicator";
|
|
7
|
+
import { DSShuttleV2Name, DSShuttleV2Slots } from "../../../config/DSShuttleV2Definitions.js";
|
|
8
|
+
import { usePropsStore } from "../../../config/useStore/useStore.js";
|
|
9
|
+
const StyledLoadingListWrapper = styled(Grid, { name: DSShuttleV2Name, slot: DSShuttleV2Slots.LOADING_LIST_WRAPPER })`
|
|
10
|
+
color: neutral-500;
|
|
11
|
+
`;
|
|
12
|
+
const StyledLoadingIndicator = styled(DSCircularIndeterminateIndicator)``;
|
|
13
|
+
const LoadingItems = (panelMetaInfo) => {
|
|
14
|
+
const getOwnerProps = usePropsStore((store) => store.get);
|
|
15
|
+
const getOwnerPropsArguments = useCallback(() => panelMetaInfo, [panelMetaInfo]);
|
|
16
|
+
return /* @__PURE__ */ jsx(
|
|
17
|
+
StyledLoadingListWrapper,
|
|
18
|
+
{
|
|
19
|
+
alignItems: "center",
|
|
20
|
+
justifyContent: "center",
|
|
21
|
+
getOwnerProps,
|
|
22
|
+
getOwnerPropsArguments,
|
|
23
|
+
children: /* @__PURE__ */ jsx(
|
|
24
|
+
StyledLoadingIndicator,
|
|
25
|
+
{
|
|
26
|
+
size: "xl",
|
|
27
|
+
text: "Loading...",
|
|
28
|
+
getOwnerProps,
|
|
29
|
+
getOwnerPropsArguments
|
|
30
|
+
}
|
|
31
|
+
)
|
|
32
|
+
}
|
|
33
|
+
);
|
|
34
|
+
};
|
|
35
|
+
export {
|
|
36
|
+
LoadingItems
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=LoadingItems.js.map
|