@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.
Files changed (306) hide show
  1. package/dist/cjs/DSShuttleV2.js +46 -0
  2. package/dist/cjs/DSShuttleV2.js.map +7 -0
  3. package/dist/cjs/config/DSShuttleV2Definitions.js +74 -0
  4. package/dist/cjs/config/DSShuttleV2Definitions.js.map +7 -0
  5. package/dist/cjs/config/itemMovementHelpers.js +133 -0
  6. package/dist/cjs/config/itemMovementHelpers.js.map +7 -0
  7. package/dist/cjs/config/useAutoCalculated/index.js +43 -0
  8. package/dist/cjs/config/useAutoCalculated/index.js.map +7 -0
  9. package/dist/cjs/config/useAutoCalculated/useDataStructure.js +182 -0
  10. package/dist/cjs/config/useAutoCalculated/useDataStructure.js.map +7 -0
  11. package/dist/cjs/config/useAutoCalculated/useShuttleVirtualized.js +51 -0
  12. package/dist/cjs/config/useAutoCalculated/useShuttleVirtualized.js.map +7 -0
  13. package/dist/cjs/config/useFocusTracker/index.js +42 -0
  14. package/dist/cjs/config/useFocusTracker/index.js.map +7 -0
  15. package/dist/cjs/config/useFocusTracker/useFocusActionTrackers.js +149 -0
  16. package/dist/cjs/config/useFocusTracker/useFocusActionTrackers.js.map +7 -0
  17. package/dist/cjs/config/useFocusTracker/useFocusItemTracker.js +103 -0
  18. package/dist/cjs/config/useFocusTracker/useFocusItemTracker.js.map +7 -0
  19. package/dist/cjs/config/useFocusTracker/useFocusRegionTrackers.js +87 -0
  20. package/dist/cjs/config/useFocusTracker/useFocusRegionTrackers.js.map +7 -0
  21. package/dist/cjs/config/useFocusTracker/useFocusTracker.js +52 -0
  22. package/dist/cjs/config/useFocusTracker/useFocusTracker.js.map +7 -0
  23. package/dist/cjs/config/useStore/focusAndTabIndexManager.js +77 -0
  24. package/dist/cjs/config/useStore/focusAndTabIndexManager.js.map +7 -0
  25. package/dist/cjs/config/useStore/index.js +30 -0
  26. package/dist/cjs/config/useStore/index.js.map +7 -0
  27. package/dist/cjs/config/useStore/useStore.js +86 -0
  28. package/dist/cjs/config/useStore/useStore.js.map +7 -0
  29. package/dist/cjs/config/useValidateProps.js +40 -0
  30. package/dist/cjs/config/useValidateProps.js.map +7 -0
  31. package/dist/cjs/constants/index.js +69 -0
  32. package/dist/cjs/constants/index.js.map +7 -0
  33. package/dist/cjs/exported-related/ShuttleItem.js +60 -0
  34. package/dist/cjs/exported-related/ShuttleItem.js.map +7 -0
  35. package/dist/cjs/exported-related/index.js +36 -0
  36. package/dist/cjs/exported-related/index.js.map +7 -0
  37. package/dist/cjs/index.js +43 -0
  38. package/dist/cjs/index.js.map +7 -0
  39. package/dist/cjs/package.json +7 -0
  40. package/dist/cjs/parts/Dnd/DndHandle.js +89 -0
  41. package/dist/cjs/parts/Dnd/DndHandle.js.map +7 -0
  42. package/dist/cjs/parts/Dnd/DragOverlay.js +51 -0
  43. package/dist/cjs/parts/Dnd/DragOverlay.js.map +7 -0
  44. package/dist/cjs/parts/Dnd/DropIndicator.js +92 -0
  45. package/dist/cjs/parts/Dnd/DropIndicator.js.map +7 -0
  46. package/dist/cjs/parts/Header.js +91 -0
  47. package/dist/cjs/parts/Header.js.map +7 -0
  48. package/dist/cjs/parts/HoC/withConditionalDnDRowContext.js +121 -0
  49. package/dist/cjs/parts/HoC/withConditionalDnDRowContext.js.map +7 -0
  50. package/dist/cjs/parts/HoC/withConditionalUseSortable.js +43 -0
  51. package/dist/cjs/parts/HoC/withConditionalUseSortable.js.map +7 -0
  52. package/dist/cjs/parts/Item/Item.js +222 -0
  53. package/dist/cjs/parts/Item/Item.js.map +7 -0
  54. package/dist/cjs/parts/Item/ItemActions/ItemActions.js +164 -0
  55. package/dist/cjs/parts/Item/ItemActions/ItemActions.js.map +7 -0
  56. package/dist/cjs/parts/Item/ItemActions/index.js +30 -0
  57. package/dist/cjs/parts/Item/ItemActions/index.js.map +7 -0
  58. package/dist/cjs/parts/Item/ItemActions/useActionsHandlers.js +54 -0
  59. package/dist/cjs/parts/Item/ItemActions/useActionsHandlers.js.map +7 -0
  60. package/dist/cjs/parts/Item/ItemActions/useActionsLogicHandlers.js +82 -0
  61. package/dist/cjs/parts/Item/ItemActions/useActionsLogicHandlers.js.map +7 -0
  62. package/dist/cjs/parts/Item/ItemActions/useInnerRefHandlers.js +69 -0
  63. package/dist/cjs/parts/Item/ItemActions/useInnerRefHandlers.js.map +7 -0
  64. package/dist/cjs/parts/Item/ItemMiddleSection.js +140 -0
  65. package/dist/cjs/parts/Item/ItemMiddleSection.js.map +7 -0
  66. package/dist/cjs/parts/Item/ItemOverlay.js +76 -0
  67. package/dist/cjs/parts/Item/ItemOverlay.js.map +7 -0
  68. package/dist/cjs/parts/Item/ItemSelection.js +70 -0
  69. package/dist/cjs/parts/Item/ItemSelection.js.map +7 -0
  70. package/dist/cjs/parts/Item/TextSection.js +56 -0
  71. package/dist/cjs/parts/Item/TextSection.js.map +7 -0
  72. package/dist/cjs/parts/Item/useItemArrowNavigation.js +104 -0
  73. package/dist/cjs/parts/Item/useItemArrowNavigation.js.map +7 -0
  74. package/dist/cjs/parts/Item/useItemKeyboardSelection.js +61 -0
  75. package/dist/cjs/parts/Item/useItemKeyboardSelection.js.map +7 -0
  76. package/dist/cjs/parts/Item/useSelectionLogic.js +128 -0
  77. package/dist/cjs/parts/Item/useSelectionLogic.js.map +7 -0
  78. package/dist/cjs/parts/Item/useThisItemIsFocused.js +47 -0
  79. package/dist/cjs/parts/Item/useThisItemIsFocused.js.map +7 -0
  80. package/dist/cjs/parts/MainContent.js +116 -0
  81. package/dist/cjs/parts/MainContent.js.map +7 -0
  82. package/dist/cjs/parts/Panel/bottom/LoadMoreBtn.js +81 -0
  83. package/dist/cjs/parts/Panel/bottom/LoadMoreBtn.js.map +7 -0
  84. package/dist/cjs/parts/Panel/bottom/LoadingMore.js +59 -0
  85. package/dist/cjs/parts/Panel/bottom/LoadingMore.js.map +7 -0
  86. package/dist/cjs/parts/Panel/bottom/PanelContentBottomSection.js +97 -0
  87. package/dist/cjs/parts/Panel/bottom/PanelContentBottomSection.js.map +7 -0
  88. package/dist/cjs/parts/Panel/bottom/useInnerRefHandlers.js +51 -0
  89. package/dist/cjs/parts/Panel/bottom/useInnerRefHandlers.js.map +7 -0
  90. package/dist/cjs/parts/Panel/bottom/useLoadMoreBtnArrowNavigation.js +77 -0
  91. package/dist/cjs/parts/Panel/bottom/useLoadMoreBtnArrowNavigation.js.map +7 -0
  92. package/dist/cjs/parts/Panel/middle/EmptyItems.js +58 -0
  93. package/dist/cjs/parts/Panel/middle/EmptyItems.js.map +7 -0
  94. package/dist/cjs/parts/Panel/middle/ItemListWrapper/Index.js +93 -0
  95. package/dist/cjs/parts/Panel/middle/ItemListWrapper/Index.js.map +7 -0
  96. package/dist/cjs/parts/Panel/middle/ItemListWrapper/getDatumFlags.js +48 -0
  97. package/dist/cjs/parts/Panel/middle/ItemListWrapper/getDatumFlags.js.map +7 -0
  98. package/dist/cjs/parts/Panel/middle/ItemListWrapper/useGetDatumHydratables.js +60 -0
  99. package/dist/cjs/parts/Panel/middle/ItemListWrapper/useGetDatumHydratables.js.map +7 -0
  100. package/dist/cjs/parts/Panel/middle/LoadingItems.js +68 -0
  101. package/dist/cjs/parts/Panel/middle/LoadingItems.js.map +7 -0
  102. package/dist/cjs/parts/Panel/middle/MultipleSelectionAction.js +186 -0
  103. package/dist/cjs/parts/Panel/middle/MultipleSelectionAction.js.map +7 -0
  104. package/dist/cjs/parts/Panel/middle/PanelContentMiddleSection.js +174 -0
  105. package/dist/cjs/parts/Panel/middle/PanelContentMiddleSection.js.map +7 -0
  106. package/dist/cjs/parts/Panel/top/PanelContentTopSection.js +71 -0
  107. package/dist/cjs/parts/Panel/top/PanelContentTopSection.js.map +7 -0
  108. package/dist/cjs/parts/Panel/top/PanelFilterSection.js +79 -0
  109. package/dist/cjs/parts/Panel/top/PanelFilterSection.js.map +7 -0
  110. package/dist/cjs/parts/Panel/top/SelectionHeader.js +137 -0
  111. package/dist/cjs/parts/Panel/top/SelectionHeader.js.map +7 -0
  112. package/dist/cjs/parts/PanelWrapper.js +83 -0
  113. package/dist/cjs/parts/PanelWrapper.js.map +7 -0
  114. package/dist/cjs/react-desc-prop-types.js +157 -0
  115. package/dist/cjs/react-desc-prop-types.js.map +7 -0
  116. package/dist/cjs/tests/configs/basic.js +164 -0
  117. package/dist/cjs/tests/configs/basic.js.map +7 -0
  118. package/dist/cjs/tests/configs/filter.js +199 -0
  119. package/dist/cjs/tests/configs/filter.js.map +7 -0
  120. package/dist/cjs/tests/configs/loadMore.js +179 -0
  121. package/dist/cjs/tests/configs/loadMore.js.map +7 -0
  122. package/dist/esm/DSShuttleV2.js +16 -0
  123. package/dist/esm/DSShuttleV2.js.map +7 -0
  124. package/dist/esm/config/DSShuttleV2Definitions.js +44 -0
  125. package/dist/esm/config/DSShuttleV2Definitions.js.map +7 -0
  126. package/dist/esm/config/itemMovementHelpers.js +103 -0
  127. package/dist/esm/config/itemMovementHelpers.js.map +7 -0
  128. package/dist/esm/config/useAutoCalculated/index.js +13 -0
  129. package/dist/esm/config/useAutoCalculated/index.js.map +7 -0
  130. package/dist/esm/config/useAutoCalculated/useDataStructure.js +152 -0
  131. package/dist/esm/config/useAutoCalculated/useDataStructure.js.map +7 -0
  132. package/dist/esm/config/useAutoCalculated/useShuttleVirtualized.js +21 -0
  133. package/dist/esm/config/useAutoCalculated/useShuttleVirtualized.js.map +7 -0
  134. package/dist/esm/config/useFocusTracker/index.js +12 -0
  135. package/dist/esm/config/useFocusTracker/index.js.map +7 -0
  136. package/dist/esm/config/useFocusTracker/useFocusActionTrackers.js +119 -0
  137. package/dist/esm/config/useFocusTracker/useFocusActionTrackers.js.map +7 -0
  138. package/dist/esm/config/useFocusTracker/useFocusItemTracker.js +73 -0
  139. package/dist/esm/config/useFocusTracker/useFocusItemTracker.js.map +7 -0
  140. package/dist/esm/config/useFocusTracker/useFocusRegionTrackers.js +57 -0
  141. package/dist/esm/config/useFocusTracker/useFocusRegionTrackers.js.map +7 -0
  142. package/dist/esm/config/useFocusTracker/useFocusTracker.js +22 -0
  143. package/dist/esm/config/useFocusTracker/useFocusTracker.js.map +7 -0
  144. package/dist/esm/config/useStore/focusAndTabIndexManager.js +47 -0
  145. package/dist/esm/config/useStore/focusAndTabIndexManager.js.map +7 -0
  146. package/dist/esm/config/useStore/index.js +3 -0
  147. package/dist/esm/config/useStore/index.js.map +7 -0
  148. package/dist/esm/config/useStore/useStore.js +56 -0
  149. package/dist/esm/config/useStore/useStore.js.map +7 -0
  150. package/dist/esm/config/useValidateProps.js +10 -0
  151. package/dist/esm/config/useValidateProps.js.map +7 -0
  152. package/dist/esm/constants/index.js +39 -0
  153. package/dist/esm/constants/index.js.map +7 -0
  154. package/dist/esm/exported-related/ShuttleItem.js +30 -0
  155. package/dist/esm/exported-related/ShuttleItem.js.map +7 -0
  156. package/dist/esm/exported-related/index.js +6 -0
  157. package/dist/esm/exported-related/index.js.map +7 -0
  158. package/dist/esm/index.js +13 -0
  159. package/dist/esm/index.js.map +7 -0
  160. package/dist/esm/package.json +7 -0
  161. package/dist/esm/parts/Dnd/DndHandle.js +59 -0
  162. package/dist/esm/parts/Dnd/DndHandle.js.map +7 -0
  163. package/dist/esm/parts/Dnd/DragOverlay.js +21 -0
  164. package/dist/esm/parts/Dnd/DragOverlay.js.map +7 -0
  165. package/dist/esm/parts/Dnd/DropIndicator.js +62 -0
  166. package/dist/esm/parts/Dnd/DropIndicator.js.map +7 -0
  167. package/dist/esm/parts/Header.js +63 -0
  168. package/dist/esm/parts/Header.js.map +7 -0
  169. package/dist/esm/parts/HoC/withConditionalDnDRowContext.js +91 -0
  170. package/dist/esm/parts/HoC/withConditionalDnDRowContext.js.map +7 -0
  171. package/dist/esm/parts/HoC/withConditionalUseSortable.js +13 -0
  172. package/dist/esm/parts/HoC/withConditionalUseSortable.js.map +7 -0
  173. package/dist/esm/parts/Item/Item.js +192 -0
  174. package/dist/esm/parts/Item/Item.js.map +7 -0
  175. package/dist/esm/parts/Item/ItemActions/ItemActions.js +134 -0
  176. package/dist/esm/parts/Item/ItemActions/ItemActions.js.map +7 -0
  177. package/dist/esm/parts/Item/ItemActions/index.js +3 -0
  178. package/dist/esm/parts/Item/ItemActions/index.js.map +7 -0
  179. package/dist/esm/parts/Item/ItemActions/useActionsHandlers.js +24 -0
  180. package/dist/esm/parts/Item/ItemActions/useActionsHandlers.js.map +7 -0
  181. package/dist/esm/parts/Item/ItemActions/useActionsLogicHandlers.js +52 -0
  182. package/dist/esm/parts/Item/ItemActions/useActionsLogicHandlers.js.map +7 -0
  183. package/dist/esm/parts/Item/ItemActions/useInnerRefHandlers.js +39 -0
  184. package/dist/esm/parts/Item/ItemActions/useInnerRefHandlers.js.map +7 -0
  185. package/dist/esm/parts/Item/ItemMiddleSection.js +110 -0
  186. package/dist/esm/parts/Item/ItemMiddleSection.js.map +7 -0
  187. package/dist/esm/parts/Item/ItemOverlay.js +46 -0
  188. package/dist/esm/parts/Item/ItemOverlay.js.map +7 -0
  189. package/dist/esm/parts/Item/ItemSelection.js +40 -0
  190. package/dist/esm/parts/Item/ItemSelection.js.map +7 -0
  191. package/dist/esm/parts/Item/TextSection.js +26 -0
  192. package/dist/esm/parts/Item/TextSection.js.map +7 -0
  193. package/dist/esm/parts/Item/useItemArrowNavigation.js +78 -0
  194. package/dist/esm/parts/Item/useItemArrowNavigation.js.map +7 -0
  195. package/dist/esm/parts/Item/useItemKeyboardSelection.js +31 -0
  196. package/dist/esm/parts/Item/useItemKeyboardSelection.js.map +7 -0
  197. package/dist/esm/parts/Item/useSelectionLogic.js +98 -0
  198. package/dist/esm/parts/Item/useSelectionLogic.js.map +7 -0
  199. package/dist/esm/parts/Item/useThisItemIsFocused.js +17 -0
  200. package/dist/esm/parts/Item/useThisItemIsFocused.js.map +7 -0
  201. package/dist/esm/parts/MainContent.js +86 -0
  202. package/dist/esm/parts/MainContent.js.map +7 -0
  203. package/dist/esm/parts/Panel/bottom/LoadMoreBtn.js +51 -0
  204. package/dist/esm/parts/Panel/bottom/LoadMoreBtn.js.map +7 -0
  205. package/dist/esm/parts/Panel/bottom/LoadingMore.js +29 -0
  206. package/dist/esm/parts/Panel/bottom/LoadingMore.js.map +7 -0
  207. package/dist/esm/parts/Panel/bottom/PanelContentBottomSection.js +67 -0
  208. package/dist/esm/parts/Panel/bottom/PanelContentBottomSection.js.map +7 -0
  209. package/dist/esm/parts/Panel/bottom/useInnerRefHandlers.js +21 -0
  210. package/dist/esm/parts/Panel/bottom/useInnerRefHandlers.js.map +7 -0
  211. package/dist/esm/parts/Panel/bottom/useLoadMoreBtnArrowNavigation.js +51 -0
  212. package/dist/esm/parts/Panel/bottom/useLoadMoreBtnArrowNavigation.js.map +7 -0
  213. package/dist/esm/parts/Panel/middle/EmptyItems.js +28 -0
  214. package/dist/esm/parts/Panel/middle/EmptyItems.js.map +7 -0
  215. package/dist/esm/parts/Panel/middle/ItemListWrapper/Index.js +63 -0
  216. package/dist/esm/parts/Panel/middle/ItemListWrapper/Index.js.map +7 -0
  217. package/dist/esm/parts/Panel/middle/ItemListWrapper/getDatumFlags.js +18 -0
  218. package/dist/esm/parts/Panel/middle/ItemListWrapper/getDatumFlags.js.map +7 -0
  219. package/dist/esm/parts/Panel/middle/ItemListWrapper/useGetDatumHydratables.js +30 -0
  220. package/dist/esm/parts/Panel/middle/ItemListWrapper/useGetDatumHydratables.js.map +7 -0
  221. package/dist/esm/parts/Panel/middle/LoadingItems.js +38 -0
  222. package/dist/esm/parts/Panel/middle/LoadingItems.js.map +7 -0
  223. package/dist/esm/parts/Panel/middle/MultipleSelectionAction.js +156 -0
  224. package/dist/esm/parts/Panel/middle/MultipleSelectionAction.js.map +7 -0
  225. package/dist/esm/parts/Panel/middle/PanelContentMiddleSection.js +144 -0
  226. package/dist/esm/parts/Panel/middle/PanelContentMiddleSection.js.map +7 -0
  227. package/dist/esm/parts/Panel/top/PanelContentTopSection.js +41 -0
  228. package/dist/esm/parts/Panel/top/PanelContentTopSection.js.map +7 -0
  229. package/dist/esm/parts/Panel/top/PanelFilterSection.js +49 -0
  230. package/dist/esm/parts/Panel/top/PanelFilterSection.js.map +7 -0
  231. package/dist/esm/parts/Panel/top/SelectionHeader.js +107 -0
  232. package/dist/esm/parts/Panel/top/SelectionHeader.js.map +7 -0
  233. package/dist/esm/parts/PanelWrapper.js +53 -0
  234. package/dist/esm/parts/PanelWrapper.js.map +7 -0
  235. package/dist/esm/react-desc-prop-types.js +132 -0
  236. package/dist/esm/react-desc-prop-types.js.map +7 -0
  237. package/dist/esm/tests/configs/basic.js +134 -0
  238. package/dist/esm/tests/configs/basic.js.map +7 -0
  239. package/dist/esm/tests/configs/filter.js +169 -0
  240. package/dist/esm/tests/configs/filter.js.map +7 -0
  241. package/dist/esm/tests/configs/loadMore.js +149 -0
  242. package/dist/esm/tests/configs/loadMore.js.map +7 -0
  243. package/dist/types/DSShuttleV2.d.ts +4 -0
  244. package/dist/types/config/DSShuttleV2Definitions.d.ts +36 -0
  245. package/dist/types/config/itemMovementHelpers.d.ts +7 -0
  246. package/dist/types/config/useAutoCalculated/index.d.ts +32 -0
  247. package/dist/types/config/useAutoCalculated/useDataStructure.d.ts +25 -0
  248. package/dist/types/config/useAutoCalculated/useShuttleVirtualized.d.ts +9 -0
  249. package/dist/types/config/useFocusTracker/index.d.ts +4 -0
  250. package/dist/types/config/useFocusTracker/useFocusActionTrackers.d.ts +10 -0
  251. package/dist/types/config/useFocusTracker/useFocusItemTracker.d.ts +11 -0
  252. package/dist/types/config/useFocusTracker/useFocusRegionTrackers.d.ts +18 -0
  253. package/dist/types/config/useFocusTracker/useFocusTracker.d.ts +33 -0
  254. package/dist/types/config/useStore/focusAndTabIndexManager.d.ts +10 -0
  255. package/dist/types/config/useStore/index.d.ts +1 -0
  256. package/dist/types/config/useStore/useStore.d.ts +301 -0
  257. package/dist/types/config/useValidateProps.d.ts +3 -0
  258. package/dist/types/constants/index.d.ts +32 -0
  259. package/dist/types/exported-related/ShuttleItem.d.ts +8 -0
  260. package/dist/types/exported-related/index.d.ts +1 -0
  261. package/dist/types/index.d.ts +3 -0
  262. package/dist/types/parts/Dnd/DndHandle.d.ts +15 -0
  263. package/dist/types/parts/Dnd/DragOverlay.d.ts +6 -0
  264. package/dist/types/parts/Dnd/DropIndicator.d.ts +15 -0
  265. package/dist/types/parts/Header.d.ts +3 -0
  266. package/dist/types/parts/HoC/withConditionalDnDRowContext.d.ts +10 -0
  267. package/dist/types/parts/HoC/withConditionalUseSortable.d.ts +8 -0
  268. package/dist/types/parts/Item/Item.d.ts +6 -0
  269. package/dist/types/parts/Item/ItemActions/ItemActions.d.ts +3 -0
  270. package/dist/types/parts/Item/ItemActions/index.d.ts +1 -0
  271. package/dist/types/parts/Item/ItemActions/useActionsHandlers.d.ts +7 -0
  272. package/dist/types/parts/Item/ItemActions/useActionsLogicHandlers.d.ts +7 -0
  273. package/dist/types/parts/Item/ItemActions/useInnerRefHandlers.d.ts +6 -0
  274. package/dist/types/parts/Item/ItemMiddleSection.d.ts +5 -0
  275. package/dist/types/parts/Item/ItemOverlay.d.ts +5 -0
  276. package/dist/types/parts/Item/ItemSelection.d.ts +3 -0
  277. package/dist/types/parts/Item/TextSection.d.ts +3 -0
  278. package/dist/types/parts/Item/useItemArrowNavigation.d.ts +5 -0
  279. package/dist/types/parts/Item/useItemKeyboardSelection.d.ts +5 -0
  280. package/dist/types/parts/Item/useSelectionLogic.d.ts +6 -0
  281. package/dist/types/parts/Item/useThisItemIsFocused.d.ts +4 -0
  282. package/dist/types/parts/MainContent.d.ts +2 -0
  283. package/dist/types/parts/Panel/bottom/LoadMoreBtn.d.ts +2 -0
  284. package/dist/types/parts/Panel/bottom/LoadingMore.d.ts +2 -0
  285. package/dist/types/parts/Panel/bottom/PanelContentBottomSection.d.ts +3 -0
  286. package/dist/types/parts/Panel/bottom/useInnerRefHandlers.d.ts +4 -0
  287. package/dist/types/parts/Panel/bottom/useLoadMoreBtnArrowNavigation.d.ts +5 -0
  288. package/dist/types/parts/Panel/middle/EmptyItems.d.ts +2 -0
  289. package/dist/types/parts/Panel/middle/ItemListWrapper/Index.d.ts +4 -0
  290. package/dist/types/parts/Panel/middle/ItemListWrapper/getDatumFlags.d.ts +15 -0
  291. package/dist/types/parts/Panel/middle/ItemListWrapper/useGetDatumHydratables.d.ts +11 -0
  292. package/dist/types/parts/Panel/middle/LoadingItems.d.ts +2 -0
  293. package/dist/types/parts/Panel/middle/MultipleSelectionAction.d.ts +3 -0
  294. package/dist/types/parts/Panel/middle/PanelContentMiddleSection.d.ts +3 -0
  295. package/dist/types/parts/Panel/top/PanelContentTopSection.d.ts +2 -0
  296. package/dist/types/parts/Panel/top/PanelFilterSection.d.ts +2 -0
  297. package/dist/types/parts/Panel/top/SelectionHeader.d.ts +3 -0
  298. package/dist/types/parts/PanelWrapper.d.ts +3 -0
  299. package/dist/types/react-desc-prop-types.d.ts +199 -0
  300. package/dist/types/tests/configs/basic.d.ts +25 -0
  301. package/dist/types/tests/configs/filter.d.ts +29 -0
  302. package/dist/types/tests/configs/loadMore.d.ts +29 -0
  303. package/dist/types/tests/shuttle-v2.basic.test.d.ts +1 -0
  304. package/dist/types/tests/shuttle-v2.filter.test.d.ts +1 -0
  305. package/dist/types/tests/shuttle-v2.load-more.test.d.ts +1 -0
  306. package/package.json +87 -0
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var DropIndicator_exports = {};
30
+ __export(DropIndicator_exports, {
31
+ DropIndicator: () => DropIndicator,
32
+ default: () => DropIndicator_default
33
+ });
34
+ module.exports = __toCommonJS(DropIndicator_exports);
35
+ var React = __toESM(require("react"));
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ var import_ds_legacy_system = require("@elliemae/ds-legacy-system");
38
+ var DropIndicatorPosition = /* @__PURE__ */ ((DropIndicatorPosition2) => {
39
+ DropIndicatorPosition2["None"] = "none";
40
+ DropIndicatorPosition2["Before"] = "before";
41
+ DropIndicatorPosition2["After"] = "after";
42
+ return DropIndicatorPosition2;
43
+ })(DropIndicatorPosition || {});
44
+ const getPositionStyles = ({ dropIndicatorPosition, vertical }) => {
45
+ if (vertical) {
46
+ return `
47
+ left: ${dropIndicatorPosition === "before" /* Before */ ? "0" : "unset"};
48
+ right: ${dropIndicatorPosition === "after" /* After */ ? "0" : "unset"};
49
+ `;
50
+ }
51
+ return `
52
+ top: ${dropIndicatorPosition === "before" /* Before */ ? "0" : "unset"};
53
+ bottom: ${dropIndicatorPosition === "after" /* After */ ? "0" : "unset"};
54
+ `;
55
+ };
56
+ const getCircleStyles = ({ dropIndicatorPosition, vertical }) => ({
57
+ position: "absolute",
58
+ top: vertical || dropIndicatorPosition === "after" /* After */ ? "unset" : "-2px",
59
+ bottom: vertical || dropIndicatorPosition === "before" /* Before */ ? "unset" : "-2px",
60
+ left: !vertical || dropIndicatorPosition === "after" /* After */ ? "unset" : "-2px",
61
+ right: !vertical || dropIndicatorPosition === "before" /* Before */ ? "unset" : "-2px",
62
+ opacity: 1
63
+ });
64
+ const StyledIndicator = import_ds_legacy_system.styled.div`
65
+ position: absolute;
66
+ ${getPositionStyles}
67
+ box-sizing: border-box;
68
+ width: ${(props) => props.vertical ? "2px" : "100%"};
69
+ height: ${(props) => props.vertical ? "100%" : "2px"};
70
+ background-color: ${({ isDropValid, theme }) => isDropValid ? theme.colors.brand[600] : theme.colors.danger[900]};
71
+ `;
72
+ const CircleIndicator = (style, isDropValid) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg", { height: "6", width: "6", style, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("circle", { cx: "3", cy: "3", r: "3", strokeWidth: "0", fill: isDropValid ? "#1E79C2" : "#C64252" }) });
73
+ const DropIndicator = (props) => {
74
+ const { vertical, dropIndicatorPosition, isLast, isDropValid } = props;
75
+ if (dropIndicatorPosition === false || !["after" /* After */, "before" /* Before */].includes(dropIndicatorPosition)) {
76
+ return null;
77
+ }
78
+ const safeDropIndicatorPosition = isLast ? "before" /* Before */ : dropIndicatorPosition;
79
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
80
+ CircleIndicator(getCircleStyles({ ...props, dropIndicatorPosition: safeDropIndicatorPosition }), isDropValid),
81
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
82
+ StyledIndicator,
83
+ {
84
+ vertical,
85
+ dropIndicatorPosition: safeDropIndicatorPosition,
86
+ isDropValid
87
+ }
88
+ )
89
+ ] });
90
+ };
91
+ var DropIndicator_default = DropIndicator;
92
+ //# sourceMappingURL=DropIndicator.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/parts/Dnd/DropIndicator.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import React from 'react';\nimport { styled } from '@elliemae/ds-legacy-system';\n\nenum DropIndicatorPosition {\n None = 'none',\n Before = 'before',\n After = 'after',\n}\n\ninterface DropIndicatorProps {\n vertical: boolean;\n dropIndicatorPosition: false | DropIndicatorPosition;\n isDropValid: boolean;\n isLast?: boolean;\n}\n\nconst getPositionStyles = ({ dropIndicatorPosition, vertical }: DropIndicatorProps) => {\n if (vertical) {\n return `\n left: ${dropIndicatorPosition === DropIndicatorPosition.Before ? '0' : 'unset'};\n right: ${dropIndicatorPosition === DropIndicatorPosition.After ? '0' : 'unset'};\n `;\n }\n return `\n top: ${dropIndicatorPosition === DropIndicatorPosition.Before ? '0' : 'unset'};\n bottom: ${dropIndicatorPosition === DropIndicatorPosition.After ? '0' : 'unset'};\n `;\n};\n\nconst getCircleStyles = ({ dropIndicatorPosition, vertical }: DropIndicatorProps) => ({\n position: 'absolute',\n top: vertical || dropIndicatorPosition === DropIndicatorPosition.After ? 'unset' : '-2px',\n bottom: vertical || dropIndicatorPosition === DropIndicatorPosition.Before ? 'unset' : '-2px',\n left: !vertical || dropIndicatorPosition === DropIndicatorPosition.After ? 'unset' : '-2px',\n right: !vertical || dropIndicatorPosition === DropIndicatorPosition.Before ? 'unset' : '-2px',\n opacity: 1,\n});\n\nconst StyledIndicator = styled.div<DropIndicatorProps>`\n position: absolute;\n ${getPositionStyles}\n box-sizing: border-box;\n width: ${(props) => (props.vertical ? '2px' : '100%')};\n height: ${(props) => (props.vertical ? '100%' : '2px')};\n background-color: ${({ isDropValid, theme }) => (isDropValid ? theme.colors.brand[600] : theme.colors.danger[900])};\n`;\n\nconst CircleIndicator = (style: Record<string, unknown>, isDropValid: boolean) => (\n <svg height=\"6\" width=\"6\" style={style}>\n <circle cx=\"3\" cy=\"3\" r=\"3\" strokeWidth=\"0\" fill={isDropValid ? '#1E79C2' : '#C64252'} />\n </svg>\n);\n\nconst DropIndicator: React.ComponentType<DropIndicatorProps> = (props) => {\n const { vertical, dropIndicatorPosition, isLast, isDropValid } = props;\n if (\n dropIndicatorPosition === false ||\n ![DropIndicatorPosition.After, DropIndicatorPosition.Before].includes(dropIndicatorPosition)\n ) {\n return null;\n }\n\n const safeDropIndicatorPosition = isLast ? DropIndicatorPosition.Before : dropIndicatorPosition;\n return (\n <>\n {CircleIndicator(getCircleStyles({ ...props, dropIndicatorPosition: safeDropIndicatorPosition }), isDropValid)}\n <StyledIndicator\n vertical={vertical}\n dropIndicatorPosition={safeDropIndicatorPosition}\n isDropValid={isDropValid}\n />\n </>\n );\n};\n\nexport { DropIndicator };\nexport default DropIndicator;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADiDnB;AAhDJ,8BAAuB;AAEvB,IAAK,wBAAL,kBAAKA,2BAAL;AACE,EAAAA,uBAAA,UAAO;AACP,EAAAA,uBAAA,YAAS;AACT,EAAAA,uBAAA,WAAQ;AAHL,SAAAA;AAAA,GAAA;AAaL,MAAM,oBAAoB,CAAC,EAAE,uBAAuB,SAAS,MAA0B;AACrF,MAAI,UAAU;AACZ,WAAO;AAAA,cACG,0BAA0B,wBAA+B,MAAM;AAAA,eAC9D,0BAA0B,sBAA8B,MAAM;AAAA;AAAA,EAE3E;AACA,SAAO;AAAA,aACI,0BAA0B,wBAA+B,MAAM;AAAA,gBAC5D,0BAA0B,sBAA8B,MAAM;AAAA;AAE9E;AAEA,MAAM,kBAAkB,CAAC,EAAE,uBAAuB,SAAS,OAA2B;AAAA,EACpF,UAAU;AAAA,EACV,KAAK,YAAY,0BAA0B,sBAA8B,UAAU;AAAA,EACnF,QAAQ,YAAY,0BAA0B,wBAA+B,UAAU;AAAA,EACvF,MAAM,CAAC,YAAY,0BAA0B,sBAA8B,UAAU;AAAA,EACrF,OAAO,CAAC,YAAY,0BAA0B,wBAA+B,UAAU;AAAA,EACvF,SAAS;AACX;AAEA,MAAM,kBAAkB,+BAAO;AAAA;AAAA,IAE3B;AAAA;AAAA,WAEO,CAAC,UAAW,MAAM,WAAW,QAAQ;AAAA,YACpC,CAAC,UAAW,MAAM,WAAW,SAAS;AAAA,sBAC5B,CAAC,EAAE,aAAa,MAAM,MAAO,cAAc,MAAM,OAAO,MAAM,GAAG,IAAI,MAAM,OAAO,OAAO,GAAG;AAAA;AAGlH,MAAM,kBAAkB,CAAC,OAAgC,gBACvD,4CAAC,SAAI,QAAO,KAAI,OAAM,KAAI,OACxB,sDAAC,YAAO,IAAG,KAAI,IAAG,KAAI,GAAE,KAAI,aAAY,KAAI,MAAM,cAAc,YAAY,WAAW,GACzF;AAGF,MAAM,gBAAyD,CAAC,UAAU;AACxE,QAAM,EAAE,UAAU,uBAAuB,QAAQ,YAAY,IAAI;AACjE,MACE,0BAA0B,SAC1B,CAAC,CAAC,qBAA6B,qBAA4B,EAAE,SAAS,qBAAqB,GAC3F;AACA,WAAO;AAAA,EACT;AAEA,QAAM,4BAA4B,SAAS,wBAA+B;AAC1E,SACE,4EACG;AAAA,oBAAgB,gBAAgB,EAAE,GAAG,OAAO,uBAAuB,0BAA0B,CAAC,GAAG,WAAW;AAAA,IAC7G;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,uBAAuB;AAAA,QACvB;AAAA;AAAA,IACF;AAAA,KACF;AAEJ;AAGA,IAAO,wBAAQ;",
6
+ "names": ["DropIndicatorPosition"]
7
+ }
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var Header_exports = {};
30
+ __export(Header_exports, {
31
+ Header: () => Header
32
+ });
33
+ module.exports = __toCommonJS(Header_exports);
34
+ var React = __toESM(require("react"));
35
+ var import_jsx_runtime = require("react/jsx-runtime");
36
+ var import_react = __toESM(require("react"));
37
+ var import_ds_legacy_grid = require("@elliemae/ds-legacy-grid");
38
+ var import_ds_legacy_icons = require("@elliemae/ds-legacy-icons");
39
+ var import_ds_legacy_button_v2 = require("@elliemae/ds-legacy-button-v2");
40
+ var import_ds_legacy_system = require("@elliemae/ds-legacy-system");
41
+ var import_DSShuttleV2Definitions = require("../config/DSShuttleV2Definitions.js");
42
+ var import_useStore = require("../config/useStore/index.js");
43
+ var import_useFocusTracker = require("../config/useFocusTracker/index.js");
44
+ const StyledIconButton = (0, import_ds_legacy_system.styled)(import_ds_legacy_button_v2.DSButtonV2, { name: import_DSShuttleV2Definitions.DSShuttleV2Name, slot: import_DSShuttleV2Definitions.DSShuttleV2Slots.HEADER_SEARCH_ICON })``;
45
+ const Header = import_react.default.memo((panelMetaInfo) => {
46
+ const { isDestinationPanel } = panelMetaInfo;
47
+ const HeaderRenderer = (0, import_useStore.usePropsStore)((state) => isDestinationPanel ? state.DestinationHeader : state.SourceHeader);
48
+ const onSearchBarOpen = (0, import_useStore.usePropsStore)(
49
+ (state) => isDestinationPanel ? state.onDesinationOpenSearchbar : state.onSourceOpenSearchbar
50
+ );
51
+ const isSearchBarOpen = (0, import_useStore.usePropsStore)(
52
+ (state) => isDestinationPanel ? state.destinationShowSearchbar : state.sourceShowSearchbar
53
+ );
54
+ const { trackFocusRegionHeader, trackFocusItemReset, trackFocusActionReset } = (0, import_useFocusTracker.useFocusTracker)();
55
+ const onHeaderFocus = import_react.default.useCallback(() => {
56
+ trackFocusRegionHeader(isDestinationPanel);
57
+ trackFocusItemReset();
58
+ trackFocusActionReset();
59
+ }, [isDestinationPanel, trackFocusActionReset, trackFocusItemReset, trackFocusRegionHeader]);
60
+ const handleFilterClick = import_react.default.useCallback(
61
+ (event) => {
62
+ onSearchBarOpen?.(!isSearchBarOpen, { event });
63
+ },
64
+ [isSearchBarOpen, onSearchBarOpen]
65
+ );
66
+ const cols = import_react.default.useMemo(() => {
67
+ const finalCols = ["1fr"];
68
+ if (onSearchBarOpen)
69
+ finalCols.push("auto");
70
+ return finalCols;
71
+ }, [onSearchBarOpen]);
72
+ const getOwnerProps = (0, import_useStore.usePropsStore)((store) => store.get);
73
+ const getOwnerPropsArguments = (0, import_react.useCallback)(() => panelMetaInfo, [panelMetaInfo]);
74
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_ds_legacy_grid.Grid, { onFocus: onHeaderFocus, cols, children: [
75
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(HeaderRenderer, {}),
76
+ onSearchBarOpen ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_grid.Grid, { alignItems: "center", justifyContent: "center", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
77
+ StyledIconButton,
78
+ {
79
+ "aria-label": `Toggle ${isDestinationPanel ? "destination" : "source"} panel filter bar`,
80
+ buttonType: "icon",
81
+ onClick: handleFilterClick,
82
+ w: 24,
83
+ h: 24,
84
+ getOwnerProps,
85
+ getOwnerPropsArguments,
86
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_icons.Search, { width: "1.077rem", height: "1.077rem" })
87
+ }
88
+ ) }) : null
89
+ ] });
90
+ });
91
+ //# sourceMappingURL=Header.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/parts/Header.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import React, { useCallback } from 'react';\nimport { Grid } from '@elliemae/ds-legacy-grid';\nimport { Search } from '@elliemae/ds-legacy-icons';\nimport {\n DSButtonV2,\n type DSButtonT,\n // BUTTON_SIZES\n} from '@elliemae/ds-legacy-button-v2';\nimport { styled } from '@elliemae/ds-legacy-system';\nimport { DSShuttleV2Name, DSShuttleV2Slots } from '../config/DSShuttleV2Definitions.js';\nimport { usePropsStore } from '../config/useStore/index.js';\nimport { useFocusTracker } from '../config/useFocusTracker/index.js';\nimport { type DSShuttleV2T } from '../react-desc-prop-types.js';\n\nconst StyledIconButton = styled(DSButtonV2, { name: DSShuttleV2Name, slot: DSShuttleV2Slots.HEADER_SEARCH_ICON })``;\nexport const Header = React.memo((panelMetaInfo: DSShuttleV2T.PanelMetaInfo) => {\n const { isDestinationPanel } = panelMetaInfo;\n const HeaderRenderer = usePropsStore((state) => (isDestinationPanel ? state.DestinationHeader : state.SourceHeader));\n const onSearchBarOpen = usePropsStore((state) =>\n isDestinationPanel ? state.onDesinationOpenSearchbar : state.onSourceOpenSearchbar,\n );\n const isSearchBarOpen = usePropsStore((state) =>\n isDestinationPanel ? state.destinationShowSearchbar : state.sourceShowSearchbar,\n );\n const { trackFocusRegionHeader, trackFocusItemReset, trackFocusActionReset } = useFocusTracker();\n const onHeaderFocus = React.useCallback(() => {\n trackFocusRegionHeader(isDestinationPanel);\n trackFocusItemReset();\n trackFocusActionReset();\n }, [isDestinationPanel, trackFocusActionReset, trackFocusItemReset, trackFocusRegionHeader]);\n\n const handleFilterClick = React.useCallback(\n (event: Parameters<Required<DSButtonT.Props>['onClick']>[0]) => {\n onSearchBarOpen?.(!isSearchBarOpen, { event });\n },\n [isSearchBarOpen, onSearchBarOpen],\n );\n\n const cols = React.useMemo(() => {\n const finalCols = ['1fr'];\n if (onSearchBarOpen) finalCols.push('auto');\n return finalCols;\n }, [onSearchBarOpen]);\n\n const getOwnerProps = usePropsStore((store) => store.get);\n const getOwnerPropsArguments = useCallback(() => panelMetaInfo, [panelMetaInfo]);\n\n return (\n <Grid onFocus={onHeaderFocus} cols={cols}>\n <HeaderRenderer />\n {onSearchBarOpen ? (\n <Grid alignItems=\"center\" justifyContent=\"center\">\n <StyledIconButton\n aria-label={`Toggle ${isDestinationPanel ? 'destination' : 'source'} panel filter bar`}\n buttonType=\"icon\"\n onClick={handleFilterClick}\n w={24}\n h={24}\n getOwnerProps={getOwnerProps}\n getOwnerPropsArguments={getOwnerPropsArguments}\n >\n <Search width=\"1.077rem\" height=\"1.077rem\" />\n </StyledIconButton>\n </Grid>\n ) : null}\n </Grid>\n );\n});\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADgDnB;AAhDJ,mBAAmC;AACnC,4BAAqB;AACrB,6BAAuB;AACvB,iCAIO;AACP,8BAAuB;AACvB,oCAAkD;AAClD,sBAA8B;AAC9B,6BAAgC;AAGhC,MAAM,uBAAmB,gCAAO,uCAAY,EAAE,MAAM,+CAAiB,MAAM,+CAAiB,mBAAmB,CAAC;AACzG,MAAM,SAAS,aAAAA,QAAM,KAAK,CAAC,kBAA8C;AAC9E,QAAM,EAAE,mBAAmB,IAAI;AAC/B,QAAM,qBAAiB,+BAAc,CAAC,UAAW,qBAAqB,MAAM,oBAAoB,MAAM,YAAa;AACnH,QAAM,sBAAkB;AAAA,IAAc,CAAC,UACrC,qBAAqB,MAAM,4BAA4B,MAAM;AAAA,EAC/D;AACA,QAAM,sBAAkB;AAAA,IAAc,CAAC,UACrC,qBAAqB,MAAM,2BAA2B,MAAM;AAAA,EAC9D;AACA,QAAM,EAAE,wBAAwB,qBAAqB,sBAAsB,QAAI,wCAAgB;AAC/F,QAAM,gBAAgB,aAAAA,QAAM,YAAY,MAAM;AAC5C,2BAAuB,kBAAkB;AACzC,wBAAoB;AACpB,0BAAsB;AAAA,EACxB,GAAG,CAAC,oBAAoB,uBAAuB,qBAAqB,sBAAsB,CAAC;AAE3F,QAAM,oBAAoB,aAAAA,QAAM;AAAA,IAC9B,CAAC,UAA+D;AAC9D,wBAAkB,CAAC,iBAAiB,EAAE,MAAM,CAAC;AAAA,IAC/C;AAAA,IACA,CAAC,iBAAiB,eAAe;AAAA,EACnC;AAEA,QAAM,OAAO,aAAAA,QAAM,QAAQ,MAAM;AAC/B,UAAM,YAAY,CAAC,KAAK;AACxB,QAAI;AAAiB,gBAAU,KAAK,MAAM;AAC1C,WAAO;AAAA,EACT,GAAG,CAAC,eAAe,CAAC;AAEpB,QAAM,oBAAgB,+BAAc,CAAC,UAAU,MAAM,GAAG;AACxD,QAAM,6BAAyB,0BAAY,MAAM,eAAe,CAAC,aAAa,CAAC;AAE/E,SACE,6CAAC,8BAAK,SAAS,eAAe,MAC5B;AAAA,gDAAC,kBAAe;AAAA,IACf,kBACC,4CAAC,8BAAK,YAAW,UAAS,gBAAe,UACvC;AAAA,MAAC;AAAA;AAAA,QACC,cAAY,UAAU,qBAAqB,gBAAgB;AAAA,QAC3D,YAAW;AAAA,QACX,SAAS;AAAA,QACT,GAAG;AAAA,QACH,GAAG;AAAA,QACH;AAAA,QACA;AAAA,QAEA,sDAAC,iCAAO,OAAM,YAAW,QAAO,YAAW;AAAA;AAAA,IAC7C,GACF,IACE;AAAA,KACN;AAEJ,CAAC;",
6
+ "names": ["React"]
7
+ }
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var withConditionalDnDRowContext_exports = {};
30
+ __export(withConditionalDnDRowContext_exports, {
31
+ withConditionalDnDRowContext: () => withConditionalDnDRowContext
32
+ });
33
+ module.exports = __toCommonJS(withConditionalDnDRowContext_exports);
34
+ var React = __toESM(require("react"));
35
+ var import_jsx_runtime = require("react/jsx-runtime");
36
+ var import_react = __toESM(require("react"));
37
+ var import_ds_legacy_drag_and_drop = require("@elliemae/ds-legacy-drag-and-drop");
38
+ var import_react_dom = require("react-dom");
39
+ var import_useStore = require("../../config/useStore/index.js");
40
+ var import_ItemOverlay = require("../Item/ItemOverlay.js");
41
+ const withConditionalDnDRowContext = (Component) => (props) => {
42
+ const { isDestinationPanel } = props;
43
+ const itemList = (0, import_useStore.usePropsStore)(
44
+ (state) => isDestinationPanel ? state.destinationConfiguredData : state.sourceConfiguredData
45
+ );
46
+ const withDragNDrop = (0, import_useStore.usePropsStore)(
47
+ (state) => isDestinationPanel ? !state.removeDragAndDropFromDestination : state.addDragAndDropFromSource
48
+ );
49
+ const setDndDraggingItemMeta = (0, import_useStore.useInternalStore)((state) => state.setDndDraggingItemMeta);
50
+ const dndDraggingItemMeta = (0, import_useStore.useInternalStore)((state) => state.dndDraggingItemMeta);
51
+ const setOverId = (0, import_useStore.useInternalStore)((state) => state.setOverId);
52
+ const setIsDropValid = (0, import_useStore.useInternalStore)((state) => state.setIsDropValid);
53
+ const setDndDraggingItem = (0, import_useStore.useInternalStore)((state) => state.setDndDraggingItem);
54
+ const setLastActiveId = (0, import_useStore.useInternalStore)((state) => state.setLastActiveId);
55
+ const setDropIndicatorPosition = (0, import_useStore.useInternalStore)((state) => state.setDropIndicatorPosition);
56
+ const onItemsReorder = (0, import_useStore.usePropsStore)(
57
+ (state) => isDestinationPanel ? state.onDestinationReorder : state.onSourceReorder
58
+ );
59
+ const onReorder = (0, import_react.useCallback)(
60
+ (dndActive, targetIndex, metadata) => {
61
+ const { considerExpanding, over: dndOver, ...dndData } = metadata;
62
+ const over2 = dndOver.original.original;
63
+ const active2 = dndActive.original.original;
64
+ const cleanedMetaData = { ...dndData, over: over2, active: active2, targetIndex };
65
+ onItemsReorder(active2, cleanedMetaData);
66
+ },
67
+ [onItemsReorder]
68
+ );
69
+ const treeConfig = import_react.default.useMemo(() => {
70
+ const configuredItemList = itemList.map((item, i) => ({
71
+ // dnd
72
+ uid: item.hydratedId,
73
+ depth: 0,
74
+ parentId: null,
75
+ realIndex: i,
76
+ childrenCount: 0,
77
+ original: item
78
+ }));
79
+ return {
80
+ flattenedItems: configuredItemList,
81
+ isHorizontalDnD: false,
82
+ isExpandable: false,
83
+ onReorder,
84
+ maxDragAndDropLevel: 0,
85
+ getIsDropValid: () => true
86
+ };
87
+ }, [itemList, onReorder]);
88
+ const { dndContextProps, sortableContextProps, activeItem, active, over, dropIndicatorPosition, isDropValid } = (0, import_ds_legacy_drag_and_drop.useTreeDndkitConfig)(treeConfig);
89
+ const containerSortableContextProps = sortableContextProps.root;
90
+ (0, import_react.useEffect)(() => {
91
+ setLastActiveId(active?.id?.toString() ?? "");
92
+ setOverId(over?.id?.toString() ?? "");
93
+ setIsDropValid(isDropValid);
94
+ setDndDraggingItem(activeItem?.original ?? null);
95
+ setDropIndicatorPosition(dropIndicatorPosition);
96
+ if (!active)
97
+ setDndDraggingItemMeta(null);
98
+ }, [
99
+ active,
100
+ activeItem,
101
+ dropIndicatorPosition,
102
+ isDropValid,
103
+ over,
104
+ setDndDraggingItem,
105
+ setDndDraggingItemMeta,
106
+ setDropIndicatorPosition,
107
+ setIsDropValid,
108
+ setLastActiveId,
109
+ setOverId
110
+ ]);
111
+ if (withDragNDrop)
112
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_drag_and_drop.DndContext, { ...dndContextProps, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_ds_legacy_drag_and_drop.SortableContext, { ...containerSortableContextProps, children: [
113
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...props }),
114
+ (0, import_react_dom.createPortal)(
115
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_drag_and_drop.DragOverlay, { style: { width: "auto" }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: dndDraggingItemMeta ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ItemOverlay.ItemOverlay, { ...dndDraggingItemMeta }) : null }) }),
116
+ document.body
117
+ )
118
+ ] }) });
119
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...props });
120
+ };
121
+ //# sourceMappingURL=withConditionalDnDRowContext.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/parts/HoC/withConditionalDnDRowContext.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["/* eslint-disable indent */\n/* eslint-disable max-statements */\n/* eslint-disable max-params */\n/* eslint-disable react/function-component-definition */\nimport React, { useCallback, useEffect } from 'react';\nimport type { DnDKitTree } from '@elliemae/ds-legacy-drag-and-drop';\nimport { DndContext, DragOverlay, SortableContext, useTreeDndkitConfig } from '@elliemae/ds-legacy-drag-and-drop';\nimport { createPortal } from 'react-dom';\nimport { useInternalStore, usePropsStore } from '../../config/useStore/index.js';\nimport type { DSShuttleV2T } from '../../react-desc-prop-types.js';\nimport { ItemOverlay } from '../Item/ItemOverlay.js';\n\n// create a type omittting height from PanelMetaInfo\ntype HoCConfig = DSShuttleV2T.PanelMetaInfo;\ntype InternalHoCStates = {\n activeId?: DSShuttleV2T.HydratedId;\n overId?: DSShuttleV2T.HydratedId;\n isDropValid?: boolean;\n};\ntype ResultComponentProps = DSShuttleV2T.PanelMetaInfo & InternalHoCStates;\n\n// only wraps in \"DnDContext\" and \"DnDTreeContext\" if any Drag and Drop functionality is requested\nexport const withConditionalDnDRowContext: ConfiguredReactFunctionalHOC<HoCConfig, ResultComponentProps> =\n (Component) => (props) => {\n const { isDestinationPanel } = props;\n const itemList = usePropsStore((state) =>\n isDestinationPanel ? state.destinationConfiguredData : state.sourceConfiguredData,\n );\n\n const withDragNDrop = usePropsStore((state) =>\n isDestinationPanel ? !state.removeDragAndDropFromDestination : state.addDragAndDropFromSource,\n );\n\n const setDndDraggingItemMeta = useInternalStore((state) => state.setDndDraggingItemMeta);\n const dndDraggingItemMeta = useInternalStore((state) => state.dndDraggingItemMeta);\n const setOverId = useInternalStore((state) => state.setOverId);\n const setIsDropValid = useInternalStore((state) => state.setIsDropValid);\n const setDndDraggingItem = useInternalStore((state) => state.setDndDraggingItem);\n const setLastActiveId = useInternalStore((state) => state.setLastActiveId);\n const setDropIndicatorPosition = useInternalStore((state) => state.setDropIndicatorPosition);\n\n const onItemsReorder = usePropsStore((state) =>\n isDestinationPanel ? state.onDestinationReorder : state.onSourceReorder,\n );\n\n const onReorder: DnDKitTree.OnReorder<DSShuttleV2T.ConfiguredDatum> = useCallback(\n (dndActive, targetIndex, metadata) => {\n // eslint-disable-next-line no-unused-vars\n const { considerExpanding, over: dndOver, ...dndData } = metadata;\n const over = dndOver.original.original;\n const active = dndActive.original.original;\n const cleanedMetaData = { ...dndData, over, active, targetIndex };\n onItemsReorder(active, cleanedMetaData);\n },\n [onItemsReorder],\n );\n\n const treeConfig = React.useMemo(() => {\n const configuredItemList = itemList.map((item, i) => ({\n // dnd\n uid: item.hydratedId,\n depth: 0,\n parentId: null,\n realIndex: i,\n childrenCount: 0,\n original: item,\n }));\n return {\n flattenedItems: configuredItemList,\n isHorizontalDnD: false,\n isExpandable: false,\n onReorder,\n maxDragAndDropLevel: 0,\n getIsDropValid: () => true,\n };\n }, [itemList, onReorder]);\n\n const { dndContextProps, sortableContextProps, activeItem, active, over, dropIndicatorPosition, isDropValid } =\n useTreeDndkitConfig(treeConfig);\n\n const containerSortableContextProps = sortableContextProps.root;\n\n useEffect(() => {\n setLastActiveId(active?.id?.toString() ?? '');\n setOverId(over?.id?.toString() ?? '');\n setIsDropValid(isDropValid);\n setDndDraggingItem(activeItem?.original ?? null);\n setDropIndicatorPosition(dropIndicatorPosition);\n if (!active) setDndDraggingItemMeta(null);\n }, [\n active,\n activeItem,\n dropIndicatorPosition,\n isDropValid,\n over,\n setDndDraggingItem,\n setDndDraggingItemMeta,\n setDropIndicatorPosition,\n setIsDropValid,\n setLastActiveId,\n setOverId,\n ]);\n\n if (withDragNDrop)\n return (\n <DndContext {...dndContextProps}>\n <SortableContext {...containerSortableContextProps}>\n <Component {...props} />\n {createPortal(\n <DragOverlay style={{ width: 'auto' }}>\n <>{dndDraggingItemMeta ? <ItemOverlay {...dndDraggingItemMeta} /> : null}</>\n </DragOverlay>,\n document.body,\n )}\n </SortableContext>\n </DndContext>\n );\n return <Component {...props} />;\n };\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;AD0Gb;AAtGV,mBAA8C;AAE9C,qCAA8E;AAC9E,uBAA6B;AAC7B,sBAAgD;AAEhD,yBAA4B;AAYrB,MAAM,+BACX,CAAC,cAAc,CAAC,UAAU;AACxB,QAAM,EAAE,mBAAmB,IAAI;AAC/B,QAAM,eAAW;AAAA,IAAc,CAAC,UAC9B,qBAAqB,MAAM,4BAA4B,MAAM;AAAA,EAC/D;AAEA,QAAM,oBAAgB;AAAA,IAAc,CAAC,UACnC,qBAAqB,CAAC,MAAM,mCAAmC,MAAM;AAAA,EACvE;AAEA,QAAM,6BAAyB,kCAAiB,CAAC,UAAU,MAAM,sBAAsB;AACvF,QAAM,0BAAsB,kCAAiB,CAAC,UAAU,MAAM,mBAAmB;AACjF,QAAM,gBAAY,kCAAiB,CAAC,UAAU,MAAM,SAAS;AAC7D,QAAM,qBAAiB,kCAAiB,CAAC,UAAU,MAAM,cAAc;AACvE,QAAM,yBAAqB,kCAAiB,CAAC,UAAU,MAAM,kBAAkB;AAC/E,QAAM,sBAAkB,kCAAiB,CAAC,UAAU,MAAM,eAAe;AACzE,QAAM,+BAA2B,kCAAiB,CAAC,UAAU,MAAM,wBAAwB;AAE3F,QAAM,qBAAiB;AAAA,IAAc,CAAC,UACpC,qBAAqB,MAAM,uBAAuB,MAAM;AAAA,EAC1D;AAEA,QAAM,gBAAgE;AAAA,IACpE,CAAC,WAAW,aAAa,aAAa;AAEpC,YAAM,EAAE,mBAAmB,MAAM,SAAS,GAAG,QAAQ,IAAI;AACzD,YAAMA,QAAO,QAAQ,SAAS;AAC9B,YAAMC,UAAS,UAAU,SAAS;AAClC,YAAM,kBAAkB,EAAE,GAAG,SAAS,MAAAD,OAAM,QAAAC,SAAQ,YAAY;AAChE,qBAAeA,SAAQ,eAAe;AAAA,IACxC;AAAA,IACA,CAAC,cAAc;AAAA,EACjB;AAEA,QAAM,aAAa,aAAAC,QAAM,QAAQ,MAAM;AACrC,UAAM,qBAAqB,SAAS,IAAI,CAAC,MAAM,OAAO;AAAA;AAAA,MAEpD,KAAK,KAAK;AAAA,MACV,OAAO;AAAA,MACP,UAAU;AAAA,MACV,WAAW;AAAA,MACX,eAAe;AAAA,MACf,UAAU;AAAA,IACZ,EAAE;AACF,WAAO;AAAA,MACL,gBAAgB;AAAA,MAChB,iBAAiB;AAAA,MACjB,cAAc;AAAA,MACd;AAAA,MACA,qBAAqB;AAAA,MACrB,gBAAgB,MAAM;AAAA,IACxB;AAAA,EACF,GAAG,CAAC,UAAU,SAAS,CAAC;AAExB,QAAM,EAAE,iBAAiB,sBAAsB,YAAY,QAAQ,MAAM,uBAAuB,YAAY,QAC1G,oDAAoB,UAAU;AAEhC,QAAM,gCAAgC,qBAAqB;AAE3D,8BAAU,MAAM;AACd,oBAAgB,QAAQ,IAAI,SAAS,KAAK,EAAE;AAC5C,cAAU,MAAM,IAAI,SAAS,KAAK,EAAE;AACpC,mBAAe,WAAW;AAC1B,uBAAmB,YAAY,YAAY,IAAI;AAC/C,6BAAyB,qBAAqB;AAC9C,QAAI,CAAC;AAAQ,6BAAuB,IAAI;AAAA,EAC1C,GAAG;AAAA,IACD;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,MAAI;AACF,WACE,4CAAC,6CAAY,GAAG,iBACd,uDAAC,kDAAiB,GAAG,+BACnB;AAAA,kDAAC,aAAW,GAAG,OAAO;AAAA,UACrB;AAAA,QACC,4CAAC,8CAAY,OAAO,EAAE,OAAO,OAAO,GAClC,qFAAG,gCAAsB,4CAAC,kCAAa,GAAG,qBAAqB,IAAK,MAAK,GAC3E;AAAA,QACA,SAAS;AAAA,MACX;AAAA,OACF,GACF;AAEJ,SAAO,4CAAC,aAAW,GAAG,OAAO;AAC/B;",
6
+ "names": ["over", "active", "React"]
7
+ }
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var withConditionalUseSortable_exports = {};
30
+ __export(withConditionalUseSortable_exports, {
31
+ withConditionalUseSortable: () => withConditionalUseSortable
32
+ });
33
+ module.exports = __toCommonJS(withConditionalUseSortable_exports);
34
+ var React = __toESM(require("react"));
35
+ var import_jsx_runtime = require("react/jsx-runtime");
36
+ var import_ds_legacy_drag_and_drop = require("@elliemae/ds-legacy-drag-and-drop");
37
+ const withConditionalUseSortable = (Component) => function(props) {
38
+ const { datumInternalMeta } = props;
39
+ const { hydratedId } = datumInternalMeta;
40
+ const useSortableHelpers = (0, import_ds_legacy_drag_and_drop.useSortable)({ id: hydratedId });
41
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...props, useSortableHelpers });
42
+ };
43
+ //# sourceMappingURL=withConditionalUseSortable.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/parts/HoC/withConditionalUseSortable.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["import React from 'react';\nimport { useSortable } from '@elliemae/ds-legacy-drag-and-drop';\nimport { type DSShuttleV2T } from '../../react-desc-prop-types.js';\n\ntype HoCConfig = DSShuttleV2T.ItemMeta;\ntype ResultComponentProps = DSShuttleV2T.ItemMeta & { useSortableHelpers: ReturnType<typeof useSortable> };\nexport const withConditionalUseSortable: ConfiguredReactFunctionalHOC<HoCConfig, ResultComponentProps> = (Component) =>\n function (props) {\n const { datumInternalMeta } = props;\n const { hydratedId } = datumInternalMeta;\n const useSortableHelpers = useSortable({ id: hydratedId });\n\n return <Component {...props} useSortableHelpers={useSortableHelpers} />;\n };\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADYZ;AAXX,qCAA4B;AAKrB,MAAM,6BAA4F,CAAC,cACxG,SAAU,OAAO;AACf,QAAM,EAAE,kBAAkB,IAAI;AAC9B,QAAM,EAAE,WAAW,IAAI;AACvB,QAAM,yBAAqB,4CAAY,EAAE,IAAI,WAAW,CAAC;AAEzD,SAAO,4CAAC,aAAW,GAAG,OAAO,oBAAwC;AACvE;",
6
+ "names": []
7
+ }
@@ -0,0 +1,222 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var Item_exports = {};
30
+ __export(Item_exports, {
31
+ Item: () => Item,
32
+ ItemSortable: () => ItemSortable,
33
+ default: () => Item_default
34
+ });
35
+ module.exports = __toCommonJS(Item_exports);
36
+ var React = __toESM(require("react"));
37
+ var import_jsx_runtime = require("react/jsx-runtime");
38
+ var import_react = __toESM(require("react"));
39
+ var import_ds_legacy_utilities = require("@elliemae/ds-legacy-utilities");
40
+ var import_ds_legacy_system = require("@elliemae/ds-legacy-system");
41
+ var import_ds_legacy_grid = require("@elliemae/ds-legacy-grid");
42
+ var import_DSShuttleV2Definitions = require("../../config/DSShuttleV2Definitions.js");
43
+ var import_useStore = require("../../config/useStore/index.js");
44
+ var import_ItemSelection = require("./ItemSelection.js");
45
+ var import_ItemActions = require("./ItemActions/index.js");
46
+ var import_ItemMiddleSection = require("./ItemMiddleSection.js");
47
+ var import_useSelectionLogic = require("./useSelectionLogic.js");
48
+ var import_useItemArrowNavigation = require("./useItemArrowNavigation.js");
49
+ var import_constants = require("../../constants/index.js");
50
+ var import_DndHandle = require("../Dnd/DndHandle.js");
51
+ var import_DropIndicator = require("../Dnd/DropIndicator.js");
52
+ var import_withConditionalUseSortable = require("../HoC/withConditionalUseSortable.js");
53
+ var import_useInnerRefHandlers = require("./ItemActions/useInnerRefHandlers.js");
54
+ var import_useItemKeyboardSelection = require("./useItemKeyboardSelection.js");
55
+ var import_useThisItemIsFocused = require("./useThisItemIsFocused.js");
56
+ const cssDisabled = import_ds_legacy_system.css`
57
+ background-color: ${({ theme }) => theme.colors.neutral["100"]};
58
+ color: ${({ theme }) => theme.colors.neutral["300"]};
59
+ .DSShuttleV2-item-action-btn-to-source-icon > svg,
60
+ .DSShuttleV2-item-action-btn-to-destination-icon > svg,
61
+ .DSShuttleV2-item-action-btn-drilldown-icon > svg {
62
+ fill: ${({ theme }) => theme.colors.neutral["300"]};
63
+ }
64
+ `;
65
+ const focusRing = import_ds_legacy_system.css`
66
+ outline: 2px solid ${({ theme }) => theme.colors.brand["700"]};
67
+ outline-offset: -2px;
68
+ `;
69
+ const ItemWrapper = (0, import_ds_legacy_system.styled)(import_ds_legacy_grid.Grid, { name: import_DSShuttleV2Definitions.DSShuttleV2Name, slot: import_DSShuttleV2Definitions.DSShuttleV2Slots.ITEM_WRAPPER })`
70
+ min-height: 2.769rem;
71
+ position: relative;
72
+ background-color: white;
73
+ &:hover {
74
+ background-color: ${({ isDndActive, theme }) => !isDndActive ? theme.colors.brand["200"] : "white"};
75
+ .DSShuttleV2-item-action-btn-to-source-icon > svg,
76
+ .DSShuttleV2-item-action-btn-to-destination-icon > svg,
77
+ .DSShuttleV2-item-action-btn-drilldown-icon > svg {
78
+ fill: brand-700;
79
+ }
80
+ ${({ isDragging }) => isDragging && cssDisabled}
81
+ }
82
+
83
+ ${({ hasFocusRing }) => hasFocusRing && focusRing}
84
+
85
+ border-bottom: 1px solid neutral-100;
86
+
87
+ ${({ isDragging }) => isDragging && cssDisabled}
88
+ `;
89
+ const ItemSelectionWrapper = (0, import_ds_legacy_system.styled)(import_ds_legacy_grid.Grid, { name: import_DSShuttleV2Definitions.DSShuttleV2Name, slot: import_DSShuttleV2Definitions.DSShuttleV2Slots.ITEM_CHECKBOX })`
90
+ height: 100%;
91
+ &:focus {
92
+ outline: none;
93
+ }
94
+ `;
95
+ const useInnerRefHandlers = (itemMeta) => {
96
+ const { datumInternalMeta, isDestinationPanel } = itemMeta;
97
+ const { hydratedId } = datumInternalMeta;
98
+ const setZustandRef = (0, import_useStore.useInternalStore)((state) => state.setZustandRef);
99
+ const setDeferFocusUntilFirstRender = (0, import_useStore.useInternalStore)((state) => state.setDeferFocusUntilFirstRender);
100
+ const getDeferFocusUntilFirstRender = (0, import_useStore.useInternalStore)((state) => state.getDeferFocusUntilFirstRender);
101
+ const thisItemIsFocused = (0, import_useThisItemIsFocused.useThisItemIsFocused)(itemMeta);
102
+ const currRegion = isDestinationPanel ? import_constants.REGIONS_FOCUSES.DESTINATION_PANEL_ITEM : import_constants.REGIONS_FOCUSES.SOURCE_PANEL_ITEM;
103
+ const currItemId = hydratedId;
104
+ const innerRefHandlerParentItem = import_react.default.useCallback(
105
+ (node) => {
106
+ setZustandRef([currRegion, currItemId, "parent"], node);
107
+ if (getDeferFocusUntilFirstRender() && thisItemIsFocused && node) {
108
+ node?.focus();
109
+ setDeferFocusUntilFirstRender(false);
110
+ }
111
+ },
112
+ [
113
+ setZustandRef,
114
+ currRegion,
115
+ currItemId,
116
+ getDeferFocusUntilFirstRender,
117
+ thisItemIsFocused,
118
+ setDeferFocusUntilFirstRender
119
+ ]
120
+ );
121
+ return import_react.default.useMemo(() => ({ innerRefHandlerParentItem }), [innerRefHandlerParentItem]);
122
+ };
123
+ const Item = import_react.default.memo((itemMeta) => {
124
+ const { datumInternalMeta, withDragNDrop, useSortableHelpers, hasMultipleSelection } = itemMeta;
125
+ const { isSelected, hydratedId, softDeleted } = datumInternalMeta;
126
+ const cols = (0, import_react.useMemo)(() => {
127
+ if (withDragNDrop)
128
+ return ["5px", "auto", "1fr", "auto"];
129
+ return ["5px", "1fr", "auto"];
130
+ }, [withDragNDrop]);
131
+ const setDndDraggingItemMeta = (0, import_useStore.useInternalStore)((state) => state.setDndDraggingItemMeta);
132
+ const getIsDragAndDropHappening = (0, import_useStore.useInternalStore)((state) => state.getIsDragAndDropHappening);
133
+ const isDraggingThisItem = (0, import_useStore.useInternalStore)((state) => state.dndDraggingItem?.hydratedId === hydratedId);
134
+ import_react.default.useEffect(() => {
135
+ if (isDraggingThisItem) {
136
+ setDndDraggingItemMeta((prevItemMeta) => {
137
+ if (prevItemMeta?.datumInternalMeta.hydratedId === hydratedId)
138
+ return prevItemMeta;
139
+ return itemMeta;
140
+ });
141
+ }
142
+ }, [hydratedId, isDraggingThisItem, itemMeta, setDndDraggingItemMeta]);
143
+ const { selectItem, onShiftMouseDownPreventTextSelection } = (0, import_useSelectionLogic.useSelectionLogic)(itemMeta);
144
+ const { onItemContainerKeyDown } = (0, import_useItemArrowNavigation.useItemArrowNavigation)(itemMeta);
145
+ const { onItemKeyDownSelection } = (0, import_useItemKeyboardSelection.useItemKeyboardSelection)(itemMeta);
146
+ const handleItemKeyDown = import_react.default.useCallback(
147
+ (event) => {
148
+ onItemKeyDownSelection(event);
149
+ onItemContainerKeyDown(event);
150
+ },
151
+ [onItemKeyDownSelection, onItemContainerKeyDown]
152
+ );
153
+ const { innerRefHandlerParentItem } = useInnerRefHandlers(itemMeta);
154
+ const { innerRefHandlerDnd } = (0, import_useInnerRefHandlers.useInnerRefHandlers)(itemMeta);
155
+ const overId = (0, import_useStore.useInternalStore)((state) => state.overId);
156
+ const isDropValid = (0, import_useStore.useInternalStore)((state) => state.isDropValid);
157
+ const dropIndicatorPosition = (0, import_useStore.useInternalStore)((state) => state.dropIndicatorPosition);
158
+ const showDropIndicatorPosition = hydratedId === overId && dropIndicatorPosition;
159
+ const sortableRef = useSortableHelpers?.setNodeRef ?? (() => {
160
+ });
161
+ const thisItemIsFocused = (0, import_useThisItemIsFocused.useThisItemIsFocused)(itemMeta);
162
+ const config = import_react.default.useMemo(() => ({ hasFocus: thisItemIsFocused }), [thisItemIsFocused]);
163
+ const tooltipHelpers = (0, import_ds_legacy_utilities.useHeadlessTooltip)(config);
164
+ const idItem = (0, import_react.useMemo)(() => `${hydratedId}-wrapper${softDeleted ? "-soft-deleted" : ""}`, [hydratedId, softDeleted]);
165
+ const getOwnerProps = (0, import_useStore.usePropsStore)((store) => store.get);
166
+ const getOwnerPropsArguments = import_react.default.useCallback(() => itemMeta, [itemMeta]);
167
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
168
+ ItemWrapper,
169
+ {
170
+ isDragging: isDraggingThisItem,
171
+ isDndActive: getIsDragAndDropHappening(),
172
+ cols,
173
+ alignItems: "center",
174
+ onClick: selectItem,
175
+ ref: sortableRef,
176
+ onKeyDown: handleItemKeyDown,
177
+ onMouseDown: onShiftMouseDownPreventTextSelection,
178
+ onMouseEnter: tooltipHelpers.onMouseEnter,
179
+ onMouseLeave: tooltipHelpers.onMouseLeave,
180
+ onPointerEnter: tooltipHelpers.onMouseEnter,
181
+ onPointerLeave: tooltipHelpers.onMouseLeave,
182
+ hasFocusRing: thisItemIsFocused,
183
+ tabIndex: -1,
184
+ getOwnerProps,
185
+ getOwnerPropsArguments,
186
+ children: [
187
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
188
+ ItemSelectionWrapper,
189
+ {
190
+ role: "checkbox",
191
+ "aria-checked": isSelected,
192
+ onFocus: tooltipHelpers.onFocus,
193
+ onBlur: tooltipHelpers.onBlur,
194
+ "aria-labelledby": `${hydratedId}-text-section${softDeleted ? "-soft-deleted" : ""}`,
195
+ id: idItem,
196
+ ref: innerRefHandlerParentItem,
197
+ getOwnerProps,
198
+ getOwnerPropsArguments,
199
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ItemSelection.ItemSelection, { ...itemMeta })
200
+ }
201
+ ),
202
+ withDragNDrop && useSortableHelpers ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
203
+ import_DndHandle.DragHandle,
204
+ {
205
+ id: hydratedId,
206
+ useSortableHelpers,
207
+ isDndActive: getIsDragAndDropHappening(),
208
+ isDragging: isDraggingThisItem,
209
+ innerRef: innerRefHandlerDnd,
210
+ disabled: hasMultipleSelection
211
+ }
212
+ ) : null,
213
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ItemMiddleSection.ItemMiddleSection, { ...itemMeta, tooltipHelpers }),
214
+ !hasMultipleSelection ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ItemActions.ItemActions, { ...itemMeta }) : null,
215
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DropIndicator.DropIndicator, { vertical: false, dropIndicatorPosition: showDropIndicatorPosition, isDropValid })
216
+ ]
217
+ }
218
+ );
219
+ });
220
+ const ItemSortable = (0, import_withConditionalUseSortable.withConditionalUseSortable)(Item);
221
+ var Item_default = ItemSortable;
222
+ //# sourceMappingURL=Item.js.map