@elliemae/ds-shared 3.0.0-next.2 → 3.0.0-next.3

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 (312) hide show
  1. package/dist/cjs/Animations/BaseAnimation.js +56 -0
  2. package/dist/cjs/Animations/BaseAnimation.js.map +7 -0
  3. package/dist/cjs/Animations/Grow.js +55 -0
  4. package/dist/cjs/Animations/Grow.js.map +7 -0
  5. package/dist/cjs/Animations/GrowRight.js +64 -0
  6. package/dist/cjs/Animations/GrowRight.js.map +7 -0
  7. package/dist/cjs/Animations/GrowVertical.js +47 -0
  8. package/dist/cjs/Animations/GrowVertical.js.map +7 -0
  9. package/dist/cjs/CheckableGroup.js +92 -0
  10. package/dist/cjs/CheckableGroup.js.map +7 -0
  11. package/dist/cjs/DeferRenderAfterComputation.js +52 -0
  12. package/dist/cjs/DeferRenderAfterComputation.js.map +7 -0
  13. package/dist/cjs/FocusGroup/FocusGrid.js +193 -0
  14. package/dist/cjs/FocusGroup/FocusGrid.js.map +7 -0
  15. package/dist/cjs/FocusGroup/FocusGroup.js +262 -0
  16. package/dist/cjs/FocusGroup/FocusGroup.js.map +7 -0
  17. package/dist/cjs/FocusGroup/FocusGroupContext.js +38 -0
  18. package/dist/cjs/FocusGroup/FocusGroupContext.js.map +7 -0
  19. package/dist/cjs/FocusGroup/FocusGroupManager.js +126 -0
  20. package/dist/cjs/FocusGroup/FocusGroupManager.js.map +7 -0
  21. package/dist/cjs/FocusGroup/focusGroupManagerHoc.js +82 -0
  22. package/dist/cjs/FocusGroup/focusGroupManagerHoc.js.map +7 -0
  23. package/dist/cjs/FocusGroup/index.js +47 -0
  24. package/dist/cjs/FocusGroup/index.js.map +7 -0
  25. package/dist/cjs/FocusGroup/useFocusGroupItem.js +81 -0
  26. package/dist/cjs/FocusGroup/useFocusGroupItem.js.map +7 -0
  27. package/dist/cjs/FocusGroup/utils/getNextCellPosition.js +80 -0
  28. package/dist/cjs/FocusGroup/utils/getNextCellPosition.js.map +7 -0
  29. package/dist/cjs/GroupContext/Group.js +115 -0
  30. package/dist/cjs/GroupContext/Group.js.map +7 -0
  31. package/dist/cjs/GroupContext/GroupContext.js +36 -0
  32. package/dist/cjs/GroupContext/GroupContext.js.map +7 -0
  33. package/dist/cjs/GroupContext/GroupItem.js +40 -0
  34. package/dist/cjs/GroupContext/GroupItem.js.map +7 -0
  35. package/dist/cjs/GroupContext/index.js +39 -0
  36. package/dist/cjs/GroupContext/index.js.map +7 -0
  37. package/dist/cjs/ScrollSync/ScrollSync.js +138 -0
  38. package/dist/cjs/ScrollSync/ScrollSync.js.map +7 -0
  39. package/dist/cjs/ScrollSync/ScrollSyncPane.js +89 -0
  40. package/dist/cjs/ScrollSync/ScrollSyncPane.js.map +7 -0
  41. package/dist/cjs/ScrollSync/ScrollSyncProvider.js +120 -0
  42. package/dist/cjs/ScrollSync/ScrollSyncProvider.js.map +7 -0
  43. package/dist/cjs/ScrollSync/index.js +37 -0
  44. package/dist/cjs/ScrollSync/index.js.map +7 -0
  45. package/dist/cjs/ScrollSync/useScrollSync.js +41 -0
  46. package/dist/cjs/ScrollSync/useScrollSync.js.map +7 -0
  47. package/dist/cjs/constants.js +70 -0
  48. package/dist/cjs/constants.js.map +7 -0
  49. package/dist/cjs/createDataInstance/createInstancePlugin.js +62 -0
  50. package/dist/cjs/createDataInstance/createInstancePlugin.js.map +7 -0
  51. package/dist/cjs/createDataInstance/createInstanceRef.js +124 -0
  52. package/dist/cjs/createDataInstance/createInstanceRef.js.map +7 -0
  53. package/dist/cjs/createDataInstance/utils.js +104 -0
  54. package/dist/cjs/createDataInstance/utils.js.map +7 -0
  55. package/dist/cjs/defer-render-hoc/index.js +68 -0
  56. package/dist/cjs/defer-render-hoc/index.js.map +7 -0
  57. package/dist/cjs/dimsum.config.js +39 -0
  58. package/dist/cjs/dimsum.config.js.map +7 -0
  59. package/dist/cjs/index.js +40 -0
  60. package/dist/cjs/index.js.map +7 -0
  61. package/dist/cjs/prop-types.js +116 -0
  62. package/dist/cjs/prop-types.js.map +7 -0
  63. package/dist/cjs/react-spring/index.js +28 -0
  64. package/dist/cjs/react-spring/index.js.map +7 -0
  65. package/dist/cjs/react-spring/renderprops.js +28 -0
  66. package/dist/cjs/react-spring/renderprops.js.map +7 -0
  67. package/dist/cjs/toolbar/ToolbarProvider.js +126 -0
  68. package/dist/cjs/toolbar/ToolbarProvider.js.map +7 -0
  69. package/dist/cjs/useDataGrid/VolatileRowsListener.js +49 -0
  70. package/dist/cjs/useDataGrid/VolatileRowsListener.js.map +7 -0
  71. package/dist/cjs/useDataGrid/index.js +36 -0
  72. package/dist/cjs/useDataGrid/index.js.map +7 -0
  73. package/dist/cjs/useDataGrid/initColumnDefinition.js +147 -0
  74. package/dist/cjs/useDataGrid/initColumnDefinition.js.map +7 -0
  75. package/dist/cjs/useDataGrid/useDataGrid.js +216 -0
  76. package/dist/cjs/useDataGrid/useDataGrid.js.map +7 -0
  77. package/dist/cjs/useDataList/index.js +36 -0
  78. package/dist/cjs/useDataList/index.js.map +7 -0
  79. package/dist/cjs/useDataList/recordIterator.js +55 -0
  80. package/dist/cjs/useDataList/recordIterator.js.map +7 -0
  81. package/dist/cjs/useDataList/useDataList.js +126 -0
  82. package/dist/cjs/useDataList/useDataList.js.map +7 -0
  83. package/dist/cjs/utils.js +123 -0
  84. package/dist/cjs/utils.js.map +7 -0
  85. package/dist/cjs/virtualization/AutoHeightList.js +106 -0
  86. package/dist/cjs/virtualization/AutoHeightList.js.map +7 -0
  87. package/dist/cjs/virtualization/FluidHeightList.js +74 -0
  88. package/dist/cjs/virtualization/FluidHeightList.js.map +7 -0
  89. package/dist/cjs/virtualization/index.js +50 -0
  90. package/dist/cjs/virtualization/index.js.map +7 -0
  91. package/dist/esm/Animations/BaseAnimation.js +27 -0
  92. package/dist/esm/Animations/BaseAnimation.js.map +7 -0
  93. package/dist/esm/Animations/Grow.js +26 -0
  94. package/dist/esm/Animations/Grow.js.map +7 -0
  95. package/dist/esm/Animations/GrowRight.js +35 -0
  96. package/dist/esm/Animations/GrowRight.js.map +7 -0
  97. package/dist/esm/Animations/GrowVertical.js +29 -0
  98. package/dist/esm/Animations/GrowVertical.js.map +7 -0
  99. package/dist/esm/CheckableGroup.js +65 -0
  100. package/dist/esm/CheckableGroup.js.map +7 -0
  101. package/dist/esm/DeferRenderAfterComputation.js +23 -0
  102. package/dist/esm/DeferRenderAfterComputation.js.map +7 -0
  103. package/dist/esm/FocusGroup/FocusGrid.js +166 -0
  104. package/dist/esm/FocusGroup/FocusGrid.js.map +7 -0
  105. package/{esm → dist/esm}/FocusGroup/FocusGroup.js +70 -136
  106. package/dist/esm/FocusGroup/FocusGroup.js.map +7 -0
  107. package/dist/esm/FocusGroup/FocusGroupContext.js +9 -0
  108. package/dist/esm/FocusGroup/FocusGroupContext.js.map +7 -0
  109. package/{esm → dist/esm}/FocusGroup/FocusGroupManager.js +24 -38
  110. package/dist/esm/FocusGroup/FocusGroupManager.js.map +7 -0
  111. package/dist/esm/FocusGroup/focusGroupManagerHoc.js +55 -0
  112. package/dist/esm/FocusGroup/focusGroupManagerHoc.js.map +7 -0
  113. package/dist/esm/FocusGroup/index.js +18 -0
  114. package/dist/esm/FocusGroup/index.js.map +7 -0
  115. package/dist/esm/FocusGroup/useFocusGroupItem.js +53 -0
  116. package/dist/esm/FocusGroup/useFocusGroupItem.js.map +7 -0
  117. package/{esm → dist/esm}/FocusGroup/utils/getNextCellPosition.js +18 -25
  118. package/dist/esm/FocusGroup/utils/getNextCellPosition.js.map +7 -0
  119. package/dist/esm/GroupContext/Group.js +86 -0
  120. package/dist/esm/GroupContext/Group.js.map +7 -0
  121. package/dist/esm/GroupContext/GroupContext.js +7 -0
  122. package/dist/esm/GroupContext/GroupContext.js.map +7 -0
  123. package/dist/esm/GroupContext/GroupItem.js +11 -0
  124. package/dist/esm/GroupContext/GroupItem.js.map +7 -0
  125. package/dist/esm/GroupContext/index.js +10 -0
  126. package/dist/esm/GroupContext/index.js.map +7 -0
  127. package/{esm → dist/esm}/ScrollSync/ScrollSync.js +30 -64
  128. package/dist/esm/ScrollSync/ScrollSync.js.map +7 -0
  129. package/dist/esm/ScrollSync/ScrollSyncPane.js +62 -0
  130. package/dist/esm/ScrollSync/ScrollSyncPane.js.map +7 -0
  131. package/dist/esm/ScrollSync/ScrollSyncProvider.js +91 -0
  132. package/dist/esm/ScrollSync/ScrollSyncProvider.js.map +7 -0
  133. package/dist/esm/ScrollSync/index.js +8 -0
  134. package/dist/esm/ScrollSync/index.js.map +7 -0
  135. package/dist/esm/ScrollSync/useScrollSync.js +12 -0
  136. package/dist/esm/ScrollSync/useScrollSync.js.map +7 -0
  137. package/dist/esm/constants.js +41 -0
  138. package/dist/esm/constants.js.map +7 -0
  139. package/dist/esm/createDataInstance/createInstancePlugin.js +35 -0
  140. package/dist/esm/createDataInstance/createInstancePlugin.js.map +7 -0
  141. package/dist/esm/createDataInstance/createInstanceRef.js +101 -0
  142. package/dist/esm/createDataInstance/createInstanceRef.js.map +7 -0
  143. package/dist/esm/createDataInstance/utils.js +77 -0
  144. package/dist/esm/createDataInstance/utils.js.map +7 -0
  145. package/dist/esm/defer-render-hoc/index.js +41 -0
  146. package/dist/esm/defer-render-hoc/index.js.map +7 -0
  147. package/dist/esm/dimsum.config.js +10 -0
  148. package/dist/esm/dimsum.config.js.map +7 -0
  149. package/dist/esm/index.js +11 -0
  150. package/dist/esm/index.js.map +7 -0
  151. package/dist/esm/prop-types.js +87 -0
  152. package/dist/esm/prop-types.js.map +7 -0
  153. package/dist/esm/react-spring/index.js +3 -0
  154. package/dist/esm/react-spring/index.js.map +7 -0
  155. package/dist/esm/react-spring/renderprops.js +3 -0
  156. package/dist/esm/react-spring/renderprops.js.map +7 -0
  157. package/dist/esm/toolbar/ToolbarProvider.js +99 -0
  158. package/dist/esm/toolbar/ToolbarProvider.js.map +7 -0
  159. package/dist/esm/useDataGrid/VolatileRowsListener.js +20 -0
  160. package/dist/esm/useDataGrid/VolatileRowsListener.js.map +7 -0
  161. package/dist/esm/useDataGrid/index.js +7 -0
  162. package/dist/esm/useDataGrid/index.js.map +7 -0
  163. package/dist/esm/useDataGrid/initColumnDefinition.js +126 -0
  164. package/dist/esm/useDataGrid/initColumnDefinition.js.map +7 -0
  165. package/dist/esm/useDataGrid/useDataGrid.js +201 -0
  166. package/dist/esm/useDataGrid/useDataGrid.js.map +7 -0
  167. package/dist/esm/useDataList/index.js +7 -0
  168. package/dist/esm/useDataList/index.js.map +7 -0
  169. package/dist/esm/useDataList/recordIterator.js +26 -0
  170. package/dist/esm/useDataList/recordIterator.js.map +7 -0
  171. package/dist/esm/useDataList/useDataList.js +102 -0
  172. package/dist/esm/useDataList/useDataList.js.map +7 -0
  173. package/dist/esm/utils.js +96 -0
  174. package/dist/esm/utils.js.map +7 -0
  175. package/dist/esm/virtualization/AutoHeightList.js +79 -0
  176. package/dist/esm/virtualization/AutoHeightList.js.map +7 -0
  177. package/dist/esm/virtualization/FluidHeightList.js +47 -0
  178. package/dist/esm/virtualization/FluidHeightList.js.map +7 -0
  179. package/dist/esm/virtualization/index.js +21 -0
  180. package/dist/esm/virtualization/index.js.map +7 -0
  181. package/package.json +116 -107
  182. package/cjs/Animations/BaseAnimation.js +0 -36
  183. package/cjs/Animations/Grow.js +0 -42
  184. package/cjs/Animations/GrowRight.js +0 -42
  185. package/cjs/Animations/GrowVertical.js +0 -7
  186. package/cjs/CheckableGroup.js +0 -74
  187. package/cjs/DeferRenderAfterComputation.js +0 -28
  188. package/cjs/FocusGroup/FocusGrid.js +0 -215
  189. package/cjs/FocusGroup/FocusGroup.js +0 -308
  190. package/cjs/FocusGroup/FocusGroupContext.js +0 -11
  191. package/cjs/FocusGroup/FocusGroupManager.js +0 -117
  192. package/cjs/FocusGroup/focusGroupManagerHoc.js +0 -44
  193. package/cjs/FocusGroup/index.js +0 -21
  194. package/cjs/FocusGroup/useFocusGroupItem.js +0 -59
  195. package/cjs/FocusGroup/utils/getNextCellPosition.js +0 -60
  196. package/cjs/GroupContext/Group.js +0 -124
  197. package/cjs/GroupContext/GroupContext.js +0 -13
  198. package/cjs/GroupContext/GroupItem.js +0 -22
  199. package/cjs/GroupContext/index.js +0 -13
  200. package/cjs/ScrollSync/ScrollSync.js +0 -153
  201. package/cjs/ScrollSync/ScrollSyncPane.js +0 -81
  202. package/cjs/ScrollSync/ScrollSyncProvider.js +0 -67
  203. package/cjs/ScrollSync/index.js +0 -11
  204. package/cjs/ScrollSync/useScrollSync.js +0 -10
  205. package/cjs/constants.js +0 -51
  206. package/cjs/createDataInstance/createInstancePlugin.js +0 -36
  207. package/cjs/createDataInstance/createInstanceRef.js +0 -97
  208. package/cjs/createDataInstance/utils.js +0 -123
  209. package/cjs/defer-render-hoc/index.js +0 -49
  210. package/cjs/dimsum.config.js +0 -7
  211. package/cjs/index.js +0 -17
  212. package/cjs/prop-types.js +0 -59
  213. package/cjs/react-spring/index.js +0 -14
  214. package/cjs/react-spring/renderprops.js +0 -14
  215. package/cjs/toolbar/ToolbarProvider.js +0 -123
  216. package/cjs/useDataGrid/VolatileRowsListener.js +0 -24
  217. package/cjs/useDataGrid/index.js +0 -7
  218. package/cjs/useDataGrid/initColumnDefinition.js +0 -146
  219. package/cjs/useDataGrid/useDataGrid.js +0 -220
  220. package/cjs/useDataList/index.js +0 -7
  221. package/cjs/useDataList/recordIterator.js +0 -31
  222. package/cjs/useDataList/useDataList.js +0 -102
  223. package/cjs/utils.js +0 -116
  224. package/cjs/virtualization/AutoHeightList.js +0 -61
  225. package/cjs/virtualization/FluidHeightList.js +0 -49
  226. package/cjs/virtualization/index.js +0 -22
  227. package/esm/Animations/BaseAnimation.js +0 -30
  228. package/esm/Animations/Grow.js +0 -36
  229. package/esm/Animations/GrowRight.js +0 -36
  230. package/esm/Animations/GrowVertical.js +0 -4
  231. package/esm/CheckableGroup.js +0 -64
  232. package/esm/DeferRenderAfterComputation.js +0 -22
  233. package/esm/FocusGroup/FocusGrid.js +0 -204
  234. package/esm/FocusGroup/FocusGroupContext.js +0 -5
  235. package/esm/FocusGroup/focusGroupManagerHoc.js +0 -37
  236. package/esm/FocusGroup/index.js +0 -6
  237. package/esm/FocusGroup/useFocusGroupItem.js +0 -50
  238. package/esm/GroupContext/Group.js +0 -118
  239. package/esm/GroupContext/GroupContext.js +0 -5
  240. package/esm/GroupContext/GroupItem.js +0 -16
  241. package/esm/GroupContext/index.js +0 -3
  242. package/esm/ScrollSync/ScrollSyncPane.js +0 -74
  243. package/esm/ScrollSync/ScrollSyncProvider.js +0 -59
  244. package/esm/ScrollSync/index.js +0 -2
  245. package/esm/ScrollSync/useScrollSync.js +0 -8
  246. package/esm/constants.js +0 -32
  247. package/esm/createDataInstance/createInstancePlugin.js +0 -30
  248. package/esm/createDataInstance/createInstanceRef.js +0 -90
  249. package/esm/createDataInstance/utils.js +0 -107
  250. package/esm/defer-render-hoc/index.js +0 -41
  251. package/esm/dimsum.config.js +0 -5
  252. package/esm/index.js +0 -5
  253. package/esm/prop-types.js +0 -43
  254. package/esm/react-spring/index.js +0 -1
  255. package/esm/react-spring/renderprops.js +0 -1
  256. package/esm/toolbar/ToolbarProvider.js +0 -111
  257. package/esm/useDataGrid/VolatileRowsListener.js +0 -22
  258. package/esm/useDataGrid/index.js +0 -1
  259. package/esm/useDataGrid/initColumnDefinition.js +0 -134
  260. package/esm/useDataGrid/useDataGrid.js +0 -194
  261. package/esm/useDataList/index.js +0 -1
  262. package/esm/useDataList/recordIterator.js +0 -27
  263. package/esm/useDataList/useDataList.js +0 -90
  264. package/esm/utils.js +0 -95
  265. package/esm/virtualization/AutoHeightList.js +0 -52
  266. package/esm/virtualization/FluidHeightList.js +0 -38
  267. package/esm/virtualization/index.js +0 -18
  268. package/types/Animations/BaseAnimation.d.ts +0 -12
  269. package/types/Animations/Grow.d.ts +0 -11
  270. package/types/Animations/GrowRight.d.ts +0 -11
  271. package/types/Animations/GrowVertical.d.ts +0 -1
  272. package/types/CheckableGroup.d.ts +0 -20
  273. package/types/DeferRenderAfterComputation.d.ts +0 -6
  274. package/types/FocusGroup/FocusGrid.d.ts +0 -10
  275. package/types/FocusGroup/FocusGroup.d.ts +0 -36
  276. package/types/FocusGroup/FocusGroupContext.d.ts +0 -3
  277. package/types/FocusGroup/FocusGroupManager.d.ts +0 -24
  278. package/types/FocusGroup/focusGroupManagerHoc.d.ts +0 -7
  279. package/types/FocusGroup/index.d.ts +0 -6
  280. package/types/FocusGroup/useFocusGroupItem.d.ts +0 -2
  281. package/types/FocusGroup/utils/getNextCellPosition.d.ts +0 -12
  282. package/types/GroupContext/Group.d.ts +0 -14
  283. package/types/GroupContext/GroupContext.d.ts +0 -2
  284. package/types/GroupContext/GroupItem.d.ts +0 -5
  285. package/types/GroupContext/index.d.ts +0 -3
  286. package/types/ScrollSync/ScrollSync.d.ts +0 -21
  287. package/types/ScrollSync/ScrollSyncPane.d.ts +0 -3
  288. package/types/ScrollSync/ScrollSyncProvider.d.ts +0 -12
  289. package/types/ScrollSync/index.d.ts +0 -2
  290. package/types/ScrollSync/useScrollSync.d.ts +0 -6
  291. package/types/constants.d.ts +0 -30
  292. package/types/createDataInstance/createInstancePlugin.d.ts +0 -1
  293. package/types/createDataInstance/createInstanceRef.d.ts +0 -12
  294. package/types/createDataInstance/tests/createInstanceRef.test.d.ts +0 -0
  295. package/types/createDataInstance/utils.d.ts +0 -9
  296. package/types/dimsum.config.d.ts +0 -4
  297. package/types/index.d.ts +0 -2
  298. package/types/prop-types.d.ts +0 -41
  299. package/types/react-spring/index.d.ts +0 -1
  300. package/types/react-spring/renderprops.d.ts +0 -1
  301. package/types/toolbar/ToolbarProvider.d.ts +0 -10
  302. package/types/useDataGrid/VolatileRowsListener.d.ts +0 -5
  303. package/types/useDataGrid/index.d.ts +0 -1
  304. package/types/useDataGrid/initColumnDefinition.d.ts +0 -5
  305. package/types/useDataGrid/useDataGrid.d.ts +0 -8
  306. package/types/useDataList/index.d.ts +0 -1
  307. package/types/useDataList/recordIterator.d.ts +0 -1
  308. package/types/useDataList/useDataList.d.ts +0 -13
  309. package/types/utils.d.ts +0 -22
  310. package/types/virtualization/AutoHeightList.d.ts +0 -2
  311. package/types/virtualization/FluidHeightList.d.ts +0 -2
  312. package/types/virtualization/index.d.ts +0 -9
@@ -0,0 +1,53 @@
1
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
2
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
3
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
4
+ var __objRest = (source, exclude) => {
5
+ var target = {};
6
+ for (var prop in source)
7
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
8
+ target[prop] = source[prop];
9
+ if (source != null && __getOwnPropSymbols)
10
+ for (var prop of __getOwnPropSymbols(source)) {
11
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
12
+ target[prop] = source[prop];
13
+ }
14
+ return target;
15
+ };
16
+ import * as React from "react";
17
+ import { useContext, useEffect } from "react";
18
+ import { FocusGroupContext } from "./FocusGroupContext";
19
+ function useFocusGroupItem(ref = {}, props) {
20
+ const _a = useContext(FocusGroupContext) || {}, { register, unregister } = _a, otherActions = __objRest(_a, ["register", "unregister"]);
21
+ useEffect(() => {
22
+ if (ref.current && register)
23
+ register(ref.current, props);
24
+ return () => {
25
+ if (ref.current && unregister)
26
+ unregister(ref.current);
27
+ };
28
+ });
29
+ if (!register)
30
+ return {};
31
+ return otherActions;
32
+ }
33
+ const useFocusGroupWithState = (ref = {}, props) => {
34
+ const _a = useContext(FocusGroupContext) || {}, { register, unregister } = _a, otherActions = __objRest(_a, ["register", "unregister"]);
35
+ useEffect(() => {
36
+ if (ref && register)
37
+ register(ref, props);
38
+ return () => {
39
+ if (ref && unregister)
40
+ unregister(ref);
41
+ };
42
+ }, [ref]);
43
+ if (!register)
44
+ return {};
45
+ return otherActions;
46
+ };
47
+ var useFocusGroupItem_default = useFocusGroupItem;
48
+ export {
49
+ useFocusGroupItem_default as default,
50
+ useFocusGroupItem,
51
+ useFocusGroupWithState
52
+ };
53
+ //# sourceMappingURL=useFocusGroupItem.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/FocusGroup/useFocusGroupItem.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useContext, useEffect } from 'react';\nimport { FocusGroupContext } from './FocusGroupContext';\n\nfunction useFocusGroupItem(ref = {}, props) {\n const { register, unregister, ...otherActions } =\n useContext(FocusGroupContext) || {};\n\n useEffect(() => {\n if (ref.current && register) register(ref.current, props);\n return () => {\n if (ref.current && unregister) unregister(ref.current);\n };\n });\n\n // if the focus item is not wrapped with the focus provider then return null\n if (!register) return {};\n return otherActions;\n}\n\nexport const useFocusGroupWithState = (ref = {}, props) => {\n const { register, unregister, ...otherActions } =\n useContext(FocusGroupContext) || {};\n\n useEffect(() => {\n if (ref && register) register(ref, props);\n return () => {\n if (ref && unregister) unregister(ref);\n };\n }, [ref]);\n\n // if the focus item is not wrapped with the focus provider then return null\n if (!register) return {};\n return otherActions;\n};\n\nexport { useFocusGroupItem };\nexport default useFocusGroupItem;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;AAAA;ACAA;AACA;AAEA,2BAA2B,MAAM,IAAI,OAAO;AAC1C,QACE,gBAAW,sBAAsB,IAD3B,YAAU,eAChB,IAD+B,yBAC/B,IAD+B,CAAzB,YAAU;AAGlB,YAAU,MAAM;AACd,QAAI,IAAI,WAAW;AAAU,eAAS,IAAI,SAAS;AACnD,WAAO,MAAM;AACX,UAAI,IAAI,WAAW;AAAY,mBAAW,IAAI;AAAA;AAAA;AAKlD,MAAI,CAAC;AAAU,WAAO;AACtB,SAAO;AAAA;AAGF,MAAM,yBAAyB,CAAC,MAAM,IAAI,UAAU;AACzD,QACE,gBAAW,sBAAsB,IAD3B,YAAU,eAChB,IAD+B,yBAC/B,IAD+B,CAAzB,YAAU;AAGlB,YAAU,MAAM;AACd,QAAI,OAAO;AAAU,eAAS,KAAK;AACnC,WAAO,MAAM;AACX,UAAI,OAAO;AAAY,mBAAW;AAAA;AAAA,KAEnC,CAAC;AAGJ,MAAI,CAAC;AAAU,WAAO;AACtB,SAAO;AAAA;AAIT,IAAO,4BAAQ;",
6
+ "names": []
7
+ }
@@ -1,45 +1,35 @@
1
- // eslint-disable-next-line max-statements
2
- function getNextCellPosition(_ref) {
3
- let {
4
- grid,
5
- currentRow = 0,
6
- currentCell = 0,
7
- directionY,
8
- directionX,
9
- shouldWrapCells,
10
- shouldWrapRows
11
- } = _ref;
1
+ import * as React from "react";
2
+ function getNextCellPosition({
3
+ grid,
4
+ currentRow = 0,
5
+ currentCell = 0,
6
+ directionY,
7
+ directionX,
8
+ shouldWrapCells,
9
+ shouldWrapRows
10
+ }) {
12
11
  let nextRow = currentRow + directionY;
13
12
  let nextCell = currentCell + directionX;
14
13
  const rowCount = grid.length;
15
14
  const isLeftRight = directionX !== 0;
16
-
17
15
  if (!rowCount) {
18
16
  return false;
19
17
  }
20
-
21
- const cellsLength = grid[0].length; // moving horizontally
22
-
18
+ const cellsLength = grid[0].length;
23
19
  if (shouldWrapCells && isLeftRight) {
24
- // to left
25
20
  if (nextCell < 0) {
26
21
  nextCell = cellsLength - 1;
27
22
  nextRow -= 1;
28
23
  }
29
-
30
24
  if (nextCell >= cellsLength) {
31
25
  nextCell = 0;
32
26
  nextRow += 1;
33
27
  }
34
- } // moving vertically
35
-
36
-
28
+ }
37
29
  if (shouldWrapRows && !isLeftRight) {
38
- // to top
39
30
  if (nextRow < 0) {
40
31
  nextCell -= 1;
41
32
  nextRow = rowCount - 1;
42
-
43
33
  if (grid[nextRow] && nextCell >= 0 && !grid[nextRow][nextCell]) {
44
34
  nextRow -= 1;
45
35
  }
@@ -48,11 +38,14 @@ function getNextCellPosition(_ref) {
48
38
  nextCell += 1;
49
39
  }
50
40
  }
51
-
52
41
  return {
53
42
  cellIndex: nextCell,
54
43
  rowIndex: nextRow
55
44
  };
56
45
  }
57
-
58
- export { getNextCellPosition as default };
46
+ var getNextCellPosition_default = getNextCellPosition;
47
+ export {
48
+ getNextCellPosition_default as default,
49
+ getNextCellPosition
50
+ };
51
+ //# sourceMappingURL=getNextCellPosition.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/FocusGroup/utils/getNextCellPosition.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "// eslint-disable-next-line max-statements\nfunction getNextCellPosition({\n grid,\n currentRow = 0,\n currentCell = 0,\n directionY,\n directionX,\n shouldWrapCells,\n shouldWrapRows,\n}) {\n let nextRow = currentRow + directionY;\n let nextCell = currentCell + directionX;\n const rowCount = grid.length;\n const isLeftRight = directionX !== 0;\n\n if (!rowCount) {\n return false;\n }\n\n const cellsLength = grid[0].length;\n\n // moving horizontally\n if (shouldWrapCells && isLeftRight) {\n // to left\n if (nextCell < 0) {\n nextCell = cellsLength - 1;\n nextRow -= 1;\n }\n\n if (nextCell >= cellsLength) {\n nextCell = 0;\n nextRow += 1;\n }\n }\n\n // moving vertically\n if (shouldWrapRows && !isLeftRight) {\n // to top\n if (nextRow < 0) {\n nextCell -= 1;\n nextRow = rowCount - 1;\n if (grid[nextRow] && nextCell >= 0 && !grid[nextRow][nextCell]) {\n nextRow -= 1;\n }\n } else if (nextRow >= rowCount || !grid[nextRow][nextCell]) {\n nextRow = 0;\n nextCell += 1;\n }\n }\n\n return {\n cellIndex: nextCell,\n rowIndex: nextRow,\n };\n}\n\nexport { getNextCellPosition };\nexport default getNextCellPosition;"],
5
+ "mappings": "AAAA;ACCA,6BAA6B;AAAA,EAC3B;AAAA,EACA,aAAa;AAAA,EACb,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,GACC;AACD,MAAI,UAAU,aAAa;AAC3B,MAAI,WAAW,cAAc;AAC7B,QAAM,WAAW,KAAK;AACtB,QAAM,cAAc,eAAe;AAEnC,MAAI,CAAC,UAAU;AACb,WAAO;AAAA;AAGT,QAAM,cAAc,KAAK,GAAG;AAG5B,MAAI,mBAAmB,aAAa;AAElC,QAAI,WAAW,GAAG;AAChB,iBAAW,cAAc;AACzB,iBAAW;AAAA;AAGb,QAAI,YAAY,aAAa;AAC3B,iBAAW;AACX,iBAAW;AAAA;AAAA;AAKf,MAAI,kBAAkB,CAAC,aAAa;AAElC,QAAI,UAAU,GAAG;AACf,kBAAY;AACZ,gBAAU,WAAW;AACrB,UAAI,KAAK,YAAY,YAAY,KAAK,CAAC,KAAK,SAAS,WAAW;AAC9D,mBAAW;AAAA;AAAA,eAEJ,WAAW,YAAY,CAAC,KAAK,SAAS,WAAW;AAC1D,gBAAU;AACV,kBAAY;AAAA;AAAA;AAIhB,SAAO;AAAA,IACL,WAAW;AAAA,IACX,UAAU;AAAA;AAAA;AAKd,IAAO,8BAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,86 @@
1
+ import * as React from "react";
2
+ import React2, { Component } from "react";
3
+ import PropTypes from "prop-types";
4
+ import { GroupContext } from "./GroupContext";
5
+ const getValueItem = (e) => {
6
+ const { target, currentTarget } = e;
7
+ if (target) {
8
+ const { value } = target;
9
+ return value;
10
+ }
11
+ if (currentTarget) {
12
+ const { value } = currentTarget;
13
+ return value;
14
+ }
15
+ return e;
16
+ };
17
+ const toggleItemValue = (array, e) => {
18
+ const newvalue = getValueItem(e);
19
+ const res = array;
20
+ const index = array.indexOf(newvalue);
21
+ if (index === -1) {
22
+ res.push(newvalue);
23
+ } else {
24
+ res.splice(index, 1);
25
+ }
26
+ return res;
27
+ };
28
+ const { Provider } = GroupContext;
29
+ class Group extends Component {
30
+ constructor(props) {
31
+ super(props);
32
+ const { activeValue, disabled } = props;
33
+ this.state = {
34
+ activeValue,
35
+ disabled,
36
+ prevValue: null,
37
+ onChange: this.handleChange.bind(this)
38
+ };
39
+ }
40
+ static getDerivedStateFromProps(nextProps, { prevValue }) {
41
+ if (nextProps.activeValue === prevValue)
42
+ return null;
43
+ return {
44
+ activeValue: nextProps.activeValue,
45
+ prevValue: nextProps.activeValue
46
+ };
47
+ }
48
+ handleChange(e, ...rest) {
49
+ const { multiple, onChange } = this.props;
50
+ const { activeValue } = this.state;
51
+ const value = getValueItem(e);
52
+ let newValue;
53
+ if (multiple) {
54
+ newValue = toggleItemValue(activeValue || [], value);
55
+ } else if (activeValue !== value) {
56
+ newValue = value;
57
+ }
58
+ this.setState({
59
+ activeValue: newValue
60
+ });
61
+ if (onChange)
62
+ onChange(newValue, ...rest);
63
+ }
64
+ render() {
65
+ const { children } = this.props;
66
+ return /* @__PURE__ */ React2.createElement(Provider, {
67
+ value: this.state
68
+ }, children);
69
+ }
70
+ }
71
+ Group.defaultProps = {
72
+ multiple: false
73
+ };
74
+ Group.propTypes = {
75
+ children: PropTypes.array,
76
+ multiple: PropTypes.bool,
77
+ onChange: PropTypes.func,
78
+ activeValue: PropTypes.oneOfType([PropTypes.array, PropTypes.number]),
79
+ disabled: PropTypes.bool
80
+ };
81
+ var Group_default = Group;
82
+ export {
83
+ Group,
84
+ Group_default as default
85
+ };
86
+ //# sourceMappingURL=Group.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/GroupContext/Group.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/no-unused-state */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { GroupContext } from './GroupContext';\n\nconst getValueItem = (e) => {\n const { target, currentTarget } = e;\n if (target) {\n const { value } = target;\n return value;\n }\n if (currentTarget) {\n const { value } = currentTarget;\n return value;\n }\n return e;\n};\n\nconst toggleItemValue = (array, e) => {\n const newvalue = getValueItem(e);\n const res = array;\n const index = array.indexOf(newvalue);\n\n if (index === -1) {\n res.push(newvalue);\n } else {\n res.splice(index, 1);\n }\n\n return res;\n};\n\nconst { Provider } = GroupContext;\n/** deprecated use CheckableGroup instead */\nclass Group extends Component {\n constructor(props) {\n super(props);\n const { activeValue, disabled } = props;\n this.state = {\n activeValue,\n disabled,\n prevValue: null,\n onChange: this.handleChange.bind(this),\n };\n }\n\n static getDerivedStateFromProps(nextProps, { prevValue }) {\n if (nextProps.activeValue === prevValue) return null;\n return {\n activeValue: nextProps.activeValue,\n prevValue: nextProps.activeValue,\n };\n }\n\n handleChange(e, ...rest) {\n const { multiple, onChange } = this.props;\n const { activeValue } = this.state;\n const value = getValueItem(e);\n let newValue;\n if (multiple) {\n newValue = toggleItemValue(activeValue || [], value);\n } else if (activeValue !== value) {\n // default behaviour it will be toggle the active value\n newValue = value;\n }\n\n this.setState({\n activeValue: newValue,\n });\n\n if (onChange) onChange(newValue, ...rest);\n }\n\n render() {\n const { children } = this.props;\n return <Provider value={this.state}>{children}</Provider>;\n }\n}\n\nGroup.defaultProps = {\n multiple: false,\n};\n\nGroup.propTypes = {\n children: PropTypes.array,\n multiple: PropTypes.bool,\n onChange: PropTypes.func,\n activeValue: PropTypes.oneOfType([PropTypes.array, PropTypes.number]),\n disabled: PropTypes.bool,\n};\n\nexport { Group };\nexport default Group;\n"],
5
+ "mappings": "AAAA;ACCA;AACA;AACA;AAEA,MAAM,eAAe,CAAC,MAAM;AAC1B,QAAM,EAAE,QAAQ,kBAAkB;AAClC,MAAI,QAAQ;AACV,UAAM,EAAE,UAAU;AAClB,WAAO;AAAA;AAET,MAAI,eAAe;AACjB,UAAM,EAAE,UAAU;AAClB,WAAO;AAAA;AAET,SAAO;AAAA;AAGT,MAAM,kBAAkB,CAAC,OAAO,MAAM;AACpC,QAAM,WAAW,aAAa;AAC9B,QAAM,MAAM;AACZ,QAAM,QAAQ,MAAM,QAAQ;AAE5B,MAAI,UAAU,IAAI;AAChB,QAAI,KAAK;AAAA,SACJ;AACL,QAAI,OAAO,OAAO;AAAA;AAGpB,SAAO;AAAA;AAGT,MAAM,EAAE,aAAa;AAErB,oBAAoB,UAAU;AAAA,EAC5B,YAAY,OAAO;AACjB,UAAM;AACN,UAAM,EAAE,aAAa,aAAa;AAClC,SAAK,QAAQ;AAAA,MACX;AAAA,MACA;AAAA,MACA,WAAW;AAAA,MACX,UAAU,KAAK,aAAa,KAAK;AAAA;AAAA;AAAA,SAI9B,yBAAyB,WAAW,EAAE,aAAa;AACxD,QAAI,UAAU,gBAAgB;AAAW,aAAO;AAChD,WAAO;AAAA,MACL,aAAa,UAAU;AAAA,MACvB,WAAW,UAAU;AAAA;AAAA;AAAA,EAIzB,aAAa,MAAM,MAAM;AACvB,UAAM,EAAE,UAAU,aAAa,KAAK;AACpC,UAAM,EAAE,gBAAgB,KAAK;AAC7B,UAAM,QAAQ,aAAa;AAC3B,QAAI;AACJ,QAAI,UAAU;AACZ,iBAAW,gBAAgB,eAAe,IAAI;AAAA,eACrC,gBAAgB,OAAO;AAEhC,iBAAW;AAAA;AAGb,SAAK,SAAS;AAAA,MACZ,aAAa;AAAA;AAGf,QAAI;AAAU,eAAS,UAAU,GAAG;AAAA;AAAA,EAGtC,SAAS;AACP,UAAM,EAAE,aAAa,KAAK;AAC1B,WAAO,qCAAC,UAAD;AAAA,MAAU,OAAO,KAAK;AAAA,OAAQ;AAAA;AAAA;AAIzC,MAAM,eAAe;AAAA,EACnB,UAAU;AAAA;AAGZ,MAAM,YAAY;AAAA,EAChB,UAAU,UAAU;AAAA,EACpB,UAAU,UAAU;AAAA,EACpB,UAAU,UAAU;AAAA,EACpB,aAAa,UAAU,UAAU,CAAC,UAAU,OAAO,UAAU;AAAA,EAC7D,UAAU,UAAU;AAAA;AAItB,IAAO,gBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,7 @@
1
+ import * as React from "react";
2
+ import React2 from "react";
3
+ const GroupContext = React2.createContext();
4
+ export {
5
+ GroupContext
6
+ };
7
+ //# sourceMappingURL=GroupContext.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/GroupContext/GroupContext.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\n\nexport const GroupContext = React.createContext();\n"],
5
+ "mappings": "AAAA;ACAA;AAEO,MAAM,eAAe,OAAM;",
6
+ "names": []
7
+ }
@@ -0,0 +1,11 @@
1
+ import * as React from "react";
2
+ import React2 from "react";
3
+ import { GroupContext } from "./GroupContext";
4
+ const { Consumer } = GroupContext;
5
+ const GroupItem = ({ render }) => /* @__PURE__ */ React2.createElement(Consumer, null, (context) => render(context));
6
+ var GroupItem_default = GroupItem;
7
+ export {
8
+ GroupItem,
9
+ GroupItem_default as default
10
+ };
11
+ //# sourceMappingURL=GroupItem.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/GroupContext/GroupItem.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { GroupContext } from './GroupContext';\n\nconst { Consumer } = GroupContext;\n\nconst GroupItem = ({ render }) => (\n <Consumer>{context => render(context)}</Consumer>\n);\n\nexport { GroupItem };\nexport default GroupItem;\n"],
5
+ "mappings": "AAAA;ACAA;AACA;AAEA,MAAM,EAAE,aAAa;AAErB,MAAM,YAAY,CAAC,EAAE,aACnB,qCAAC,UAAD,MAAW,aAAW,OAAO;AAI/B,IAAO,oBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,10 @@
1
+ import * as React from "react";
2
+ import { Group } from "./Group";
3
+ import { GroupContext } from "./GroupContext";
4
+ import { GroupItem } from "./GroupItem";
5
+ export {
6
+ Group,
7
+ GroupContext,
8
+ GroupItem
9
+ };
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/GroupContext/index.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { Group } from './Group';\nexport { GroupContext } from './GroupContext';\nexport { GroupItem } from './GroupItem';\n"],
5
+ "mappings": "AAAA;ACAA;AACA;AACA;",
6
+ "names": []
7
+ }
@@ -1,83 +1,59 @@
1
- import _jsx from '@babel/runtime/helpers/esm/jsx';
2
- import 'core-js/modules/esnext.async-iterator.for-each.js';
3
- import 'core-js/modules/esnext.iterator.constructor.js';
4
- import 'core-js/modules/esnext.iterator.for-each.js';
5
- import 'core-js/modules/esnext.async-iterator.find.js';
6
- import 'core-js/modules/esnext.iterator.find.js';
7
- import React, { Component } from 'react';
8
-
9
- const ScrollSyncContext = /*#__PURE__*/React.createContext();
10
- const {
11
- Provider
12
- } = ScrollSyncContext;
1
+ import * as React from "react";
2
+ import React2, { Component } from "react";
3
+ const ScrollSyncContext = React2.createContext();
4
+ const { Provider } = ScrollSyncContext;
13
5
  class ScrollSync extends Component {
14
6
  constructor(props) {
15
7
  super(props);
16
8
  this.panes = {};
17
-
18
9
  this.registerPane = (node, groups) => {
19
- groups.forEach(group => {
10
+ groups.forEach((group) => {
20
11
  if (!this.panes[group]) {
21
12
  this.panes[group] = [];
22
13
  }
23
-
24
14
  if (this.panes[group].length > 0) {
25
15
  this.syncScrollPosition(this.panes[group][0], node);
26
16
  }
27
-
28
17
  this.panes[group].push(node);
29
18
  });
30
19
  this.addEvents(node, groups);
31
20
  };
32
-
33
21
  this.unregisterPane = (node, groups) => {
34
- groups.forEach(group => {
22
+ groups.forEach((group) => {
35
23
  if (this.findPane(node, group)) {
36
24
  this.removeEvents(node);
37
25
  this.panes[group].splice(this.panes[group].indexOf(node), 1);
38
26
  }
39
27
  });
40
28
  };
41
-
42
29
  this.addEvents = (node, groups) => {
43
- /* For some reason element.addEventListener doesnt work with document.body */
44
- node.onscroll = this.handlePaneScroll.bind(this, node, groups); // eslint-disable-line
30
+ node.onscroll = this.handlePaneScroll.bind(this, node, groups);
45
31
  };
46
-
47
- this.removeEvents = node => {
48
- /* For some reason element.removeEventListener doesnt work with document.body */
49
- node.onscroll = null; // eslint-disable-line
32
+ this.removeEvents = (node) => {
33
+ node.onscroll = null;
50
34
  };
51
-
52
35
  this.findPane = (node, group) => {
53
36
  if (!this.panes[group]) {
54
37
  return false;
55
38
  }
56
-
57
- return this.panes[group].find(pane => pane === node);
39
+ return this.panes[group].find((pane) => pane === node);
58
40
  };
59
-
60
41
  this.handlePaneScroll = (node, groups, e) => {
61
- const {
62
- enabled
63
- } = this.props;
64
- if (this.props.onScroll) this.props.onScroll(e);
65
- if (!enabled) return;
42
+ const { enabled } = this.props;
43
+ if (this.props.onScroll)
44
+ this.props.onScroll(e);
45
+ if (!enabled)
46
+ return;
66
47
  window.requestAnimationFrame(() => {
67
48
  this.syncScrollPositions(node, groups);
68
49
  });
69
50
  };
70
-
71
51
  this.syncScrollPositions = (scrolledPane, groups) => {
72
- groups.forEach(group => {
73
- this.panes[group].forEach(pane => {
74
- /* For all panes beside the currently scrolling one */
52
+ groups.forEach((group) => {
53
+ this.panes[group].forEach((pane) => {
75
54
  if (scrolledPane !== pane) {
76
- /* Remove event listeners from the node that we'll manipulate */
77
55
  this.removeEvents(pane, group);
78
56
  this.syncScrollPosition(scrolledPane, pane);
79
- /* Re-attach event listeners after we're done scrolling */
80
-
81
57
  window.requestAnimationFrame(() => {
82
58
  this.addEvents(pane, groups);
83
59
  });
@@ -85,13 +61,11 @@ class ScrollSync extends Component {
85
61
  });
86
62
  });
87
63
  };
88
-
89
64
  this.syncContext = {
90
65
  registerPane: this.registerPane,
91
66
  unregisterPane: this.unregisterPane
92
67
  };
93
68
  }
94
-
95
69
  syncScrollPosition(scrolledPane, pane) {
96
70
  const {
97
71
  scrollTop,
@@ -103,35 +77,22 @@ class ScrollSync extends Component {
103
77
  } = scrolledPane;
104
78
  const scrollTopOffset = scrollHeight - clientHeight;
105
79
  const scrollLeftOffset = scrollWidth - clientWidth;
106
- const {
107
- proportional,
108
- vertical,
109
- horizontal
110
- } = this.props;
111
- /* Calculate the actual pane height */
112
-
80
+ const { proportional, vertical, horizontal } = this.props;
113
81
  const paneHeight = pane.scrollHeight - clientHeight;
114
82
  const paneWidth = pane.scrollWidth - clientWidth;
115
- /* Adjust the scrollTop position of it accordingly */
116
-
117
83
  if (vertical && scrollTopOffset > 0) {
118
- pane.scrollTop = proportional ? paneHeight * scrollTop / scrollTopOffset : scrollTop; // eslint-disable-line
84
+ pane.scrollTop = proportional ? paneHeight * scrollTop / scrollTopOffset : scrollTop;
119
85
  }
120
-
121
86
  if (horizontal && scrollLeftOffset > 0) {
122
- pane.scrollLeft = proportional ? paneWidth * scrollLeft / scrollLeftOffset : scrollLeft; // eslint-disable-line
87
+ pane.scrollLeft = proportional ? paneWidth * scrollLeft / scrollLeftOffset : scrollLeft;
123
88
  }
124
89
  }
125
-
126
90
  render() {
127
- const {
128
- children
129
- } = this.props;
130
- return /*#__PURE__*/_jsx(Provider, {
91
+ const { children } = this.props;
92
+ return /* @__PURE__ */ React2.createElement(Provider, {
131
93
  value: this.syncContext
132
- }, void 0, React.Children.only(children));
94
+ }, React2.Children.only(children));
133
95
  }
134
-
135
96
  }
136
97
  ScrollSync.defaultProps = {
137
98
  proportional: true,
@@ -139,5 +100,10 @@ ScrollSync.defaultProps = {
139
100
  horizontal: true,
140
101
  enabled: true
141
102
  };
142
-
143
- export { ScrollSyncContext, ScrollSync as default };
103
+ var ScrollSync_default = ScrollSync;
104
+ export {
105
+ ScrollSync,
106
+ ScrollSyncContext,
107
+ ScrollSync_default as default
108
+ };
109
+ //# sourceMappingURL=ScrollSync.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/ScrollSync/ScrollSync.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { Component } from 'react';\n\nconst ScrollSyncContext = React.createContext();\n\nconst { Provider } = ScrollSyncContext;\n\nclass ScrollSync extends Component {\n panes = {};\n\n static defaultProps = {\n proportional: true,\n vertical: true,\n horizontal: true,\n enabled: true,\n };\n\n constructor(props) {\n super(props);\n this.syncContext = {\n registerPane: this.registerPane,\n unregisterPane: this.unregisterPane,\n };\n }\n\n registerPane = (node, groups) => {\n groups.forEach((group) => {\n if (!this.panes[group]) {\n this.panes[group] = [];\n }\n\n if (this.panes[group].length > 0) {\n this.syncScrollPosition(this.panes[group][0], node);\n }\n this.panes[group].push(node);\n });\n this.addEvents(node, groups);\n };\n\n unregisterPane = (node, groups) => {\n groups.forEach((group) => {\n if (this.findPane(node, group)) {\n this.removeEvents(node);\n this.panes[group].splice(this.panes[group].indexOf(node), 1);\n }\n });\n };\n\n addEvents = (node, groups) => {\n /* For some reason element.addEventListener doesnt work with document.body */\n node.onscroll = this.handlePaneScroll.bind(this, node, groups); // eslint-disable-line\n };\n\n removeEvents = (node) => {\n /* For some reason element.removeEventListener doesnt work with document.body */\n node.onscroll = null; // eslint-disable-line\n };\n\n findPane = (node, group) => {\n if (!this.panes[group]) {\n return false;\n }\n\n return this.panes[group].find((pane) => pane === node);\n };\n\n handlePaneScroll = (node, groups, e) => {\n const { enabled } = this.props;\n if (this.props.onScroll) this.props.onScroll(e);\n\n if (!enabled) return;\n\n window.requestAnimationFrame(() => {\n this.syncScrollPositions(node, groups);\n });\n };\n\n syncScrollPositions = (scrolledPane, groups) => {\n groups.forEach((group) => {\n this.panes[group].forEach((pane) => {\n /* For all panes beside the currently scrolling one */\n if (scrolledPane !== pane) {\n /* Remove event listeners from the node that we'll manipulate */\n this.removeEvents(pane, group);\n this.syncScrollPosition(scrolledPane, pane);\n /* Re-attach event listeners after we're done scrolling */\n window.requestAnimationFrame(() => {\n this.addEvents(pane, groups);\n });\n }\n });\n });\n };\n\n syncScrollPosition(scrolledPane, pane) {\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n scrollLeft,\n scrollWidth,\n clientWidth,\n } = scrolledPane;\n\n const scrollTopOffset = scrollHeight - clientHeight;\n const scrollLeftOffset = scrollWidth - clientWidth;\n\n const { proportional, vertical, horizontal } = this.props;\n\n /* Calculate the actual pane height */\n const paneHeight = pane.scrollHeight - clientHeight;\n const paneWidth = pane.scrollWidth - clientWidth;\n /* Adjust the scrollTop position of it accordingly */\n if (vertical && scrollTopOffset > 0) {\n pane.scrollTop = proportional\n ? (paneHeight * scrollTop) / scrollTopOffset\n : scrollTop; // eslint-disable-line\n }\n if (horizontal && scrollLeftOffset > 0) {\n pane.scrollLeft = proportional\n ? (paneWidth * scrollLeft) / scrollLeftOffset\n : scrollLeft; // eslint-disable-line\n }\n }\n\n render() {\n const { children } = this.props;\n return (\n <Provider value={this.syncContext}>\n {React.Children.only(children)}\n </Provider>\n );\n }\n}\n\nexport { ScrollSync, ScrollSyncContext };\nexport default ScrollSync;\n"],
5
+ "mappings": "AAAA;ACAA;AAEA,MAAM,oBAAoB,OAAM;AAEhC,MAAM,EAAE,aAAa;AAErB,yBAAyB,UAAU;AAAA,EAUjC,YAAY,OAAO;AACjB,UAAM;AAVR,iBAAQ;AAiBR,wBAAe,CAAC,MAAM,WAAW;AAC/B,aAAO,QAAQ,CAAC,UAAU;AACxB,YAAI,CAAC,KAAK,MAAM,QAAQ;AACtB,eAAK,MAAM,SAAS;AAAA;AAGtB,YAAI,KAAK,MAAM,OAAO,SAAS,GAAG;AAChC,eAAK,mBAAmB,KAAK,MAAM,OAAO,IAAI;AAAA;AAEhD,aAAK,MAAM,OAAO,KAAK;AAAA;AAEzB,WAAK,UAAU,MAAM;AAAA;AAGvB,0BAAiB,CAAC,MAAM,WAAW;AACjC,aAAO,QAAQ,CAAC,UAAU;AACxB,YAAI,KAAK,SAAS,MAAM,QAAQ;AAC9B,eAAK,aAAa;AAClB,eAAK,MAAM,OAAO,OAAO,KAAK,MAAM,OAAO,QAAQ,OAAO;AAAA;AAAA;AAAA;AAKhE,qBAAY,CAAC,MAAM,WAAW;AAE5B,WAAK,WAAW,KAAK,iBAAiB,KAAK,MAAM,MAAM;AAAA;AAGzD,wBAAe,CAAC,SAAS;AAEvB,WAAK,WAAW;AAAA;AAGlB,oBAAW,CAAC,MAAM,UAAU;AAC1B,UAAI,CAAC,KAAK,MAAM,QAAQ;AACtB,eAAO;AAAA;AAGT,aAAO,KAAK,MAAM,OAAO,KAAK,CAAC,SAAS,SAAS;AAAA;AAGnD,4BAAmB,CAAC,MAAM,QAAQ,MAAM;AACtC,YAAM,EAAE,YAAY,KAAK;AACzB,UAAI,KAAK,MAAM;AAAU,aAAK,MAAM,SAAS;AAE7C,UAAI,CAAC;AAAS;AAEd,aAAO,sBAAsB,MAAM;AACjC,aAAK,oBAAoB,MAAM;AAAA;AAAA;AAInC,+BAAsB,CAAC,cAAc,WAAW;AAC9C,aAAO,QAAQ,CAAC,UAAU;AACxB,aAAK,MAAM,OAAO,QAAQ,CAAC,SAAS;AAElC,cAAI,iBAAiB,MAAM;AAEzB,iBAAK,aAAa,MAAM;AACxB,iBAAK,mBAAmB,cAAc;AAEtC,mBAAO,sBAAsB,MAAM;AACjC,mBAAK,UAAU,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AApE7B,SAAK,cAAc;AAAA,MACjB,cAAc,KAAK;AAAA,MACnB,gBAAgB,KAAK;AAAA;AAAA;AAAA,EAyEzB,mBAAmB,cAAc,MAAM;AACrC,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACE;AAEJ,UAAM,kBAAkB,eAAe;AACvC,UAAM,mBAAmB,cAAc;AAEvC,UAAM,EAAE,cAAc,UAAU,eAAe,KAAK;AAGpD,UAAM,aAAa,KAAK,eAAe;AACvC,UAAM,YAAY,KAAK,cAAc;AAErC,QAAI,YAAY,kBAAkB,GAAG;AACnC,WAAK,YAAY,eACZ,aAAa,YAAa,kBAC3B;AAAA;AAEN,QAAI,cAAc,mBAAmB,GAAG;AACtC,WAAK,aAAa,eACb,YAAY,aAAc,mBAC3B;AAAA;AAAA;AAAA,EAIR,SAAS;AACP,UAAM,EAAE,aAAa,KAAK;AAC1B,WACE,qCAAC,UAAD;AAAA,MAAU,OAAO,KAAK;AAAA,OACnB,OAAM,SAAS,KAAK;AAAA;AAAA;AAvHpB,AAHT,WAGS,eAAe;AAAA,EACpB,cAAc;AAAA,EACd,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,SAAS;AAAA;AA0Hb,IAAO,qBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,62 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import * as React from "react";
21
+ import React2, { Component } from "react";
22
+ import { ScrollSyncContext } from "./ScrollSync";
23
+ class ScrollSyncPane extends Component {
24
+ constructor() {
25
+ super(...arguments);
26
+ this.toArray = (groups) => [].concat(groups);
27
+ }
28
+ componentWillUnmount() {
29
+ const { enabled, group, syncContext } = this.props;
30
+ const { unregisterPane } = syncContext;
31
+ if (enabled)
32
+ unregisterPane(this.node, this.toArray(group));
33
+ }
34
+ render() {
35
+ const { children, group, syncContext, notPaginated } = this.props;
36
+ const { registerPane } = syncContext;
37
+ return children({
38
+ registerPane: (node) => {
39
+ if (notPaginated) {
40
+ const virtualizedBody = node.querySelector(".virtualized-body-wrapper");
41
+ if (virtualizedBody) {
42
+ registerPane(virtualizedBody, this.toArray(group));
43
+ }
44
+ }
45
+ return registerPane(node, this.toArray(group));
46
+ }
47
+ });
48
+ }
49
+ }
50
+ ScrollSyncPane.defaultProps = {
51
+ group: "default",
52
+ enabled: true
53
+ };
54
+ const ScrollSyncPaneHOC = (props) => /* @__PURE__ */ React2.createElement(ScrollSyncContext.Consumer, null, (context) => /* @__PURE__ */ React2.createElement(ScrollSyncPane, __spreadProps(__spreadValues({}, props), {
55
+ syncContext: context
56
+ })));
57
+ var ScrollSyncPane_default = ScrollSyncPaneHOC;
58
+ export {
59
+ ScrollSyncPaneHOC,
60
+ ScrollSyncPane_default as default
61
+ };
62
+ //# sourceMappingURL=ScrollSyncPane.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/ScrollSync/ScrollSyncPane.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/display-name */\nimport React, { Component } from 'react';\nimport { ScrollSyncContext } from './ScrollSync';\n\n/**\n * MODIFIED FROM react-scroll-sync\n *\n * ScrollSyncPane Component\n *\n * Wrap your content in it to keep its scroll position in sync with other panes\n *\n * @param groups\n * @example ./example.md\n */\nclass ScrollSyncPane extends Component {\n static defaultProps = {\n group: 'default',\n enabled: true,\n };\n\n componentWillUnmount() {\n const { enabled, group, syncContext } = this.props;\n const { unregisterPane } = syncContext;\n\n if (enabled) unregisterPane(this.node, this.toArray(group));\n }\n\n toArray = groups => [].concat(groups);\n\n render() {\n const { children, group, syncContext, notPaginated } = this.props;\n const { registerPane } = syncContext;\n\n return children({\n registerPane: node => {\n if (notPaginated) {\n const virtualizedBody = node.querySelector(\n '.virtualized-body-wrapper',\n );\n if (virtualizedBody) {\n registerPane(virtualizedBody, this.toArray(group));\n }\n }\n return registerPane(node, this.toArray(group));\n },\n });\n }\n}\n\nexport const ScrollSyncPaneHOC = props => (\n <ScrollSyncContext.Consumer>\n {context => <ScrollSyncPane {...props} syncContext={context} />}\n </ScrollSyncContext.Consumer>\n);\n\nexport default ScrollSyncPaneHOC;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACCA;AACA;AAYA,6BAA6B,UAAU;AAAA,EAAvC,cAdA;AAcA;AAaE,mBAAU,YAAU,GAAG,OAAO;AAAA;AAAA,EAP9B,uBAAuB;AACrB,UAAM,EAAE,SAAS,OAAO,gBAAgB,KAAK;AAC7C,UAAM,EAAE,mBAAmB;AAE3B,QAAI;AAAS,qBAAe,KAAK,MAAM,KAAK,QAAQ;AAAA;AAAA,EAKtD,SAAS;AACP,UAAM,EAAE,UAAU,OAAO,aAAa,iBAAiB,KAAK;AAC5D,UAAM,EAAE,iBAAiB;AAEzB,WAAO,SAAS;AAAA,MACd,cAAc,UAAQ;AACpB,YAAI,cAAc;AAChB,gBAAM,kBAAkB,KAAK,cAC3B;AAEF,cAAI,iBAAiB;AACnB,yBAAa,iBAAiB,KAAK,QAAQ;AAAA;AAAA;AAG/C,eAAO,aAAa,MAAM,KAAK,QAAQ;AAAA;AAAA;AAAA;AAAA;AA5BtC,AADT,eACS,eAAe;AAAA,EACpB,OAAO;AAAA,EACP,SAAS;AAAA;AAgCN,MAAM,oBAAoB,WAC/B,qCAAC,kBAAkB,UAAnB,MACG,aAAW,qCAAC,gBAAD,iCAAoB,QAApB;AAAA,EAA2B,aAAa;AAAA;AAIxD,IAAO,yBAAQ;",
6
+ "names": []
7
+ }