@elliemae/ds-left-navigation 2.3.0-alpha.9 → 2.3.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 (370) hide show
  1. package/cjs/LeftNavigation.js +29 -0
  2. package/cjs/LeftNavigationContext.js +41 -0
  3. package/cjs/common/getItemBackgroundStyle.js +12 -0
  4. package/cjs/common/getLeftBorderStyle.js +12 -0
  5. package/cjs/common/getScrollbarStyle.js +7 -0
  6. package/cjs/common/index.js +13 -0
  7. package/cjs/configs/index.js +10 -0
  8. package/cjs/configs/useLeftNavConfig.js +102 -0
  9. package/cjs/configs/useLeftNavItems.js +80 -0
  10. package/cjs/configs/useLeftNavSmoothExpand.js +35 -0
  11. package/cjs/exported-related/ChevronItem/index.js +28 -0
  12. package/cjs/exported-related/Icon/index.js +36 -0
  13. package/cjs/exported-related/ItemRenderer/index.js +128 -0
  14. package/cjs/exported-related/ItemRenderer/styled.js +58 -0
  15. package/cjs/exported-related/ItemRenderer/usePropsWithDefaults.js +57 -0
  16. package/cjs/exported-related/Notifications/index.js +62 -0
  17. package/cjs/exported-related/OpenWindowItem/index.js +33 -0
  18. package/cjs/exported-related/constants.js +29 -0
  19. package/cjs/exported-related/index.js +23 -0
  20. package/cjs/hooks/index.js +13 -0
  21. package/cjs/hooks/useExpandableOnClickHandler.js +35 -0
  22. package/cjs/hooks/useKeyboardNavigation.js +110 -0
  23. package/cjs/hooks/useOpenableOnClickHandler.js +40 -0
  24. package/cjs/hooks/useSelectFirstBodyItem.js +39 -0
  25. package/cjs/index.d.js +2 -0
  26. package/cjs/index.js +30 -0
  27. package/cjs/outOfTheBox/ItemControlledDrilldown/index.js +158 -0
  28. package/cjs/outOfTheBox/ItemControlledDrilldown/styled.js +27 -0
  29. package/cjs/outOfTheBox/ItemHeader/index.js +144 -0
  30. package/cjs/outOfTheBox/ItemHeader/styled.js +22 -0
  31. package/cjs/outOfTheBox/ItemLink/index.js +97 -0
  32. package/cjs/outOfTheBox/ItemLink/styled.js +17 -0
  33. package/cjs/outOfTheBox/ItemSection/index.js +83 -0
  34. package/cjs/outOfTheBox/ItemSection/styled.js +23 -0
  35. package/cjs/outOfTheBox/ItemSeparator/index.js +52 -0
  36. package/cjs/outOfTheBox/ItemSubmenu/index.js +145 -0
  37. package/cjs/outOfTheBox/ItemSubmenu/styled.js +22 -0
  38. package/cjs/outOfTheBox/ItemTextLabel/index.js +70 -0
  39. package/cjs/outOfTheBox/ItemTextLabel/styled.js +23 -0
  40. package/cjs/outOfTheBox/ItemUncontrolledDrilldown/index.js +172 -0
  41. package/cjs/outOfTheBox/ItemUncontrolledDrilldown/styled.js +27 -0
  42. package/cjs/outOfTheBox/ItemWithDate/index.js +86 -0
  43. package/cjs/outOfTheBox/ItemWithDate/styled.js +27 -0
  44. package/cjs/outOfTheBox/index.js +62 -0
  45. package/cjs/parts/LeftNavContent/index.js +84 -0
  46. package/cjs/parts/LeftNavContent/styled.js +53 -0
  47. package/cjs/parts/LeftNavContentWithScrollbar/index.js +91 -0
  48. package/cjs/parts/LeftNavFooterItem/index.js +108 -0
  49. package/cjs/parts/LeftNavFooterItem/styled.js +39 -0
  50. package/cjs/parts/LeftNavLoading/index.js +34 -0
  51. package/cjs/parts/OutOfTheBoxMapItem.js +52 -0
  52. package/cjs/prop-types.js +47 -0
  53. package/esm/LeftNavigation.js +20 -0
  54. package/{dist/esm → esm}/LeftNavigationContext.js +11 -15
  55. package/esm/common/getItemBackgroundStyle.js +8 -0
  56. package/esm/common/getLeftBorderStyle.js +8 -0
  57. package/esm/common/getScrollbarStyle.js +3 -0
  58. package/esm/common/index.js +3 -0
  59. package/esm/configs/index.js +2 -0
  60. package/esm/configs/useLeftNavConfig.js +93 -0
  61. package/esm/configs/useLeftNavItems.js +75 -0
  62. package/esm/configs/useLeftNavSmoothExpand.js +26 -0
  63. package/esm/exported-related/ChevronItem/index.js +19 -0
  64. package/esm/exported-related/Icon/index.js +27 -0
  65. package/esm/exported-related/ItemRenderer/index.js +119 -0
  66. package/esm/exported-related/ItemRenderer/styled.js +47 -0
  67. package/esm/exported-related/ItemRenderer/usePropsWithDefaults.js +49 -0
  68. package/esm/exported-related/Notifications/index.js +51 -0
  69. package/esm/exported-related/OpenWindowItem/index.js +23 -0
  70. package/esm/exported-related/constants.js +21 -0
  71. package/esm/exported-related/index.js +6 -0
  72. package/esm/hooks/index.js +3 -0
  73. package/esm/hooks/useExpandableOnClickHandler.js +31 -0
  74. package/{dist/esm → esm}/hooks/useKeyboardNavigation.js +47 -30
  75. package/esm/hooks/useOpenableOnClickHandler.js +36 -0
  76. package/esm/hooks/useSelectFirstBodyItem.js +35 -0
  77. package/esm/index.d.js +1 -0
  78. package/esm/index.js +8 -0
  79. package/esm/outOfTheBox/ItemControlledDrilldown/index.js +148 -0
  80. package/esm/outOfTheBox/ItemControlledDrilldown/styled.js +17 -0
  81. package/esm/outOfTheBox/ItemHeader/index.js +134 -0
  82. package/esm/outOfTheBox/ItemHeader/styled.js +12 -0
  83. package/esm/outOfTheBox/ItemLink/index.js +87 -0
  84. package/esm/outOfTheBox/ItemLink/styled.js +8 -0
  85. package/esm/outOfTheBox/ItemSection/index.js +73 -0
  86. package/esm/outOfTheBox/ItemSection/styled.js +13 -0
  87. package/esm/outOfTheBox/ItemSeparator/index.js +42 -0
  88. package/esm/outOfTheBox/ItemSubmenu/index.js +135 -0
  89. package/esm/outOfTheBox/ItemSubmenu/styled.js +12 -0
  90. package/esm/outOfTheBox/ItemTextLabel/index.js +61 -0
  91. package/esm/outOfTheBox/ItemTextLabel/styled.js +14 -0
  92. package/esm/outOfTheBox/ItemUncontrolledDrilldown/index.js +162 -0
  93. package/esm/outOfTheBox/ItemUncontrolledDrilldown/styled.js +17 -0
  94. package/esm/outOfTheBox/ItemWithDate/index.js +76 -0
  95. package/esm/outOfTheBox/ItemWithDate/styled.js +17 -0
  96. package/esm/outOfTheBox/index.js +57 -0
  97. package/esm/parts/LeftNavContent/index.js +77 -0
  98. package/esm/parts/LeftNavContent/styled.js +39 -0
  99. package/esm/parts/LeftNavContentWithScrollbar/index.js +80 -0
  100. package/esm/parts/LeftNavFooterItem/index.js +98 -0
  101. package/esm/parts/LeftNavFooterItem/styled.js +26 -0
  102. package/esm/parts/LeftNavLoading/index.js +23 -0
  103. package/esm/parts/OutOfTheBoxMapItem.js +42 -0
  104. package/esm/prop-types.js +40 -0
  105. package/package.json +121 -123
  106. package/{dist/types → types}/LeftNavigation.d.ts +0 -0
  107. package/{dist/types → types}/LeftNavigationContext.d.ts +0 -0
  108. package/{dist/types → types}/common/getItemBackgroundStyle.d.ts +0 -0
  109. package/{dist/types → types}/common/getLeftBorderStyle.d.ts +0 -0
  110. package/{dist/types → types}/common/getScrollbarStyle.d.ts +0 -0
  111. package/{dist/types → types}/common/index.d.ts +0 -0
  112. package/{dist/types → types}/configs/index.d.ts +0 -0
  113. package/{dist/types → types}/configs/useLeftNavConfig.d.ts +0 -0
  114. package/{dist/types → types}/configs/useLeftNavItems.d.ts +0 -0
  115. package/{dist/types → types}/configs/useLeftNavSmoothExpand.d.ts +0 -0
  116. package/{dist/types → types}/exported-related/ChevronItem/index.d.ts +0 -0
  117. package/{dist/types → types}/exported-related/Icon/index.d.ts +0 -0
  118. package/{dist/types → types}/exported-related/ItemRenderer/index.d.ts +0 -0
  119. package/{dist/types → types}/exported-related/ItemRenderer/styled.d.ts +2 -2
  120. package/{dist/types → types}/exported-related/ItemRenderer/usePropsWithDefaults.d.ts +0 -0
  121. package/{dist/types → types}/exported-related/Notifications/index.d.ts +0 -0
  122. package/{dist/types → types}/exported-related/OpenWindowItem/index.d.ts +0 -0
  123. package/{dist/types → types}/exported-related/constants.d.ts +0 -0
  124. package/{dist/types → types}/exported-related/index.d.ts +0 -0
  125. package/{dist/types → types}/hooks/index.d.ts +0 -0
  126. package/{dist/types → types}/hooks/useExpandableOnClickHandler.d.ts +0 -0
  127. package/{dist/types → types}/hooks/useKeyboardNavigation.d.ts +0 -0
  128. package/{dist/types → types}/hooks/useOpenableOnClickHandler.d.ts +0 -0
  129. package/{dist/types → types}/hooks/useSelectFirstBodyItem.d.ts +0 -0
  130. package/{dist/types → types}/index.d.d.ts +0 -0
  131. package/{dist/types → types}/index.d.ts +0 -0
  132. package/{dist/types → types}/outOfTheBox/ItemControlledDrilldown/index.d.ts +0 -0
  133. package/{dist/types/outOfTheBox/ItemUncontrolledDrilldown → types/outOfTheBox/ItemControlledDrilldown}/styled.d.ts +2 -2
  134. package/{dist/types → types}/outOfTheBox/ItemHeader/index.d.ts +0 -0
  135. package/{dist/types → types}/outOfTheBox/ItemHeader/styled.d.ts +1 -1
  136. package/{dist/types → types}/outOfTheBox/ItemLink/index.d.ts +0 -0
  137. package/{dist/types → types}/outOfTheBox/ItemLink/styled.d.ts +1 -1
  138. package/{dist/types → types}/outOfTheBox/ItemSection/index.d.ts +0 -0
  139. package/{dist/types → types}/outOfTheBox/ItemSection/styled.d.ts +0 -0
  140. package/{dist/types → types}/outOfTheBox/ItemSeparator/index.d.ts +0 -0
  141. package/{dist/types → types}/outOfTheBox/ItemSubmenu/index.d.ts +0 -0
  142. package/{dist/types → types}/outOfTheBox/ItemSubmenu/styled.d.ts +1 -1
  143. package/{dist/types → types}/outOfTheBox/ItemTextLabel/index.d.ts +0 -0
  144. package/{dist/types → types}/outOfTheBox/ItemTextLabel/styled.d.ts +1 -1
  145. package/{dist/types → types}/outOfTheBox/ItemUncontrolledDrilldown/index.d.ts +0 -0
  146. package/{dist/types/outOfTheBox/ItemWithDate → types/outOfTheBox/ItemUncontrolledDrilldown}/styled.d.ts +2 -2
  147. package/{dist/types → types}/outOfTheBox/ItemWithDate/index.d.ts +0 -0
  148. package/{dist/types/outOfTheBox/ItemControlledDrilldown → types/outOfTheBox/ItemWithDate}/styled.d.ts +2 -2
  149. package/{dist/types → types}/outOfTheBox/index.d.ts +0 -0
  150. package/{dist/types → types}/parts/LeftNavContent/index.d.ts +0 -0
  151. package/{dist/types → types}/parts/LeftNavContent/styled.d.ts +0 -0
  152. package/{dist/types → types}/parts/LeftNavContentWithScrollbar/index.d.ts +0 -0
  153. package/{dist/types → types}/parts/LeftNavFooterItem/index.d.ts +0 -0
  154. package/{dist/types → types}/parts/LeftNavFooterItem/styled.d.ts +5 -5
  155. package/{dist/types → types}/parts/LeftNavLoading/index.d.ts +0 -0
  156. package/{dist/types → types}/parts/OutOfTheBoxMapItem.d.ts +0 -0
  157. package/{dist/types → types}/prop-types.d.ts +0 -0
  158. package/{dist/types → types}/tests/LeftNavigation.collapsed.test.d.ts +0 -0
  159. package/{dist/types → types}/tests/LeftNavigation.expanded.test.d.ts +0 -0
  160. package/{dist/types → types}/tests/LeftNavigation.opened.test.d.ts +0 -0
  161. package/{dist/types → types}/tests/events/LeftNavigation.events.keyboard.test.d.ts +0 -0
  162. package/{dist/types → types}/tests/events/LeftNavigation.events.subitems.test.d.ts +0 -0
  163. package/{dist/types → types}/tests/events/LeftNavigation.events.test.d.ts +0 -0
  164. package/{dist/types → types}/tests/events/LeftNavigation.focus.events.test.d.ts +0 -0
  165. package/dist/cjs/LeftNavigation.js +0 -51
  166. package/dist/cjs/LeftNavigation.js.map +0 -7
  167. package/dist/cjs/LeftNavigationContext.js +0 -67
  168. package/dist/cjs/LeftNavigationContext.js.map +0 -7
  169. package/dist/cjs/common/getItemBackgroundStyle.js +0 -51
  170. package/dist/cjs/common/getItemBackgroundStyle.js.map +0 -7
  171. package/dist/cjs/common/getLeftBorderStyle.js +0 -54
  172. package/dist/cjs/common/getLeftBorderStyle.js.map +0 -7
  173. package/dist/cjs/common/getScrollbarStyle.js +0 -58
  174. package/dist/cjs/common/getScrollbarStyle.js.map +0 -7
  175. package/dist/cjs/common/index.js +0 -30
  176. package/dist/cjs/common/index.js.map +0 -7
  177. package/dist/cjs/configs/index.js +0 -38
  178. package/dist/cjs/configs/index.js.map +0 -7
  179. package/dist/cjs/configs/useLeftNavConfig.js +0 -106
  180. package/dist/cjs/configs/useLeftNavConfig.js.map +0 -7
  181. package/dist/cjs/configs/useLeftNavItems.js +0 -82
  182. package/dist/cjs/configs/useLeftNavItems.js.map +0 -7
  183. package/dist/cjs/configs/useLeftNavSmoothExpand.js +0 -53
  184. package/dist/cjs/configs/useLeftNavSmoothExpand.js.map +0 -7
  185. package/dist/cjs/exported-related/ChevronItem/index.js +0 -43
  186. package/dist/cjs/exported-related/ChevronItem/index.js.map +0 -7
  187. package/dist/cjs/exported-related/Icon/index.js +0 -53
  188. package/dist/cjs/exported-related/Icon/index.js.map +0 -7
  189. package/dist/cjs/exported-related/ItemRenderer/index.js +0 -133
  190. package/dist/cjs/exported-related/ItemRenderer/index.js.map +0 -7
  191. package/dist/cjs/exported-related/ItemRenderer/styled.js +0 -90
  192. package/dist/cjs/exported-related/ItemRenderer/styled.js.map +0 -7
  193. package/dist/cjs/exported-related/ItemRenderer/usePropsWithDefaults.js +0 -69
  194. package/dist/cjs/exported-related/ItemRenderer/usePropsWithDefaults.js.map +0 -7
  195. package/dist/cjs/exported-related/Notifications/index.js +0 -82
  196. package/dist/cjs/exported-related/Notifications/index.js.map +0 -7
  197. package/dist/cjs/exported-related/OpenWindowItem/index.js +0 -50
  198. package/dist/cjs/exported-related/OpenWindowItem/index.js.map +0 -7
  199. package/dist/cjs/exported-related/constants.js +0 -57
  200. package/dist/cjs/exported-related/constants.js.map +0 -7
  201. package/dist/cjs/exported-related/index.js +0 -33
  202. package/dist/cjs/exported-related/index.js.map +0 -7
  203. package/dist/cjs/hooks/index.js +0 -30
  204. package/dist/cjs/hooks/index.js.map +0 -7
  205. package/dist/cjs/hooks/useExpandableOnClickHandler.js +0 -64
  206. package/dist/cjs/hooks/useExpandableOnClickHandler.js.map +0 -7
  207. package/dist/cjs/hooks/useKeyboardNavigation.js +0 -118
  208. package/dist/cjs/hooks/useKeyboardNavigation.js.map +0 -7
  209. package/dist/cjs/hooks/useOpenableOnClickHandler.js +0 -69
  210. package/dist/cjs/hooks/useOpenableOnClickHandler.js.map +0 -7
  211. package/dist/cjs/hooks/useSelectFirstBodyItem.js +0 -52
  212. package/dist/cjs/hooks/useSelectFirstBodyItem.js.map +0 -7
  213. package/dist/cjs/index.d.js +0 -27
  214. package/dist/cjs/index.d.js.map +0 -7
  215. package/dist/cjs/index.js +0 -41
  216. package/dist/cjs/index.js.map +0 -7
  217. package/dist/cjs/outOfTheBox/ItemControlledDrilldown/index.js +0 -152
  218. package/dist/cjs/outOfTheBox/ItemControlledDrilldown/index.js.map +0 -7
  219. package/dist/cjs/outOfTheBox/ItemControlledDrilldown/styled.js +0 -49
  220. package/dist/cjs/outOfTheBox/ItemControlledDrilldown/styled.js.map +0 -7
  221. package/dist/cjs/outOfTheBox/ItemHeader/index.js +0 -147
  222. package/dist/cjs/outOfTheBox/ItemHeader/index.js.map +0 -7
  223. package/dist/cjs/outOfTheBox/ItemHeader/styled.js +0 -49
  224. package/dist/cjs/outOfTheBox/ItemHeader/styled.js.map +0 -7
  225. package/dist/cjs/outOfTheBox/ItemLink/index.js +0 -106
  226. package/dist/cjs/outOfTheBox/ItemLink/index.js.map +0 -7
  227. package/dist/cjs/outOfTheBox/ItemLink/styled.js +0 -41
  228. package/dist/cjs/outOfTheBox/ItemLink/styled.js.map +0 -7
  229. package/dist/cjs/outOfTheBox/ItemSection/index.js +0 -79
  230. package/dist/cjs/outOfTheBox/ItemSection/index.js.map +0 -7
  231. package/dist/cjs/outOfTheBox/ItemSection/styled.js +0 -53
  232. package/dist/cjs/outOfTheBox/ItemSection/styled.js.map +0 -7
  233. package/dist/cjs/outOfTheBox/ItemSeparator/index.js +0 -63
  234. package/dist/cjs/outOfTheBox/ItemSeparator/index.js.map +0 -7
  235. package/dist/cjs/outOfTheBox/ItemSubmenu/index.js +0 -149
  236. package/dist/cjs/outOfTheBox/ItemSubmenu/index.js.map +0 -7
  237. package/dist/cjs/outOfTheBox/ItemSubmenu/styled.js +0 -49
  238. package/dist/cjs/outOfTheBox/ItemSubmenu/styled.js.map +0 -7
  239. package/dist/cjs/outOfTheBox/ItemTextLabel/index.js +0 -69
  240. package/dist/cjs/outOfTheBox/ItemTextLabel/index.js.map +0 -7
  241. package/dist/cjs/outOfTheBox/ItemTextLabel/styled.js +0 -43
  242. package/dist/cjs/outOfTheBox/ItemTextLabel/styled.js.map +0 -7
  243. package/dist/cjs/outOfTheBox/ItemUncontrolledDrilldown/index.js +0 -166
  244. package/dist/cjs/outOfTheBox/ItemUncontrolledDrilldown/index.js.map +0 -7
  245. package/dist/cjs/outOfTheBox/ItemUncontrolledDrilldown/styled.js +0 -49
  246. package/dist/cjs/outOfTheBox/ItemUncontrolledDrilldown/styled.js.map +0 -7
  247. package/dist/cjs/outOfTheBox/ItemWithDate/index.js +0 -91
  248. package/dist/cjs/outOfTheBox/ItemWithDate/index.js.map +0 -7
  249. package/dist/cjs/outOfTheBox/ItemWithDate/styled.js +0 -49
  250. package/dist/cjs/outOfTheBox/ItemWithDate/styled.js.map +0 -7
  251. package/dist/cjs/outOfTheBox/index.js +0 -77
  252. package/dist/cjs/outOfTheBox/index.js.map +0 -7
  253. package/dist/cjs/parts/LeftNavContent/index.js +0 -88
  254. package/dist/cjs/parts/LeftNavContent/index.js.map +0 -7
  255. package/dist/cjs/parts/LeftNavContent/styled.js +0 -113
  256. package/dist/cjs/parts/LeftNavContent/styled.js.map +0 -7
  257. package/dist/cjs/parts/LeftNavContentWithScrollbar/index.js +0 -101
  258. package/dist/cjs/parts/LeftNavContentWithScrollbar/index.js.map +0 -7
  259. package/dist/cjs/parts/LeftNavFooterItem/index.js +0 -125
  260. package/dist/cjs/parts/LeftNavFooterItem/index.js.map +0 -7
  261. package/dist/cjs/parts/LeftNavFooterItem/styled.js +0 -94
  262. package/dist/cjs/parts/LeftNavFooterItem/styled.js.map +0 -7
  263. package/dist/cjs/parts/LeftNavLoading/index.js +0 -52
  264. package/dist/cjs/parts/LeftNavLoading/index.js.map +0 -7
  265. package/dist/cjs/parts/OutOfTheBoxMapItem.js +0 -55
  266. package/dist/cjs/parts/OutOfTheBoxMapItem.js.map +0 -7
  267. package/dist/cjs/prop-types.js +0 -66
  268. package/dist/cjs/prop-types.js.map +0 -7
  269. package/dist/esm/LeftNavigation.js +0 -22
  270. package/dist/esm/LeftNavigation.js.map +0 -7
  271. package/dist/esm/LeftNavigationContext.js.map +0 -7
  272. package/dist/esm/common/getItemBackgroundStyle.js +0 -22
  273. package/dist/esm/common/getItemBackgroundStyle.js.map +0 -7
  274. package/dist/esm/common/getLeftBorderStyle.js +0 -25
  275. package/dist/esm/common/getLeftBorderStyle.js.map +0 -7
  276. package/dist/esm/common/getScrollbarStyle.js +0 -29
  277. package/dist/esm/common/getScrollbarStyle.js.map +0 -7
  278. package/dist/esm/common/index.js +0 -5
  279. package/dist/esm/common/index.js.map +0 -7
  280. package/dist/esm/configs/index.js +0 -9
  281. package/dist/esm/configs/index.js.map +0 -7
  282. package/dist/esm/configs/useLeftNavConfig.js +0 -77
  283. package/dist/esm/configs/useLeftNavConfig.js.map +0 -7
  284. package/dist/esm/configs/useLeftNavItems.js +0 -53
  285. package/dist/esm/configs/useLeftNavItems.js.map +0 -7
  286. package/dist/esm/configs/useLeftNavSmoothExpand.js +0 -24
  287. package/dist/esm/configs/useLeftNavSmoothExpand.js.map +0 -7
  288. package/dist/esm/exported-related/ChevronItem/index.js +0 -14
  289. package/dist/esm/exported-related/ChevronItem/index.js.map +0 -7
  290. package/dist/esm/exported-related/Icon/index.js +0 -24
  291. package/dist/esm/exported-related/Icon/index.js.map +0 -7
  292. package/dist/esm/exported-related/ItemRenderer/index.js +0 -104
  293. package/dist/esm/exported-related/ItemRenderer/index.js.map +0 -7
  294. package/dist/esm/exported-related/ItemRenderer/styled.js +0 -61
  295. package/dist/esm/exported-related/ItemRenderer/styled.js.map +0 -7
  296. package/dist/esm/exported-related/ItemRenderer/usePropsWithDefaults.js +0 -40
  297. package/dist/esm/exported-related/ItemRenderer/usePropsWithDefaults.js.map +0 -7
  298. package/dist/esm/exported-related/Notifications/index.js +0 -58
  299. package/dist/esm/exported-related/Notifications/index.js.map +0 -7
  300. package/dist/esm/exported-related/OpenWindowItem/index.js +0 -21
  301. package/dist/esm/exported-related/OpenWindowItem/index.js.map +0 -7
  302. package/dist/esm/exported-related/constants.js +0 -28
  303. package/dist/esm/exported-related/constants.js.map +0 -7
  304. package/dist/esm/exported-related/index.js +0 -8
  305. package/dist/esm/exported-related/index.js.map +0 -7
  306. package/dist/esm/hooks/index.js +0 -5
  307. package/dist/esm/hooks/index.js.map +0 -7
  308. package/dist/esm/hooks/useExpandableOnClickHandler.js +0 -35
  309. package/dist/esm/hooks/useExpandableOnClickHandler.js.map +0 -7
  310. package/dist/esm/hooks/useKeyboardNavigation.js.map +0 -7
  311. package/dist/esm/hooks/useOpenableOnClickHandler.js +0 -40
  312. package/dist/esm/hooks/useOpenableOnClickHandler.js.map +0 -7
  313. package/dist/esm/hooks/useSelectFirstBodyItem.js +0 -23
  314. package/dist/esm/hooks/useSelectFirstBodyItem.js.map +0 -7
  315. package/dist/esm/index.d.js +0 -2
  316. package/dist/esm/index.d.js.map +0 -7
  317. package/dist/esm/index.js +0 -12
  318. package/dist/esm/index.js.map +0 -7
  319. package/dist/esm/outOfTheBox/ItemControlledDrilldown/index.js +0 -123
  320. package/dist/esm/outOfTheBox/ItemControlledDrilldown/index.js.map +0 -7
  321. package/dist/esm/outOfTheBox/ItemControlledDrilldown/styled.js +0 -20
  322. package/dist/esm/outOfTheBox/ItemControlledDrilldown/styled.js.map +0 -7
  323. package/dist/esm/outOfTheBox/ItemHeader/index.js +0 -118
  324. package/dist/esm/outOfTheBox/ItemHeader/index.js.map +0 -7
  325. package/dist/esm/outOfTheBox/ItemHeader/styled.js +0 -20
  326. package/dist/esm/outOfTheBox/ItemHeader/styled.js.map +0 -7
  327. package/dist/esm/outOfTheBox/ItemLink/index.js +0 -77
  328. package/dist/esm/outOfTheBox/ItemLink/index.js.map +0 -7
  329. package/dist/esm/outOfTheBox/ItemLink/styled.js +0 -12
  330. package/dist/esm/outOfTheBox/ItemLink/styled.js.map +0 -7
  331. package/dist/esm/outOfTheBox/ItemSection/index.js +0 -50
  332. package/dist/esm/outOfTheBox/ItemSection/index.js.map +0 -7
  333. package/dist/esm/outOfTheBox/ItemSection/styled.js +0 -24
  334. package/dist/esm/outOfTheBox/ItemSection/styled.js.map +0 -7
  335. package/dist/esm/outOfTheBox/ItemSeparator/index.js +0 -34
  336. package/dist/esm/outOfTheBox/ItemSeparator/index.js.map +0 -7
  337. package/dist/esm/outOfTheBox/ItemSubmenu/index.js +0 -120
  338. package/dist/esm/outOfTheBox/ItemSubmenu/index.js.map +0 -7
  339. package/dist/esm/outOfTheBox/ItemSubmenu/styled.js +0 -20
  340. package/dist/esm/outOfTheBox/ItemSubmenu/styled.js.map +0 -7
  341. package/dist/esm/outOfTheBox/ItemTextLabel/index.js +0 -40
  342. package/dist/esm/outOfTheBox/ItemTextLabel/index.js.map +0 -7
  343. package/dist/esm/outOfTheBox/ItemTextLabel/styled.js +0 -14
  344. package/dist/esm/outOfTheBox/ItemTextLabel/styled.js.map +0 -7
  345. package/dist/esm/outOfTheBox/ItemUncontrolledDrilldown/index.js +0 -137
  346. package/dist/esm/outOfTheBox/ItemUncontrolledDrilldown/index.js.map +0 -7
  347. package/dist/esm/outOfTheBox/ItemUncontrolledDrilldown/styled.js +0 -20
  348. package/dist/esm/outOfTheBox/ItemUncontrolledDrilldown/styled.js.map +0 -7
  349. package/dist/esm/outOfTheBox/ItemWithDate/index.js +0 -62
  350. package/dist/esm/outOfTheBox/ItemWithDate/index.js.map +0 -7
  351. package/dist/esm/outOfTheBox/ItemWithDate/styled.js +0 -20
  352. package/dist/esm/outOfTheBox/ItemWithDate/styled.js.map +0 -7
  353. package/dist/esm/outOfTheBox/index.js +0 -48
  354. package/dist/esm/outOfTheBox/index.js.map +0 -7
  355. package/dist/esm/parts/LeftNavContent/index.js +0 -67
  356. package/dist/esm/parts/LeftNavContent/index.js.map +0 -7
  357. package/dist/esm/parts/LeftNavContent/styled.js +0 -84
  358. package/dist/esm/parts/LeftNavContent/styled.js.map +0 -7
  359. package/dist/esm/parts/LeftNavContentWithScrollbar/index.js +0 -72
  360. package/dist/esm/parts/LeftNavContentWithScrollbar/index.js.map +0 -7
  361. package/dist/esm/parts/LeftNavFooterItem/index.js +0 -103
  362. package/dist/esm/parts/LeftNavFooterItem/index.js.map +0 -7
  363. package/dist/esm/parts/LeftNavFooterItem/styled.js +0 -65
  364. package/dist/esm/parts/LeftNavFooterItem/styled.js.map +0 -7
  365. package/dist/esm/parts/LeftNavLoading/index.js +0 -23
  366. package/dist/esm/parts/LeftNavLoading/index.js.map +0 -7
  367. package/dist/esm/parts/OutOfTheBoxMapItem.js +0 -26
  368. package/dist/esm/parts/OutOfTheBoxMapItem.js.map +0 -7
  369. package/dist/esm/prop-types.js +0 -37
  370. package/dist/esm/prop-types.js.map +0 -7
@@ -0,0 +1,91 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _jsx = require('@babel/runtime/helpers/jsx');
6
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
7
+ require('core-js/modules/web.dom-collections.iterator.js');
8
+ require('core-js/modules/esnext.async-iterator.filter.js');
9
+ require('core-js/modules/esnext.iterator.constructor.js');
10
+ require('core-js/modules/esnext.iterator.filter.js');
11
+ require('core-js/modules/esnext.async-iterator.for-each.js');
12
+ require('core-js/modules/esnext.iterator.for-each.js');
13
+ var React = require('react');
14
+ require('overlayscrollbars/css/OverlayScrollbars.css');
15
+ var OverlayScrollbars = require('overlayscrollbars');
16
+ var styled = require('styled-components');
17
+ var jsxRuntime = require('react/jsx-runtime');
18
+
19
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
20
+
21
+ var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
22
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
23
+ var OverlayScrollbars__default = /*#__PURE__*/_interopDefaultLegacy(OverlayScrollbars);
24
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
25
+
26
+ var _div, _div2, _div3, _div4;
27
+
28
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
29
+
30
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
31
+ const StyledHandle = /*#__PURE__*/styled__default["default"].div.withConfig({
32
+ componentId: "sc-yn7jj3-0"
33
+ })(["width:6px;border:1px solid rgba(0,0,0,0);background-color:rgba(105,116,137,0.5) !important;border-radius:7px;:hover{background-color:rgba(105,116,137,0.7) !important;}:active{background-color:rgba(105,116,137,0.7) !important;}"]);
34
+ const options = {
35
+ className: 'os-theme-dark',
36
+ scrollbars: {
37
+ autoHide: 'leave',
38
+ autoHideDelay: 0
39
+ }
40
+ };
41
+ const LeftNavContentWithScrollbar = props => {
42
+ const {
43
+ children
44
+ } = props;
45
+ const inheritBoxShadow = {
46
+ boxShadow: 'inherit'
47
+ };
48
+ const [osInstance, setOsInstance] = React.useState();
49
+ const osTargetRef = React.useRef(null);
50
+ React.useEffect(() => {
51
+ const nextOsInstance = OverlayScrollbars__default["default"](osTargetRef.current, options);
52
+ setOsInstance(nextOsInstance);
53
+ }, [osInstance]);
54
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
55
+ className: "os-host",
56
+ style: _objectSpread({
57
+ height: '100%'
58
+ }, inheritBoxShadow),
59
+ tabIndex: -1,
60
+ ref: osTargetRef,
61
+ children: [_div || (_div = /*#__PURE__*/_jsx__default["default"]("div", {
62
+ className: "os-resize-observer-host"
63
+ })), /*#__PURE__*/_jsx__default["default"]("div", {
64
+ className: "os-padding",
65
+ style: inheritBoxShadow
66
+ }, void 0, /*#__PURE__*/_jsx__default["default"]("div", {
67
+ className: "os-viewport",
68
+ style: inheritBoxShadow
69
+ }, void 0, /*#__PURE__*/_jsx__default["default"]("div", {
70
+ className: "os-content",
71
+ style: inheritBoxShadow,
72
+ "aria-hidden": true
73
+ }, void 0, children))), _div2 || (_div2 = /*#__PURE__*/_jsx__default["default"]("div", {
74
+ className: "os-scrollbar os-scrollbar-horizontal "
75
+ }, void 0, /*#__PURE__*/_jsx__default["default"]("div", {
76
+ className: "os-scrollbar-track"
77
+ }, void 0, /*#__PURE__*/_jsx__default["default"]("div", {
78
+ className: "os-scrollbar-handle"
79
+ })))), _div3 || (_div3 = /*#__PURE__*/_jsx__default["default"]("div", {
80
+ className: "os-scrollbar os-scrollbar-vertical"
81
+ }, void 0, /*#__PURE__*/_jsx__default["default"]("div", {
82
+ className: "os-scrollbar-track"
83
+ }, void 0, /*#__PURE__*/_jsx__default["default"](StyledHandle, {
84
+ className: "os-scrollbar-handle"
85
+ })))), _div4 || (_div4 = /*#__PURE__*/_jsx__default["default"]("div", {
86
+ className: "os-scrollbar-corner"
87
+ }))]
88
+ });
89
+ };
90
+
91
+ exports.LeftNavContentWithScrollbar = LeftNavContentWithScrollbar;
@@ -0,0 +1,108 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _jsx = require('@babel/runtime/helpers/jsx');
6
+ var React = require('react');
7
+ var dsIcons = require('@elliemae/ds-icons');
8
+ var Grid = require('@elliemae/ds-grid');
9
+ var dsTruncatedTooltipText = require('@elliemae/ds-truncated-tooltip-text');
10
+ var styled = require('./styled.js');
11
+ var LeftNavigationContext = require('../../LeftNavigationContext.js');
12
+ var useKeyboardNavigation = require('../../hooks/useKeyboardNavigation.js');
13
+ var constants = require('../../exported-related/constants.js');
14
+ var jsxRuntime = require('react/jsx-runtime');
15
+
16
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
+
18
+ var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
19
+ var Grid__default = /*#__PURE__*/_interopDefaultLegacy(Grid);
20
+
21
+ var _StyledSeparator;
22
+ const LeftNavFooterItem = props => {
23
+ const {
24
+ footerLabel,
25
+ onFooterExpand = () => null,
26
+ onFooterClose = () => null
27
+ } = props;
28
+ const {
29
+ leftNavProps: {
30
+ labelOverflow,
31
+ openedItem
32
+ },
33
+ expandedForAnimation,
34
+ setSelectedItem,
35
+ setFocusedItem,
36
+ visibleItemsRefs
37
+ } = React.useContext(LeftNavigationContext.LeftNavContext);
38
+ const id = constants.FOOTER_DS_ID;
39
+ const handleOnClick = expandedForAnimation ? onFooterClose : onFooterExpand;
40
+ const onKeyDown = useKeyboardNavigation.useKeyboardNavigation({
41
+ item: {
42
+ dsId: id,
43
+ itemOpts: {
44
+ selectable: !expandedForAnimation,
45
+ openable: false,
46
+ closable: false
47
+ }
48
+ },
49
+ onClick: handleOnClick
50
+ });
51
+ return /*#__PURE__*/_jsx__default["default"](styled.StyledFooterMenu, {
52
+ "data-testid": "leftnav-container"
53
+ }, id, /*#__PURE__*/_jsx__default["default"](styled.StyledItemWrapper, {}, void 0, /*#__PURE__*/jsxRuntime.jsx(styled.StyledItem, {
54
+ ref: visibleItemsRefs.current[id],
55
+ tabIndex: expandedForAnimation ? -1 : 0,
56
+ expanded: expandedForAnimation,
57
+ pt: "xxs2",
58
+ height: expandedForAnimation ? 'auto' : '48px',
59
+ alignItems: "flex-start",
60
+ pl: "xxs",
61
+ cols: expandedForAnimation ? ['auto', '1fr', 'auto'] : ['38px'],
62
+ onClick: expandedForAnimation ? () => null : handleOnClick,
63
+ onKeyDown: onKeyDown,
64
+ onFocus: () => setFocusedItem(id),
65
+ "data-testid": "leftnav-item-container",
66
+ role: "menuitem",
67
+ "aria-label": expandedForAnimation ? "Footer, ".concat(footerLabel) : "Expand left navigation",
68
+ children: !expandedForAnimation ? /*#__PURE__*/_jsx__default["default"](dsIcons.MenuExpand, {
69
+ size: "m",
70
+ color: ['brand-primary', 800],
71
+ "data-testid": "leftnav-footer-btn"
72
+ }) : /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
73
+ children: [/*#__PURE__*/_jsx__default["default"](styled.StyledLabel, {
74
+ mt: "5px",
75
+ mr: "12px",
76
+ mb: "16px",
77
+ "data-testid": "leftnav-itemlabel",
78
+ labelOverflow: labelOverflow,
79
+ "aria-live": "polite"
80
+ }, void 0, labelOverflow === 'truncate' ? /*#__PURE__*/_jsx__default["default"](dsTruncatedTooltipText.SimpleTruncatedTooltipText, {
81
+ value: footerLabel,
82
+ placement: "bottom-start"
83
+ }) : footerLabel), _StyledSeparator || (_StyledSeparator = /*#__PURE__*/_jsx__default["default"](styled.StyledSeparator, {
84
+ mt: "xxxs"
85
+ })), /*#__PURE__*/_jsx__default["default"](Grid__default["default"], {
86
+ m: "0 12px"
87
+ }, void 0, /*#__PURE__*/_jsx__default["default"](styled.StyledMenuCollapse, {
88
+ size: "m",
89
+ color: ['brand-primary', 800],
90
+ onClick: e => {
91
+ e.stopPropagation();
92
+ handleOnClick(e);
93
+ },
94
+ "data-testid": "leftnav-footer-btn",
95
+ tabIndex: 0,
96
+ onFocus: e => {
97
+ e.stopPropagation();
98
+ setFocusedItem(constants.FOOTER_MENU_CLOSE_DS_ID);
99
+ },
100
+ role: "button",
101
+ "aria-label": "Collapse left navigation"
102
+ }))]
103
+ })
104
+ })));
105
+ };
106
+
107
+ exports.LeftNavFooterItem = LeftNavFooterItem;
108
+ exports["default"] = LeftNavFooterItem;
@@ -0,0 +1,39 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var styled = require('styled-components');
6
+ var Grid = require('@elliemae/ds-grid');
7
+ var dsIcons = require('@elliemae/ds-icons');
8
+ var getItemBackgroundStyle = require('../../common/getItemBackgroundStyle.js');
9
+ var getLeftBorderStyle = require('../../common/getLeftBorderStyle.js');
10
+
11
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
+
13
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
14
+
15
+ const StyledFooterMenu = /*#__PURE__*/styled__default["default"](Grid.Grid).withConfig({
16
+ componentId: "sc-1mcbjxr-0"
17
+ })(["width:100%;margin-top:auto;background:", ";", " border-top:1px solid ", ";"], props => props.theme.colors.neutral['000'], getLeftBorderStyle.getLeftBorderStyle, props => props.theme.colors.neutral[100]);
18
+ const StyledItemWrapper = /*#__PURE__*/styled__default["default"](Grid.Grid).withConfig({
19
+ componentId: "sc-1mcbjxr-1"
20
+ })(["position:relative;padding-left:", ";"], props => props.theme.space.xxxs);
21
+ const StyledItem = /*#__PURE__*/styled__default["default"](Grid.Grid).withConfig({
22
+ componentId: "sc-1mcbjxr-2"
23
+ })(["min-height:48px;cursor:", ";", " outline:none;:focus{&:before{content:'';position:absolute;height:100%;width:100%;top:0;left:0px;border:2px solid ", ";pointer-events:none;}}"], props => props.expanded ? 'auto' : 'pointer', getItemBackgroundStyle.getItemBackgroundStyle, props => props.theme.colors.brand[600]);
24
+ const StyledLabel = /*#__PURE__*/styled__default["default"](Grid.Grid).withConfig({
25
+ componentId: "sc-1mcbjxr-3"
26
+ })(["font-size:11px;color:", ";line-height:14px;word-break:", ";"], props => props.theme.colors.neutral[500], props => props.labelOverflow === 'wrapAll' ? 'break-all' : 'normal');
27
+ const StyledSeparator = /*#__PURE__*/styled__default["default"](Grid.Grid).withConfig({
28
+ componentId: "sc-1mcbjxr-4"
29
+ })(["height:16px;width:1px;background-color:", ";"], props => props.theme.colors.neutral[100]);
30
+ const StyledMenuCollapse = /*#__PURE__*/styled__default["default"](dsIcons.MenuCollapse).withConfig({
31
+ componentId: "sc-1mcbjxr-5"
32
+ })(["cursor:pointer;:focus{outline:2px solid ", ";}"], props => props.theme.colors.brand[700]);
33
+
34
+ exports.StyledFooterMenu = StyledFooterMenu;
35
+ exports.StyledItem = StyledItem;
36
+ exports.StyledItemWrapper = StyledItemWrapper;
37
+ exports.StyledLabel = StyledLabel;
38
+ exports.StyledMenuCollapse = StyledMenuCollapse;
39
+ exports.StyledSeparator = StyledSeparator;
@@ -0,0 +1,34 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _jsx = require('@babel/runtime/helpers/jsx');
6
+ require('react');
7
+ var DSCircularProgressIndicator = require('@elliemae/ds-circular-progress-indicator');
8
+ var Grid = require('@elliemae/ds-grid');
9
+ var styled = require('styled-components');
10
+
11
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
+
13
+ var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
14
+ var DSCircularProgressIndicator__default = /*#__PURE__*/_interopDefaultLegacy(DSCircularProgressIndicator);
15
+ var Grid__default = /*#__PURE__*/_interopDefaultLegacy(Grid);
16
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
17
+
18
+ const StyledLoaderWrapper = /*#__PURE__*/styled__default["default"](Grid__default["default"]).withConfig({
19
+ componentId: "sc-mqgtxd-0"
20
+ })(["grid-area:left-nav-body;height:100%;place-items:center;z-index:0;background-color:white;"]);
21
+ const LeftNavLoading = _ref => {
22
+ let {
23
+ expanded
24
+ } = _ref;
25
+ return /*#__PURE__*/_jsx__default["default"](StyledLoaderWrapper, {}, void 0, /*#__PURE__*/_jsx__default["default"](DSCircularProgressIndicator__default["default"], {
26
+ size: expanded ? 'xl' : 'm',
27
+ loading: true,
28
+ showLabel: expanded,
29
+ waiting: false,
30
+ showTooltip: !expanded
31
+ }));
32
+ };
33
+
34
+ exports.LeftNavLoading = LeftNavLoading;
@@ -0,0 +1,52 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('core-js/modules/esnext.async-iterator.filter.js');
6
+ require('core-js/modules/esnext.iterator.constructor.js');
7
+ require('core-js/modules/esnext.iterator.filter.js');
8
+ require('core-js/modules/esnext.async-iterator.for-each.js');
9
+ require('core-js/modules/esnext.iterator.for-each.js');
10
+ var _jsx = require('@babel/runtime/helpers/jsx');
11
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
12
+ var React = require('react');
13
+ var index = require('../outOfTheBox/index.js');
14
+ var LeftNavigationContext = require('../LeftNavigationContext.js');
15
+
16
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
+
18
+ var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
19
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
20
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
21
+
22
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
23
+
24
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
25
+ const OutOfTheBoxMapItem = props => {
26
+ const {
27
+ item,
28
+ item: {
29
+ type,
30
+ Component
31
+ }
32
+ } = props;
33
+ const ctx = React__default["default"].useContext(LeftNavigationContext.LeftNavContext);
34
+
35
+ if (typeof type === 'string' && !!index.outOfTheBoxComponents[type]) {
36
+ const OutOfTheBoxComponent = index.outOfTheBoxComponents[type];
37
+ return /*#__PURE__*/_jsx__default["default"](OutOfTheBoxComponent, {
38
+ item: _objectSpread({
39
+ itemOpts: {}
40
+ }, item),
41
+ ctx: ctx
42
+ });
43
+ } // we expect an error to be threw if Component is not defined and type is not a valid out-of-the-box...
44
+
45
+
46
+ return /*#__PURE__*/_jsx__default["default"](Component, {
47
+ item: item,
48
+ ctx: ctx
49
+ });
50
+ };
51
+
52
+ exports.OutOfTheBoxMapItem = OutOfTheBoxMapItem;
@@ -0,0 +1,47 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var reactDesc = require('react-desc');
6
+ var index = require('./outOfTheBox/index.js');
7
+
8
+ const leftNavItemProps = {
9
+ type: reactDesc.PropTypes.oneOf(index.outOfTheBoxTypes).description('out of the box types'),
10
+ dsId: reactDesc.PropTypes.string.description('unique identifier for the left nav item'),
11
+ Component: reactDesc.PropTypes.func.description("A custom component, receives the item as prop. This is used only when type is not defined or doesn't matches any out-of-the-box"),
12
+ CollapsedComponent: reactDesc.PropTypes.func.description('A component which is renderer when the left-nav is collapsed'),
13
+ itemOpts: reactDesc.PropTypes.object.description('Item options')
14
+ };
15
+ const leftNavigationProps = {
16
+ containerProps: reactDesc.PropTypes.shape({
17
+ expandedWidth: reactDesc.PropTypes.string
18
+ }).description('Set of Properties attached to the main container').defaultValue({
19
+ expandedWidth: '240px'
20
+ }),
21
+ expanded: reactDesc.PropTypes.bool.description('Whether to show the left navigation expanded or collapsed').defaultValue(false),
22
+ loading: reactDesc.PropTypes.bool.description('Whether the left-nav is loading').defaultValue(false),
23
+ tabIndex: reactDesc.PropTypes.number.description('Tab index').defaultValue(0),
24
+ openedItem: reactDesc.PropTypes.string.description('The id of the left navigation item you want to be opened').defaultValue(null),
25
+ footerLabel: reactDesc.PropTypes.string.description('The label to show in the footer item'),
26
+ onFooterExpand: reactDesc.PropTypes.func.description('The function to call when the left-nav is opened via the footer'),
27
+ onFooterClose: reactDesc.PropTypes.func.description('The function to call when the left-nav is closed via the footer'),
28
+ onSelectedChange: reactDesc.PropTypes.func.description('A callback which triggers when the selected item changes').defaultValue(() => null),
29
+ onFocusChange: reactDesc.PropTypes.func.description('A callback which triggers when the focused item changes').defaultValue(() => null),
30
+ items: reactDesc.PropTypes.arrayOf(reactDesc.PropTypes.object).description('The array of items you want to render inside the left nav').defaultValue([]),
31
+ disableDefaultSelection: reactDesc.PropTypes.bool.description('Whether you do not want to automatically select the first body item').defaultValue(false)
32
+ };
33
+
34
+ const LeftNavItemProps = () => null;
35
+
36
+ const LeftNavItemPropsSchema = reactDesc.describe(LeftNavItemProps);
37
+ LeftNavItemPropsSchema.propTypes = leftNavItemProps;
38
+
39
+ const LeftNavItemOptions = () => null;
40
+
41
+ const LeftNavItemOptionsSchema = reactDesc.describe(LeftNavItemOptions);
42
+ LeftNavItemOptionsSchema.propTypes = leftNavItemProps;
43
+
44
+ exports.LeftNavItemOptionsSchema = LeftNavItemOptionsSchema;
45
+ exports.LeftNavItemPropsSchema = LeftNavItemPropsSchema;
46
+ exports.leftNavItemProps = leftNavItemProps;
47
+ exports.leftNavigationProps = leftNavigationProps;
@@ -0,0 +1,20 @@
1
+ import _jsx from '@babel/runtime/helpers/esm/jsx';
2
+ import 'react';
3
+ import { describe } from 'react-desc';
4
+ import { leftNavigationProps } from './prop-types.js';
5
+ import { LeftNavContext, defaultProps } from './LeftNavigationContext.js';
6
+ import { useLeftNavConfig } from './configs/useLeftNavConfig.js';
7
+ import LeftNavContent from './parts/LeftNavContent/index.js';
8
+
9
+ var _LeftNavContent;
10
+ const LeftNavigation = props => {
11
+ const leftNavConfig = useLeftNavConfig(props);
12
+ return /*#__PURE__*/_jsx(LeftNavContext.Provider, {
13
+ value: leftNavConfig
14
+ }, void 0, _LeftNavContent || (_LeftNavContent = /*#__PURE__*/_jsx(LeftNavContent, {})));
15
+ };
16
+ LeftNavigation.defaultProps = defaultProps;
17
+ const LeftNavigationWithSchema = describe(LeftNavigation).description('Left Navigation');
18
+ LeftNavigationWithSchema.propTypes = leftNavigationProps;
19
+
20
+ export { LeftNavigation, LeftNavigationWithSchema };
@@ -1,18 +1,18 @@
1
- import * as React from "react";
2
- import { createContext } from "react";
1
+ import { createContext } from 'react';
2
+
3
3
  const defaultProps = {
4
- expandedWidth: "240px",
4
+ expandedWidth: '240px',
5
5
  tabIndex: 0,
6
6
  loading: false,
7
7
  expanded: false,
8
8
  openedItem: null,
9
- footerLabel: "",
9
+ footerLabel: '',
10
10
  onSelectedChange: () => null,
11
11
  onFocusChange: () => null,
12
12
  onFooterExpand: () => null,
13
13
  onFooterClose: () => null,
14
14
  items: [],
15
- labelOverflow: "wrap",
15
+ labelOverflow: 'wrap',
16
16
  onItemClick: () => null
17
17
  };
18
18
  const defaultContext = {
@@ -25,14 +25,10 @@ const defaultContext = {
25
25
  openedDrilldowns: [],
26
26
  setOpenedDrilldowns: () => null,
27
27
  visibleItems: [],
28
- visibleItemsRefs: { current: {} }
28
+ visibleItemsRefs: {
29
+ current: {}
30
+ }
29
31
  };
30
- const LeftNavContext = createContext(defaultContext);
31
- var LeftNavigationContext_default = LeftNavContext;
32
- export {
33
- LeftNavContext,
34
- LeftNavigationContext_default as default,
35
- defaultContext,
36
- defaultProps
37
- };
38
- //# sourceMappingURL=LeftNavigationContext.js.map
32
+ const LeftNavContext = /*#__PURE__*/createContext(defaultContext);
33
+
34
+ export { LeftNavContext, LeftNavContext as default, defaultContext, defaultProps };
@@ -0,0 +1,8 @@
1
+ const commonItemBackgroundStyle = (color, hoverColor, activeColor) => "\n\n background: ".concat(color, ";\n\n :hover {\n background: ").concat(hoverColor, ";\n }\n\n :active {\n background: ").concat(activeColor, ";\n }\n");
2
+
3
+ const getItemBackgroundStyle = props => {
4
+ if (props.selected && !props.opened) return commonItemBackgroundStyle(props.theme.colors.brand[200], props.theme.colors.brand[200], props.theme.colors.brand[200]);
5
+ return commonItemBackgroundStyle(props.theme.colors.neutral['000'], props.theme.colors.neutral['080'], props.theme.colors.brand[200]);
6
+ };
7
+
8
+ export { getItemBackgroundStyle };
@@ -0,0 +1,8 @@
1
+ const commonLeftBorderStyle = (color, hoverColor, activeColor) => "\n\n -webkit-box-shadow: inset 4px 0 0 0 ".concat(color, ";\n box-shadow: inset 4px 0 0 0 ").concat(color, ";\n\n :hover {\n -webkit-box-shadow: inset 4px 0 0 0 ").concat(hoverColor, ";\n box-shadow: inset 4px 0 0 0 ").concat(hoverColor, ";\n }\n\n :active {\n -webkit-box-shadow: inset 4px 0 0 0 ").concat(activeColor, ";\n box-shadow: inset 4px 0 0 0 ").concat(activeColor, ";\n }\n");
2
+
3
+ const getLeftBorderStyle = props => {
4
+ if (props.selected || props.selectedParent) return commonLeftBorderStyle(props.theme.colors.brand[400], props.theme.colors.brand[400], props.theme.colors.brand[400]);
5
+ return commonLeftBorderStyle(props.theme.colors.neutral['000'], props.theme.colors.brand[300], props.theme.colors.brand[400]);
6
+ };
7
+
8
+ export { getLeftBorderStyle };
@@ -0,0 +1,3 @@
1
+ const getScrolbarStyle = () => "\n ::-webkit-scrollbar {\n width: 14px;\n }\n ::-webkit-scrollbar-thumb {\n height: 6px;\n border: 4px solid rgba(0, 0, 0, 0);\n\n background-clip: padding-box;\n\n background-color: rgba(105, 116, 137, 0.5);\n\n border-radius: 7px;\n -webkit-border-radius: 7px;\n }\n ::-webkit-scrollbar-button {\n width: 0;\n height: 0;\n display: none;\n }\n ::-webkit-scrollbar-corner {\n background-color: transparent;\n }\n";
2
+
3
+ export { getScrolbarStyle };
@@ -0,0 +1,3 @@
1
+ export { getItemBackgroundStyle } from './getItemBackgroundStyle.js';
2
+ export { getLeftBorderStyle } from './getLeftBorderStyle.js';
3
+ export { getScrolbarStyle } from './getScrollbarStyle.js';
@@ -0,0 +1,2 @@
1
+ import { useLeftNavConfig } from './useLeftNavConfig.js';
2
+ export { useLeftNavConfig as default, useLeftNavConfig } from './useLeftNavConfig.js';
@@ -0,0 +1,93 @@
1
+ import 'core-js/modules/web.dom-collections.iterator.js';
2
+ import React from 'react';
3
+ import { useLeftNavItems } from './useLeftNavItems.js';
4
+ import { useLeftNavSmoothExpand } from './useLeftNavSmoothExpand.js';
5
+ import { useSelectFirstBodyItem } from '../hooks/useSelectFirstBodyItem.js';
6
+
7
+ const useLeftNavConfig = props => {
8
+ const {
9
+ expanded,
10
+ openedItem,
11
+ onSelectedChange,
12
+ onFocusChange,
13
+ items
14
+ } = props; // -----------------------------------------------------------------------------
15
+ // ************************** ------------ **************************
16
+ // * INTERNAL STATE *
17
+ // ************************** ------------ **************************
18
+ // Selection related
19
+
20
+ const [selectedItem, setSelectedItem] = React.useState(null);
21
+ const [selectedParent, setSelectedParent] = React.useState(null); // Focus related
22
+
23
+ const [focusedItem, setFocusedItem] = React.useState(null); // Opened uncontrolled drilldowns
24
+
25
+ const [openedDrilldowns, setOpenedDrilldowns] = React.useState([]); // -----------------------------------------------------------------------------
26
+ // ************************** ------------ **************************
27
+ // * EXPAND ANIMATION *
28
+ // ************************** ------------ **************************
29
+
30
+ const [expandedForAnimation, setExpandedForAnimation] = React.useState(expanded);
31
+ const timeoutRef = React.useRef(null);
32
+ const smoothExpandOpts = React.useMemo(() => ({
33
+ expandedForAnimation,
34
+ timeoutRef,
35
+ setExpandedForAnimation
36
+ }), [expandedForAnimation, timeoutRef, setExpandedForAnimation]);
37
+ useLeftNavSmoothExpand(props, smoothExpandOpts); // -----------------------------------------------------------------------------
38
+ // ************************** ------------ **************************
39
+ // * SIDE EFFECTS *
40
+ // ************************** ------------ **************************
41
+
42
+ React.useEffect(() => {
43
+ onSelectedChange(selectedItem);
44
+ }, [selectedItem, onSelectedChange]);
45
+ React.useEffect(() => {
46
+ if (props.actionRef && props.actionRef.current) {
47
+ props.actionRef.current.setFocusedItem = setFocusedItem;
48
+ }
49
+ }, [props.actionRef]);
50
+ React.useEffect(() => {
51
+ if (openedItem !== null) setSelectedParent(openedItem);
52
+ }, [openedItem]);
53
+ React.useEffect(() => {
54
+ onFocusChange(focusedItem);
55
+ }, [focusedItem, onFocusChange]);
56
+ useSelectFirstBodyItem(items, openedItem, props.selectedItem !== undefined ? props.selectedItem : selectedItem, setSelectedItem, props.disableDefaultSelection); // -----------------------------------------------------------------------------
57
+ // ************************** ------------ **************************
58
+ // * ITEMS MANAGEMENT *
59
+ // ************************** ------------ **************************
60
+
61
+ const leftNavItemsProps = React.useMemo(() => ({
62
+ headerItem: props.HeaderComponent,
63
+ bodyHeaderItem: props.BodyHeaderComponent,
64
+ items: props.items,
65
+ openedDrilldowns
66
+ }), [props.HeaderComponent, props.BodyHeaderComponent, props.items, openedDrilldowns]); // We need to know the current visible items since we have drilldowns
67
+
68
+ const {
69
+ visibleItems,
70
+ visibleItemsRefs
71
+ } = useLeftNavItems(leftNavItemsProps); // -----------------------------------------------------------------------------
72
+ // ************************** ------------ **************************
73
+ // * LEFTNAV CONFIG *
74
+ // ************************** ------------ **************************
75
+
76
+ const finalConfig = React.useMemo(() => ({
77
+ leftNavProps: props,
78
+ expandedForAnimation,
79
+ selectedItem: props.selectedItem !== undefined ? props.selectedItem : selectedItem,
80
+ setSelectedItem,
81
+ selectedParent: props.selectedParent !== undefined ? props.selectedParent : selectedParent,
82
+ setSelectedParent,
83
+ focusedItem,
84
+ setFocusedItem,
85
+ openedDrilldowns,
86
+ setOpenedDrilldowns,
87
+ visibleItems,
88
+ visibleItemsRefs
89
+ }), [props, expandedForAnimation, selectedItem, setSelectedItem, setSelectedParent, selectedParent, focusedItem, setFocusedItem, openedDrilldowns, setOpenedDrilldowns, visibleItems, visibleItemsRefs]);
90
+ return finalConfig;
91
+ };
92
+
93
+ export { useLeftNavConfig as default, useLeftNavConfig };
@@ -0,0 +1,75 @@
1
+ import 'core-js/modules/esnext.async-iterator.for-each.js';
2
+ import 'core-js/modules/esnext.iterator.constructor.js';
3
+ import 'core-js/modules/esnext.iterator.for-each.js';
4
+ import 'core-js/modules/web.dom-collections.iterator.js';
5
+ import { useMemo, useRef, createRef } from 'react';
6
+ import { ITEM_TYPES, FOOTER_DS_ID } from '../exported-related/constants.js';
7
+ import '@babel/runtime/helpers/esm/jsx';
8
+ import '@elliemae/ds-grid';
9
+ import 'styled-components';
10
+ import 'core-js/modules/esnext.async-iterator.filter.js';
11
+ import 'core-js/modules/esnext.iterator.filter.js';
12
+ import '@babel/runtime/helpers/esm/defineProperty';
13
+ import 'react/jsx-runtime';
14
+ import '@elliemae/ds-icons';
15
+
16
+ const notFocuseableItems = [ITEM_TYPES.LEFT_NAV_ITEM_SEPARATOR, ITEM_TYPES.LEFT_NAV_ITEM_SECTION]; // Walks the array of items
17
+ // Drilldowns are tree-like structures
18
+
19
+ const walkItems = (items, openedDrilldowns, callback) => {
20
+ items.forEach(item => {
21
+ if (typeof item.type === 'string') {
22
+ var _item$itemOpts$items, _item$itemOpts, _item$itemOpts2, _item$itemOpts$items2, _item$itemOpts3;
23
+
24
+ // Out of the box item
25
+ if (notFocuseableItems.includes(item.type)) return; // not focuseable
26
+
27
+ callback(item.dsId); // If it's an opened uncontrolled drilldown
28
+
29
+ if (item.type === ITEM_TYPES.LEFT_NAV_ITEM_UNCONTROLLED_DRILLDOWN && openedDrilldowns.includes(item.dsId)) walkItems((_item$itemOpts$items = (_item$itemOpts = item.itemOpts) === null || _item$itemOpts === void 0 ? void 0 : _item$itemOpts.items) !== null && _item$itemOpts$items !== void 0 ? _item$itemOpts$items : [], openedDrilldowns, callback); // If it's an opened controlled drilldown
30
+
31
+ if (item.type === ITEM_TYPES.LEFT_NAV_ITEM_CONTROLLED_DRILLDOWN && (_item$itemOpts2 = item.itemOpts) !== null && _item$itemOpts2 !== void 0 && _item$itemOpts2.isOpened) walkItems((_item$itemOpts$items2 = (_item$itemOpts3 = item.itemOpts) === null || _item$itemOpts3 === void 0 ? void 0 : _item$itemOpts3.items) !== null && _item$itemOpts$items2 !== void 0 ? _item$itemOpts$items2 : [], openedDrilldowns, callback);
32
+ } else {
33
+ var _item$itemOpts4;
34
+
35
+ // Custom item
36
+ if (!((_item$itemOpts4 = item.itemOpts) !== null && _item$itemOpts4 !== void 0 && _item$itemOpts4.focuseable)) return; // not focuseable specified
37
+
38
+ callback(item.dsId);
39
+ }
40
+ });
41
+ };
42
+
43
+ const useLeftNavItems = props => {
44
+ const {
45
+ headerItem,
46
+ bodyHeaderItem,
47
+ items: bodyItems,
48
+ openedDrilldowns
49
+ } = props; // Place the header and body header items into the array of items
50
+
51
+ const items = useMemo(() => {
52
+ const itemsArray = [...bodyItems];
53
+ if (bodyHeaderItem) itemsArray.unshift(bodyHeaderItem);
54
+ if (headerItem) itemsArray.unshift(headerItem);
55
+ return itemsArray;
56
+ }, [headerItem, bodyHeaderItem, bodyItems]);
57
+ const visibleItemsRefs = useRef({});
58
+ const visibleItems = useMemo(() => {
59
+ const visibleItemsArray = [];
60
+ walkItems(items, openedDrilldowns, dsId => {
61
+ visibleItemsArray.push(dsId);
62
+ });
63
+ visibleItemsArray.push(FOOTER_DS_ID);
64
+ return visibleItemsArray;
65
+ }, [items, openedDrilldowns]);
66
+ visibleItems.forEach(dsId => {
67
+ if (!(dsId in visibleItemsRefs.current)) visibleItemsRefs.current[dsId] = /*#__PURE__*/createRef();
68
+ });
69
+ return {
70
+ visibleItems,
71
+ visibleItemsRefs
72
+ };
73
+ };
74
+
75
+ export { useLeftNavItems as default, useLeftNavItems };