studiokit-scaffolding-js 7.0.12 → 7.1.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 (390) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +137 -137
  3. package/lib/components/ActionList.d.ts +2 -2
  4. package/lib/components/ActionList.js +166 -87
  5. package/lib/components/AlertDialog.d.ts +3 -3
  6. package/lib/components/AlertDialog.js +133 -18
  7. package/lib/components/AlertWithIcon.js +93 -52
  8. package/lib/components/ConnectedModal.d.ts +1 -2
  9. package/lib/components/ConnectedModal.js +43 -37
  10. package/lib/components/Dropdowns/GroupsDropdown.d.ts +4 -4
  11. package/lib/components/Dropdowns/GroupsDropdown.js +69 -82
  12. package/lib/components/Dropdowns/ManagedNavDropdown.d.ts +2 -2
  13. package/lib/components/Dropdowns/ManagedNavDropdown.js +99 -111
  14. package/lib/components/Dropdowns/UserDropdown.js +109 -70
  15. package/lib/components/Dropdowns/index.js +27 -11
  16. package/lib/components/EntityOwnerList.d.ts +3 -3
  17. package/lib/components/EntityOwnerList.js +52 -60
  18. package/lib/components/Error.js +107 -27
  19. package/lib/components/ErrorBoundary.js +133 -94
  20. package/lib/components/ErrorMessage.d.ts +2 -2
  21. package/lib/components/ErrorMessage.js +44 -14
  22. package/lib/components/Forms/DateField.d.ts +2 -2
  23. package/lib/components/Forms/DateField.js +63 -95
  24. package/lib/components/Forms/TimeField.d.ts +2 -2
  25. package/lib/components/Forms/TimeField.js +84 -108
  26. package/lib/components/Forms/index.js +27 -13
  27. package/lib/components/Groups/CreateEditCopySaveButtons.d.ts +2 -2
  28. package/lib/components/Groups/CreateEditCopySaveButtons.js +102 -14
  29. package/lib/components/Groups/ExternalGroups/Attach.d.ts +6 -7
  30. package/lib/components/Groups/ExternalGroups/Attach.js +213 -188
  31. package/lib/components/Groups/ExternalGroups/Table.js +183 -76
  32. package/lib/components/Groups/GroupCreateOrEditCommonProps.js +5 -1
  33. package/lib/components/Groups/RosterSyncInfo.js +140 -49
  34. package/lib/components/HOC/AccessibleAppComponent.d.ts +2 -2
  35. package/lib/components/HOC/AccessibleAppComponent.js +101 -124
  36. package/lib/components/HOC/ActivityRequiredComponent.d.ts +14 -14
  37. package/lib/components/HOC/ActivityRequiredComponent.js +93 -107
  38. package/lib/components/HOC/AsyncComponent.d.ts +9 -9
  39. package/lib/components/HOC/AsyncComponent.js +53 -129
  40. package/lib/components/HOC/AuthenticatedComponent.d.ts +4 -4
  41. package/lib/components/HOC/AuthenticatedComponent.js +59 -96
  42. package/lib/components/HOC/CollectionComponent.d.ts +12 -12
  43. package/lib/components/HOC/CollectionComponent.js +171 -171
  44. package/lib/components/HOC/CollectionFirstItemComponent.d.ts +13 -13
  45. package/lib/components/HOC/CollectionFirstItemComponent.js +52 -94
  46. package/lib/components/HOC/CollectionItemComponent.d.ts +9 -9
  47. package/lib/components/HOC/CollectionItemComponent.js +169 -168
  48. package/lib/components/HOC/ConnectedModalComponent.d.ts +9 -9
  49. package/lib/components/HOC/ConnectedModalComponent.js +110 -140
  50. package/lib/components/HOC/DataDependentComponent.d.ts +3 -55
  51. package/lib/components/HOC/DataDependentComponent.js +30 -79
  52. package/lib/components/HOC/EntityComponent.d.ts +13 -13
  53. package/lib/components/HOC/EntityComponent.js +74 -112
  54. package/lib/components/HOC/FullscreenModalComponent.d.ts +9 -9
  55. package/lib/components/HOC/FullscreenModalComponent.js +165 -185
  56. package/lib/components/HOC/GroupActivityRequiredComponent.d.ts +2 -2
  57. package/lib/components/HOC/GroupActivityRequiredComponent.js +48 -47
  58. package/lib/components/HOC/GuidComponent.d.ts +1 -1
  59. package/lib/components/HOC/GuidComponent.js +29 -68
  60. package/lib/components/HOC/ModelContextDependencyVerifyComponent.d.ts +28 -29
  61. package/lib/components/HOC/ModelContextDependencyVerifyComponent.js +42 -65
  62. package/lib/components/HOC/ModelErrorRedirectComponent.d.ts +10 -10
  63. package/lib/components/HOC/ModelErrorRedirectComponent.js +51 -94
  64. package/lib/components/HOC/SearchPersistorComponent.d.ts +4 -4
  65. package/lib/components/HOC/SearchPersistorComponent.js +243 -216
  66. package/lib/components/HOC/UnauthenticatedComponent.d.ts +12 -12
  67. package/lib/components/HOC/UnauthenticatedComponent.js +37 -82
  68. package/lib/components/HOC/UserComponent.d.ts +1 -1
  69. package/lib/components/HOC/UserComponent.js +12 -11
  70. package/lib/components/Icons/IconAlphaList.js +34 -20
  71. package/lib/components/Icons/IconExternalUser.js +34 -20
  72. package/lib/components/Icons/IconImpersonation.js +34 -20
  73. package/lib/components/Icons/IconStopImpersonating.js +34 -20
  74. package/lib/components/Icons/IconTable.js +35 -21
  75. package/lib/components/Icons/IconTableDeleteCol.js +34 -20
  76. package/lib/components/Icons/IconTableDeleteRow.js +34 -20
  77. package/lib/components/Icons/IconTableInsertCol.js +34 -20
  78. package/lib/components/Icons/IconTableInsertRow.js +34 -20
  79. package/lib/components/Impersonation/Button.d.ts +2 -2
  80. package/lib/components/Impersonation/Button.js +76 -56
  81. package/lib/components/Impersonation/Link.d.ts +2 -2
  82. package/lib/components/Impersonation/Link.js +76 -53
  83. package/lib/components/Impersonation/UserDetail.css +22 -22
  84. package/lib/components/Impersonation/UserDetail.d.ts +2 -2
  85. package/lib/components/Impersonation/UserDetail.js +66 -17
  86. package/lib/components/Loading.js +27 -21
  87. package/lib/components/LockDownBrowser/Check.js +194 -107
  88. package/lib/components/LockDownBrowser/ExitButton.js +27 -14
  89. package/lib/components/LockDownBrowser/Launch.js +70 -85
  90. package/lib/components/Lti/Confirm.js +152 -33
  91. package/lib/components/Lti/CreateNonLtiGroupAlertDialog.d.ts +4 -2
  92. package/lib/components/Lti/CreateNonLtiGroupAlertDialog.js +170 -78
  93. package/lib/components/Lti/Launch.js +105 -49
  94. package/lib/components/Lti/LaunchGroup.js +85 -39
  95. package/lib/components/ManageTable.d.ts +1 -2
  96. package/lib/components/ManageTable.js +309 -104
  97. package/lib/components/ManageTableNoDataComponent.js +42 -22
  98. package/lib/components/NewVersionAlert.d.ts +2 -2
  99. package/lib/components/NewVersionAlert.js +82 -91
  100. package/lib/components/NotFound.js +87 -28
  101. package/lib/components/Notifications.d.ts +4 -4
  102. package/lib/components/Notifications.js +187 -169
  103. package/lib/components/PaginationNextButton.js +33 -21
  104. package/lib/components/PaginationPreviousButton.js +33 -21
  105. package/lib/components/Quill/CustomToolbar.d.ts +2 -2
  106. package/lib/components/Quill/CustomToolbar.js +432 -257
  107. package/lib/components/Quill/Formats/Image.d.ts +10 -25
  108. package/lib/components/Quill/Formats/Image.js +80 -86
  109. package/lib/components/Quill/Formats/List.d.ts +6 -3
  110. package/lib/components/Quill/Formats/List.js +52 -74
  111. package/lib/components/Quill/Formats/Video.d.ts +2 -1
  112. package/lib/components/Quill/Formats/Video.js +31 -45
  113. package/lib/components/Quill/ImageDropModule.d.ts +1 -1
  114. package/lib/components/Quill/ImageDropModule.js +149 -122
  115. package/lib/components/Quill/ImageWarning.d.ts +2 -2
  116. package/lib/components/Quill/ImageWarning.js +45 -32
  117. package/lib/components/Quill/ImageWithAltTextModal.d.ts +0 -1
  118. package/lib/components/Quill/ImageWithAltTextModal.js +425 -141
  119. package/lib/components/Quill/Specs/CustomImageSpec.d.ts +1 -1
  120. package/lib/components/Quill/Specs/CustomImageSpec.js +43 -51
  121. package/lib/components/Quill/Specs/CustomVideoSpec.d.ts +1 -1
  122. package/lib/components/Quill/Specs/CustomVideoSpec.js +35 -44
  123. package/lib/components/Quill/TableModule/Blots/BaseTableBlot.d.ts +2 -1
  124. package/lib/components/Quill/TableModule/Blots/BaseTableBlot.js +105 -121
  125. package/lib/components/Quill/TableModule/Blots/TableBlot.js +53 -66
  126. package/lib/components/Quill/TableModule/Blots/TableBodyBlot.js +54 -67
  127. package/lib/components/Quill/TableModule/Blots/TableCellBlot.d.ts +1 -1
  128. package/lib/components/Quill/TableModule/Blots/TableCellBlot.js +225 -241
  129. package/lib/components/Quill/TableModule/Blots/TableContainer.js +82 -99
  130. package/lib/components/Quill/TableModule/Blots/TableRowBlot.js +76 -87
  131. package/lib/components/Quill/TableModule/constants.js +45 -41
  132. package/lib/components/Quill/TableModule/index.css +171 -171
  133. package/lib/components/Quill/TableModule/index.d.ts +14 -5
  134. package/lib/components/Quill/TableModule/index.js +373 -313
  135. package/lib/components/Quill/TableModule/utils.js +45 -45
  136. package/lib/components/Quill/accessibilityFix.d.ts +0 -1
  137. package/lib/components/Quill/accessibilityFix.js +235 -251
  138. package/lib/components/Quill/index.js +36 -32
  139. package/lib/components/RefreshIndicator/Bordered.js +48 -32
  140. package/lib/components/RefreshIndicator/Inline.js +48 -33
  141. package/lib/components/RefreshIndicator/index.d.ts +2 -2
  142. package/lib/components/RefreshIndicator/index.js +263 -113
  143. package/lib/components/SearchControls.js +216 -31
  144. package/lib/components/SentryRoute.js +10 -23
  145. package/lib/components/Tables/RoleFilter.d.ts +3 -4
  146. package/lib/components/Tables/RoleFilter.js +71 -46
  147. package/lib/components/Tables/TextFilter.d.ts +2 -3
  148. package/lib/components/Tables/TextFilter.js +62 -20
  149. package/lib/components/UserRoles/Add.d.ts +3 -3
  150. package/lib/components/UserRoles/Add.js +199 -161
  151. package/lib/components/UserRoles/Context.js +11 -9
  152. package/lib/components/UserRoles/RoleCell.js +180 -100
  153. package/lib/components/UserRoles/Select.js +157 -51
  154. package/lib/components/UserRoles/Table.js +221 -102
  155. package/lib/components/UserRoles/index.d.ts +6 -6
  156. package/lib/components/UserRoles/index.js +537 -466
  157. package/lib/config/eslint/index.d.ts +2 -0
  158. package/lib/config/eslint/index.js +36 -0
  159. package/lib/config/eslint/lib/order.d.ts +3 -0
  160. package/lib/config/eslint/lib/order.js +30 -0
  161. package/lib/config/eslint/lib/prettier.d.ts +3 -0
  162. package/lib/config/eslint/lib/prettier.js +23 -0
  163. package/lib/config/eslint/lib/typescript.d.ts +2 -0
  164. package/lib/config/eslint/lib/typescript.js +98 -0
  165. package/lib/config/eslint/react.d.ts +2 -0
  166. package/lib/config/eslint/react.js +30 -0
  167. package/lib/constants/baseActivity.js +30 -26
  168. package/lib/constants/baseRole.js +14 -10
  169. package/lib/constants/configuration.d.ts +1 -1
  170. package/lib/constants/configuration.js +43 -39
  171. package/lib/constants/externalProviderType.js +10 -6
  172. package/lib/constants/fetchErrorData.js +15 -11
  173. package/lib/constants/index.js +137 -23
  174. package/lib/constants/lockDownBrowser.js +28 -24
  175. package/lib/constants/mockData.d.ts +4 -6
  176. package/lib/constants/mockData.js +385 -326
  177. package/lib/constants/modelStatus.js +15 -11
  178. package/lib/constants/notificationType.js +12 -8
  179. package/lib/constants/operatingSystem.js +12 -8
  180. package/lib/constants/shard.js +11 -7
  181. package/lib/constants/table.js +21 -21
  182. package/lib/constants/tier.js +12 -8
  183. package/lib/constants/userRole.d.ts +1 -2
  184. package/lib/constants/userRole.js +15 -17
  185. package/lib/css/base/_base.css +98 -98
  186. package/lib/css/base/_typography.css +130 -130
  187. package/lib/css/components/_alert.css +86 -86
  188. package/lib/css/components/_bootstrap-grid.css +28 -28
  189. package/lib/css/components/_buttons.css +397 -397
  190. package/lib/css/components/_forms.css +101 -101
  191. package/lib/css/components/_menu.css +56 -56
  192. package/lib/css/components/_modals.css +46 -46
  193. package/lib/css/components/_quill.css +315 -315
  194. package/lib/css/components/_tables.css +497 -497
  195. package/lib/css/components/_tags.css +12 -12
  196. package/lib/css/index-with-variables.css +15 -15
  197. package/lib/css/index.css +14 -14
  198. package/lib/css/utils/_border.css +463 -463
  199. package/lib/css/utils/_color.css +317 -317
  200. package/lib/css/utils/_display.css +305 -312
  201. package/lib/css/utils/_general.css +48 -48
  202. package/lib/css/utils/_icon.css +16 -16
  203. package/lib/css/utils/_text.css +25 -24
  204. package/lib/css/utils/_width.css +60 -60
  205. package/lib/css/variables.css +84 -84
  206. package/lib/endpointMappings.js +197 -193
  207. package/lib/hooks/useCollection.js +83 -65
  208. package/lib/hooks/useCollectionConfiguration.d.ts +0 -1
  209. package/lib/hooks/useCollectionConfiguration.js +185 -88
  210. package/lib/hooks/useCollectionItem.js +155 -58
  211. package/lib/hooks/useEventCalback.d.ts +14 -0
  212. package/lib/hooks/useEventCalback.js +51 -0
  213. package/lib/hooks/useGuid.js +21 -10
  214. package/lib/hooks/usePrevious.d.ts +24 -1
  215. package/lib/hooks/usePrevious.js +84 -14
  216. package/lib/index.js +156 -36
  217. package/lib/redux/actionCreator.d.ts +6 -6
  218. package/lib/redux/actionCreator.js +51 -40
  219. package/lib/redux/actions/AuthAction.js +44 -31
  220. package/lib/redux/actions/ModalAction.d.ts +1 -1
  221. package/lib/redux/actions/ModalAction.js +10 -6
  222. package/lib/redux/actions/ModelAction.d.ts +1 -1
  223. package/lib/redux/actions/ModelAction.js +77 -49
  224. package/lib/redux/actions/NotificationAction.js +10 -6
  225. package/lib/redux/actions/SearchAction.js +9 -5
  226. package/lib/redux/actions/index.js +60 -16
  227. package/lib/redux/configureReducers.d.ts +2 -5
  228. package/lib/redux/configureReducers.js +67 -78
  229. package/lib/redux/configureStore.d.ts +2 -2
  230. package/lib/redux/configureStore.js +83 -115
  231. package/lib/redux/helpers.js +7 -2
  232. package/lib/redux/reducers/authReducer.js +52 -46
  233. package/lib/redux/reducers/index.js +41 -15
  234. package/lib/redux/reducers/modalsReducer.js +49 -52
  235. package/lib/redux/reducers/modelsReducer.d.ts +2 -2
  236. package/lib/redux/reducers/modelsReducer.js +183 -182
  237. package/lib/redux/reducers/notificationsReducer.js +26 -21
  238. package/lib/redux/reducers/searchReducer.js +26 -20
  239. package/lib/redux/sagas/appInsightsSaga.js +24 -62
  240. package/lib/redux/sagas/authSaga.js +287 -414
  241. package/lib/redux/sagas/caliperSaga.js +169 -263
  242. package/lib/redux/sagas/clockOffsetSaga.js +36 -77
  243. package/lib/redux/sagas/configurationSaga.js +13 -46
  244. package/lib/redux/sagas/downtimeApiErrorSaga.d.ts +0 -1
  245. package/lib/redux/sagas/downtimeApiErrorSaga.js +23 -64
  246. package/lib/redux/sagas/errorSaga.d.ts +0 -1
  247. package/lib/redux/sagas/errorSaga.js +29 -63
  248. package/lib/redux/sagas/googleAnalyticsSaga.js +29 -69
  249. package/lib/redux/sagas/identityProviderSaga.js +24 -69
  250. package/lib/redux/sagas/initialDataLoadSaga.js +38 -29
  251. package/lib/redux/sagas/lockDownBrowserErrorSaga.d.ts +0 -1
  252. package/lib/redux/sagas/lockDownBrowserErrorSaga.js +32 -81
  253. package/lib/redux/sagas/modelFetchSaga.js +379 -459
  254. package/lib/redux/sagas/noStoreSaga.d.ts +1 -1
  255. package/lib/redux/sagas/noStoreSaga.js +68 -101
  256. package/lib/redux/sagas/postLoginDataSaga.js +47 -79
  257. package/lib/redux/sagas/postLoginRedirectSaga.js +30 -71
  258. package/lib/redux/sagas/rootSaga.js +85 -137
  259. package/lib/redux/sagas/sentrySaga.js +29 -85
  260. package/lib/redux/sagas/userIdSaga.js +18 -54
  261. package/lib/services/codeProviderService.js +25 -29
  262. package/lib/services/dateService.js +14 -12
  263. package/lib/services/documentService.js +18 -13
  264. package/lib/services/fetchService.js +134 -168
  265. package/lib/services/persistenceService.d.ts +4 -4
  266. package/lib/services/persistenceService.js +45 -43
  267. package/lib/services/ticketProviderService.js +29 -33
  268. package/lib/services/tokenPersistenceService.js +13 -9
  269. package/lib/services/windowService.js +21 -17
  270. package/lib/startup.d.ts +1 -1
  271. package/lib/startup.js +132 -135
  272. package/lib/types/AppConfiguration.js +5 -1
  273. package/lib/types/Artifact.js +11 -7
  274. package/lib/types/BaseReduxState.js +5 -1
  275. package/lib/types/Client.js +5 -1
  276. package/lib/types/Collection.d.ts +3 -3
  277. package/lib/types/Collection.js +5 -1
  278. package/lib/types/Configuration.js +5 -1
  279. package/lib/types/DeepLinkingResponseRequest.js +5 -1
  280. package/lib/types/DeletableModel.js +5 -1
  281. package/lib/types/Event.js +5 -1
  282. package/lib/types/ExternalGroup.js +5 -1
  283. package/lib/types/ExternalProvider.js +5 -1
  284. package/lib/types/ExternalTerm.js +5 -1
  285. package/lib/types/Group.js +5 -1
  286. package/lib/types/IdentityProvider.js +5 -1
  287. package/lib/types/LtiLaunch.js +5 -1
  288. package/lib/types/NameOnlyEntity.js +5 -1
  289. package/lib/types/Notification.d.ts +2 -2
  290. package/lib/types/Notification.js +5 -1
  291. package/lib/types/OptionalRecord.d.ts +1 -1
  292. package/lib/types/OptionalRecord.js +5 -1
  293. package/lib/types/OwnerSchedule.d.ts +3 -1
  294. package/lib/types/OwnerSchedule.js +5 -1
  295. package/lib/types/PropertyOfType.d.ts +3 -3
  296. package/lib/types/PropertyOfType.js +5 -1
  297. package/lib/types/Quill.js +5 -1
  298. package/lib/types/RoleDescription.d.ts +0 -1
  299. package/lib/types/RoleDescription.js +5 -1
  300. package/lib/types/Search.js +5 -1
  301. package/lib/types/SimpleLocation.js +5 -1
  302. package/lib/types/UniTime.js +5 -1
  303. package/lib/types/User.js +5 -1
  304. package/lib/types/UserRole.js +5 -1
  305. package/lib/types/auth/AuthState.js +5 -1
  306. package/lib/types/auth/CasV1LoginRequestBody.js +5 -1
  307. package/lib/types/auth/ClientCredentials.js +5 -1
  308. package/lib/types/auth/CodeProviderService.js +5 -1
  309. package/lib/types/auth/LocalLoginRequestBody.js +5 -1
  310. package/lib/types/auth/TicketProviderService.js +5 -1
  311. package/lib/types/auth/TokenPersistenceService.js +5 -1
  312. package/lib/types/auth/index.js +82 -18
  313. package/lib/types/externals.d.js +2 -0
  314. package/lib/types/index.js +313 -39
  315. package/lib/types/net/EndpointConfig.js +5 -1
  316. package/lib/types/net/EndpointMapping.js +5 -1
  317. package/lib/types/net/EndpointMappings.js +5 -1
  318. package/lib/types/net/ErrorHandler.d.ts +1 -1
  319. package/lib/types/net/ErrorHandler.js +5 -1
  320. package/lib/types/net/FetchConfig.d.ts +1 -1
  321. package/lib/types/net/FetchConfig.js +5 -1
  322. package/lib/types/net/FetchErrorData.js +10 -6
  323. package/lib/types/net/FetchResult.d.ts +2 -2
  324. package/lib/types/net/FetchResult.js +5 -1
  325. package/lib/types/net/HTTPMethod.d.ts +1 -1
  326. package/lib/types/net/HTTPMethod.js +5 -1
  327. package/lib/types/net/HTTPStatusCode.js +16 -12
  328. package/lib/types/net/Metadata.js +5 -1
  329. package/lib/types/net/Model.js +5 -1
  330. package/lib/types/net/ModelCollection.js +5 -1
  331. package/lib/types/net/ModelsState.js +5 -1
  332. package/lib/types/net/OAuthToken.js +5 -1
  333. package/lib/types/net/OAuthTokenOrNull.d.ts +1 -1
  334. package/lib/types/net/OAuthTokenOrNull.js +5 -1
  335. package/lib/types/net/TokenAccessFunction.d.ts +1 -1
  336. package/lib/types/net/TokenAccessFunction.js +5 -1
  337. package/lib/types/net/index.js +181 -27
  338. package/lib/utils/baseActivity.d.ts +2 -2
  339. package/lib/utils/baseActivity.js +138 -136
  340. package/lib/utils/baseRole.js +37 -33
  341. package/lib/utils/collection.js +432 -310
  342. package/lib/utils/cookies.js +22 -37
  343. package/lib/utils/date.js +320 -320
  344. package/lib/utils/dom.js +186 -174
  345. package/lib/utils/domainIdentifier.js +9 -9
  346. package/lib/utils/entityUserRole.js +6 -2
  347. package/lib/utils/error.d.ts +1 -1
  348. package/lib/utils/error.js +18 -16
  349. package/lib/utils/events.js +40 -33
  350. package/lib/utils/externalGroup.js +25 -21
  351. package/lib/utils/externalProviders.js +8 -4
  352. package/lib/utils/externalTerms.js +9 -6
  353. package/lib/utils/fetch.d.ts +1 -1
  354. package/lib/utils/fetch.js +188 -185
  355. package/lib/utils/group.js +17 -9
  356. package/lib/utils/groupDates.d.ts +1 -1
  357. package/lib/utils/groupDates.js +43 -39
  358. package/lib/utils/groupRoles.js +28 -28
  359. package/lib/utils/lockDownBrowser.js +16 -12
  360. package/lib/utils/logger.js +30 -25
  361. package/lib/utils/lti.js +10 -5
  362. package/lib/utils/model.d.ts +2 -2
  363. package/lib/utils/model.js +39 -48
  364. package/lib/utils/number.js +23 -26
  365. package/lib/utils/promise.d.ts +6 -1
  366. package/lib/utils/promise.js +34 -15
  367. package/lib/utils/quill.js +66 -77
  368. package/lib/utils/route.d.ts +2 -2
  369. package/lib/utils/route.js +61 -60
  370. package/lib/utils/search.d.ts +1 -1
  371. package/lib/utils/search.js +78 -85
  372. package/lib/utils/shard.js +38 -41
  373. package/lib/utils/sort.d.ts +3 -3
  374. package/lib/utils/sort.js +62 -58
  375. package/lib/utils/string.js +14 -10
  376. package/lib/utils/table.d.ts +3 -3
  377. package/lib/utils/table.js +39 -36
  378. package/lib/utils/timezone.js +12 -26
  379. package/lib/utils/url.d.ts +2 -1
  380. package/lib/utils/url.js +146 -200
  381. package/lib/utils/user.js +59 -61
  382. package/lib/utils/userAgent.js +11 -11
  383. package/lib/utils/userRole.d.ts +3 -3
  384. package/lib/utils/userRole.js +58 -56
  385. package/package.json +224 -207
  386. package/lib/config/eslint/index.cjs +0 -21
  387. package/lib/config/eslint/lib/order.cjs +0 -22
  388. package/lib/config/eslint/lib/prettier.cjs +0 -18
  389. package/lib/config/eslint/lib/typescript.cjs +0 -86
  390. package/lib/config/eslint/react.cjs +0 -9
@@ -2,7 +2,7 @@ import { SagaIterator } from '@redux-saga/core';
2
2
  import { AnyAction } from 'redux';
3
3
  import { FetchErrorData } from '../../types';
4
4
  import { ModelFetchRequestAction } from '../actions';
5
- export declare type HookFunction<T = any> = (input: T | FetchErrorData | null) => void;
5
+ export type HookFunction<T = any> = (input: T | FetchErrorData | null) => void;
6
6
  export declare const matchesNoStoreAction: (incomingAction: AnyAction) => incomingAction is ModelFetchRequestAction;
7
7
  export declare const matchesFailedNoStoreHookAction: (incomingAction: AnyAction, noStoreAction: ModelFetchRequestAction) => boolean;
8
8
  export declare const takeMatchesFailedNoStoreHookAction: (noStoreAction: ModelFetchRequestAction) => (incomingAction: AnyAction) => boolean;
@@ -1,119 +1,86 @@
1
1
  "use strict";
2
- var __generator = (this && this.__generator) || function (thisArg, body) {
3
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
4
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
5
- function verb(n) { return function (v) { return step([n, v]); }; }
6
- function step(op) {
7
- if (f) throw new TypeError("Generator is already executing.");
8
- while (_) try {
9
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
10
- if (y = 0, t) op = [op[0] & 2, t.value];
11
- switch (op[0]) {
12
- case 0: case 1: t = op; break;
13
- case 4: _.label++; return { value: op[1], done: false };
14
- case 5: _.label++; y = op[1]; op = [0]; continue;
15
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
16
- default:
17
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
18
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
19
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
20
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
21
- if (t[2]) _.ops.pop();
22
- _.trys.pop(); continue;
23
- }
24
- op = body.call(thisArg, _);
25
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
26
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
27
- }
28
- };
29
- Object.defineProperty(exports, "__esModule", { value: true });
30
- exports.handleAction = exports.noStoreHooks = exports.unregisterNoStoreActionHook = exports.registerNoStoreActionHook = exports.takeMatchesReceivedNoStoreHookAction = exports.matchesReceivedNoStoreHookAction = exports.takeMatchesFailedNoStoreHookAction = exports.matchesFailedNoStoreHookAction = exports.matchesNoStoreAction = void 0;
31
- var lodash_1 = require("lodash");
32
- var effects_1 = require("redux-saga/effects");
33
- var actions_1 = require("../actions");
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = noStoreSaga;
7
+ exports.handleAction = handleAction;
8
+ exports.unregisterNoStoreActionHook = exports.takeMatchesReceivedNoStoreHookAction = exports.takeMatchesFailedNoStoreHookAction = exports.registerNoStoreActionHook = exports.noStoreHooks = exports.matchesReceivedNoStoreHookAction = exports.matchesNoStoreAction = exports.matchesFailedNoStoreHookAction = void 0;
9
+ var _lodash = require("lodash");
10
+ var _effects = require("redux-saga/effects");
11
+ var _actions = require("../actions");
34
12
  //#region Helpers
35
- var matchesNoStoreAction = function (incomingAction) {
36
- return incomingAction.type === actions_1.MODEL_FETCH_REQUEST_ACTION_TYPE.FETCH_REQUEST && incomingAction.noStore === true;
13
+
14
+ const matchesNoStoreAction = incomingAction => {
15
+ return incomingAction.type === _actions.MODEL_FETCH_REQUEST_ACTION_TYPE.FETCH_REQUEST && incomingAction.noStore === true;
37
16
  };
38
17
  exports.matchesNoStoreAction = matchesNoStoreAction;
39
- var matchesFailedNoStoreHookAction = function (incomingAction, noStoreAction) {
40
- return (incomingAction.type === actions_1.MODEL_FETCH_ERROR_ACTION_TYPE.TRANSIENT_FETCH_FAILED &&
41
- noStoreAction.noStore === true &&
42
- incomingAction.guid === noStoreAction.guid);
18
+ const matchesFailedNoStoreHookAction = (incomingAction, noStoreAction) => {
19
+ return incomingAction.type === _actions.MODEL_FETCH_ERROR_ACTION_TYPE.TRANSIENT_FETCH_FAILED && noStoreAction.noStore === true && incomingAction.guid === noStoreAction.guid;
43
20
  };
44
21
  exports.matchesFailedNoStoreHookAction = matchesFailedNoStoreHookAction;
45
- var takeMatchesFailedNoStoreHookAction = function (noStoreAction) { return function (incomingAction) { return exports.matchesFailedNoStoreHookAction(incomingAction, noStoreAction); }; };
22
+ const takeMatchesFailedNoStoreHookAction = noStoreAction => incomingAction => matchesFailedNoStoreHookAction(incomingAction, noStoreAction);
46
23
  exports.takeMatchesFailedNoStoreHookAction = takeMatchesFailedNoStoreHookAction;
47
- var matchesReceivedNoStoreHookAction = function (incomingAction, noStoreAction) {
48
- return (incomingAction.type === actions_1.MODEL_FETCH_RESULT_ACTION_TYPE.TRANSIENT_FETCH_RESULT_RECEIVED &&
49
- noStoreAction.noStore === true &&
50
- incomingAction.guid === noStoreAction.guid);
24
+ const matchesReceivedNoStoreHookAction = (incomingAction, noStoreAction) => {
25
+ return incomingAction.type === _actions.MODEL_FETCH_RESULT_ACTION_TYPE.TRANSIENT_FETCH_RESULT_RECEIVED && noStoreAction.noStore === true && incomingAction.guid === noStoreAction.guid;
51
26
  };
52
27
  exports.matchesReceivedNoStoreHookAction = matchesReceivedNoStoreHookAction;
53
- var takeMatchesReceivedNoStoreHookAction = function (noStoreAction) { return function (incomingAction) { return exports.matchesReceivedNoStoreHookAction(incomingAction, noStoreAction); }; };
54
- exports.takeMatchesReceivedNoStoreHookAction = takeMatchesReceivedNoStoreHookAction;
28
+ const takeMatchesReceivedNoStoreHookAction = noStoreAction => incomingAction => matchesReceivedNoStoreHookAction(incomingAction, noStoreAction);
29
+
55
30
  //#endregion Helpers
31
+
56
32
  //#region Hooks
57
- var hooks = {};
58
- var registerNoStoreActionHook = function (key, hook) {
59
- hooks[key] = hook;
33
+ exports.takeMatchesReceivedNoStoreHookAction = takeMatchesReceivedNoStoreHookAction;
34
+ const hooks = {};
35
+ const registerNoStoreActionHook = (key, hook) => {
36
+ hooks[key] = hook;
60
37
  };
61
38
  exports.registerNoStoreActionHook = registerNoStoreActionHook;
62
- var unregisterNoStoreActionHook = function (key) {
63
- delete hooks[key];
39
+ const unregisterNoStoreActionHook = key => {
40
+ delete hooks[key];
64
41
  };
65
42
  exports.unregisterNoStoreActionHook = unregisterNoStoreActionHook;
66
- exports.noStoreHooks = { registerNoStoreActionHook: exports.registerNoStoreActionHook, unregisterNoStoreActionHook: exports.unregisterNoStoreActionHook };
43
+ const noStoreHooks = exports.noStoreHooks = {
44
+ registerNoStoreActionHook,
45
+ unregisterNoStoreActionHook
46
+ };
47
+
67
48
  //#endregion Hooks
68
- function handleAction(noStoreAction) {
69
- var guid, _a, resultAction, errorAction, hook;
70
- return __generator(this, function (_b) {
71
- switch (_b.label) {
72
- case 0:
73
- guid = noStoreAction.guid;
74
- if (lodash_1.isNil(guid)) {
75
- return [2 /*return*/];
76
- }
77
- if (lodash_1.isNil(hooks[guid])) {
78
- return [2 /*return*/];
79
- }
80
- return [4 /*yield*/, effects_1.race({
81
- resultAction: effects_1.take(exports.takeMatchesReceivedNoStoreHookAction(noStoreAction)),
82
- errorAction: effects_1.take(exports.takeMatchesFailedNoStoreHookAction(noStoreAction))
83
- })
84
- // check that the hook still exists after the result/error
85
- ];
86
- case 1:
87
- _a = _b.sent(), resultAction = _a.resultAction, errorAction = _a.errorAction;
88
- hook = hooks[guid];
89
- if (lodash_1.isNil(hook)) {
90
- return [2 /*return*/];
91
- }
92
- // return `errorData` on failure. modelFetchSaga will ALWAYS create `errorData`
93
- if (errorAction) {
94
- hook(errorAction.errorData);
95
- return [2 /*return*/];
96
- }
97
- // return `data` or `null` on a successful fetch result
98
- // `data` can technically be `undefined`, e.g. if the server response is a NoContent (204),
99
- // so the caller will need to determine if `null` is treated as an error or success
100
- hook((resultAction === null || resultAction === void 0 ? void 0 : resultAction.data) || null);
101
- return [2 /*return*/];
102
- }
103
- });
49
+
50
+ function* handleAction(noStoreAction) {
51
+ const guid = noStoreAction.guid;
52
+ if ((0, _lodash.isNil)(guid)) {
53
+ return;
54
+ }
55
+ if ((0, _lodash.isNil)(hooks[guid])) {
56
+ return;
57
+ }
58
+ const {
59
+ resultAction,
60
+ errorAction
61
+ } = yield (0, _effects.race)({
62
+ resultAction: (0, _effects.take)(takeMatchesReceivedNoStoreHookAction(noStoreAction)),
63
+ errorAction: (0, _effects.take)(takeMatchesFailedNoStoreHookAction(noStoreAction))
64
+ });
65
+
66
+ // check that the hook still exists after the result/error
67
+ const hook = hooks[guid];
68
+ if ((0, _lodash.isNil)(hook)) {
69
+ return;
70
+ }
71
+
72
+ // return `errorData` on failure. modelFetchSaga will ALWAYS create `errorData`
73
+ if (errorAction) {
74
+ hook(errorAction.errorData);
75
+ return;
76
+ }
77
+ // return `data` or `null` on a successful fetch result
78
+ // `data` can technically be `undefined`, e.g. if the server response is a NoContent (204),
79
+ // so the caller will need to determine if `null` is treated as an error or success
80
+ hook(resultAction?.data || null);
104
81
  }
105
- exports.handleAction = handleAction;
106
- function noStoreSaga() {
107
- return __generator(this, function (_a) {
108
- switch (_a.label) {
109
- case 0:
110
- /* istanbul ignore next */
111
- return [4 /*yield*/, effects_1.takeEvery(exports.matchesNoStoreAction, handleAction)];
112
- case 1:
113
- /* istanbul ignore next */
114
- _a.sent();
115
- return [2 /*return*/];
116
- }
117
- });
82
+ function* noStoreSaga() {
83
+ /* istanbul ignore next */
84
+ yield (0, _effects.takeEvery)(matchesNoStoreAction, handleAction);
118
85
  }
119
- exports.default = noStoreSaga;
86
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwicmVxdWlyZSIsIl9lZmZlY3RzIiwiX2FjdGlvbnMiLCJtYXRjaGVzTm9TdG9yZUFjdGlvbiIsImluY29taW5nQWN0aW9uIiwidHlwZSIsIk1PREVMX0ZFVENIX1JFUVVFU1RfQUNUSU9OX1RZUEUiLCJGRVRDSF9SRVFVRVNUIiwibm9TdG9yZSIsImV4cG9ydHMiLCJtYXRjaGVzRmFpbGVkTm9TdG9yZUhvb2tBY3Rpb24iLCJub1N0b3JlQWN0aW9uIiwiTU9ERUxfRkVUQ0hfRVJST1JfQUNUSU9OX1RZUEUiLCJUUkFOU0lFTlRfRkVUQ0hfRkFJTEVEIiwiZ3VpZCIsInRha2VNYXRjaGVzRmFpbGVkTm9TdG9yZUhvb2tBY3Rpb24iLCJtYXRjaGVzUmVjZWl2ZWROb1N0b3JlSG9va0FjdGlvbiIsIk1PREVMX0ZFVENIX1JFU1VMVF9BQ1RJT05fVFlQRSIsIlRSQU5TSUVOVF9GRVRDSF9SRVNVTFRfUkVDRUlWRUQiLCJ0YWtlTWF0Y2hlc1JlY2VpdmVkTm9TdG9yZUhvb2tBY3Rpb24iLCJob29rcyIsInJlZ2lzdGVyTm9TdG9yZUFjdGlvbkhvb2siLCJrZXkiLCJob29rIiwidW5yZWdpc3Rlck5vU3RvcmVBY3Rpb25Ib29rIiwibm9TdG9yZUhvb2tzIiwiaGFuZGxlQWN0aW9uIiwiaXNOaWwiLCJyZXN1bHRBY3Rpb24iLCJlcnJvckFjdGlvbiIsInJhY2UiLCJ0YWtlIiwiZXJyb3JEYXRhIiwiZGF0YSIsIm5vU3RvcmVTYWdhIiwidGFrZUV2ZXJ5Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JlZHV4L3NhZ2FzL25vU3RvcmVTYWdhLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNhZ2FJdGVyYXRvciB9IGZyb20gJ0ByZWR1eC1zYWdhL2NvcmUnXHJcbmltcG9ydCB7IGlzTmlsIH0gZnJvbSAnbG9kYXNoJ1xyXG5pbXBvcnQgeyBBbnlBY3Rpb24gfSBmcm9tICdyZWR1eCdcclxuaW1wb3J0IHsgcmFjZSwgdGFrZSwgdGFrZUV2ZXJ5IH0gZnJvbSAncmVkdXgtc2FnYS9lZmZlY3RzJ1xyXG5pbXBvcnQgeyBGZXRjaEVycm9yRGF0YSB9IGZyb20gJy4uLy4uL3R5cGVzJ1xyXG5pbXBvcnQge1xyXG5cdE1PREVMX0ZFVENIX0VSUk9SX0FDVElPTl9UWVBFLFxyXG5cdE1PREVMX0ZFVENIX1JFUVVFU1RfQUNUSU9OX1RZUEUsXHJcblx0TU9ERUxfRkVUQ0hfUkVTVUxUX0FDVElPTl9UWVBFLFxyXG5cdE1vZGVsRmV0Y2hFcnJvckFjdGlvbixcclxuXHRNb2RlbEZldGNoUmVxdWVzdEFjdGlvbixcclxuXHRNb2RlbEZldGNoUmVzdWx0QWN0aW9uXHJcbn0gZnJvbSAnLi4vYWN0aW9ucydcclxuXHJcbmV4cG9ydCB0eXBlIEhvb2tGdW5jdGlvbjxUID0gYW55PiA9IChpbnB1dDogVCB8IEZldGNoRXJyb3JEYXRhIHwgbnVsbCkgPT4gdm9pZFxyXG5cclxuLy8jcmVnaW9uIEhlbHBlcnNcclxuXHJcbmV4cG9ydCBjb25zdCBtYXRjaGVzTm9TdG9yZUFjdGlvbiA9IChpbmNvbWluZ0FjdGlvbjogQW55QWN0aW9uKTogaW5jb21pbmdBY3Rpb24gaXMgTW9kZWxGZXRjaFJlcXVlc3RBY3Rpb24gPT4ge1xyXG5cdHJldHVybiBpbmNvbWluZ0FjdGlvbi50eXBlID09PSBNT0RFTF9GRVRDSF9SRVFVRVNUX0FDVElPTl9UWVBFLkZFVENIX1JFUVVFU1QgJiYgaW5jb21pbmdBY3Rpb24ubm9TdG9yZSA9PT0gdHJ1ZVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgbWF0Y2hlc0ZhaWxlZE5vU3RvcmVIb29rQWN0aW9uID0gKGluY29taW5nQWN0aW9uOiBBbnlBY3Rpb24sIG5vU3RvcmVBY3Rpb246IE1vZGVsRmV0Y2hSZXF1ZXN0QWN0aW9uKSA9PiB7XHJcblx0cmV0dXJuIChcclxuXHRcdGluY29taW5nQWN0aW9uLnR5cGUgPT09IE1PREVMX0ZFVENIX0VSUk9SX0FDVElPTl9UWVBFLlRSQU5TSUVOVF9GRVRDSF9GQUlMRUQgJiZcclxuXHRcdG5vU3RvcmVBY3Rpb24ubm9TdG9yZSA9PT0gdHJ1ZSAmJlxyXG5cdFx0aW5jb21pbmdBY3Rpb24uZ3VpZCA9PT0gbm9TdG9yZUFjdGlvbi5ndWlkXHJcblx0KVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgdGFrZU1hdGNoZXNGYWlsZWROb1N0b3JlSG9va0FjdGlvbiA9XHJcblx0KG5vU3RvcmVBY3Rpb246IE1vZGVsRmV0Y2hSZXF1ZXN0QWN0aW9uKSA9PiAoaW5jb21pbmdBY3Rpb246IEFueUFjdGlvbikgPT5cclxuXHRcdG1hdGNoZXNGYWlsZWROb1N0b3JlSG9va0FjdGlvbihpbmNvbWluZ0FjdGlvbiwgbm9TdG9yZUFjdGlvbilcclxuXHJcbmV4cG9ydCBjb25zdCBtYXRjaGVzUmVjZWl2ZWROb1N0b3JlSG9va0FjdGlvbiA9IChpbmNvbWluZ0FjdGlvbjogQW55QWN0aW9uLCBub1N0b3JlQWN0aW9uOiBNb2RlbEZldGNoUmVxdWVzdEFjdGlvbikgPT4ge1xyXG5cdHJldHVybiAoXHJcblx0XHRpbmNvbWluZ0FjdGlvbi50eXBlID09PSBNT0RFTF9GRVRDSF9SRVNVTFRfQUNUSU9OX1RZUEUuVFJBTlNJRU5UX0ZFVENIX1JFU1VMVF9SRUNFSVZFRCAmJlxyXG5cdFx0bm9TdG9yZUFjdGlvbi5ub1N0b3JlID09PSB0cnVlICYmXHJcblx0XHRpbmNvbWluZ0FjdGlvbi5ndWlkID09PSBub1N0b3JlQWN0aW9uLmd1aWRcclxuXHQpXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCB0YWtlTWF0Y2hlc1JlY2VpdmVkTm9TdG9yZUhvb2tBY3Rpb24gPVxyXG5cdChub1N0b3JlQWN0aW9uOiBNb2RlbEZldGNoUmVxdWVzdEFjdGlvbikgPT4gKGluY29taW5nQWN0aW9uOiBBbnlBY3Rpb24pID0+XHJcblx0XHRtYXRjaGVzUmVjZWl2ZWROb1N0b3JlSG9va0FjdGlvbihpbmNvbWluZ0FjdGlvbiwgbm9TdG9yZUFjdGlvbilcclxuXHJcbi8vI2VuZHJlZ2lvbiBIZWxwZXJzXHJcblxyXG4vLyNyZWdpb24gSG9va3NcclxuXHJcbmNvbnN0IGhvb2tzOiB7IFtrZXk6IHN0cmluZ106IEhvb2tGdW5jdGlvbiB9ID0ge31cclxuXHJcbmV4cG9ydCBjb25zdCByZWdpc3Rlck5vU3RvcmVBY3Rpb25Ib29rID0gPFQ+KGtleTogc3RyaW5nLCBob29rOiBIb29rRnVuY3Rpb248VD4pID0+IHtcclxuXHRob29rc1trZXldID0gaG9va1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgdW5yZWdpc3Rlck5vU3RvcmVBY3Rpb25Ib29rID0gKGtleTogc3RyaW5nKSA9PiB7XHJcblx0ZGVsZXRlIGhvb2tzW2tleV1cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IG5vU3RvcmVIb29rcyA9IHsgcmVnaXN0ZXJOb1N0b3JlQWN0aW9uSG9vaywgdW5yZWdpc3Rlck5vU3RvcmVBY3Rpb25Ib29rIH1cclxuXHJcbi8vI2VuZHJlZ2lvbiBIb29rc1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uKiBoYW5kbGVBY3Rpb24obm9TdG9yZUFjdGlvbjogTW9kZWxGZXRjaFJlcXVlc3RBY3Rpb24pOiBTYWdhSXRlcmF0b3Ige1xyXG5cdGNvbnN0IGd1aWQgPSBub1N0b3JlQWN0aW9uLmd1aWRcclxuXHRpZiAoaXNOaWwoZ3VpZCkpIHtcclxuXHRcdHJldHVyblxyXG5cdH1cclxuXHRpZiAoaXNOaWwoaG9va3NbZ3VpZF0pKSB7XHJcblx0XHRyZXR1cm5cclxuXHR9XHJcblxyXG5cdGNvbnN0IHtcclxuXHRcdHJlc3VsdEFjdGlvbixcclxuXHRcdGVycm9yQWN0aW9uXHJcblx0fTogeyByZXN1bHRBY3Rpb24/OiBNb2RlbEZldGNoUmVzdWx0QWN0aW9uOyBlcnJvckFjdGlvbj86IE1vZGVsRmV0Y2hFcnJvckFjdGlvbiB9ID0geWllbGQgcmFjZSh7XHJcblx0XHRyZXN1bHRBY3Rpb246IHRha2UodGFrZU1hdGNoZXNSZWNlaXZlZE5vU3RvcmVIb29rQWN0aW9uKG5vU3RvcmVBY3Rpb24pKSxcclxuXHRcdGVycm9yQWN0aW9uOiB0YWtlKHRha2VNYXRjaGVzRmFpbGVkTm9TdG9yZUhvb2tBY3Rpb24obm9TdG9yZUFjdGlvbikpXHJcblx0fSlcclxuXHJcblx0Ly8gY2hlY2sgdGhhdCB0aGUgaG9vayBzdGlsbCBleGlzdHMgYWZ0ZXIgdGhlIHJlc3VsdC9lcnJvclxyXG5cdGNvbnN0IGhvb2sgPSBob29rc1tndWlkXVxyXG5cdGlmIChpc05pbChob29rKSkge1xyXG5cdFx0cmV0dXJuXHJcblx0fVxyXG5cclxuXHQvLyByZXR1cm4gYGVycm9yRGF0YWAgb24gZmFpbHVyZS4gbW9kZWxGZXRjaFNhZ2Egd2lsbCBBTFdBWVMgY3JlYXRlIGBlcnJvckRhdGFgXHJcblx0aWYgKGVycm9yQWN0aW9uKSB7XHJcblx0XHRob29rKGVycm9yQWN0aW9uLmVycm9yRGF0YSlcclxuXHRcdHJldHVyblxyXG5cdH1cclxuXHQvLyByZXR1cm4gYGRhdGFgIG9yIGBudWxsYCBvbiBhIHN1Y2Nlc3NmdWwgZmV0Y2ggcmVzdWx0XHJcblx0Ly8gYGRhdGFgIGNhbiB0ZWNobmljYWxseSBiZSBgdW5kZWZpbmVkYCwgZS5nLiBpZiB0aGUgc2VydmVyIHJlc3BvbnNlIGlzIGEgTm9Db250ZW50ICgyMDQpLFxyXG5cdC8vIHNvIHRoZSBjYWxsZXIgd2lsbCBuZWVkIHRvIGRldGVybWluZSBpZiBgbnVsbGAgaXMgdHJlYXRlZCBhcyBhbiBlcnJvciBvciBzdWNjZXNzXHJcblx0aG9vayhyZXN1bHRBY3Rpb24/LmRhdGEgfHwgbnVsbClcclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24qIG5vU3RvcmVTYWdhKCk6IFNhZ2FJdGVyYXRvciB7XHJcblx0LyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cclxuXHR5aWVsZCB0YWtlRXZlcnkobWF0Y2hlc05vU3RvcmVBY3Rpb24sIGhhbmRsZUFjdGlvbilcclxufVxyXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQ0EsSUFBQUEsT0FBQSxHQUFBQyxPQUFBO0FBRUEsSUFBQUMsUUFBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUsUUFBQSxHQUFBRixPQUFBO0FBV0E7O0FBRU8sTUFBTUcsb0JBQW9CLEdBQUlDLGNBQXlCLElBQWdEO0VBQzdHLE9BQU9BLGNBQWMsQ0FBQ0MsSUFBSSxLQUFLQyx3Q0FBK0IsQ0FBQ0MsYUFBYSxJQUFJSCxjQUFjLENBQUNJLE9BQU8sS0FBSyxJQUFJO0FBQ2hILENBQUM7QUFBQUMsT0FBQSxDQUFBTixvQkFBQSxHQUFBQSxvQkFBQTtBQUVNLE1BQU1PLDhCQUE4QixHQUFHQSxDQUFDTixjQUF5QixFQUFFTyxhQUFzQyxLQUFLO0VBQ3BILE9BQ0NQLGNBQWMsQ0FBQ0MsSUFBSSxLQUFLTyxzQ0FBNkIsQ0FBQ0Msc0JBQXNCLElBQzVFRixhQUFhLENBQUNILE9BQU8sS0FBSyxJQUFJLElBQzlCSixjQUFjLENBQUNVLElBQUksS0FBS0gsYUFBYSxDQUFDRyxJQUFJO0FBRTVDLENBQUM7QUFBQUwsT0FBQSxDQUFBQyw4QkFBQSxHQUFBQSw4QkFBQTtBQUVNLE1BQU1LLGtDQUFrQyxHQUM3Q0osYUFBc0MsSUFBTVAsY0FBeUIsSUFDckVNLDhCQUE4QixDQUFDTixjQUFjLEVBQUVPLGFBQWEsQ0FBQztBQUFBRixPQUFBLENBQUFNLGtDQUFBLEdBQUFBLGtDQUFBO0FBRXhELE1BQU1DLGdDQUFnQyxHQUFHQSxDQUFDWixjQUF5QixFQUFFTyxhQUFzQyxLQUFLO0VBQ3RILE9BQ0NQLGNBQWMsQ0FBQ0MsSUFBSSxLQUFLWSx1Q0FBOEIsQ0FBQ0MsK0JBQStCLElBQ3RGUCxhQUFhLENBQUNILE9BQU8sS0FBSyxJQUFJLElBQzlCSixjQUFjLENBQUNVLElBQUksS0FBS0gsYUFBYSxDQUFDRyxJQUFJO0FBRTVDLENBQUM7QUFBQUwsT0FBQSxDQUFBTyxnQ0FBQSxHQUFBQSxnQ0FBQTtBQUVNLE1BQU1HLG9DQUFvQyxHQUMvQ1IsYUFBc0MsSUFBTVAsY0FBeUIsSUFDckVZLGdDQUFnQyxDQUFDWixjQUFjLEVBQUVPLGFBQWEsQ0FBQzs7QUFFakU7O0FBRUE7QUFBQUYsT0FBQSxDQUFBVSxvQ0FBQSxHQUFBQSxvQ0FBQTtBQUVBLE1BQU1DLEtBQXNDLEdBQUcsQ0FBQyxDQUFDO0FBRTFDLE1BQU1DLHlCQUF5QixHQUFHQSxDQUFJQyxHQUFXLEVBQUVDLElBQXFCLEtBQUs7RUFDbkZILEtBQUssQ0FBQ0UsR0FBRyxDQUFDLEdBQUdDLElBQUk7QUFDbEIsQ0FBQztBQUFBZCxPQUFBLENBQUFZLHlCQUFBLEdBQUFBLHlCQUFBO0FBRU0sTUFBTUcsMkJBQTJCLEdBQUlGLEdBQVcsSUFBSztFQUMzRCxPQUFPRixLQUFLLENBQUNFLEdBQUcsQ0FBQztBQUNsQixDQUFDO0FBQUFiLE9BQUEsQ0FBQWUsMkJBQUEsR0FBQUEsMkJBQUE7QUFFTSxNQUFNQyxZQUFZLEdBQUFoQixPQUFBLENBQUFnQixZQUFBLEdBQUc7RUFBRUoseUJBQXlCO0VBQUVHO0FBQTRCLENBQUM7O0FBRXRGOztBQUVPLFVBQVVFLFlBQVlBLENBQUNmLGFBQXNDLEVBQWdCO0VBQ25GLE1BQU1HLElBQUksR0FBR0gsYUFBYSxDQUFDRyxJQUFJO0VBQy9CLElBQUksSUFBQWEsYUFBSyxFQUFDYixJQUFJLENBQUMsRUFBRTtJQUNoQjtFQUNEO0VBQ0EsSUFBSSxJQUFBYSxhQUFLLEVBQUNQLEtBQUssQ0FBQ04sSUFBSSxDQUFDLENBQUMsRUFBRTtJQUN2QjtFQUNEO0VBRUEsTUFBTTtJQUNMYyxZQUFZO0lBQ1pDO0VBQytFLENBQUMsR0FBRyxNQUFNLElBQUFDLGFBQUksRUFBQztJQUM5RkYsWUFBWSxFQUFFLElBQUFHLGFBQUksRUFBQ1osb0NBQW9DLENBQUNSLGFBQWEsQ0FBQyxDQUFDO0lBQ3ZFa0IsV0FBVyxFQUFFLElBQUFFLGFBQUksRUFBQ2hCLGtDQUFrQyxDQUFDSixhQUFhLENBQUM7RUFDcEUsQ0FBQyxDQUFDOztFQUVGO0VBQ0EsTUFBTVksSUFBSSxHQUFHSCxLQUFLLENBQUNOLElBQUksQ0FBQztFQUN4QixJQUFJLElBQUFhLGFBQUssRUFBQ0osSUFBSSxDQUFDLEVBQUU7SUFDaEI7RUFDRDs7RUFFQTtFQUNBLElBQUlNLFdBQVcsRUFBRTtJQUNoQk4sSUFBSSxDQUFDTSxXQUFXLENBQUNHLFNBQVMsQ0FBQztJQUMzQjtFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0FULElBQUksQ0FBQ0ssWUFBWSxFQUFFSyxJQUFJLElBQUksSUFBSSxDQUFDO0FBQ2pDO0FBRWUsVUFBVUMsV0FBV0EsQ0FBQSxFQUFpQjtFQUNwRDtFQUNBLE1BQU0sSUFBQUMsa0JBQVMsRUFBQ2hDLG9CQUFvQixFQUFFdUIsWUFBWSxDQUFDO0FBQ3BEIiwiaWdub3JlTGlzdCI6W119
@@ -1,87 +1,55 @@
1
1
  "use strict";
2
- var __generator = (this && this.__generator) || function (thisArg, body) {
3
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
4
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
5
- function verb(n) { return function (v) { return step([n, v]); }; }
6
- function step(op) {
7
- if (f) throw new TypeError("Generator is already executing.");
8
- while (_) try {
9
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
10
- if (y = 0, t) op = [op[0] & 2, t.value];
11
- switch (op[0]) {
12
- case 0: case 1: t = op; break;
13
- case 4: _.label++; return { value: op[1], done: false };
14
- case 5: _.label++; y = op[1]; op = [0]; continue;
15
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
16
- default:
17
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
18
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
19
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
20
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
21
- if (t[2]) _.ops.pop();
22
- _.trys.pop(); continue;
23
- }
24
- op = body.call(thisArg, _);
25
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
26
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
27
- }
28
- };
29
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = postLoginDataSaga;
30
7
  exports.setOnPostLoginSaga = void 0;
31
- var effects_1 = require("redux-saga/effects");
32
- var actionCreator_1 = require("../actionCreator");
33
- var actions_1 = require("../actions");
8
+ var _effects = require("redux-saga/effects");
9
+ var _actionCreator = require("../actionCreator");
10
+ var _actions = require("../actions");
34
11
  //#region Setup
35
- var onPostLoginSaga;
36
- /**
37
- * Sets or clears a saga that will run after login. It is called inside of `postLoginDataSaga`.
38
- * * If the saga returns `true`, the parent saga will load "groups" and "externalProviders".
39
- * * If the saga returns `false`, the parent saga will restart, assuming the child saga has logged out the user.
40
- * @param value The saga
12
+
13
+ let onPostLoginSaga;
14
+
15
+ /**
16
+ * Sets or clears a saga that will run after login. It is called inside of `postLoginDataSaga`.
17
+ * * If the saga returns `true`, the parent saga will load "groups" and "externalProviders".
18
+ * * If the saga returns `false`, the parent saga will restart, assuming the child saga has logged out the user.
19
+ * @param value The saga
41
20
  */
42
- var setOnPostLoginSaga = function (value) {
43
- onPostLoginSaga = value;
21
+ const setOnPostLoginSaga = value => {
22
+ onPostLoginSaga = value;
44
23
  };
45
- exports.setOnPostLoginSaga = setOnPostLoginSaga;
24
+
46
25
  //#endregion Setup
47
- function postLoginDataSaga() {
48
- var externalProvidersTaskId, result;
49
- return __generator(this, function (_a) {
50
- switch (_a.label) {
51
- case 0:
52
- externalProvidersTaskId = 'external-provider-refresh';
53
- _a.label = 1;
54
- case 1:
55
- if (!true) return [3 /*break*/, 6];
56
- return [4 /*yield*/, effects_1.take(actions_1.AUTH_TOKEN_SUCCESS_ACTION_TYPE.GET_TOKEN_SUCCEEDED)];
57
- case 2:
58
- _a.sent();
59
- if (!onPostLoginSaga) return [3 /*break*/, 4];
60
- return [4 /*yield*/, effects_1.call(onPostLoginSaga)];
61
- case 3:
62
- result = _a.sent();
63
- if (!result) {
64
- return [3 /*break*/, 1];
65
- }
66
- _a.label = 4;
67
- case 4:
68
- // load groups on initial login. refreshing happens elsewhere
69
- actionCreator_1.dispatchModelFetchRequest({ modelName: 'groups' });
70
- // grab external providers once a day (for those tab-leaver-openers)
71
- actionCreator_1.dispatchPeriodicModelFetchRequest({
72
- modelName: 'externalProviders',
73
- taskId: externalProvidersTaskId,
74
- period: 1000 * 60 * 60 * 24
75
- });
76
- return [4 /*yield*/, effects_1.take(actions_1.AUTH_ACTION_TYPE.LOG_OUT_REQUESTED)];
77
- case 5:
78
- _a.sent();
79
- actionCreator_1.dispatchPeriodicModelFetchTerminateAction({
80
- taskId: externalProvidersTaskId
81
- });
82
- return [3 /*break*/, 1];
83
- case 6: return [2 /*return*/];
84
- }
26
+ exports.setOnPostLoginSaga = setOnPostLoginSaga;
27
+ function* postLoginDataSaga() {
28
+ const externalProvidersTaskId = 'external-provider-refresh';
29
+ while (true) {
30
+ yield (0, _effects.take)(_actions.AUTH_TOKEN_SUCCESS_ACTION_TYPE.GET_TOKEN_SUCCEEDED);
31
+ if (onPostLoginSaga) {
32
+ const result = yield (0, _effects.call)(onPostLoginSaga);
33
+ if (!result) {
34
+ continue;
35
+ }
36
+ }
37
+
38
+ // load groups on initial login. refreshing happens elsewhere
39
+ (0, _actionCreator.dispatchModelFetchRequest)({
40
+ modelName: 'groups'
41
+ });
42
+
43
+ // grab external providers once a day (for those tab-leaver-openers)
44
+ (0, _actionCreator.dispatchPeriodicModelFetchRequest)({
45
+ modelName: 'externalProviders',
46
+ taskId: externalProvidersTaskId,
47
+ period: 1000 * 60 * 60 * 24
85
48
  });
49
+ yield (0, _effects.take)(_actions.AUTH_ACTION_TYPE.LOG_OUT_REQUESTED);
50
+ (0, _actionCreator.dispatchPeriodicModelFetchTerminateAction)({
51
+ taskId: externalProvidersTaskId
52
+ });
53
+ }
86
54
  }
87
- exports.default = postLoginDataSaga;
55
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZWZmZWN0cyIsInJlcXVpcmUiLCJfYWN0aW9uQ3JlYXRvciIsIl9hY3Rpb25zIiwib25Qb3N0TG9naW5TYWdhIiwic2V0T25Qb3N0TG9naW5TYWdhIiwidmFsdWUiLCJleHBvcnRzIiwicG9zdExvZ2luRGF0YVNhZ2EiLCJleHRlcm5hbFByb3ZpZGVyc1Rhc2tJZCIsInRha2UiLCJBVVRIX1RPS0VOX1NVQ0NFU1NfQUNUSU9OX1RZUEUiLCJHRVRfVE9LRU5fU1VDQ0VFREVEIiwicmVzdWx0IiwiY2FsbCIsImRpc3BhdGNoTW9kZWxGZXRjaFJlcXVlc3QiLCJtb2RlbE5hbWUiLCJkaXNwYXRjaFBlcmlvZGljTW9kZWxGZXRjaFJlcXVlc3QiLCJ0YXNrSWQiLCJwZXJpb2QiLCJBVVRIX0FDVElPTl9UWVBFIiwiTE9HX09VVF9SRVFVRVNURUQiLCJkaXNwYXRjaFBlcmlvZGljTW9kZWxGZXRjaFRlcm1pbmF0ZUFjdGlvbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZWR1eC9zYWdhcy9wb3N0TG9naW5EYXRhU2FnYS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYWdhLCBTYWdhSXRlcmF0b3IgfSBmcm9tICdyZWR1eC1zYWdhJ1xyXG5pbXBvcnQgeyBjYWxsLCB0YWtlIH0gZnJvbSAncmVkdXgtc2FnYS9lZmZlY3RzJ1xyXG5pbXBvcnQge1xyXG5cdGRpc3BhdGNoTW9kZWxGZXRjaFJlcXVlc3QsXHJcblx0ZGlzcGF0Y2hQZXJpb2RpY01vZGVsRmV0Y2hSZXF1ZXN0LFxyXG5cdGRpc3BhdGNoUGVyaW9kaWNNb2RlbEZldGNoVGVybWluYXRlQWN0aW9uXHJcbn0gZnJvbSAnLi4vYWN0aW9uQ3JlYXRvcidcclxuaW1wb3J0IHsgQVVUSF9BQ1RJT05fVFlQRSwgQVVUSF9UT0tFTl9TVUNDRVNTX0FDVElPTl9UWVBFIH0gZnJvbSAnLi4vYWN0aW9ucydcclxuXHJcbi8vI3JlZ2lvbiBTZXR1cFxyXG5cclxubGV0IG9uUG9zdExvZ2luU2FnYTogU2FnYSB8IHVuZGVmaW5lZFxyXG5cclxuLyoqXHJcbiAqIFNldHMgb3IgY2xlYXJzIGEgc2FnYSB0aGF0IHdpbGwgcnVuIGFmdGVyIGxvZ2luLiBJdCBpcyBjYWxsZWQgaW5zaWRlIG9mIGBwb3N0TG9naW5EYXRhU2FnYWAuXHJcbiAqICogSWYgdGhlIHNhZ2EgcmV0dXJucyBgdHJ1ZWAsIHRoZSBwYXJlbnQgc2FnYSB3aWxsIGxvYWQgXCJncm91cHNcIiBhbmQgXCJleHRlcm5hbFByb3ZpZGVyc1wiLlxyXG4gKiAqIElmIHRoZSBzYWdhIHJldHVybnMgYGZhbHNlYCwgdGhlIHBhcmVudCBzYWdhIHdpbGwgcmVzdGFydCwgYXNzdW1pbmcgdGhlIGNoaWxkIHNhZ2EgaGFzIGxvZ2dlZCBvdXQgdGhlIHVzZXIuXHJcbiAqIEBwYXJhbSB2YWx1ZSBUaGUgc2FnYVxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IHNldE9uUG9zdExvZ2luU2FnYSA9ICh2YWx1ZTogU2FnYSkgPT4ge1xyXG5cdG9uUG9zdExvZ2luU2FnYSA9IHZhbHVlXHJcbn1cclxuXHJcbi8vI2VuZHJlZ2lvbiBTZXR1cFxyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24qIHBvc3RMb2dpbkRhdGFTYWdhKCk6IFNhZ2FJdGVyYXRvciB7XHJcblx0Y29uc3QgZXh0ZXJuYWxQcm92aWRlcnNUYXNrSWQgPSAnZXh0ZXJuYWwtcHJvdmlkZXItcmVmcmVzaCdcclxuXHR3aGlsZSAodHJ1ZSkge1xyXG5cdFx0eWllbGQgdGFrZShBVVRIX1RPS0VOX1NVQ0NFU1NfQUNUSU9OX1RZUEUuR0VUX1RPS0VOX1NVQ0NFRURFRClcclxuXHRcdGlmIChvblBvc3RMb2dpblNhZ2EpIHtcclxuXHRcdFx0Y29uc3QgcmVzdWx0ID0geWllbGQgY2FsbChvblBvc3RMb2dpblNhZ2EpXHJcblx0XHRcdGlmICghcmVzdWx0KSB7XHJcblx0XHRcdFx0Y29udGludWVcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC8vIGxvYWQgZ3JvdXBzIG9uIGluaXRpYWwgbG9naW4uIHJlZnJlc2hpbmcgaGFwcGVucyBlbHNld2hlcmVcclxuXHRcdGRpc3BhdGNoTW9kZWxGZXRjaFJlcXVlc3QoeyBtb2RlbE5hbWU6ICdncm91cHMnIH0pXHJcblxyXG5cdFx0Ly8gZ3JhYiBleHRlcm5hbCBwcm92aWRlcnMgb25jZSBhIGRheSAoZm9yIHRob3NlIHRhYi1sZWF2ZXItb3BlbmVycylcclxuXHRcdGRpc3BhdGNoUGVyaW9kaWNNb2RlbEZldGNoUmVxdWVzdCh7XHJcblx0XHRcdG1vZGVsTmFtZTogJ2V4dGVybmFsUHJvdmlkZXJzJyxcclxuXHRcdFx0dGFza0lkOiBleHRlcm5hbFByb3ZpZGVyc1Rhc2tJZCxcclxuXHRcdFx0cGVyaW9kOiAxMDAwICogNjAgKiA2MCAqIDI0XHJcblx0XHR9KVxyXG5cclxuXHRcdHlpZWxkIHRha2UoQVVUSF9BQ1RJT05fVFlQRS5MT0dfT1VUX1JFUVVFU1RFRClcclxuXHJcblx0XHRkaXNwYXRjaFBlcmlvZGljTW9kZWxGZXRjaFRlcm1pbmF0ZUFjdGlvbih7XHJcblx0XHRcdHRhc2tJZDogZXh0ZXJuYWxQcm92aWRlcnNUYXNrSWRcclxuXHRcdH0pXHJcblx0fVxyXG59XHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUNBLElBQUFBLFFBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLGNBQUEsR0FBQUQsT0FBQTtBQUtBLElBQUFFLFFBQUEsR0FBQUYsT0FBQTtBQUVBOztBQUVBLElBQUlHLGVBQWlDOztBQUVyQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxNQUFNQyxrQkFBa0IsR0FBSUMsS0FBVyxJQUFLO0VBQ2xERixlQUFlLEdBQUdFLEtBQUs7QUFDeEIsQ0FBQzs7QUFFRDtBQUFBQyxPQUFBLENBQUFGLGtCQUFBLEdBQUFBLGtCQUFBO0FBRWUsVUFBVUcsaUJBQWlCQSxDQUFBLEVBQWlCO0VBQzFELE1BQU1DLHVCQUF1QixHQUFHLDJCQUEyQjtFQUMzRCxPQUFPLElBQUksRUFBRTtJQUNaLE1BQU0sSUFBQUMsYUFBSSxFQUFDQyx1Q0FBOEIsQ0FBQ0MsbUJBQW1CLENBQUM7SUFDOUQsSUFBSVIsZUFBZSxFQUFFO01BQ3BCLE1BQU1TLE1BQU0sR0FBRyxNQUFNLElBQUFDLGFBQUksRUFBQ1YsZUFBZSxDQUFDO01BQzFDLElBQUksQ0FBQ1MsTUFBTSxFQUFFO1FBQ1o7TUFDRDtJQUNEOztJQUVBO0lBQ0EsSUFBQUUsd0NBQXlCLEVBQUM7TUFBRUMsU0FBUyxFQUFFO0lBQVMsQ0FBQyxDQUFDOztJQUVsRDtJQUNBLElBQUFDLGdEQUFpQyxFQUFDO01BQ2pDRCxTQUFTLEVBQUUsbUJBQW1CO01BQzlCRSxNQUFNLEVBQUVULHVCQUF1QjtNQUMvQlUsTUFBTSxFQUFFLElBQUksR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHO0lBQzFCLENBQUMsQ0FBQztJQUVGLE1BQU0sSUFBQVQsYUFBSSxFQUFDVSx5QkFBZ0IsQ0FBQ0MsaUJBQWlCLENBQUM7SUFFOUMsSUFBQUMsd0RBQXlDLEVBQUM7TUFDekNKLE1BQU0sRUFBRVQ7SUFDVCxDQUFDLENBQUM7RUFDSDtBQUNEIiwiaWdub3JlTGlzdCI6W119
@@ -1,74 +1,33 @@
1
1
  "use strict";
2
- var __generator = (this && this.__generator) || function (thisArg, body) {
3
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
4
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
5
- function verb(n) { return function (v) { return step([n, v]); }; }
6
- function step(op) {
7
- if (f) throw new TypeError("Generator is already executing.");
8
- while (_) try {
9
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
10
- if (y = 0, t) op = [op[0] & 2, t.value];
11
- switch (op[0]) {
12
- case 0: case 1: t = op; break;
13
- case 4: _.label++; return { value: op[1], done: false };
14
- case 5: _.label++; y = op[1]; op = [0]; continue;
15
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
16
- default:
17
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
18
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
19
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
20
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
21
- if (t[2]) _.ops.pop();
22
- _.trys.pop(); continue;
23
- }
24
- op = body.call(thisArg, _);
25
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
26
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
27
- }
28
- };
29
- Object.defineProperty(exports, "__esModule", { value: true });
30
- var connected_react_router_1 = require("connected-react-router");
31
- var effects_1 = require("redux-saga/effects");
32
- var persistenceService_1 = require("../../services/persistenceService");
33
- var windowService_1 = require("../../services/windowService");
34
- var actions_1 = require("../actions");
35
- /**
36
- * Redirect the user after a successful log in.
37
- * Uses the saved `returnUrl`, if any, if different from the current pathname and is not the root url.
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = postLoginRedirectSaga;
7
+ var _connectedReactRouter = require("connected-react-router");
8
+ var _effects = require("redux-saga/effects");
9
+ var _persistenceService = require("../../services/persistenceService");
10
+ var _windowService = require("../../services/windowService");
11
+ var _actions = require("../actions");
12
+ /**
13
+ * Redirect the user after a successful log in.
14
+ * Uses the saved `returnUrl`, if any, if different from the current pathname and is not the root url.
38
15
  */
39
- function postLoginRedirectSaga() {
40
- var location_1, pathname, returnUrl;
41
- return __generator(this, function (_a) {
42
- switch (_a.label) {
43
- case 0:
44
- if (!true) return [3 /*break*/, 8];
45
- return [4 /*yield*/, effects_1.take(actions_1.AUTH_TOKEN_SUCCESS_ACTION_TYPE.GET_TOKEN_SUCCEEDED)];
46
- case 1:
47
- _a.sent();
48
- location_1 = windowService_1.windowService.getLocation();
49
- pathname = location_1.pathname;
50
- return [4 /*yield*/, effects_1.call(persistenceService_1.persistenceService.getItem, persistenceService_1.returnUrlKey)
51
- // redirect to the `returnUrl` if it is different than the current pathname and is not the root url
52
- ];
53
- case 2:
54
- returnUrl = _a.sent();
55
- if (!(returnUrl && returnUrl !== pathname && returnUrl !== '/' && pathname === '/')) return [3 /*break*/, 4];
56
- return [4 /*yield*/, effects_1.put(connected_react_router_1.push(returnUrl))];
57
- case 3:
58
- _a.sent();
59
- _a.label = 4;
60
- case 4:
61
- if (!returnUrl) return [3 /*break*/, 6];
62
- return [4 /*yield*/, effects_1.call(persistenceService_1.persistenceService.removeItem, persistenceService_1.returnUrlKey)];
63
- case 5:
64
- _a.sent();
65
- _a.label = 6;
66
- case 6: return [4 /*yield*/, effects_1.take(actions_1.AUTH_ACTION_TYPE.LOG_OUT_REQUESTED)];
67
- case 7:
68
- _a.sent();
69
- return [3 /*break*/, 0];
70
- case 8: return [2 /*return*/];
71
- }
72
- });
16
+ function* postLoginRedirectSaga() {
17
+ while (true) {
18
+ yield (0, _effects.take)(_actions.AUTH_TOKEN_SUCCESS_ACTION_TYPE.GET_TOKEN_SUCCEEDED);
19
+ const location = _windowService.windowService.getLocation();
20
+ const pathname = location.pathname;
21
+ const returnUrl = yield (0, _effects.call)(_persistenceService.persistenceService.getItem, _persistenceService.returnUrlKey);
22
+ // redirect to the `returnUrl` if it is different than the current pathname and is not the root url
23
+ if (typeof returnUrl === 'string' && returnUrl && returnUrl !== pathname && returnUrl !== '/' && pathname === '/') {
24
+ yield (0, _effects.put)((0, _connectedReactRouter.push)(returnUrl));
25
+ }
26
+ // always clear `returnUrl`
27
+ if (returnUrl) {
28
+ yield (0, _effects.call)(_persistenceService.persistenceService.removeItem, _persistenceService.returnUrlKey);
29
+ }
30
+ yield (0, _effects.take)(_actions.AUTH_ACTION_TYPE.LOG_OUT_REQUESTED);
31
+ }
73
32
  }
74
- exports.default = postLoginRedirectSaga;
33
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29ubmVjdGVkUmVhY3RSb3V0ZXIiLCJyZXF1aXJlIiwiX2VmZmVjdHMiLCJfcGVyc2lzdGVuY2VTZXJ2aWNlIiwiX3dpbmRvd1NlcnZpY2UiLCJfYWN0aW9ucyIsInBvc3RMb2dpblJlZGlyZWN0U2FnYSIsInRha2UiLCJBVVRIX1RPS0VOX1NVQ0NFU1NfQUNUSU9OX1RZUEUiLCJHRVRfVE9LRU5fU1VDQ0VFREVEIiwibG9jYXRpb24iLCJ3aW5kb3dTZXJ2aWNlIiwiZ2V0TG9jYXRpb24iLCJwYXRobmFtZSIsInJldHVyblVybCIsImNhbGwiLCJwZXJzaXN0ZW5jZVNlcnZpY2UiLCJnZXRJdGVtIiwicmV0dXJuVXJsS2V5IiwicHV0IiwicHVzaCIsInJlbW92ZUl0ZW0iLCJBVVRIX0FDVElPTl9UWVBFIiwiTE9HX09VVF9SRVFVRVNURUQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmVkdXgvc2FnYXMvcG9zdExvZ2luUmVkaXJlY3RTYWdhLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHB1c2ggfSBmcm9tICdjb25uZWN0ZWQtcmVhY3Qtcm91dGVyJ1xyXG5pbXBvcnQgeyBTYWdhSXRlcmF0b3IgfSBmcm9tICdyZWR1eC1zYWdhJ1xyXG5pbXBvcnQgeyBjYWxsLCBwdXQsIHRha2UgfSBmcm9tICdyZWR1eC1zYWdhL2VmZmVjdHMnXHJcbmltcG9ydCB7IHBlcnNpc3RlbmNlU2VydmljZSwgcmV0dXJuVXJsS2V5IH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGVyc2lzdGVuY2VTZXJ2aWNlJ1xyXG5pbXBvcnQgeyB3aW5kb3dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvd2luZG93U2VydmljZSdcclxuaW1wb3J0IHsgQVVUSF9BQ1RJT05fVFlQRSwgQVVUSF9UT0tFTl9TVUNDRVNTX0FDVElPTl9UWVBFIH0gZnJvbSAnLi4vYWN0aW9ucydcclxuXHJcbi8qKlxyXG4gKiBSZWRpcmVjdCB0aGUgdXNlciBhZnRlciBhIHN1Y2Nlc3NmdWwgbG9nIGluLlxyXG4gKiBVc2VzIHRoZSBzYXZlZCBgcmV0dXJuVXJsYCwgaWYgYW55LCBpZiBkaWZmZXJlbnQgZnJvbSB0aGUgY3VycmVudCBwYXRobmFtZSBhbmQgaXMgbm90IHRoZSByb290IHVybC5cclxuICovXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uKiBwb3N0TG9naW5SZWRpcmVjdFNhZ2EoKTogU2FnYUl0ZXJhdG9yIHtcclxuXHR3aGlsZSAodHJ1ZSkge1xyXG5cdFx0eWllbGQgdGFrZShBVVRIX1RPS0VOX1NVQ0NFU1NfQUNUSU9OX1RZUEUuR0VUX1RPS0VOX1NVQ0NFRURFRClcclxuXHRcdGNvbnN0IGxvY2F0aW9uID0gd2luZG93U2VydmljZS5nZXRMb2NhdGlvbigpXHJcblx0XHRjb25zdCBwYXRobmFtZSA9IGxvY2F0aW9uLnBhdGhuYW1lXHJcblx0XHRjb25zdCByZXR1cm5VcmwgPSB5aWVsZCBjYWxsKHBlcnNpc3RlbmNlU2VydmljZS5nZXRJdGVtLCByZXR1cm5VcmxLZXkpXHJcblx0XHQvLyByZWRpcmVjdCB0byB0aGUgYHJldHVyblVybGAgaWYgaXQgaXMgZGlmZmVyZW50IHRoYW4gdGhlIGN1cnJlbnQgcGF0aG5hbWUgYW5kIGlzIG5vdCB0aGUgcm9vdCB1cmxcclxuXHRcdGlmIChcclxuXHRcdFx0dHlwZW9mIHJldHVyblVybCA9PT0gJ3N0cmluZycgJiZcclxuXHRcdFx0cmV0dXJuVXJsICYmXHJcblx0XHRcdHJldHVyblVybCAhPT0gcGF0aG5hbWUgJiZcclxuXHRcdFx0cmV0dXJuVXJsICE9PSAnLycgJiZcclxuXHRcdFx0cGF0aG5hbWUgPT09ICcvJ1xyXG5cdFx0KSB7XHJcblx0XHRcdHlpZWxkIHB1dChwdXNoKHJldHVyblVybCkpXHJcblx0XHR9XHJcblx0XHQvLyBhbHdheXMgY2xlYXIgYHJldHVyblVybGBcclxuXHRcdGlmIChyZXR1cm5VcmwpIHtcclxuXHRcdFx0eWllbGQgY2FsbChwZXJzaXN0ZW5jZVNlcnZpY2UucmVtb3ZlSXRlbSwgcmV0dXJuVXJsS2V5KVxyXG5cdFx0fVxyXG5cdFx0eWllbGQgdGFrZShBVVRIX0FDVElPTl9UWVBFLkxPR19PVVRfUkVRVUVTVEVEKVxyXG5cdH1cclxufVxyXG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLHFCQUFBLEdBQUFDLE9BQUE7QUFFQSxJQUFBQyxRQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxtQkFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsY0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksUUFBQSxHQUFBSixPQUFBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDZSxVQUFVSyxxQkFBcUJBLENBQUEsRUFBaUI7RUFDOUQsT0FBTyxJQUFJLEVBQUU7SUFDWixNQUFNLElBQUFDLGFBQUksRUFBQ0MsdUNBQThCLENBQUNDLG1CQUFtQixDQUFDO0lBQzlELE1BQU1DLFFBQVEsR0FBR0MsNEJBQWEsQ0FBQ0MsV0FBVyxDQUFDLENBQUM7SUFDNUMsTUFBTUMsUUFBUSxHQUFHSCxRQUFRLENBQUNHLFFBQVE7SUFDbEMsTUFBTUMsU0FBUyxHQUFHLE1BQU0sSUFBQUMsYUFBSSxFQUFDQyxzQ0FBa0IsQ0FBQ0MsT0FBTyxFQUFFQyxnQ0FBWSxDQUFDO0lBQ3RFO0lBQ0EsSUFDQyxPQUFPSixTQUFTLEtBQUssUUFBUSxJQUM3QkEsU0FBUyxJQUNUQSxTQUFTLEtBQUtELFFBQVEsSUFDdEJDLFNBQVMsS0FBSyxHQUFHLElBQ2pCRCxRQUFRLEtBQUssR0FBRyxFQUNmO01BQ0QsTUFBTSxJQUFBTSxZQUFHLEVBQUMsSUFBQUMsMEJBQUksRUFBQ04sU0FBUyxDQUFDLENBQUM7SUFDM0I7SUFDQTtJQUNBLElBQUlBLFNBQVMsRUFBRTtNQUNkLE1BQU0sSUFBQUMsYUFBSSxFQUFDQyxzQ0FBa0IsQ0FBQ0ssVUFBVSxFQUFFSCxnQ0FBWSxDQUFDO0lBQ3hEO0lBQ0EsTUFBTSxJQUFBWCxhQUFJLEVBQUNlLHlCQUFnQixDQUFDQyxpQkFBaUIsQ0FBQztFQUMvQztBQUNEIiwiaWdub3JlTGlzdCI6W119