@elliemae/ds-left-navigation 2.3.0-alpha.9 → 2.3.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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,62 @@
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 dsIcons = require('@elliemae/ds-icons');
8
+ var styled = require('styled-components');
9
+ var Grid = require('@elliemae/ds-grid');
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 styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
15
+ var Grid__default = /*#__PURE__*/_interopDefaultLegacy(Grid);
16
+
17
+ const StyledIcon = /*#__PURE__*/styled__default["default"].div.withConfig({
18
+ componentId: "sc-hasbsd-0"
19
+ })(["display:flex;flex-direction:column;align-items:center;"]);
20
+ const Notifications = _ref => {
21
+ let {
22
+ exceptions = false,
23
+ alerts = false,
24
+ messages = false
25
+ } = _ref;
26
+ return /*#__PURE__*/_jsx__default["default"](StyledIcon, {}, void 0, /*#__PURE__*/_jsx__default["default"](dsIcons.Notifications, {
27
+ size: "m",
28
+ color: ['brand-primary', 800],
29
+ "data-testid": "left-nav-notifications-icon"
30
+ }), (exceptions || alerts || messages) && /*#__PURE__*/_jsx__default["default"](Grid__default["default"], {
31
+ cols: ['1fr', '1fr', '1fr'],
32
+ gutter: "xxxs",
33
+ mt: "2px"
34
+ }, void 0, /*#__PURE__*/_jsx__default["default"](Grid__default["default"], {
35
+ width: "6px",
36
+ height: "6px",
37
+ "data-testid": "left-nav-exceptions-icon"
38
+ }, void 0, exceptions && /*#__PURE__*/_jsx__default["default"](dsIcons.ExceptionsSmallFill, {
39
+ width: "6px",
40
+ height: "6px",
41
+ color: ['warning', 900]
42
+ })), /*#__PURE__*/_jsx__default["default"](Grid__default["default"], {
43
+ width: "6px",
44
+ height: "6px",
45
+ "data-testid": "left-nav-alerts-icon"
46
+ }, void 0, alerts && /*#__PURE__*/_jsx__default["default"](dsIcons.AlertsSmallFill, {
47
+ width: "6px",
48
+ height: "6px",
49
+ color: ['danger', 900]
50
+ })), /*#__PURE__*/_jsx__default["default"](Grid__default["default"], {
51
+ width: "6px",
52
+ height: "6px",
53
+ "data-testid": "left-nav-messages-icon"
54
+ }, void 0, messages && /*#__PURE__*/_jsx__default["default"](dsIcons.MessagesSmallFill, {
55
+ width: "6px",
56
+ height: "6px",
57
+ color: ['success', 900]
58
+ }))));
59
+ };
60
+
61
+ exports.Notifications = Notifications;
62
+ exports["default"] = Notifications;
@@ -0,0 +1,33 @@
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 _defineProperty = require('@babel/runtime/helpers/defineProperty');
11
+ require('react');
12
+ var styled = require('styled-components');
13
+ var dsIcons = require('@elliemae/ds-icons');
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 _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
19
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
20
+
21
+ 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; }
22
+
23
+ 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; }
24
+ const StyledOpenWindow = /*#__PURE__*/styled__default["default"](dsIcons.OpenWindow).withConfig({
25
+ componentId: "sc-g53ios-0"
26
+ })(["cursor:pointer;:focus{outline:1px solid ", ";}"], props => props.theme.colors.brand[800]);
27
+ const OpenWindow = props => /*#__PURE__*/jsxRuntime.jsx(StyledOpenWindow, _objectSpread({
28
+ size: "s",
29
+ color: ['brand-primary', 800]
30
+ }, props));
31
+
32
+ exports.OpenWindow = OpenWindow;
33
+ exports["default"] = OpenWindow;
@@ -0,0 +1,29 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const LABEL_OVERFLOW = {
6
+ WRAP: 'wrap',
7
+ WRAP_ALL: 'wrapAll',
8
+ TRUNCATE: 'truncate'
9
+ };
10
+ const ITEM_TYPES = {
11
+ LEFT_NAV_ITEM_HEADER: 'ds-left-nav-item-header',
12
+ LEFT_NAV_ITEM_LINK: 'ds-left-nav-item-link',
13
+ LEFT_NAV_ITEM_SUBMENU: 'ds-left-nav-item-submenu',
14
+ LEFT_NAV_ITEM_CONTROLLED_DRILLDOWN: 'ds-left-nav-item-controlled-drilldown',
15
+ LEFT_NAV_ITEM_UNCONTROLLED_DRILLDOWN: 'ds-left-nav-item-uncontrolled-drilldown',
16
+ LEFT_NAV_ITEM_SECTION: 'ds-left-nav-item-section',
17
+ LEFT_NAV_ITEM_SEPARATOR: 'ds-left-nav-item-separator',
18
+ LEFT_NAV_ITEM_TEXT_LABEL: 'ds-left-nav-item-text-label',
19
+ LEFT_NAV_ITEM_WITH_DATE: 'ds-left-nav-item-with-date'
20
+ };
21
+ const FOOTER_DS_ID = 'ds-left-nav-__internal__-footer';
22
+ const FOOTER_MENU_CLOSE_DS_ID = 'ds-left-nav-__internal__-footer-menu-close';
23
+ const CHEVRON_BACK_DS_ID = 'ds-left-nav-__internal__-chevron-back';
24
+
25
+ exports.CHEVRON_BACK_DS_ID = CHEVRON_BACK_DS_ID;
26
+ exports.FOOTER_DS_ID = FOOTER_DS_ID;
27
+ exports.FOOTER_MENU_CLOSE_DS_ID = FOOTER_MENU_CLOSE_DS_ID;
28
+ exports.ITEM_TYPES = ITEM_TYPES;
29
+ exports.LABEL_OVERFLOW = LABEL_OVERFLOW;
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var constants = require('./constants.js');
6
+ var index = require('./ItemRenderer/index.js');
7
+ var index$1 = require('./ChevronItem/index.js');
8
+ var index$2 = require('./Notifications/index.js');
9
+ var index$3 = require('./OpenWindowItem/index.js');
10
+ var index$4 = require('./Icon/index.js');
11
+
12
+
13
+
14
+ exports.CHEVRON_BACK_DS_ID = constants.CHEVRON_BACK_DS_ID;
15
+ exports.FOOTER_DS_ID = constants.FOOTER_DS_ID;
16
+ exports.FOOTER_MENU_CLOSE_DS_ID = constants.FOOTER_MENU_CLOSE_DS_ID;
17
+ exports.ITEM_TYPES = constants.ITEM_TYPES;
18
+ exports.LABEL_OVERFLOW = constants.LABEL_OVERFLOW;
19
+ exports.ItemRenderer = index.ItemRenderer;
20
+ exports.ChevronItem = index$1.ChevronItem;
21
+ exports.Notifications = index$2.Notifications;
22
+ exports.OpenWindow = index$3.OpenWindow;
23
+ exports.Icon = index$4.Icon;
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var useOpenableOnClickHandler = require('./useOpenableOnClickHandler.js');
6
+ var useExpandableOnClickHandler = require('./useExpandableOnClickHandler.js');
7
+ var useKeyboardNavigation = require('./useKeyboardNavigation.js');
8
+
9
+
10
+
11
+ exports.useOpenableOnClickHandler = useOpenableOnClickHandler.useOpenableOnClickHandler;
12
+ exports.useExpandableOnClickHandler = useExpandableOnClickHandler.useExpandableOnClickHandler;
13
+ exports.useKeyboardNavigation = useKeyboardNavigation.useKeyboardNavigation;
@@ -0,0 +1,35 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var LeftNavigationContext = require('../LeftNavigationContext.js');
7
+
8
+ const useExpandableOnClickHandler = _ref => {
9
+ let {
10
+ id,
11
+ onExpand,
12
+ onOpen,
13
+ selectable = true
14
+ } = _ref;
15
+ const {
16
+ leftNavProps: {
17
+ expanded
18
+ },
19
+ setSelectedItem
20
+ } = React.useContext(LeftNavigationContext.LeftNavContext);
21
+ const handleOnExpand = React.useCallback(e => {
22
+ onExpand(e);
23
+ if (selectable) setSelectedItem(id);
24
+ }, [id, onExpand, setSelectedItem, selectable]);
25
+ const handleOnOpen = React.useCallback(e => {
26
+ onOpen(e);
27
+ if (selectable) setSelectedItem(id);
28
+ }, [id, onOpen, setSelectedItem, selectable]);
29
+ const handleOnClick = React.useCallback(e => {
30
+ if (!expanded) handleOnExpand(e);else handleOnOpen(e);
31
+ }, [expanded, handleOnExpand, handleOnOpen]);
32
+ return handleOnClick;
33
+ };
34
+
35
+ exports.useExpandableOnClickHandler = useExpandableOnClickHandler;
@@ -0,0 +1,110 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var constants = require('../exported-related/constants.js');
7
+ var LeftNavigationContext = require('../LeftNavigationContext.js');
8
+
9
+ /* eslint-disable max-statements */
10
+ const KEY_CODES = {
11
+ TAB: 9,
12
+ ENTER: 13,
13
+ SPACE: 32,
14
+ LEFT_ARROW: 37,
15
+ UP_ARROW: 38,
16
+ RIGHT_ARROW: 39,
17
+ DOWN_ARROW: 40,
18
+ END: 35,
19
+ HOME: 36
20
+ };
21
+
22
+ const nextIndex = (index, length) => (index + 1) % length;
23
+
24
+ const prevIndex = (index, length) => (index - 1 + length) % length;
25
+
26
+ const useKeyboardNavigation = _ref => {
27
+ let {
28
+ item,
29
+ onClick
30
+ } = _ref;
31
+ const {
32
+ dsId,
33
+ itemOpts: {
34
+ selectable,
35
+ openable,
36
+ closable
37
+ }
38
+ } = item;
39
+ const {
40
+ visibleItems,
41
+ visibleItemsRefs
42
+ } = React.useContext(LeftNavigationContext.LeftNavContext);
43
+ const currentIndex = React.useMemo(() => visibleItems.findIndex(visibleItemDsId => visibleItemDsId === dsId), [dsId, visibleItems]);
44
+ const {
45
+ setFocusedItem,
46
+ focusedItem,
47
+ setSelectedItem
48
+ } = React.useContext(LeftNavigationContext.LeftNavContext);
49
+ const focusAndSelect = React.useCallback(nextDsId => {
50
+ setFocusedItem(nextDsId);
51
+ setSelectedItem(nextDsId);
52
+ }, [setFocusedItem, setSelectedItem]);
53
+ React.useLayoutEffect(() => {
54
+ var _visibleItemsRefs$cur, _visibleItemsRefs$cur2;
55
+
56
+ if (dsId === focusedItem) (_visibleItemsRefs$cur = visibleItemsRefs.current[dsId]) === null || _visibleItemsRefs$cur === void 0 ? void 0 : (_visibleItemsRefs$cur2 = _visibleItemsRefs$cur.current) === null || _visibleItemsRefs$cur2 === void 0 ? void 0 : _visibleItemsRefs$cur2.focus();
57
+ }, [dsId, focusedItem, visibleItemsRefs]);
58
+ const onKeyDown = React.useCallback(e => {
59
+ const {
60
+ keyCode
61
+ } = e; // Prevent default behaviour when not tab
62
+
63
+ if (keyCode !== KEY_CODES.TAB) {
64
+ e.preventDefault();
65
+ }
66
+
67
+ if (keyCode === KEY_CODES.ENTER || keyCode === KEY_CODES.SPACE) {
68
+ if (selectable) {
69
+ onClick(e);
70
+ focusAndSelect(dsId);
71
+ } else if (focusedItem === constants.CHEVRON_BACK_DS_ID) {
72
+ onClick(e);
73
+ focusAndSelect(dsId);
74
+ } else if (focusedItem === constants.FOOTER_MENU_CLOSE_DS_ID) {
75
+ onClick(e);
76
+ setFocusedItem(dsId);
77
+ }
78
+ }
79
+
80
+ if (openable && keyCode === KEY_CODES.RIGHT_ARROW) {
81
+ onClick(e);
82
+ }
83
+
84
+ if (closable && keyCode === KEY_CODES.LEFT_ARROW) {
85
+ onClick(e);
86
+ setFocusedItem(dsId);
87
+ }
88
+
89
+ if (keyCode === KEY_CODES.DOWN_ARROW) {
90
+ const nextDsId = visibleItems[nextIndex(currentIndex, visibleItems.length)];
91
+ setFocusedItem(nextDsId);
92
+ }
93
+
94
+ if (keyCode === KEY_CODES.UP_ARROW) {
95
+ const prevDsId = visibleItems[prevIndex(currentIndex, visibleItems.length)];
96
+ setFocusedItem(prevDsId);
97
+ }
98
+
99
+ if (keyCode === KEY_CODES.HOME) {
100
+ setFocusedItem(visibleItems[0]);
101
+ }
102
+
103
+ if (keyCode === KEY_CODES.END) {
104
+ setFocusedItem(visibleItems[visibleItems.length - 1]);
105
+ }
106
+ }, [openable, closable, selectable, focusedItem, onClick, focusAndSelect, dsId, setFocusedItem, visibleItems, currentIndex]);
107
+ return onKeyDown;
108
+ };
109
+
110
+ exports.useKeyboardNavigation = useKeyboardNavigation;
@@ -0,0 +1,40 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var LeftNavigationContext = require('../LeftNavigationContext.js');
7
+
8
+ const useOpenableOnClickHandler = _ref => {
9
+ let {
10
+ id,
11
+ opened,
12
+ onExpand,
13
+ onOpen,
14
+ onClose
15
+ } = _ref;
16
+ const {
17
+ leftNavProps: {
18
+ expanded
19
+ },
20
+ setSelectedItem
21
+ } = React.useContext(LeftNavigationContext.LeftNavContext);
22
+ const handleOnExpand = React.useCallback(e => {
23
+ onExpand(e);
24
+ setSelectedItem(id);
25
+ }, [id, onExpand, setSelectedItem]);
26
+ const handleOnOpen = React.useCallback(e => {
27
+ onOpen(e);
28
+ setSelectedItem(id);
29
+ }, [id, onOpen, setSelectedItem]);
30
+ const handleOnClose = React.useCallback(e => {
31
+ onClose(e);
32
+ setSelectedItem(id);
33
+ }, [id, onClose, setSelectedItem]);
34
+ const handleOnClick = React.useCallback(e => {
35
+ if (!expanded) handleOnExpand(e);else if (!opened) handleOnOpen(e);else handleOnClose(e);
36
+ }, [expanded, opened, handleOnExpand, handleOnOpen, handleOnClose]);
37
+ return handleOnClick;
38
+ };
39
+
40
+ exports.useOpenableOnClickHandler = useOpenableOnClickHandler;
@@ -0,0 +1,39 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('core-js/modules/esnext.async-iterator.some.js');
6
+ require('core-js/modules/esnext.iterator.constructor.js');
7
+ require('core-js/modules/esnext.iterator.some.js');
8
+ var React = require('react');
9
+ var constants = require('../exported-related/constants.js');
10
+
11
+ const {
12
+ LEFT_NAV_ITEM_SEPARATOR,
13
+ LEFT_NAV_ITEM_SECTION
14
+ } = constants.ITEM_TYPES;
15
+
16
+ const isSelectableOutOfTheBox = elem => typeof elem.type === 'string' && elem.type !== LEFT_NAV_ITEM_SEPARATOR && elem.type !== LEFT_NAV_ITEM_SECTION;
17
+
18
+ const isSelectableCustom = elem => elem.itemOpts.selectable;
19
+
20
+ const isItemInsideTheTree = (item, itemID) => {
21
+ var _item$itemOpts, _item$itemOpts$items;
22
+
23
+ return item.dsId === itemID || !!(item !== null && item !== void 0 && (_item$itemOpts = item.itemOpts) !== null && _item$itemOpts !== void 0 && (_item$itemOpts$items = _item$itemOpts.items) !== null && _item$itemOpts$items !== void 0 && _item$itemOpts$items.some(it => isItemInsideTheTree(it, itemID)));
24
+ };
25
+
26
+ const useSelectFirstBodyItem = (items, openedItem, selectedItem, setSelectedItem, disableDefaultSelection) => {
27
+ React.useEffect(() => {
28
+ if (!disableDefaultSelection && items && items.length && openedItem) {
29
+ var _items$index$dsId;
30
+
31
+ const index = items.findIndex(elem => isSelectableOutOfTheBox(elem) || isSelectableCustom(elem));
32
+ const isItemInside = items.some(it => isItemInsideTheTree(it, selectedItem));
33
+ if (isItemInside) setSelectedItem(selectedItem);else if (index !== -1) setSelectedItem((_items$index$dsId = items[index].dsId) !== null && _items$index$dsId !== void 0 ? _items$index$dsId : '');
34
+ } // eslint-disable-next-line react-hooks/exhaustive-deps
35
+
36
+ }, [openedItem, setSelectedItem, disableDefaultSelection]);
37
+ };
38
+
39
+ exports.useSelectFirstBodyItem = useSelectFirstBodyItem;
package/cjs/index.d.js ADDED
@@ -0,0 +1,2 @@
1
+ 'use strict';
2
+
package/cjs/index.js ADDED
@@ -0,0 +1,30 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var propTypes = require('./prop-types.js');
6
+ var LeftNavigation = require('./LeftNavigation.js');
7
+ var constants = require('./exported-related/constants.js');
8
+ var index = require('./exported-related/ItemRenderer/index.js');
9
+ var index$1 = require('./exported-related/ChevronItem/index.js');
10
+ var index$2 = require('./exported-related/Notifications/index.js');
11
+ var index$3 = require('./exported-related/OpenWindowItem/index.js');
12
+ var index$4 = require('./exported-related/Icon/index.js');
13
+
14
+
15
+
16
+ exports.LeftNavItemOptionsSchema = propTypes.LeftNavItemOptionsSchema;
17
+ exports.LeftNavItemPropsSchema = propTypes.LeftNavItemPropsSchema;
18
+ exports.LeftNavigation = LeftNavigation.LeftNavigation;
19
+ exports.LeftNavigationWithSchema = LeftNavigation.LeftNavigationWithSchema;
20
+ exports["default"] = LeftNavigation.LeftNavigation;
21
+ exports.CHEVRON_BACK_DS_ID = constants.CHEVRON_BACK_DS_ID;
22
+ exports.FOOTER_DS_ID = constants.FOOTER_DS_ID;
23
+ exports.FOOTER_MENU_CLOSE_DS_ID = constants.FOOTER_MENU_CLOSE_DS_ID;
24
+ exports.ITEM_TYPES = constants.ITEM_TYPES;
25
+ exports.LABEL_OVERFLOW = constants.LABEL_OVERFLOW;
26
+ exports.ItemRenderer = index.ItemRenderer;
27
+ exports.ChevronItem = index$1.ChevronItem;
28
+ exports.Notifications = index$2.Notifications;
29
+ exports.OpenWindow = index$3.OpenWindow;
30
+ exports.Icon = index$4.Icon;
@@ -0,0 +1,158 @@
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/esnext.async-iterator.map.js');
8
+ require('core-js/modules/esnext.iterator.map.js');
9
+ require('core-js/modules/esnext.async-iterator.filter.js');
10
+ require('core-js/modules/esnext.iterator.constructor.js');
11
+ require('core-js/modules/esnext.iterator.filter.js');
12
+ require('core-js/modules/esnext.async-iterator.for-each.js');
13
+ require('core-js/modules/esnext.iterator.for-each.js');
14
+ var React = require('react');
15
+ var Grid = require('@elliemae/ds-grid');
16
+ var dsTruncatedTooltipText = require('@elliemae/ds-truncated-tooltip-text');
17
+ var dsIcons = require('@elliemae/ds-icons');
18
+ var constants = require('../../exported-related/constants.js');
19
+ var index$3 = require('../../exported-related/ItemRenderer/index.js');
20
+ require('react/jsx-runtime');
21
+ require('styled-components');
22
+ var styled = require('./styled.js');
23
+ var index = require('../ItemSeparator/index.js');
24
+ var index$1 = require('../ItemWithDate/index.js');
25
+ var index$2 = require('../ItemTextLabel/index.js');
26
+
27
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
28
+
29
+ var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
30
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
31
+ var Grid__default = /*#__PURE__*/_interopDefaultLegacy(Grid);
32
+
33
+ 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; }
34
+
35
+ 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; }
36
+ const outOfTheBoxSubitemsComponents = {
37
+ [constants.ITEM_TYPES.LEFT_NAV_ITEM_SEPARATOR]: index.ItemSeparator,
38
+ [constants.ITEM_TYPES.LEFT_NAV_ITEM_WITH_DATE]: index$1.ItemWithDate,
39
+ [constants.ITEM_TYPES.LEFT_NAV_ITEM_TEXT_LABEL]: index$2.ItemTextLabel
40
+ };
41
+
42
+ const OutOfTheBoxMapSubitem = props => {
43
+ const {
44
+ item,
45
+ item: {
46
+ type,
47
+ Component
48
+ },
49
+ ctx
50
+ } = props;
51
+
52
+ if (typeof type === 'string' && !!outOfTheBoxSubitemsComponents[type]) {
53
+ var _item$itemOpts$indent, _item$itemOpts;
54
+
55
+ const OutOfTheBoxComponent = outOfTheBoxSubitemsComponents[type];
56
+ const currentIndent = (_item$itemOpts$indent = (_item$itemOpts = item.itemOpts) === null || _item$itemOpts === void 0 ? void 0 : _item$itemOpts.indent) !== null && _item$itemOpts$indent !== void 0 ? _item$itemOpts$indent : 0;
57
+
58
+ const newItem = _objectSpread(_objectSpread({}, item), {}, {
59
+ itemOpts: _objectSpread(_objectSpread({}, item.itemOpts), {}, {
60
+ indent: currentIndent + 44
61
+ })
62
+ });
63
+
64
+ return /*#__PURE__*/_jsx__default["default"](OutOfTheBoxComponent, {
65
+ item: newItem,
66
+ ctx: ctx
67
+ });
68
+ } // we expect an error to be threw if Component is not defined and type is not a valid out-of-the-box...
69
+
70
+
71
+ return /*#__PURE__*/_jsx__default["default"](Component, {
72
+ item: item,
73
+ ctx: ctx
74
+ });
75
+ };
76
+
77
+ const ItemControlledDrilldown = props => {
78
+ const {
79
+ item,
80
+ item: {
81
+ itemOpts: {
82
+ label,
83
+ RightComponent,
84
+ labelRightSection,
85
+ labelOverflow: itemLabelOverflow,
86
+ labelBold,
87
+ labelColor,
88
+ isOpened,
89
+ items,
90
+ labelDataTestId
91
+ }
92
+ },
93
+ ctx,
94
+ ctx: {
95
+ leftNavProps: {
96
+ labelOverflow: leftNavLabelOverflow
97
+ }
98
+ }
99
+ } = props;
100
+ const labelOverflow = itemLabelOverflow || leftNavLabelOverflow;
101
+ const arrowIcon = React.useMemo(() => {
102
+ const Component = isOpened ? dsIcons.ArrowheadDown : dsIcons.ArrowheadRight;
103
+ return /*#__PURE__*/_jsx__default["default"](Component, {
104
+ width: "24px",
105
+ height: "18px",
106
+ color: ['brand-primary', '800']
107
+ });
108
+ }, [isOpened]);
109
+ const subitems = React.useMemo(() => {
110
+ if (!isOpened || !items) return [];
111
+ return items.map(subitem => /*#__PURE__*/_jsx__default["default"](OutOfTheBoxMapSubitem, {
112
+ item: subitem,
113
+ ctx: ctx
114
+ }, subitem.dsId));
115
+ }, [items, isOpened]);
116
+ return /*#__PURE__*/_jsx__default["default"](index$3.ItemRenderer, {
117
+ item: _objectSpread(_objectSpread({}, item), {}, {
118
+ itemOpts: _objectSpread(_objectSpread({
119
+ ariaExpanded: isOpened,
120
+ ariaRole: 'menuitem'
121
+ }, item.itemOpts), {}, {
122
+ openable: !isOpened,
123
+ closable: isOpened
124
+ }),
125
+ CollapsedComponent: null
126
+ }),
127
+ subitems: subitems,
128
+ minHeight: "32px",
129
+ paddingTop: "8px"
130
+ }, void 0, /*#__PURE__*/_jsx__default["default"](Grid__default["default"], {
131
+ pl: "xxs",
132
+ mt: "-2px"
133
+ }, void 0, arrowIcon), /*#__PURE__*/_jsx__default["default"](styled.StyledLabel, {
134
+ pb: "xxxs",
135
+ "data-testid": labelDataTestId || 'leftnav-list-item-label',
136
+ labelOverflow: labelOverflow,
137
+ labelBold: labelBold,
138
+ labelColor: labelColor
139
+ }, void 0, labelOverflow === 'truncate' ? /*#__PURE__*/_jsx__default["default"](dsTruncatedTooltipText.SimpleTruncatedTooltipText, {
140
+ value: label,
141
+ placement: "bottom-start"
142
+ }) : label), /*#__PURE__*/_jsx__default["default"](Grid__default["default"], {
143
+ pr: "xxs2",
144
+ cols: ['auto', 'auto'],
145
+ alignItems: "center"
146
+ }, void 0, /*#__PURE__*/_jsx__default["default"](styled.StyledDate, {
147
+ ml: "xxs",
148
+ "data-testid": "leftnav-list-item-date"
149
+ }, void 0, labelRightSection), /*#__PURE__*/_jsx__default["default"](Grid__default["default"], {
150
+ pl: RightComponent ? 'xxs' : '0px',
151
+ "data-testid": "leftnav-right-component"
152
+ }, void 0, RightComponent && /*#__PURE__*/_jsx__default["default"](RightComponent, {
153
+ ctx: ctx,
154
+ item: item
155
+ }))));
156
+ };
157
+
158
+ exports.ItemControlledDrilldown = ItemControlledDrilldown;
@@ -0,0 +1,27 @@
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
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
+
10
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
11
+ var Grid__default = /*#__PURE__*/_interopDefaultLegacy(Grid);
12
+
13
+ const StyledLabel = /*#__PURE__*/styled__default["default"](Grid__default["default"]).withConfig({
14
+ componentId: "sc-1tjij7e-0"
15
+ })(["font-size:13px;font-weight:", ";color:", ";line-height:14px;word-break:", ";"], props => props.labelBold ? props.theme.fontWeights.semibold : props.theme.fontWeights.regular, _ref => {
16
+ let {
17
+ labelColor,
18
+ theme
19
+ } = _ref;
20
+ return labelColor ? theme.colors[labelColor[0]][labelColor[1]] : theme.colors.neutral[800];
21
+ }, props => props.labelOverflow === 'wrapAll' ? 'break-all' : 'normal');
22
+ const StyledDate = /*#__PURE__*/styled__default["default"](Grid__default["default"]).withConfig({
23
+ componentId: "sc-1tjij7e-1"
24
+ })(["font-size:12px;color:", ";line-height:14px;"], props => props.theme.colors.neutral[600]);
25
+
26
+ exports.StyledDate = StyledDate;
27
+ exports.StyledLabel = StyledLabel;