@databiosphere/findable-ui 18.0.0 → 20.0.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 (536) hide show
  1. package/.release-please-manifest.json +1 -1
  2. package/CHANGELOG.md +22 -0
  3. package/lib/components/Authentication/components/SessionController/components/GoogleSessionController/SessionController.d.ts +2 -0
  4. package/lib/components/Authentication/components/SessionController/components/GoogleSessionController/SessionController.js +29 -0
  5. package/lib/components/Authentication/components/SessionController/components/GoogleSessionController/types.d.ts +6 -0
  6. package/lib/components/Authentication/components/SessionController/components/NextSessionController/SessionController.d.ts +2 -0
  7. package/lib/components/Authentication/components/SessionController/components/NextSessionController/SessionController.js +17 -0
  8. package/lib/components/Authentication/components/SessionController/components/NextSessionController/constants.d.ts +5 -0
  9. package/lib/components/Authentication/components/SessionController/components/NextSessionController/constants.js +12 -0
  10. package/lib/components/Authentication/components/SessionController/components/NextSessionController/types.d.ts +4 -0
  11. package/lib/components/Authentication/components/SessionController/components/NextSessionController/types.js +1 -0
  12. package/lib/components/Authentication/components/SessionController/components/NextSessionController/utils.d.ts +15 -0
  13. package/lib/components/Authentication/components/SessionController/components/NextSessionController/utils.js +53 -0
  14. package/lib/components/ComponentCreator/ComponentCreator.js +2 -3
  15. package/lib/components/Detail/components/Table/components/TableRows/components/CollapsableRows/collapsableRows.js +2 -0
  16. package/lib/components/Detail/components/Table/components/TableRows/tableRows.js +1 -15
  17. package/lib/components/Export/components/ExportForm/components/ExportFileSummaryForm/exportFileSummaryForm.js +9 -10
  18. package/lib/components/Export/components/ExportToTerra/components/TerraSetUpForm/components/FormStep/components/AcceptTerraTOS/acceptTerraTOS.js +2 -2
  19. package/lib/components/Export/components/ExportToTerra/components/TerraSetUpForm/components/NIHAccountExpiryWarning/nihAccountExpiryWarning.js +1 -1
  20. package/lib/components/Export/components/ExportToTerra/components/TerraSetUpForm/terraSetUpForm.js +8 -3
  21. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/authentication.d.ts +2 -1
  22. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/authentication.js +17 -14
  23. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.d.ts +3 -4
  24. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.js +15 -24
  25. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.styles.d.ts +1 -1
  26. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.styles.js +2 -2
  27. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/constants.d.ts +2 -0
  28. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/constants.js +14 -0
  29. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/Button/button.styles.js +3 -2
  30. package/lib/components/Layout/components/Header/header.js +1 -1
  31. package/lib/components/Links/components/Link/components/ExploreViewLink/exploreViewLink.js +23 -12
  32. package/lib/components/Login/components/Button/button.d.ts +2 -0
  33. package/lib/components/Login/components/Button/button.js +6 -0
  34. package/lib/components/Login/components/Button/button.styles.d.ts +5 -0
  35. package/lib/components/Login/components/Button/button.styles.js +11 -0
  36. package/lib/components/Login/components/Button/constants.d.ts +2 -0
  37. package/lib/components/Login/components/Button/constants.js +6 -0
  38. package/lib/components/Login/components/Button/types.d.ts +3 -0
  39. package/lib/components/Login/components/Button/types.js +1 -0
  40. package/lib/components/Login/login.d.ts +2 -9
  41. package/lib/components/Login/login.js +9 -10
  42. package/lib/components/Login/types.d.ts +10 -0
  43. package/lib/components/Login/types.js +1 -0
  44. package/lib/components/Table/common/columnDef.js +1 -0
  45. package/lib/components/Table/common/gridTable.styles.js +5 -11
  46. package/lib/components/Table/common/utils.d.ts +3 -29
  47. package/lib/components/Table/common/utils.js +25 -60
  48. package/lib/components/Table/components/TableBody/hooks/virtualizer/constants.d.ts +3 -0
  49. package/lib/components/Table/components/TableBody/hooks/virtualizer/constants.js +3 -0
  50. package/lib/components/Table/components/TableBody/hooks/virtualizer/hook.d.ts +8 -0
  51. package/lib/components/Table/components/TableBody/hooks/virtualizer/hook.js +18 -0
  52. package/lib/components/Table/components/TableBody/hooks/virtualizer/types.d.ts +4 -0
  53. package/lib/components/Table/components/TableBody/hooks/virtualizer/types.js +1 -0
  54. package/lib/components/Table/components/TableBody/tableBody.d.ts +3 -2
  55. package/lib/components/Table/components/TableBody/tableBody.js +7 -28
  56. package/lib/components/Table/components/TableBody/utils.d.ts +12 -0
  57. package/lib/components/Table/components/TableBody/utils.js +17 -0
  58. package/lib/components/Table/components/TableCell/components/CollapsableCell/collapsableCell.d.ts +3 -1
  59. package/lib/components/Table/components/TableCell/components/CollapsableCell/collapsableCell.js +6 -14
  60. package/lib/components/Table/components/TableFeatures/ColumnGrouping/utils.d.ts +28 -0
  61. package/lib/components/Table/components/TableFeatures/ColumnGrouping/utils.js +52 -0
  62. package/lib/components/Table/components/TableFeatures/ColumnVisibility/utils.d.ts +21 -0
  63. package/lib/components/Table/components/TableFeatures/ColumnVisibility/utils.js +37 -0
  64. package/lib/components/Table/components/TableFeatures/RowSorting/utils.d.ts +29 -0
  65. package/lib/components/Table/components/TableFeatures/RowSorting/utils.js +68 -0
  66. package/lib/components/Table/components/TableHead/tableHead.d.ts +2 -6
  67. package/lib/components/Table/components/TableHead/tableHead.js +6 -4
  68. package/lib/components/Table/components/TableHead/types.d.ts +6 -0
  69. package/lib/components/Table/components/TableHead/types.js +1 -0
  70. package/lib/components/Table/components/TableHead/utils.d.ts +19 -0
  71. package/lib/components/Table/components/TableHead/utils.js +34 -0
  72. package/lib/components/Table/components/TableRow/tableRow.styles.d.ts +1 -0
  73. package/lib/components/Table/components/TableRow/tableRow.styles.js +14 -2
  74. package/lib/components/Table/components/TableRows/components/CollapsableRows/collapsableRows.d.ts +3 -2
  75. package/lib/components/Table/components/TableRows/components/CollapsableRows/collapsableRows.js +8 -4
  76. package/lib/components/Table/components/TableRows/components/CollapsableRows/hook.d.ts +9 -0
  77. package/lib/components/Table/components/TableRows/components/CollapsableRows/hook.js +17 -0
  78. package/lib/components/Table/components/TableRows/tableRows.d.ts +3 -3
  79. package/lib/components/Table/components/TableRows/tableRows.js +9 -5
  80. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/columnGrouping.d.ts +3 -0
  81. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/columnGrouping.js +26 -0
  82. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/columnGrouping.styles.d.ts +2 -0
  83. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/columnGrouping.styles.js +16 -0
  84. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/components/MenuItems/menuItems.d.ts +3 -0
  85. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/components/MenuItems/menuItems.js +12 -0
  86. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/components/MenuItems/types.d.ts +7 -0
  87. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/components/MenuItems/types.js +1 -0
  88. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/constants.d.ts +4 -0
  89. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/constants.js +13 -0
  90. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/types.d.ts +4 -0
  91. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/types.js +1 -0
  92. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/utils.d.ts +17 -0
  93. package/lib/components/Table/components/TableToolbar/components/ColumnGrouping/utils.js +36 -0
  94. package/lib/components/Table/components/TableToolbar/components/RowSelection/components/DropdownMenu/dropdownMenu.d.ts +2 -3
  95. package/lib/components/Table/components/TableToolbar/components/RowSelection/components/DropdownMenu/dropdownMenu.js +3 -11
  96. package/lib/components/Table/components/TableToolbar/tableToolbar.js +4 -2
  97. package/lib/components/Table/features/RowPosition/constants.js +2 -2
  98. package/lib/components/Table/features/RowPosition/utils.d.ts +2 -2
  99. package/lib/components/Table/features/RowPosition/utils.js +12 -5
  100. package/lib/components/Table/options/updater.d.ts +10 -0
  101. package/lib/components/Table/options/updater.js +24 -0
  102. package/lib/components/Table/table.js +22 -17
  103. package/lib/components/TableCreator/common/constants.d.ts +2 -2
  104. package/lib/components/TableCreator/common/constants.js +2 -1
  105. package/lib/components/TableCreator/common/utils.d.ts +5 -2
  106. package/lib/components/TableCreator/common/utils.js +11 -4
  107. package/lib/components/TableCreator/options/expanded/constants.d.ts +2 -0
  108. package/lib/components/TableCreator/options/expanded/constants.js +6 -0
  109. package/lib/components/TableCreator/options/expanded/hook.d.ts +2 -0
  110. package/lib/components/TableCreator/options/expanded/hook.js +4 -0
  111. package/lib/components/TableCreator/options/grouping/constants.d.ts +2 -0
  112. package/lib/components/TableCreator/options/grouping/constants.js +5 -0
  113. package/lib/components/TableCreator/options/grouping/hook.d.ts +2 -0
  114. package/lib/components/TableCreator/options/grouping/hook.js +9 -0
  115. package/lib/components/TableCreator/options/hook.d.ts +2 -0
  116. package/lib/components/TableCreator/options/hook.js +25 -0
  117. package/lib/components/TableCreator/options/rowSelection/constants.d.ts +2 -0
  118. package/lib/components/TableCreator/options/rowSelection/constants.js +5 -0
  119. package/lib/components/TableCreator/options/rowSelection/hook.d.ts +2 -0
  120. package/lib/components/TableCreator/options/rowSelection/hook.js +4 -0
  121. package/lib/components/TableCreator/options/sorting/constants.d.ts +2 -0
  122. package/lib/components/TableCreator/options/sorting/constants.js +5 -0
  123. package/lib/components/TableCreator/options/sorting/hook.d.ts +2 -0
  124. package/lib/components/TableCreator/options/sorting/hook.js +4 -0
  125. package/lib/components/TableCreator/tableCreator.d.ts +3 -5
  126. package/lib/components/TableCreator/tableCreator.js +4 -2
  127. package/lib/components/common/Banner/components/SessionTimeout/sessionTimeout.js +1 -1
  128. package/lib/components/common/CustomIcon/common/entities.d.ts +1 -4
  129. package/lib/components/common/CustomIcon/components/GoogleIcon/googleIcon.d.ts +2 -2
  130. package/lib/components/common/CustomIcon/components/GoogleIcon/googleIcon.js +1 -1
  131. package/lib/components/common/DropdownMenu/dropdownMenu.d.ts +2 -3
  132. package/lib/components/common/DropdownMenu/dropdownMenu.js +7 -7
  133. package/lib/components/common/DropdownMenu/dropdownMenu.styles.d.ts +1 -1
  134. package/lib/components/common/DropdownMenu/dropdownMenu.styles.js +1 -1
  135. package/lib/components/common/Menu/hooks/useMenu.d.ts +5 -6
  136. package/lib/config/entities.d.ts +28 -29
  137. package/lib/config/utils.d.ts +0 -7
  138. package/lib/config/utils.js +0 -12
  139. package/lib/hooks/authentication/auth/useAuthReducer.d.ts +2 -0
  140. package/lib/hooks/authentication/auth/useAuthReducer.js +8 -0
  141. package/lib/hooks/authentication/authentication/useAuthenticationReducer.d.ts +2 -0
  142. package/lib/hooks/authentication/authentication/useAuthenticationReducer.js +8 -0
  143. package/lib/hooks/authentication/config/useAuthenticationConfig.d.ts +6 -0
  144. package/lib/hooks/authentication/config/useAuthenticationConfig.js +9 -0
  145. package/lib/hooks/authentication/credentials/useCredentialsReducer.d.ts +2 -0
  146. package/lib/hooks/authentication/credentials/useCredentialsReducer.js +7 -0
  147. package/lib/hooks/authentication/profile/types.d.ts +5 -0
  148. package/lib/hooks/authentication/profile/types.js +1 -0
  149. package/lib/hooks/authentication/profile/useProfile.d.ts +6 -0
  150. package/lib/hooks/authentication/profile/useProfile.js +15 -0
  151. package/lib/hooks/authentication/providers/types.d.ts +6 -0
  152. package/lib/hooks/authentication/providers/types.js +1 -0
  153. package/lib/hooks/authentication/providers/useProviders.d.ts +6 -0
  154. package/lib/hooks/authentication/providers/useProviders.js +14 -0
  155. package/lib/hooks/authentication/session/useSessionActive.d.ts +12 -0
  156. package/lib/hooks/authentication/session/useSessionActive.js +36 -0
  157. package/lib/hooks/authentication/session/useSessionCallbackUrl.d.ts +4 -0
  158. package/lib/hooks/authentication/session/useSessionCallbackUrl.js +20 -0
  159. package/lib/hooks/authentication/session/useSessionIdleTimer.d.ts +6 -0
  160. package/lib/hooks/authentication/session/useSessionIdleTimer.js +8 -0
  161. package/lib/hooks/{useSessionTimeout.js → authentication/session/useSessionTimeout.js} +2 -2
  162. package/lib/hooks/{useAuthentication → authentication/terra}/useAuthenticationForm.d.ts +0 -1
  163. package/lib/hooks/{useAuthentication → authentication/terra}/useAuthenticationForm.js +6 -9
  164. package/lib/hooks/{useAuthentication → authentication/terra}/useAuthenticationNIHExpiry.js +3 -4
  165. package/lib/hooks/authentication/token/types.d.ts +4 -0
  166. package/lib/hooks/authentication/token/types.js +1 -0
  167. package/lib/hooks/authentication/token/useToken.d.ts +2 -0
  168. package/lib/hooks/authentication/token/useToken.js +5 -0
  169. package/lib/hooks/authentication/token/useTokenReducer.d.ts +7 -0
  170. package/lib/hooks/authentication/token/useTokenReducer.js +12 -0
  171. package/lib/hooks/useEntityList.js +2 -2
  172. package/lib/hooks/useFetchEntity.js +4 -3
  173. package/lib/hooks/useFileManifest/useFetchFilesFacets.js +2 -3
  174. package/lib/hooks/useFileManifest/useFetchSummary.js +2 -3
  175. package/lib/hooks/useRequestFileLocation.js +2 -3
  176. package/lib/hooks/useRouteHistory.d.ts +14 -0
  177. package/lib/hooks/useRouteHistory.js +40 -0
  178. package/lib/hooks/useRouteRoot.d.ts +1 -0
  179. package/lib/hooks/useRouteRoot.js +8 -0
  180. package/lib/hooks/useSummary.js +3 -3
  181. package/lib/providers/authentication/auth/actions.d.ts +8 -0
  182. package/lib/providers/authentication/auth/actions.js +12 -0
  183. package/lib/providers/authentication/auth/constants.d.ts +2 -0
  184. package/lib/providers/authentication/auth/constants.js +5 -0
  185. package/lib/providers/authentication/auth/context.d.ts +2 -0
  186. package/lib/providers/authentication/auth/context.js +7 -0
  187. package/lib/providers/authentication/auth/dispatch.d.ts +23 -0
  188. package/lib/providers/authentication/auth/dispatch.js +43 -0
  189. package/lib/providers/authentication/auth/hook.d.ts +6 -0
  190. package/lib/providers/authentication/auth/hook.js +9 -0
  191. package/lib/providers/authentication/auth/reducer.d.ts +8 -0
  192. package/lib/providers/authentication/auth/reducer.js +24 -0
  193. package/lib/providers/authentication/auth/types.d.ts +48 -0
  194. package/lib/providers/authentication/auth/types.js +11 -0
  195. package/lib/providers/authentication/authentication/actions.d.ts +8 -0
  196. package/lib/providers/authentication/authentication/actions.js +12 -0
  197. package/lib/providers/authentication/authentication/constants.d.ts +2 -0
  198. package/lib/providers/authentication/authentication/constants.js +5 -0
  199. package/lib/providers/authentication/authentication/context.d.ts +2 -0
  200. package/lib/providers/authentication/authentication/context.js +6 -0
  201. package/lib/providers/authentication/authentication/dispatch.d.ts +22 -0
  202. package/lib/providers/authentication/authentication/dispatch.js +42 -0
  203. package/lib/providers/authentication/authentication/hook.d.ts +6 -0
  204. package/lib/providers/authentication/authentication/hook.js +9 -0
  205. package/lib/providers/authentication/authentication/reducer.d.ts +9 -0
  206. package/lib/providers/authentication/authentication/reducer.js +25 -0
  207. package/lib/providers/authentication/authentication/types.d.ts +47 -0
  208. package/lib/providers/authentication/authentication/types.js +11 -0
  209. package/lib/providers/authentication/authentication/utils.d.ts +12 -0
  210. package/lib/providers/authentication/authentication/utils.js +18 -0
  211. package/lib/providers/authentication/common/types.d.ts +1 -0
  212. package/lib/providers/authentication/common/types.js +1 -0
  213. package/lib/providers/authentication/common/utils.d.ts +6 -0
  214. package/lib/providers/authentication/common/utils.js +11 -0
  215. package/lib/providers/authentication/credentials/actions.d.ts +8 -0
  216. package/lib/providers/authentication/credentials/actions.js +12 -0
  217. package/lib/providers/authentication/credentials/constants.d.ts +2 -0
  218. package/lib/providers/authentication/credentials/constants.js +3 -0
  219. package/lib/providers/authentication/credentials/context.d.ts +2 -0
  220. package/lib/providers/authentication/credentials/context.js +6 -0
  221. package/lib/providers/authentication/credentials/dispatch.d.ts +12 -0
  222. package/lib/providers/authentication/credentials/dispatch.js +22 -0
  223. package/lib/providers/authentication/credentials/hook.d.ts +6 -0
  224. package/lib/providers/authentication/credentials/hook.js +9 -0
  225. package/lib/providers/authentication/credentials/reducer.d.ts +8 -0
  226. package/lib/providers/authentication/credentials/reducer.js +22 -0
  227. package/lib/providers/authentication/credentials/types.d.ts +24 -0
  228. package/lib/providers/authentication/credentials/types.js +5 -0
  229. package/lib/providers/authentication/terra/context.d.ts +2 -0
  230. package/lib/providers/authentication/terra/context.js +7 -0
  231. package/lib/providers/authentication/terra/hook.d.ts +6 -0
  232. package/lib/providers/authentication/terra/hook.js +9 -0
  233. package/lib/{hooks/useAuthentication → providers/authentication/terra/hooks}/common/constants.d.ts +2 -0
  234. package/lib/{hooks/useAuthentication → providers/authentication/terra/hooks}/common/constants.js +7 -0
  235. package/lib/{hooks/useAuthentication → providers/authentication/terra/hooks}/common/entities.d.ts +3 -7
  236. package/lib/{hooks/useAuthentication → providers/authentication/terra/hooks}/common/entities.js +1 -5
  237. package/lib/providers/authentication/terra/hooks/useFetchProfiles.d.ts +13 -0
  238. package/lib/providers/authentication/terra/hooks/useFetchProfiles.js +31 -0
  239. package/lib/{hooks/useAuthentication → providers/authentication/terra/hooks}/useFetchTerraNIHProfile.js +11 -6
  240. package/lib/{hooks/useAuthentication → providers/authentication/terra/hooks}/useFetchTerraProfile.js +11 -6
  241. package/lib/{hooks/useAuthentication → providers/authentication/terra/hooks}/useFetchTerraTermsOfService.js +11 -6
  242. package/lib/providers/authentication/terra/hooks/utils.d.ts +16 -0
  243. package/lib/providers/authentication/terra/hooks/utils.js +19 -0
  244. package/lib/providers/authentication/terra/provider.d.ts +2 -0
  245. package/lib/providers/authentication/terra/provider.js +42 -0
  246. package/lib/providers/authentication/terra/types.d.ts +20 -0
  247. package/lib/providers/authentication/terra/types.js +6 -0
  248. package/lib/providers/authentication/terra/utils.d.ts +19 -0
  249. package/lib/providers/authentication/terra/utils.js +36 -0
  250. package/lib/providers/authentication/token/constants.d.ts +2 -0
  251. package/lib/providers/authentication/token/constants.js +4 -0
  252. package/lib/providers/authentication/token/dispatch.d.ts +12 -0
  253. package/lib/providers/authentication/token/dispatch.js +22 -0
  254. package/lib/providers/authentication/token/reducer.d.ts +8 -0
  255. package/lib/providers/authentication/token/reducer.js +22 -0
  256. package/lib/providers/authentication/token/types.d.ts +28 -0
  257. package/lib/providers/authentication/token/types.js +5 -0
  258. package/lib/providers/exploreState/actions/updateGrouping/action.d.ts +10 -0
  259. package/lib/providers/exploreState/actions/updateGrouping/action.js +16 -0
  260. package/lib/providers/exploreState/actions/updateGrouping/dispatch.d.ts +7 -0
  261. package/lib/providers/exploreState/actions/updateGrouping/dispatch.js +12 -0
  262. package/lib/providers/exploreState/actions/updateGrouping/types.d.ts +9 -0
  263. package/lib/providers/exploreState/actions/updateGrouping/types.js +1 -0
  264. package/lib/providers/exploreState/actions/updateGrouping/utils.d.ts +10 -0
  265. package/lib/providers/exploreState/actions/updateGrouping/utils.js +26 -0
  266. package/lib/providers/exploreState/entities.d.ts +3 -4
  267. package/lib/providers/exploreState/initializer/utils.js +41 -8
  268. package/lib/providers/exploreState/payloads/entities.d.ts +2 -1
  269. package/lib/providers/exploreState/utils.d.ts +6 -4
  270. package/lib/providers/exploreState/utils.js +7 -4
  271. package/lib/providers/exploreState.d.ts +3 -1
  272. package/lib/providers/exploreState.js +18 -10
  273. package/lib/providers/googleSignInAuthentication/common/types.d.ts +17 -0
  274. package/lib/providers/googleSignInAuthentication/common/types.js +1 -0
  275. package/lib/providers/googleSignInAuthentication/constants.d.ts +4 -0
  276. package/lib/providers/googleSignInAuthentication/constants.js +12 -0
  277. package/lib/providers/googleSignInAuthentication/hooks/useGoogleSignInService.d.ts +3 -0
  278. package/lib/providers/googleSignInAuthentication/hooks/useGoogleSignInService.js +36 -0
  279. package/lib/providers/googleSignInAuthentication/profile/types.d.ts +14 -0
  280. package/lib/providers/googleSignInAuthentication/profile/types.js +1 -0
  281. package/lib/providers/googleSignInAuthentication/profile/utils.d.ts +8 -0
  282. package/lib/providers/googleSignInAuthentication/profile/utils.js +25 -0
  283. package/lib/providers/googleSignInAuthentication/provider.d.ts +2 -0
  284. package/lib/providers/googleSignInAuthentication/provider.js +40 -0
  285. package/lib/providers/googleSignInAuthentication/service/constants.d.ts +4 -0
  286. package/lib/providers/googleSignInAuthentication/service/constants.js +9 -0
  287. package/lib/providers/googleSignInAuthentication/service/service.d.ts +6 -0
  288. package/lib/providers/googleSignInAuthentication/service/service.js +43 -0
  289. package/lib/providers/googleSignInAuthentication/types.d.ts +6 -0
  290. package/lib/providers/googleSignInAuthentication/types.js +1 -0
  291. package/lib/providers/nextAuthAuthentication/hooks/useNextAuthService.d.ts +2 -0
  292. package/lib/providers/nextAuthAuthentication/hooks/useNextAuthService.js +14 -0
  293. package/lib/providers/nextAuthAuthentication/provider.d.ts +2 -0
  294. package/lib/providers/nextAuthAuthentication/provider.js +30 -0
  295. package/lib/providers/nextAuthAuthentication/service/service.d.ts +6 -0
  296. package/lib/providers/nextAuthAuthentication/service/service.js +12 -0
  297. package/lib/providers/nextAuthAuthentication/types.d.ts +8 -0
  298. package/lib/providers/nextAuthAuthentication/types.js +1 -0
  299. package/lib/routes/constants.d.ts +3 -0
  300. package/lib/routes/constants.js +3 -0
  301. package/lib/styles/common/mui/button.d.ts +3 -0
  302. package/lib/styles/common/mui/button.js +17 -0
  303. package/lib/styles/common/mui/paper.d.ts +2 -0
  304. package/lib/styles/common/mui/paper.js +9 -0
  305. package/lib/styles/common/mui/popover.d.ts +3 -0
  306. package/lib/styles/common/mui/popover.js +10 -0
  307. package/lib/theme/common/entities.d.ts +6 -0
  308. package/lib/theme/common/entities.js +1 -0
  309. package/lib/views/ExploreView/exploreView.js +2 -2
  310. package/lib/views/LoginView/loginView.d.ts +5 -1
  311. package/lib/views/LoginView/loginView.js +6 -4
  312. package/package.json +3 -2
  313. package/src/components/Authentication/components/SessionController/components/GoogleSessionController/SessionController.tsx +38 -0
  314. package/src/components/Authentication/components/SessionController/components/GoogleSessionController/types.ts +7 -0
  315. package/src/components/Authentication/components/SessionController/components/NextSessionController/SessionController.tsx +23 -0
  316. package/src/components/Authentication/components/SessionController/components/NextSessionController/constants.ts +21 -0
  317. package/src/components/Authentication/components/SessionController/components/NextSessionController/types.ts +5 -0
  318. package/src/components/Authentication/components/SessionController/components/NextSessionController/utils.ts +74 -0
  319. package/src/components/ComponentCreator/ComponentCreator.tsx +4 -3
  320. package/src/components/Detail/components/Table/components/TableRows/components/CollapsableRows/collapsableRows.tsx +2 -0
  321. package/src/components/Detail/components/Table/components/TableRows/tableRows.tsx +3 -18
  322. package/src/components/Export/components/ExportForm/components/ExportFileSummaryForm/exportFileSummaryForm.tsx +28 -32
  323. package/src/components/Export/components/ExportToTerra/components/TerraSetUpForm/components/FormStep/components/AcceptTerraTOS/acceptTerraTOS.tsx +4 -4
  324. package/src/components/Export/components/ExportToTerra/components/TerraSetUpForm/components/NIHAccountExpiryWarning/nihAccountExpiryWarning.tsx +1 -1
  325. package/src/components/Export/components/ExportToTerra/components/TerraSetUpForm/terraSetUpForm.tsx +9 -6
  326. package/src/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/authentication.tsx +27 -25
  327. package/src/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.styles.ts +2 -2
  328. package/src/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.tsx +18 -42
  329. package/src/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/constants.ts +19 -0
  330. package/src/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/Button/button.styles.ts +3 -2
  331. package/src/components/Layout/components/Header/header.tsx +1 -1
  332. package/src/components/Links/components/Link/components/ExploreViewLink/exploreViewLink.tsx +27 -13
  333. package/src/components/Login/components/Button/button.styles.ts +12 -0
  334. package/src/components/Login/components/Button/button.tsx +8 -0
  335. package/src/components/Login/components/Button/constants.ts +8 -0
  336. package/src/components/Login/components/Button/types.ts +4 -0
  337. package/src/components/Login/login.tsx +28 -28
  338. package/src/components/Login/types.ts +11 -0
  339. package/src/components/Table/common/columnDef.ts +1 -0
  340. package/src/components/Table/common/gridTable.styles.ts +5 -11
  341. package/src/components/Table/common/utils.ts +44 -107
  342. package/src/components/Table/components/TableBody/hooks/virtualizer/constants.ts +3 -0
  343. package/src/components/Table/components/TableBody/hooks/virtualizer/hook.ts +23 -0
  344. package/src/components/Table/components/TableBody/hooks/virtualizer/types.ts +5 -0
  345. package/src/components/Table/components/TableBody/tableBody.tsx +14 -30
  346. package/src/components/Table/components/TableBody/utils.ts +21 -0
  347. package/src/components/Table/components/TableCell/components/CollapsableCell/collapsableCell.tsx +14 -15
  348. package/src/components/Table/components/TableFeatures/ColumnGrouping/utils.ts +70 -0
  349. package/src/components/Table/components/TableFeatures/ColumnVisibility/utils.ts +52 -0
  350. package/src/components/Table/components/TableFeatures/RowSorting/utils.ts +87 -0
  351. package/src/components/Table/components/TableHead/tableHead.tsx +21 -29
  352. package/src/components/Table/components/TableHead/types.ts +7 -0
  353. package/src/components/Table/components/TableHead/utils.ts +42 -0
  354. package/src/components/Table/components/TableRow/tableRow.styles.ts +19 -2
  355. package/src/components/Table/components/TableRows/components/CollapsableRows/collapsableRows.tsx +8 -2
  356. package/src/components/Table/components/TableRows/components/CollapsableRows/hook.ts +20 -0
  357. package/src/components/Table/components/TableRows/tableRows.tsx +18 -15
  358. package/src/components/Table/components/TableToolbar/components/ColumnGrouping/columnGrouping.styles.ts +17 -0
  359. package/src/components/Table/components/TableToolbar/components/ColumnGrouping/columnGrouping.tsx +54 -0
  360. package/src/components/Table/components/TableToolbar/components/ColumnGrouping/components/MenuItems/menuItems.tsx +28 -0
  361. package/src/components/Table/components/TableToolbar/components/ColumnGrouping/components/MenuItems/types.ts +8 -0
  362. package/src/components/Table/components/TableToolbar/components/ColumnGrouping/constants.ts +17 -0
  363. package/src/components/Table/components/TableToolbar/components/ColumnGrouping/types.ts +5 -0
  364. package/src/components/Table/components/TableToolbar/components/ColumnGrouping/utils.ts +45 -0
  365. package/src/components/Table/components/TableToolbar/components/RowSelection/components/DropdownMenu/dropdownMenu.tsx +7 -20
  366. package/src/components/Table/components/TableToolbar/tableToolbar.tsx +8 -2
  367. package/src/components/Table/features/RowPosition/constants.ts +2 -2
  368. package/src/components/Table/features/RowPosition/utils.ts +10 -5
  369. package/src/components/Table/options/updater.ts +29 -0
  370. package/src/components/Table/table.tsx +43 -25
  371. package/src/components/TableCreator/common/constants.ts +4 -6
  372. package/src/components/TableCreator/common/utils.ts +14 -7
  373. package/src/components/TableCreator/options/expanded/constants.ts +14 -0
  374. package/src/components/TableCreator/options/expanded/hook.ts +6 -0
  375. package/src/components/TableCreator/options/grouping/constants.ts +6 -0
  376. package/src/components/TableCreator/options/grouping/hook.ts +17 -0
  377. package/src/components/TableCreator/options/hook.ts +31 -0
  378. package/src/components/TableCreator/options/rowSelection/constants.ts +10 -0
  379. package/src/components/TableCreator/options/rowSelection/hook.ts +8 -0
  380. package/src/components/TableCreator/options/sorting/constants.ts +10 -0
  381. package/src/components/TableCreator/options/sorting/hook.ts +6 -0
  382. package/src/components/TableCreator/tableCreator.tsx +4 -11
  383. package/src/components/common/Banner/components/SessionTimeout/sessionTimeout.tsx +1 -1
  384. package/src/components/common/CustomIcon/common/entities.ts +1 -4
  385. package/src/components/common/CustomIcon/components/GoogleIcon/googleIcon.tsx +3 -4
  386. package/src/components/common/DropdownMenu/dropdownMenu.styles.ts +1 -1
  387. package/src/components/common/DropdownMenu/dropdownMenu.tsx +19 -17
  388. package/src/components/common/Menu/hooks/useMenu.ts +8 -9
  389. package/src/config/entities.ts +30 -34
  390. package/src/config/utils.ts +0 -14
  391. package/src/hooks/authentication/auth/useAuthReducer.ts +16 -0
  392. package/src/hooks/authentication/authentication/useAuthenticationReducer.ts +16 -0
  393. package/src/hooks/authentication/config/useAuthenticationConfig.ts +13 -0
  394. package/src/hooks/authentication/credentials/useCredentialsReducer.ts +13 -0
  395. package/src/hooks/authentication/profile/types.ts +9 -0
  396. package/src/hooks/authentication/profile/useProfile.ts +21 -0
  397. package/src/hooks/authentication/providers/types.ts +7 -0
  398. package/src/hooks/authentication/providers/useProviders.ts +23 -0
  399. package/src/hooks/authentication/session/useSessionActive.ts +51 -0
  400. package/src/hooks/authentication/session/useSessionCallbackUrl.ts +25 -0
  401. package/src/hooks/authentication/session/useSessionIdleTimer.ts +10 -0
  402. package/src/hooks/{useSessionTimeout.ts → authentication/session/useSessionTimeout.ts} +2 -2
  403. package/src/hooks/{useAuthentication → authentication/terra}/useAuthenticationForm.ts +8 -13
  404. package/src/hooks/{useAuthentication → authentication/terra}/useAuthenticationNIHExpiry.ts +3 -4
  405. package/src/hooks/authentication/token/types.ts +5 -0
  406. package/src/hooks/authentication/token/useToken.ts +9 -0
  407. package/src/hooks/authentication/token/useTokenReducer.ts +19 -0
  408. package/src/hooks/useEntityList.ts +2 -2
  409. package/src/hooks/useFetchEntity.tsx +3 -3
  410. package/src/hooks/useFileManifest/useFetchFilesFacets.ts +2 -3
  411. package/src/hooks/useFileManifest/useFetchSummary.ts +2 -3
  412. package/src/hooks/useRequestFileLocation.ts +2 -3
  413. package/src/hooks/useRouteHistory.ts +65 -0
  414. package/src/hooks/useRouteRoot.ts +11 -0
  415. package/src/hooks/useSummary.ts +3 -3
  416. package/src/providers/authentication/auth/actions.ts +17 -0
  417. package/src/providers/authentication/auth/constants.ts +6 -0
  418. package/src/providers/authentication/auth/context.ts +9 -0
  419. package/src/providers/authentication/auth/dispatch.ts +58 -0
  420. package/src/providers/authentication/auth/hook.ts +11 -0
  421. package/src/providers/authentication/auth/reducer.ts +25 -0
  422. package/src/providers/authentication/auth/types.ts +63 -0
  423. package/src/providers/authentication/authentication/actions.ts +17 -0
  424. package/src/providers/authentication/authentication/constants.ts +6 -0
  425. package/src/providers/authentication/authentication/context.ts +8 -0
  426. package/src/providers/authentication/authentication/dispatch.ts +55 -0
  427. package/src/providers/authentication/authentication/hook.ts +11 -0
  428. package/src/providers/authentication/authentication/reducer.ts +34 -0
  429. package/src/providers/authentication/authentication/types.ts +64 -0
  430. package/src/providers/authentication/authentication/utils.ts +25 -0
  431. package/src/providers/authentication/common/types.ts +1 -0
  432. package/src/providers/authentication/common/utils.ts +11 -0
  433. package/src/providers/authentication/credentials/actions.ts +17 -0
  434. package/src/providers/authentication/credentials/constants.ts +5 -0
  435. package/src/providers/authentication/credentials/context.ts +8 -0
  436. package/src/providers/authentication/credentials/dispatch.ts +31 -0
  437. package/src/providers/authentication/credentials/hook.ts +11 -0
  438. package/src/providers/authentication/credentials/reducer.ts +30 -0
  439. package/src/providers/authentication/credentials/types.ts +33 -0
  440. package/src/providers/authentication/terra/context.ts +16 -0
  441. package/src/providers/authentication/terra/hook.ts +11 -0
  442. package/src/{hooks/useAuthentication → providers/authentication/terra/hooks}/common/constants.ts +9 -0
  443. package/src/{hooks/useAuthentication → providers/authentication/terra/hooks}/common/entities.ts +1 -7
  444. package/src/providers/authentication/terra/hooks/useFetchProfiles.ts +61 -0
  445. package/src/{hooks/useAuthentication → providers/authentication/terra/hooks}/useFetchTerraNIHProfile.ts +18 -7
  446. package/src/{hooks/useAuthentication → providers/authentication/terra/hooks}/useFetchTerraProfile.ts +18 -7
  447. package/src/{hooks/useAuthentication → providers/authentication/terra/hooks}/useFetchTerraTermsOfService.ts +18 -7
  448. package/src/providers/authentication/terra/hooks/utils.ts +29 -0
  449. package/src/providers/authentication/terra/provider.tsx +60 -0
  450. package/src/providers/authentication/terra/types.ts +23 -0
  451. package/src/providers/authentication/terra/utils.ts +49 -0
  452. package/src/providers/authentication/token/constants.ts +6 -0
  453. package/src/providers/authentication/token/dispatch.ts +29 -0
  454. package/src/providers/authentication/token/reducer.ts +26 -0
  455. package/src/providers/authentication/token/types.ts +36 -0
  456. package/src/providers/exploreState/actions/updateGrouping/action.ts +26 -0
  457. package/src/providers/exploreState/actions/updateGrouping/dispatch.ts +16 -0
  458. package/src/providers/exploreState/actions/updateGrouping/types.ts +11 -0
  459. package/src/providers/exploreState/actions/updateGrouping/utils.ts +33 -0
  460. package/src/providers/exploreState/entities.ts +3 -3
  461. package/src/providers/exploreState/initializer/utils.ts +58 -10
  462. package/src/providers/exploreState/payloads/entities.ts +2 -0
  463. package/src/providers/exploreState/utils.ts +10 -7
  464. package/src/providers/exploreState.tsx +32 -10
  465. package/src/providers/googleSignInAuthentication/common/types.ts +28 -0
  466. package/src/providers/googleSignInAuthentication/constants.ts +17 -0
  467. package/src/providers/googleSignInAuthentication/hooks/useGoogleSignInService.ts +53 -0
  468. package/src/providers/googleSignInAuthentication/profile/types.ts +15 -0
  469. package/src/providers/googleSignInAuthentication/profile/utils.ts +29 -0
  470. package/src/providers/googleSignInAuthentication/provider.tsx +53 -0
  471. package/src/providers/googleSignInAuthentication/service/constants.ts +16 -0
  472. package/src/providers/googleSignInAuthentication/service/service.ts +68 -0
  473. package/src/providers/googleSignInAuthentication/types.ts +7 -0
  474. package/src/providers/nextAuthAuthentication/hooks/useNextAuthService.ts +26 -0
  475. package/src/providers/nextAuthAuthentication/provider.tsx +42 -0
  476. package/src/providers/nextAuthAuthentication/service/service.ts +14 -0
  477. package/src/providers/nextAuthAuthentication/types.ts +9 -0
  478. package/src/routes/constants.ts +3 -0
  479. package/src/styles/common/mui/button.ts +20 -0
  480. package/src/styles/common/mui/paper.ts +11 -0
  481. package/src/styles/common/mui/popover.ts +19 -0
  482. package/src/theme/common/entities.ts +7 -0
  483. package/src/views/ExploreView/exploreView.tsx +1 -3
  484. package/src/views/LoginView/loginView.tsx +15 -9
  485. package/tests/getProfileStatus.test.ts +290 -0
  486. package/tests/terraProfileProvider.test.tsx +121 -0
  487. package/tests/transformRoute.test.ts +21 -0
  488. package/tests/useRouteHistory.test.ts +97 -0
  489. package/tests/useSessionActive.test.ts +107 -0
  490. package/types/data-explorer-ui.d.ts +8 -1
  491. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.stories.d.ts +0 -5
  492. package/lib/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.stories.js +0 -29
  493. package/lib/components/Login/login.stories.d.ts +0 -6
  494. package/lib/components/Login/login.stories.js +0 -31
  495. package/lib/components/TableCreator/common/entities.d.ts +0 -5
  496. package/lib/components/common/Button/components/LoginButton/loginButton.d.ts +0 -3
  497. package/lib/components/common/Button/components/LoginButton/loginButton.js +0 -6
  498. package/lib/components/common/Button/components/LoginButton/loginButton.styles.d.ts +0 -7
  499. package/lib/components/common/Button/components/LoginButton/loginButton.styles.js +0 -11
  500. package/lib/hooks/useAuthentication/useAuthentication.d.ts +0 -6
  501. package/lib/hooks/useAuthentication/useAuthentication.js +0 -9
  502. package/lib/hooks/useAuthentication/useAuthenticationComplete.d.ts +0 -6
  503. package/lib/hooks/useAuthentication/useAuthenticationComplete.js +0 -55
  504. package/lib/hooks/useAuthentication/useAuthenticationStatus.d.ts +0 -20
  505. package/lib/hooks/useAuthentication/useAuthenticationStatus.js +0 -32
  506. package/lib/hooks/useAuthentication/useFetchGoogleProfile.d.ts +0 -21
  507. package/lib/hooks/useAuthentication/useFetchGoogleProfile.js +0 -41
  508. package/lib/hooks/useAuthentication/useTokenClient.d.ts +0 -11
  509. package/lib/hooks/useAuthentication/useTokenClient.js +0 -29
  510. package/lib/hooks/useAuthenticationConfig.d.ts +0 -6
  511. package/lib/hooks/useAuthenticationConfig.js +0 -14
  512. package/lib/providers/authentication.d.ts +0 -51
  513. package/lib/providers/authentication.js +0 -110
  514. package/src/components/Layout/components/Header/components/Content/components/Actions/components/Authentication/components/AuthenticationMenu/authenticationMenu.stories.tsx +0 -35
  515. package/src/components/Login/login.stories.tsx +0 -43
  516. package/src/components/TableCreator/common/entities.ts +0 -6
  517. package/src/components/common/Button/components/LoginButton/loginButton.styles.ts +0 -13
  518. package/src/components/common/Button/components/LoginButton/loginButton.tsx +0 -16
  519. package/src/hooks/useAuthentication/useAuthentication.tsx +0 -10
  520. package/src/hooks/useAuthentication/useAuthenticationComplete.ts +0 -66
  521. package/src/hooks/useAuthentication/useAuthenticationStatus.ts +0 -49
  522. package/src/hooks/useAuthentication/useFetchGoogleProfile.ts +0 -68
  523. package/src/hooks/useAuthentication/useTokenClient.ts +0 -54
  524. package/src/hooks/useAuthenticationConfig.ts +0 -18
  525. package/src/providers/authentication.tsx +0 -181
  526. package/tests/authentication.test.ts +0 -142
  527. package/tests/useAuthenticationStatus.test.ts +0 -155
  528. /package/lib/components/{TableCreator/common/entities.js → Authentication/components/SessionController/components/GoogleSessionController/types.js} +0 -0
  529. /package/lib/hooks/{useSessionTimeout.d.ts → authentication/session/useSessionTimeout.d.ts} +0 -0
  530. /package/lib/hooks/{useAuthentication → authentication/terra}/useAuthenticationNIHExpiry.d.ts +0 -0
  531. /package/lib/{hooks/useAuthentication → providers/authentication/terra/hooks}/common/utils.d.ts +0 -0
  532. /package/lib/{hooks/useAuthentication → providers/authentication/terra/hooks}/common/utils.js +0 -0
  533. /package/lib/{hooks/useAuthentication → providers/authentication/terra/hooks}/useFetchTerraNIHProfile.d.ts +0 -0
  534. /package/lib/{hooks/useAuthentication → providers/authentication/terra/hooks}/useFetchTerraProfile.d.ts +0 -0
  535. /package/lib/{hooks/useAuthentication → providers/authentication/terra/hooks}/useFetchTerraTermsOfService.d.ts +0 -0
  536. /package/src/{hooks/useAuthentication → providers/authentication/terra/hooks}/common/utils.ts +0 -0
@@ -1,8 +1,10 @@
1
1
  import { TabProps as MTabProps, Theme, ThemeOptions } from "@mui/material";
2
2
  import {
3
3
  CellContext,
4
+ ColumnDef,
4
5
  ColumnMeta,
5
6
  ColumnSort,
7
+ GroupingState,
6
8
  RowData,
7
9
  Table,
8
10
  TableOptions,
@@ -13,7 +15,9 @@ import { HeroTitle } from "../components/common/Title/title";
13
15
  import { FooterProps } from "../components/Layout/components/Footer/footer";
14
16
  import { HeaderProps } from "../components/Layout/components/Header/header";
15
17
  import { ExploreMode } from "../hooks/useExploreMode";
16
- import { AuthContextProps } from "../providers/authentication";
18
+ import { AuthState } from "../providers/authentication/auth/types";
19
+ import { UserProfile } from "../providers/authentication/authentication/types";
20
+ import { ProviderId } from "../providers/authentication/common/types";
17
21
  import { ExploreState } from "../providers/exploreState";
18
22
  import { FileManifestState } from "../providers/fileManifestState";
19
23
  import { SystemStatus, SystemStatusResponse } from "../providers/systemStatus";
@@ -31,14 +35,19 @@ export interface AnalyticsConfig {
31
35
  * Interface to define the authentication configuration for a given site.
32
36
  */
33
37
  export interface AuthenticationConfig {
34
- googleGISAuthConfig?: GoogleGISAuthConfig;
38
+ providers?: OAuthProvider[];
39
+ services?: AuthService[];
35
40
  termsOfService?: ReactNode;
36
- terraAuthConfig?: TerraAuthConfig;
37
41
  text?: ReactNode;
38
42
  title: string;
39
43
  warning?: ReactNode;
40
44
  }
41
45
 
46
+ export interface AuthService {
47
+ endpoint: Record<string, string>;
48
+ id: string;
49
+ }
50
+
42
51
  /**
43
52
  * Interface to define the set of components that will be used for the back page.
44
53
  */
@@ -87,24 +96,24 @@ export interface CategoryConfig {
87
96
 
88
97
  /**
89
98
  * Column configuration.
99
+ * TanStack ColumnDef properties not currently supported include:
100
+ * - `enableMultiSort` - Note, table multi-sort is managed via table options.
90
101
  */
91
- export interface ColumnConfig<
92
- // eslint-disable-next-line @typescript-eslint/no-explicit-any -- This config model is part of a generic array
93
- T = any,
102
+ export type ColumnConfig<
103
+ T extends RowData,
104
+ TValue = unknown,
94
105
  // eslint-disable-next-line @typescript-eslint/no-explicit-any -- This config model is part of a generic array
95
106
  C extends keyof JSX.IntrinsicElements | JSXElementConstructor<any> = any
96
- > {
107
+ > = Omit<ColumnDef<T, TValue>, "enableMultiSort"> & {
97
108
  columnPinned?: boolean; // Column is pinned to the top when table rows are collapsable.
98
109
  columnVisible?: boolean; // Column is visible. Default is "true".
99
110
  componentConfig: ComponentConfig<C, T>;
100
111
  disableHiding?: boolean; // Disables hiding of column. Column is unavailable for "Edit Columns" functionality when "true".
101
- disableSorting?: boolean; // Disables sorting for the column.
102
112
  header: string;
103
113
  id: string; // The unique identifier for the column.
104
114
  meta?: ColumnMeta<T, unknown>;
105
- tooltip?: string; // TODO review need to define `tooltip` field - it is currently not in use.
106
115
  width: GridTrackSize;
107
- }
116
+ };
108
117
 
109
118
  /**
110
119
  * Interface used to define the configuration of a component.
@@ -214,15 +223,6 @@ export type GetIdFunction<T> = (detail: T) => string;
214
223
  */
215
224
  export type GetTitleFunction<T> = (detail?: T) => string | undefined;
216
225
 
217
- /**
218
- * Google GIS authentication configuration.
219
- */
220
- export interface GoogleGISAuthConfig {
221
- clientId: string;
222
- googleProfileEndpoint: string;
223
- scope: string;
224
- }
225
-
226
226
  /**
227
227
  * Grid track configuration.
228
228
  */
@@ -256,7 +256,6 @@ export type GridTrackSize =
256
256
  /**
257
257
  * List configuration.
258
258
  */
259
- // eslint-disable-next-line @typescript-eslint/no-explicit-any -- This config model can receive any model as type
260
259
  export interface ListConfig<T extends RowData> {
261
260
  columns: ColumnConfig<T>[];
262
261
  defaultSort?: ColumnSort; // Establishes initial table state "sorting" state.
@@ -270,7 +269,6 @@ export interface ListViewConfig {
270
269
  disablePagination?: boolean;
271
270
  enableDownload?: boolean;
272
271
  enableRowPreview?: boolean;
273
- enableRowSelection?: boolean;
274
272
  enableTab?: boolean;
275
273
  listHero?: ComponentsConfig;
276
274
  rowPreviewView?: ComponentsConfig; // Row preview view is expected to be a modal or drawer or similar.
@@ -278,12 +276,15 @@ export interface ListViewConfig {
278
276
  subTitleHero?: ComponentsConfig;
279
277
  }
280
278
 
281
- /**
282
- * Interface to define the authentication login notice component.
283
- */
284
- export interface LoginNotice {
285
- conditionsUrl: string;
286
- privacyUrl: string;
279
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any -- Use of `any` is intentional to allow for flexibility in the model.
280
+ export interface OAuthProvider<P = any> {
281
+ authorization: { params: { scope: string } };
282
+ clientId: string;
283
+ icon: ReactNode;
284
+ id: ProviderId;
285
+ name: string;
286
+ profile: (profile: P) => UserProfile;
287
+ userinfo: string;
287
288
  }
288
289
 
289
290
  /**
@@ -312,6 +313,7 @@ export interface Override {
312
313
 
313
314
  export interface SavedFilter {
314
315
  filters: SelectedFilter[];
316
+ grouping?: GroupingState;
315
317
  sorting?: ColumnSort[];
316
318
  title: string;
317
319
  }
@@ -424,12 +426,6 @@ export interface TabConfig {
424
426
  tabName?: string; // Used by the entity view to generate a title for the <Head> component; when label is not typed string.
425
427
  }
426
428
 
427
- export interface TerraAuthConfig {
428
- termsOfServiceEndpoint: string;
429
- terraNIHProfileEndpoint?: string;
430
- terraProfileEndpoint: string;
431
- }
432
-
433
429
  /**
434
430
  * Theme options function.
435
431
  * Defines theme options, and provides a reference to the specified theme.
@@ -440,7 +436,7 @@ export type ThemeOptionsFn = (theme: Theme) => ThemeOptions;
440
436
  * View context.
441
437
  */
442
438
  export interface ViewContext<T extends RowData, TData = unknown> {
443
- authState: Pick<AuthContextProps, "authenticationStatus" | "isAuthenticated">;
439
+ authState: Pick<AuthState, "isAuthenticated">;
444
440
  cellContext?: CellContext<T, TData>;
445
441
  entityConfig: EntityConfig;
446
442
  exploreState: ExploreState;
@@ -1,4 +1,3 @@
1
- import { ColumnSort } from "@tanstack/react-table";
2
1
  import { EXPLORE_MODE } from "../hooks/useExploreMode";
3
2
  import { getConfig } from "./config";
4
3
  import { EntityConfig, SiteConfig } from "./entities";
@@ -51,19 +50,6 @@ export function getDefaultEntityConfig(): EntityConfig {
51
50
  };
52
51
  }
53
52
 
54
- /**
55
- * Returns the initial table sorting state for the specified entity list configuration.
56
- * @param entityConfig - Entity configuration.
57
- * @returns initial sorting state.
58
- */
59
- export function getDefaultSorting(entityConfig: EntityConfig): ColumnSort[] {
60
- const columnSort = entityConfig.list.defaultSort;
61
- if (!columnSort) {
62
- return [];
63
- }
64
- return [columnSort];
65
- }
66
-
67
53
  /**
68
54
  * Returns the entity config for the given entity list type.
69
55
  * @param entities - Entities config.
@@ -0,0 +1,16 @@
1
+ import { useReducer } from "react";
2
+ import { DEFAULT_AUTH_STATE } from "../../../providers/authentication/auth/constants";
3
+ import { authReducer } from "../../../providers/authentication/auth/reducer";
4
+ import { AuthContextProps } from "../../../providers/authentication/auth/types";
5
+ import { initializer } from "../../../providers/authentication/common/utils";
6
+
7
+ export const useAuthReducer = (
8
+ initialState = DEFAULT_AUTH_STATE
9
+ ): Omit<AuthContextProps, "service"> => {
10
+ const [authState, authDispatch] = useReducer(
11
+ authReducer,
12
+ initialState,
13
+ initializer
14
+ );
15
+ return { authDispatch, authState };
16
+ };
@@ -0,0 +1,16 @@
1
+ import { useReducer } from "react";
2
+ import { DEFAULT_AUTHENTICATION_STATE } from "../../../providers/authentication/authentication/constants";
3
+ import { authenticationReducer } from "../../../providers/authentication/authentication/reducer";
4
+ import { AuthenticationContextProps } from "../../../providers/authentication/authentication/types";
5
+ import { initializer } from "../../../providers/authentication/common/utils";
6
+
7
+ export const useAuthenticationReducer = (
8
+ initialState = DEFAULT_AUTHENTICATION_STATE
9
+ ): AuthenticationContextProps => {
10
+ const [authenticationState, authenticationDispatch] = useReducer(
11
+ authenticationReducer,
12
+ initialState,
13
+ initializer
14
+ );
15
+ return { authenticationDispatch, authenticationState };
16
+ };
@@ -0,0 +1,13 @@
1
+ import { AuthenticationConfig } from "../../../config/entities";
2
+ import { useConfig } from "../../useConfig";
3
+
4
+ /**
5
+ * Returns the authentication configuration.
6
+ * @returns authentication configuration.
7
+ */
8
+ export const useAuthenticationConfig = (): AuthenticationConfig | undefined => {
9
+ const {
10
+ config: { authentication },
11
+ } = useConfig();
12
+ return authentication;
13
+ };
@@ -0,0 +1,13 @@
1
+ import { useReducer } from "react";
2
+ import { DEFAULT_CREDENTIALS_STATE } from "../../../providers/authentication/credentials/constants";
3
+ import { credentialsReducer } from "../../../providers/authentication/credentials/reducer";
4
+ import { CredentialsContextProps } from "../../../providers/authentication/credentials/types";
5
+
6
+ export const useCredentialsReducer = (): CredentialsContextProps => {
7
+ const [credentialsState, credentialsDispatch] = useReducer(
8
+ credentialsReducer,
9
+ undefined,
10
+ () => DEFAULT_CREDENTIALS_STATE
11
+ );
12
+ return { credentialsDispatch, credentialsState };
13
+ };
@@ -0,0 +1,9 @@
1
+ import {
2
+ Profile,
3
+ UserProfile,
4
+ } from "../../../providers/authentication/authentication/types";
5
+
6
+ export interface UseProfile {
7
+ isLoading: boolean;
8
+ profile: Profile<UserProfile>;
9
+ }
@@ -0,0 +1,21 @@
1
+ import { useAuth } from "../../../providers/authentication/auth/hook";
2
+ import { AUTH_STATUS } from "../../../providers/authentication/auth/types";
3
+ import { useAuthentication } from "../../../providers/authentication/authentication/hook";
4
+ import { UseProfile } from "./types";
5
+
6
+ /**
7
+ * Profile hook - returns user profile.
8
+ * @returns user profile.
9
+ */
10
+ export const useProfile = (): UseProfile => {
11
+ const {
12
+ authState: { status },
13
+ } = useAuth();
14
+ const {
15
+ authenticationState: { profile },
16
+ } = useAuthentication();
17
+ return {
18
+ isLoading: status === AUTH_STATUS.PENDING,
19
+ profile: profile,
20
+ };
21
+ };
@@ -0,0 +1,7 @@
1
+ import { OAuthProvider } from "../../../config/entities";
2
+ import { ProviderId } from "../../../providers/authentication/common/types";
3
+
4
+ export interface UseProviders {
5
+ findProvider: (providerId: ProviderId) => OAuthProvider | undefined;
6
+ providers: OAuthProvider[] | undefined;
7
+ }
@@ -0,0 +1,23 @@
1
+ import { useCallback } from "react";
2
+ import { ProviderId } from "../../../providers/authentication/common/types";
3
+ import { useConfig } from "../../useConfig";
4
+ import { UseProviders } from "./types";
5
+
6
+ /**
7
+ * Hook to facilitate the retrieval of authentication providers.
8
+ * @returns authentication providers and a function to find a provider by id.
9
+ */
10
+
11
+ export const useProviders = (): UseProviders => {
12
+ const { config } = useConfig();
13
+ const providers = config.authentication?.providers;
14
+
15
+ const findProvider = useCallback(
16
+ (providerId: ProviderId) => {
17
+ return providers?.find(({ id }) => id === providerId);
18
+ },
19
+ [providers]
20
+ );
21
+
22
+ return { findProvider, providers };
23
+ };
@@ -0,0 +1,51 @@
1
+ import Router from "next/router";
2
+ import { useEffect } from "react";
3
+ import { escapeRegExp } from "../../../common/utils";
4
+ import {
5
+ AUTH_STATUS,
6
+ AuthState,
7
+ } from "../../../providers/authentication/auth/types";
8
+ import {
9
+ AUTHENTICATION_STATUS,
10
+ AuthenticationState,
11
+ } from "../../../providers/authentication/authentication/types";
12
+ import { ROUTE } from "../../../routes/constants";
13
+ import { useRouteHistory } from "../../useRouteHistory";
14
+ import { INACTIVITY_PARAM } from "./useSessionTimeout";
15
+
16
+ export const useSessionActive = (
17
+ authState: AuthState,
18
+ authenticationState: AuthenticationState
19
+ ): void => {
20
+ const { status: authStatus } = authState;
21
+ const { status: authenticationStatus } = authenticationState;
22
+ const { callbackUrl } = useRouteHistory(2);
23
+ const isReady =
24
+ authenticationStatus === AUTHENTICATION_STATUS.SETTLED &&
25
+ authStatus === AUTH_STATUS.SETTLED;
26
+
27
+ useEffect(() => {
28
+ if (!isReady) return;
29
+ Router.push(callbackUrl(transformRoute));
30
+ }, [callbackUrl, isReady]);
31
+ };
32
+
33
+ /**
34
+ * Finds the most recent route in the history that is not the login route and removes the inactivity timeout query parameter.
35
+ * The inactivity timeout query parameter is appended to a URL to indicate that a session has expired. This function iterates
36
+ * through the history of routes in reverse order, skipping any routes that lead to the login page, and returns the first route
37
+ * that isn't the login route with the inactivity timeout parameter removed.
38
+ * @param routes - An array of routes representing the navigation history, in order of navigation.
39
+ * @returns The most recent valid route without the inactivity timeout parameter, or `undefined` if no such route is found.
40
+ */
41
+ export function transformRoute(routes: string[]): string | undefined {
42
+ for (const route of routes) {
43
+ if (route === ROUTE.LOGIN) {
44
+ continue;
45
+ }
46
+ return route?.replace(
47
+ new RegExp(`\\?${escapeRegExp(INACTIVITY_PARAM)}(?:$|[=&].*)`),
48
+ ""
49
+ );
50
+ }
51
+ }
@@ -0,0 +1,25 @@
1
+ import { useMemo } from "react";
2
+ import { useRouteRoot } from "../../useRouteRoot";
3
+ import { INACTIVITY_PARAM } from "./useSessionTimeout";
4
+
5
+ export interface UseSessionCallbackUrl {
6
+ callbackUrl: string | undefined;
7
+ }
8
+
9
+ export const useSessionCallbackUrl = (): UseSessionCallbackUrl => {
10
+ const route = useRouteRoot();
11
+ const callbackUrl = useMemo(() => getUrl(route), [route]);
12
+ return { callbackUrl };
13
+ };
14
+
15
+ /**
16
+ * Returns the URL with the inactivity query parameter set to true.
17
+ * @param url - URL.
18
+ * @returns URL.
19
+ */
20
+ function getUrl(url: string): string | undefined {
21
+ if (typeof window === "undefined") return;
22
+ const urlObj = new URL(url, window.location.origin);
23
+ urlObj.searchParams.set(INACTIVITY_PARAM, "true");
24
+ return urlObj.href;
25
+ }
@@ -0,0 +1,10 @@
1
+ import { useIdleTimer } from "react-idle-timer";
2
+ import { IIdleTimerProps } from "react-idle-timer/dist/types/IIdleTimerProps";
3
+
4
+ /**
5
+ * Sets a session timeout that triggers when the user has been idle for the specified duration.
6
+ * @param idleTimerProps - The parameters for the session timeout.
7
+ */
8
+ export const useSessionIdleTimer = (idleTimerProps: IIdleTimerProps): void => {
9
+ useIdleTimer(idleTimerProps);
10
+ };
@@ -1,7 +1,7 @@
1
1
  import Router from "next/router";
2
2
  import { useCallback, useEffect, useState } from "react";
3
- import { useConfig } from "./useConfig";
4
- import { useLocation } from "./useLocation";
3
+ import { useConfig } from "../../useConfig";
4
+ import { useLocation } from "../../useLocation";
5
5
 
6
6
  export const INACTIVITY_PARAM = "inactivityTimeout";
7
7
 
@@ -1,10 +1,9 @@
1
- import { AuthContextProps } from "../../providers/authentication";
1
+ import { useTerraProfile } from "../../../providers/authentication/terra/hook";
2
2
  import {
3
- AUTHENTICATION_STATUS,
4
3
  LoginResponse,
5
4
  LoginStatus,
6
- } from "./common/entities";
7
- import { useAuthentication } from "./useAuthentication";
5
+ } from "../../../providers/authentication/terra/hooks/common/entities";
6
+ import { TerraProfileContextProps } from "../../../providers/authentication/terra/types";
8
7
 
9
8
  export interface OnboardingStatus {
10
9
  active: boolean;
@@ -19,7 +18,6 @@ export enum ONBOARDING_STEP {
19
18
 
20
19
  interface UseAuthenticationForm {
21
20
  isComplete: boolean;
22
- isReady: boolean;
23
21
  onboardingStatusByStep: Map<ONBOARDING_STEP, OnboardingStatus>;
24
22
  }
25
23
 
@@ -28,16 +26,13 @@ interface UseAuthenticationForm {
28
26
  * @returns onboarding steps and corresponding status.
29
27
  */
30
28
  export const useAuthenticationForm = (): UseAuthenticationForm => {
31
- const authentication = useAuthentication();
32
- const isReady =
33
- authentication.authenticationStatus === AUTHENTICATION_STATUS.COMPLETED;
29
+ const terraProfile = useTerraProfile();
34
30
  const loginStatuses =
35
- concatLoginStatuses(authentication).filter(filterLoginStatus);
31
+ concatLoginStatuses(terraProfile).filter(filterLoginStatus);
36
32
  const onboardingStatusByStep = getOnboardingStatusByStep(loginStatuses);
37
33
  const isComplete = isAuthenticationComplete(onboardingStatusByStep);
38
34
  return {
39
35
  isComplete,
40
- isReady,
41
36
  onboardingStatusByStep,
42
37
  };
43
38
  };
@@ -60,17 +55,17 @@ function isAuthenticationComplete(
60
55
 
61
56
  /**
62
57
  * Returns all login statuses, ordered by onboarding step.
63
- * @param authentication - Authentication.
58
+ * @param terraProfile - Terra profile.
64
59
  * @returns login statuses.
65
60
  */
66
61
  function concatLoginStatuses(
67
- authentication: AuthContextProps
62
+ terraProfile: TerraProfileContextProps
68
63
  ): LoginStatus<LoginResponse>[] {
69
64
  const {
70
65
  terraNIHProfileLoginStatus,
71
66
  terraProfileLoginStatus,
72
67
  terraTOSLoginStatus,
73
- } = authentication;
68
+ } = terraProfile;
74
69
  return [
75
70
  terraProfileLoginStatus,
76
71
  terraTOSLoginStatus,
@@ -1,5 +1,5 @@
1
- import { REQUEST_STATUS } from "./common/entities";
2
- import { useAuthentication } from "./useAuthentication";
1
+ import { useTerraProfile } from "../../../providers/authentication/terra/hook";
2
+ import { REQUEST_STATUS } from "../../../providers/authentication/terra/hooks/common/entities";
3
3
 
4
4
  const WARNING_WINDOW_SECONDS = 60 * 60 * 24 * 5; // 5 days.
5
5
 
@@ -15,8 +15,7 @@ interface UseAuthenticationNIHExpiry {
15
15
  * @returns NIH expiry status.
16
16
  */
17
17
  export const useAuthenticationNIHExpiry = (): UseAuthenticationNIHExpiry => {
18
- const authentication = useAuthentication();
19
- const { terraNIHProfileLoginStatus } = authentication;
18
+ const { terraNIHProfileLoginStatus } = useTerraProfile();
20
19
  const { requestStatus, response } = terraNIHProfileLoginStatus;
21
20
  const { linkExpireTime } = response || {};
22
21
  const isReady = requestStatus === REQUEST_STATUS.COMPLETED;
@@ -0,0 +1,5 @@
1
+ import { Credentials } from "../../../providers/authentication/credentials/types";
2
+
3
+ export interface UseToken {
4
+ token: Credentials;
5
+ }
@@ -0,0 +1,9 @@
1
+ import { useCredentials } from "../../../providers/authentication/credentials/hook";
2
+ import { UseToken } from "./types";
3
+
4
+ export const useToken = (): UseToken => {
5
+ const {
6
+ credentialsState: { credentials: token },
7
+ } = useCredentials();
8
+ return { token };
9
+ };
@@ -0,0 +1,19 @@
1
+ import { useReducer } from "react";
2
+ import { DEFAULT_TOKEN_STATE } from "../../../providers/authentication/token/constants";
3
+ import { tokenReducer } from "../../../providers/authentication/token/reducer";
4
+ import { TokenContextProps } from "../../../providers/authentication/token/types";
5
+
6
+ /**
7
+ * Token reducer: Manages the internal state of the token within the OAuth provider.
8
+ * This reducer handles the token locally until certain conditions are met.
9
+ * For releasing the token to the rest of the app, use the credentials reducer.
10
+ */
11
+
12
+ export const useTokenReducer = (): TokenContextProps => {
13
+ const [tokenState, tokenDispatch] = useReducer(
14
+ tokenReducer,
15
+ undefined,
16
+ () => DEFAULT_TOKEN_STATE
17
+ );
18
+ return { tokenDispatch, tokenState };
19
+ };
@@ -13,8 +13,8 @@ import { EntityMapper } from "../config/entities";
13
13
  import { getEntityConfig } from "../config/utils";
14
14
  import { ExploreActionKind } from "../providers/exploreState";
15
15
  import { DEFAULT_PAGINATION_STATE } from "../providers/exploreState/initializer/constants";
16
+ import { useToken } from "./authentication/token/useToken";
16
17
  import { useAsync } from "./useAsync";
17
- import { useAuthentication } from "./useAuthentication/useAuthentication";
18
18
  import { useConfig } from "./useConfig";
19
19
  import { useEntityService } from "./useEntityService";
20
20
  import { EXPLORE_MODE, ExploreMode, useExploreMode } from "./useExploreMode";
@@ -31,7 +31,7 @@ export const useEntityList = (
31
31
  staticResponse: AzulEntitiesStaticResponse
32
32
  ): void => {
33
33
  const { data: staticData, entityListType } = staticResponse;
34
- const { token } = useAuthentication();
34
+ const { token } = useToken();
35
35
  const { config } = useConfig();
36
36
  const { apiPath } = getEntityConfig(config.entities, entityListType);
37
37
  const exploreMode = useExploreMode();
@@ -2,8 +2,8 @@ import { useRouter } from "next/router";
2
2
  import { useEffect, useMemo } from "react";
3
3
  import { PARAMS_INDEX_UUID } from "../common/constants";
4
4
  import { EntityDetailViewProps } from "../views/EntityDetailView/entityDetailView";
5
+ import { useToken } from "./authentication/token/useToken";
5
6
  import { useAsync } from "./useAsync";
6
- import { useAuthentication } from "./useAuthentication/useAuthentication";
7
7
  import { useEntityService } from "./useEntityService";
8
8
  import { EXPLORE_MODE, useExploreMode } from "./useExploreMode";
9
9
  import { useExploreState } from "./useExploreState";
@@ -23,7 +23,7 @@ export const useFetchEntity = <T,>(
23
23
  detailViewProps?: EntityDetailViewProps
24
24
  ): UseEntityDetailResponse<T> => {
25
25
  const { data: staticData, entityListType } = detailViewProps || {};
26
- const { token } = useAuthentication();
26
+ const { token } = useToken();
27
27
  const exploreMode = useExploreMode();
28
28
  const { exploreState } = useExploreState();
29
29
  const { catalogState } = exploreState;
@@ -37,7 +37,7 @@ export const useFetchEntity = <T,>(
37
37
  () =>
38
38
  isFetchRequired(
39
39
  exploreMode !== EXPLORE_MODE.CS_FETCH_CS_FILTERING,
40
- Boolean(token),
40
+ Boolean(token), // TODO(cc), note a fetch is required if the token is true, but is unable to re-fetch on logout when token is undefined! Page is required to reload!
41
41
  Boolean(catalogState),
42
42
  Boolean(entityResponse)
43
43
  ),
@@ -6,8 +6,8 @@ import {
6
6
  import { Filters } from "../../common/entities";
7
7
  import { fetchEntitiesFromURL } from "../../entity/common/service";
8
8
  import { fetchQueryParams, SearchParams } from "../../utils/fetchQueryParams";
9
+ import { useToken } from "../authentication/token/useToken";
9
10
  import { useAsync } from "../useAsync";
10
- import { useAuthentication } from "../useAuthentication/useAuthentication";
11
11
  import { useFetchRequestURL } from "../useFetchRequestURL";
12
12
  import { FetchFilesFacets } from "./common/entities";
13
13
  import { bindEntitySearchResultsResponse } from "./common/utils";
@@ -26,8 +26,7 @@ export const useFetchFilesFacets = (
26
26
  searchParams: SearchParams | undefined,
27
27
  isEnabled: boolean
28
28
  ): FetchFilesFacets => {
29
- // Grab token from authentication.
30
- const { token } = useAuthentication();
29
+ const { token } = useToken();
31
30
  // Build request params.
32
31
  const requestParams = fetchQueryParams(filters, catalog, searchParams);
33
32
  // Build request URL.
@@ -6,8 +6,8 @@ import {
6
6
  import { Filters } from "../../common/entities";
7
7
  import { fetchSummaryFromURL } from "../../entity/api/service";
8
8
  import { fetchQueryParams } from "../../utils/fetchQueryParams";
9
+ import { useToken } from "../authentication/token/useToken";
9
10
  import { useAsync } from "../useAsync";
10
- import { useAuthentication } from "../useAuthentication/useAuthentication";
11
11
  import { useFetchRequestURL } from "../useFetchRequestURL";
12
12
  import { FetchFileSummary } from "./common/entities";
13
13
 
@@ -23,8 +23,7 @@ export const useFetchSummary = (
23
23
  catalog: string,
24
24
  isEnabled: boolean
25
25
  ): FetchFileSummary => {
26
- // Grab token from authentication.
27
- const { token } = useAuthentication();
26
+ const { token } = useToken();
28
27
  // Build request params.
29
28
  const requestParams = fetchQueryParams(filters, catalog, undefined);
30
29
  // Build request URL.
@@ -4,9 +4,9 @@ import {
4
4
  FILE_LOCATION_SUCCESSFULLY,
5
5
  } from "../apis/azul/common/constants";
6
6
  import { FileLocationResponse } from "../apis/azul/common/entities";
7
+ import { useToken } from "./authentication/token/useToken";
7
8
  import { METHOD } from "./types";
8
9
  import { useAsync } from "./useAsync";
9
- import { useAuthentication } from "./useAuthentication/useAuthentication";
10
10
 
11
11
  export interface FileLocation {
12
12
  commandLine?: { [key: string]: string };
@@ -123,8 +123,7 @@ export const useRequestFileLocation = (
123
123
  url?: string,
124
124
  method?: Method
125
125
  ): UseRequestFileLocationResult => {
126
- // Grab token from authentication.
127
- const { token } = useAuthentication();
126
+ const { token } = useToken();
128
127
  const {
129
128
  data,
130
129
  isIdle,