studiokit-scaffolding-js 7.0.12-next.1.3 → 7.0.12-next.2.1

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 (258) hide show
  1. package/lib/components/ActionList.js +164 -37
  2. package/lib/components/AlertDialog.js +128 -12
  3. package/lib/components/AlertWithIcon.js +88 -29
  4. package/lib/components/ConnectedModal.js +35 -12
  5. package/lib/components/Dropdowns/GroupsDropdown.js +63 -45
  6. package/lib/components/Dropdowns/ManagedNavDropdown.js +92 -67
  7. package/lib/components/Dropdowns/UserDropdown.js +105 -24
  8. package/lib/components/Dropdowns/index.js +4 -10
  9. package/lib/components/EntityOwnerList.js +47 -21
  10. package/lib/components/Error.js +101 -12
  11. package/lib/components/ErrorBoundary.js +127 -38
  12. package/lib/components/ErrorMessage.js +39 -12
  13. package/lib/components/Forms/DateField.js +56 -45
  14. package/lib/components/Forms/TimeField.js +76 -45
  15. package/lib/components/Forms/index.js +3 -5
  16. package/lib/components/Groups/CreateEditCopySaveButtons.js +109 -14
  17. package/lib/components/Groups/ExternalGroups/Attach.js +206 -151
  18. package/lib/components/Groups/ExternalGroups/Table.js +176 -48
  19. package/lib/components/Groups/GroupCreateOrEditCommonProps.js +2 -2
  20. package/lib/components/Groups/RosterSyncInfo.js +142 -23
  21. package/lib/components/HOC/AccessibleAppComponent.js +88 -72
  22. package/lib/components/HOC/ActivityRequiredComponent.js +68 -33
  23. package/lib/components/HOC/AsyncComponent.js +49 -41
  24. package/lib/components/HOC/AuthenticatedComponent.js +55 -44
  25. package/lib/components/HOC/CollectionComponent.js +154 -104
  26. package/lib/components/HOC/CollectionFirstItemComponent.js +45 -40
  27. package/lib/components/HOC/CollectionItemComponent.js +152 -100
  28. package/lib/components/HOC/ConnectedModalComponent.js +87 -69
  29. package/lib/components/HOC/DataDependentComponent.js +26 -27
  30. package/lib/components/HOC/EntityComponent.js +57 -53
  31. package/lib/components/HOC/FullscreenModalComponent.js +139 -108
  32. package/lib/components/HOC/GroupActivityRequiredComponent.js +27 -20
  33. package/lib/components/HOC/GuidComponent.js +20 -20
  34. package/lib/components/HOC/ModelContextDependencyVerifyComponent.js +32 -29
  35. package/lib/components/HOC/ModelErrorRedirectComponent.js +37 -39
  36. package/lib/components/HOC/SearchPersistorComponent.js +237 -173
  37. package/lib/components/HOC/UnauthenticatedComponent.js +32 -30
  38. package/lib/components/HOC/UserComponent.js +6 -8
  39. package/lib/components/Icons/IconAlphaList.js +28 -8
  40. package/lib/components/Icons/IconExternalUser.js +28 -8
  41. package/lib/components/Icons/IconImpersonation.js +28 -8
  42. package/lib/components/Icons/IconStopImpersonating.js +28 -8
  43. package/lib/components/Icons/IconTable.js +29 -9
  44. package/lib/components/Icons/IconTableDeleteCol.js +28 -8
  45. package/lib/components/Icons/IconTableDeleteRow.js +28 -8
  46. package/lib/components/Icons/IconTableInsertCol.js +28 -8
  47. package/lib/components/Icons/IconTableInsertRow.js +28 -8
  48. package/lib/components/Impersonation/Button.js +71 -16
  49. package/lib/components/Impersonation/Link.js +72 -16
  50. package/lib/components/Impersonation/UserDetail.js +60 -11
  51. package/lib/components/Loading.js +23 -8
  52. package/lib/components/LockDownBrowser/Check.js +188 -51
  53. package/lib/components/LockDownBrowser/ExitButton.js +22 -13
  54. package/lib/components/LockDownBrowser/Launch.js +64 -64
  55. package/lib/components/Lti/Confirm.js +147 -14
  56. package/lib/components/Lti/CreateNonLtiGroupAlertDialog.js +165 -36
  57. package/lib/components/Lti/Launch.js +99 -25
  58. package/lib/components/Lti/LaunchGroup.js +81 -16
  59. package/lib/components/ManageTable.js +304 -90
  60. package/lib/components/ManageTableNoDataComponent.js +38 -7
  61. package/lib/components/NewVersionAlert.js +76 -49
  62. package/lib/components/NotFound.js +81 -11
  63. package/lib/components/Notifications.js +179 -129
  64. package/lib/components/PaginationNextButton.js +28 -9
  65. package/lib/components/PaginationPreviousButton.js +28 -9
  66. package/lib/components/Quill/CustomToolbar.js +427 -222
  67. package/lib/components/Quill/Formats/Image.js +67 -67
  68. package/lib/components/Quill/Formats/List.js +38 -47
  69. package/lib/components/Quill/Formats/Video.js +23 -26
  70. package/lib/components/Quill/ImageDropModule.js +136 -114
  71. package/lib/components/Quill/ImageWarning.js +41 -12
  72. package/lib/components/Quill/ImageWithAltTextModal.js +420 -89
  73. package/lib/components/Quill/Specs/CustomImageSpec.js +32 -31
  74. package/lib/components/Quill/Specs/CustomVideoSpec.js +22 -23
  75. package/lib/components/Quill/TableModule/Blots/BaseTableBlot.js +89 -97
  76. package/lib/components/Quill/TableModule/Blots/TableBlot.js +47 -50
  77. package/lib/components/Quill/TableModule/Blots/TableBodyBlot.js +48 -51
  78. package/lib/components/Quill/TableModule/Blots/TableCellBlot.js +219 -224
  79. package/lib/components/Quill/TableModule/Blots/TableContainer.js +75 -86
  80. package/lib/components/Quill/TableModule/Blots/TableRowBlot.js +70 -73
  81. package/lib/components/Quill/TableModule/constants.js +40 -42
  82. package/lib/components/Quill/TableModule/index.js +357 -305
  83. package/lib/components/Quill/TableModule/utils.js +39 -48
  84. package/lib/components/Quill/accessibilityFix.js +219 -223
  85. package/lib/components/Quill/index.js +30 -33
  86. package/lib/components/RefreshIndicator/Bordered.js +44 -10
  87. package/lib/components/RefreshIndicator/Inline.js +43 -12
  88. package/lib/components/RefreshIndicator/index.js +257 -62
  89. package/lib/components/SearchControls.js +211 -14
  90. package/lib/components/SentryRoute.js +5 -7
  91. package/lib/components/Tables/RoleFilter.js +66 -38
  92. package/lib/components/Tables/TextFilter.js +58 -18
  93. package/lib/components/UserRoles/Add.js +193 -99
  94. package/lib/components/UserRoles/Context.js +3 -6
  95. package/lib/components/UserRoles/RoleCell.js +176 -75
  96. package/lib/components/UserRoles/Select.js +151 -20
  97. package/lib/components/UserRoles/Table.js +215 -82
  98. package/lib/components/UserRoles/index.js +526 -386
  99. package/lib/config/eslint/index.js +26 -29
  100. package/lib/config/eslint/lib/order.js +21 -28
  101. package/lib/config/eslint/lib/prettier.js +15 -19
  102. package/lib/config/eslint/lib/typescript.js +87 -113
  103. package/lib/config/eslint/react.js +18 -15
  104. package/lib/constants/baseActivity.js +26 -28
  105. package/lib/constants/baseRole.js +10 -12
  106. package/lib/constants/configuration.js +43 -55
  107. package/lib/constants/externalProviderType.js +6 -8
  108. package/lib/constants/fetchErrorData.js +10 -12
  109. package/lib/constants/index.js +13 -15
  110. package/lib/constants/lockDownBrowser.js +23 -25
  111. package/lib/constants/mockData.js +370 -300
  112. package/lib/constants/modelStatus.js +11 -13
  113. package/lib/constants/notificationType.js +8 -10
  114. package/lib/constants/operatingSystem.js +8 -10
  115. package/lib/constants/shard.js +7 -9
  116. package/lib/constants/table.js +18 -22
  117. package/lib/constants/tier.js +8 -10
  118. package/lib/constants/userRole.js +11 -8
  119. package/lib/endpointMappings.js +191 -182
  120. package/lib/hooks/useCollection.js +79 -65
  121. package/lib/hooks/useCollectionConfiguration.js +220 -80
  122. package/lib/hooks/useCollectionItem.js +151 -57
  123. package/lib/hooks/useGuid.js +16 -9
  124. package/lib/hooks/usePrevious.js +14 -13
  125. package/lib/index.js +11 -26
  126. package/lib/redux/actionCreator.js +44 -35
  127. package/lib/redux/actions/AuthAction.js +45 -32
  128. package/lib/redux/actions/ModalAction.js +6 -8
  129. package/lib/redux/actions/ModelAction.js +95 -43
  130. package/lib/redux/actions/NotificationAction.js +6 -8
  131. package/lib/redux/actions/SearchAction.js +5 -7
  132. package/lib/redux/actions/index.js +6 -8
  133. package/lib/redux/configureReducers.js +48 -46
  134. package/lib/redux/configureStore.js +77 -91
  135. package/lib/redux/helpers.js +2 -5
  136. package/lib/redux/reducers/authReducer.js +44 -43
  137. package/lib/redux/reducers/index.js +7 -14
  138. package/lib/redux/reducers/modalsReducer.js +43 -31
  139. package/lib/redux/reducers/modelsReducer.js +131 -137
  140. package/lib/redux/reducers/notificationsReducer.js +20 -20
  141. package/lib/redux/reducers/searchReducer.js +13 -13
  142. package/lib/redux/sagas/appInsightsSaga.js +19 -21
  143. package/lib/redux/sagas/authSaga.js +248 -234
  144. package/lib/redux/sagas/caliperSaga.js +142 -131
  145. package/lib/redux/sagas/clockOffsetSaga.js +29 -32
  146. package/lib/redux/sagas/configurationSaga.js +8 -10
  147. package/lib/redux/sagas/downtimeApiErrorSaga.js +16 -19
  148. package/lib/redux/sagas/errorSaga.js +23 -24
  149. package/lib/redux/sagas/googleAnalyticsSaga.js +24 -27
  150. package/lib/redux/sagas/identityProviderSaga.js +19 -21
  151. package/lib/redux/sagas/initialDataLoadSaga.js +34 -31
  152. package/lib/redux/sagas/lockDownBrowserErrorSaga.js +25 -22
  153. package/lib/redux/sagas/modelFetchSaga.js +302 -286
  154. package/lib/redux/sagas/noStoreSaga.js +60 -61
  155. package/lib/redux/sagas/postLoginDataSaga.js +37 -32
  156. package/lib/redux/sagas/postLoginRedirectSaga.js +22 -27
  157. package/lib/redux/sagas/rootSaga.js +77 -60
  158. package/lib/redux/sagas/sentrySaga.js +25 -28
  159. package/lib/redux/sagas/userIdSaga.js +13 -15
  160. package/lib/services/codeProviderService.js +21 -21
  161. package/lib/services/dateService.js +6 -8
  162. package/lib/services/documentService.js +10 -11
  163. package/lib/services/fetchService.js +103 -95
  164. package/lib/services/persistenceService.js +27 -30
  165. package/lib/services/ticketProviderService.js +25 -25
  166. package/lib/services/tokenPersistenceService.js +8 -10
  167. package/lib/services/windowService.js +14 -16
  168. package/lib/startup.js +110 -101
  169. package/lib/types/AppConfiguration.js +2 -2
  170. package/lib/types/Artifact.js +7 -9
  171. package/lib/types/BaseReduxState.js +2 -2
  172. package/lib/types/Client.js +2 -2
  173. package/lib/types/Collection.js +2 -2
  174. package/lib/types/Configuration.js +2 -2
  175. package/lib/types/DeepLinkingResponseRequest.js +2 -2
  176. package/lib/types/DeletableModel.js +2 -2
  177. package/lib/types/Event.js +2 -2
  178. package/lib/types/ExternalGroup.js +2 -2
  179. package/lib/types/ExternalProvider.js +2 -2
  180. package/lib/types/ExternalTerm.js +2 -2
  181. package/lib/types/Group.js +2 -2
  182. package/lib/types/IdentityProvider.js +2 -2
  183. package/lib/types/LtiLaunch.js +2 -2
  184. package/lib/types/NameOnlyEntity.js +2 -2
  185. package/lib/types/Notification.js +2 -2
  186. package/lib/types/OptionalRecord.js +2 -2
  187. package/lib/types/OwnerSchedule.js +2 -2
  188. package/lib/types/PropertyOfType.js +2 -2
  189. package/lib/types/Quill.js +2 -2
  190. package/lib/types/RoleDescription.js +2 -2
  191. package/lib/types/Search.js +2 -2
  192. package/lib/types/SimpleLocation.js +2 -2
  193. package/lib/types/UniTime.js +2 -2
  194. package/lib/types/User.js +2 -2
  195. package/lib/types/UserRole.js +2 -2
  196. package/lib/types/auth/AuthState.js +2 -2
  197. package/lib/types/auth/CasV1LoginRequestBody.js +2 -2
  198. package/lib/types/auth/ClientCredentials.js +2 -2
  199. package/lib/types/auth/CodeProviderService.js +2 -2
  200. package/lib/types/auth/LocalLoginRequestBody.js +2 -2
  201. package/lib/types/auth/TicketProviderService.js +2 -2
  202. package/lib/types/auth/TokenPersistenceService.js +2 -2
  203. package/lib/types/auth/index.js +8 -10
  204. package/lib/types/externals.d.js +2 -0
  205. package/lib/types/index.js +29 -31
  206. package/lib/types/net/EndpointConfig.js +2 -2
  207. package/lib/types/net/EndpointMapping.js +2 -2
  208. package/lib/types/net/EndpointMappings.js +2 -2
  209. package/lib/types/net/ErrorHandler.js +2 -2
  210. package/lib/types/net/FetchConfig.js +2 -2
  211. package/lib/types/net/FetchErrorData.js +6 -8
  212. package/lib/types/net/FetchResult.js +2 -2
  213. package/lib/types/net/HTTPMethod.js +2 -2
  214. package/lib/types/net/HTTPStatusCode.js +12 -14
  215. package/lib/types/net/Metadata.js +2 -2
  216. package/lib/types/net/Model.js +2 -2
  217. package/lib/types/net/ModelCollection.js +2 -2
  218. package/lib/types/net/ModelsState.js +2 -2
  219. package/lib/types/net/OAuthToken.js +2 -2
  220. package/lib/types/net/OAuthTokenOrNull.js +2 -2
  221. package/lib/types/net/TokenAccessFunction.js +2 -2
  222. package/lib/types/net/index.js +17 -19
  223. package/lib/utils/baseActivity.js +83 -85
  224. package/lib/utils/baseRole.js +32 -36
  225. package/lib/utils/collection.js +403 -297
  226. package/lib/utils/cookies.js +19 -23
  227. package/lib/utils/date.js +188 -205
  228. package/lib/utils/dom.js +130 -131
  229. package/lib/utils/domainIdentifier.js +4 -8
  230. package/lib/utils/entityUserRole.js +2 -5
  231. package/lib/utils/error.js +14 -19
  232. package/lib/utils/events.js +32 -31
  233. package/lib/utils/externalGroup.js +20 -25
  234. package/lib/utils/externalProviders.js +4 -7
  235. package/lib/utils/externalTerms.js +6 -6
  236. package/lib/utils/fetch.js +168 -176
  237. package/lib/utils/group.js +14 -11
  238. package/lib/utils/groupDates.js +38 -46
  239. package/lib/utils/groupRoles.js +23 -32
  240. package/lib/utils/lockDownBrowser.js +12 -15
  241. package/lib/utils/logger.js +23 -28
  242. package/lib/utils/lti.js +4 -7
  243. package/lib/utils/model.js +28 -43
  244. package/lib/utils/number.js +9 -13
  245. package/lib/utils/promise.js +23 -26
  246. package/lib/utils/quill.js +55 -60
  247. package/lib/utils/route.js +52 -60
  248. package/lib/utils/search.js +72 -87
  249. package/lib/utils/shard.js +33 -42
  250. package/lib/utils/sort.js +47 -50
  251. package/lib/utils/string.js +10 -12
  252. package/lib/utils/table.js +29 -33
  253. package/lib/utils/timezone.js +7 -12
  254. package/lib/utils/url.js +130 -144
  255. package/lib/utils/user.js +54 -64
  256. package/lib/utils/userAgent.js +7 -14
  257. package/lib/utils/userRole.js +36 -39
  258. package/package.json +17 -3
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = searchReducer;
4
- const lodash_1 = require("lodash");
5
- const SearchAction_1 = require("../actions/SearchAction");
1
+ import { isArray, mergeWith } from 'lodash';
2
+ import { SEARCH_ACTION_TYPE } from '../actions/SearchAction';
6
3
  /**
7
4
  * Store the state of a manage component's search parameters so the params can be
8
5
  * re-applied later when revisiting the same component
@@ -12,12 +9,15 @@ const SearchAction_1 = require("../actions/SearchAction");
12
9
  * @param {*} action
13
10
  * @returns
14
11
  */
15
- function searchReducer(state = {}, action) {
16
- switch (action.type) {
17
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
18
- case SearchAction_1.SEARCH_ACTION_TYPE.PERSIST_SEARCH:
19
- return (0, lodash_1.mergeWith)({}, state, action.data, (target, source) => ((0, lodash_1.isArray)(source) ? source : undefined));
20
- default:
21
- return state;
22
- }
12
+ export default function searchReducer() {
13
+ let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
14
+ let action = arguments.length > 1 ? arguments[1] : undefined;
15
+ switch (action.type) {
16
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
17
+ case SEARCH_ACTION_TYPE.PERSIST_SEARCH:
18
+ return mergeWith({}, state, action.data, (target, source) => isArray(source) ? source : undefined);
19
+ default:
20
+ return state;
21
+ }
23
22
  }
23
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpc0FycmF5IiwibWVyZ2VXaXRoIiwiU0VBUkNIX0FDVElPTl9UWVBFIiwic2VhcmNoUmVkdWNlciIsInN0YXRlIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwiYWN0aW9uIiwidHlwZSIsIlBFUlNJU1RfU0VBUkNIIiwiZGF0YSIsInRhcmdldCIsInNvdXJjZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZWR1eC9yZWR1Y2Vycy9zZWFyY2hSZWR1Y2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpY3Rpb25hcnksIGlzQXJyYXksIG1lcmdlV2l0aCB9IGZyb20gJ2xvZGFzaCdcbmltcG9ydCB7IFNFQVJDSF9BQ1RJT05fVFlQRSwgU2VhcmNoQWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucy9TZWFyY2hBY3Rpb24nXG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoU3RhdGUgZXh0ZW5kcyBEaWN0aW9uYXJ5PGFueT4ge31cblxuLyoqXG4gKiBTdG9yZSB0aGUgc3RhdGUgb2YgYSBtYW5hZ2UgY29tcG9uZW50J3Mgc2VhcmNoIHBhcmFtZXRlcnMgc28gdGhlIHBhcmFtcyBjYW4gYmVcbiAqIHJlLWFwcGxpZWQgbGF0ZXIgd2hlbiByZXZpc2l0aW5nIHRoZSBzYW1lIGNvbXBvbmVudFxuICpcbiAqIEBleHBvcnRcbiAqIEBwYXJhbSB7Kn0gW3N0YXRlPXt9XVxuICogQHBhcmFtIHsqfSBhY3Rpb25cbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHNlYXJjaFJlZHVjZXIoc3RhdGU6IFNlYXJjaFN0YXRlID0ge30sIGFjdGlvbjogU2VhcmNoQWN0aW9uKSB7XG5cdHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcblx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVubmVjZXNzYXJ5LWNvbmRpdGlvblxuXHRcdGNhc2UgU0VBUkNIX0FDVElPTl9UWVBFLlBFUlNJU1RfU0VBUkNIOlxuXHRcdFx0cmV0dXJuIG1lcmdlV2l0aCh7fSwgc3RhdGUsIGFjdGlvbi5kYXRhLCAodGFyZ2V0LCBzb3VyY2UpID0+IChpc0FycmF5KHNvdXJjZSkgPyBzb3VyY2UgOiB1bmRlZmluZWQpKVxuXG5cdFx0ZGVmYXVsdDpcblx0XHRcdHJldHVybiBzdGF0ZVxuXHR9XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQXFCQSxPQUFPLEVBQUVDLFNBQVMsUUFBUSxRQUFRO0FBQ3ZELFNBQVNDLGtCQUFrQixRQUFzQix5QkFBeUI7QUFJMUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSxTQUFTQyxhQUFhQSxDQUFBLEVBQWdEO0VBQUEsSUFBL0NDLEtBQWtCLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHLENBQUMsQ0FBQztFQUFBLElBQUVHLE1BQW9CLEdBQUFILFNBQUEsQ0FBQUMsTUFBQSxPQUFBRCxTQUFBLE1BQUFFLFNBQUE7RUFDbEYsUUFBUUMsTUFBTSxDQUFDQyxJQUFJO0lBQ2xCO0lBQ0EsS0FBS1Asa0JBQWtCLENBQUNRLGNBQWM7TUFDckMsT0FBT1QsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFRyxLQUFLLEVBQUVJLE1BQU0sQ0FBQ0csSUFBSSxFQUFFLENBQUNDLE1BQU0sRUFBRUMsTUFBTSxLQUFNYixPQUFPLENBQUNhLE1BQU0sQ0FBQyxHQUFHQSxNQUFNLEdBQUdOLFNBQVUsQ0FBQztJQUVyRztNQUNDLE9BQU9ILEtBQUs7RUFDZDtBQUNEIiwiaWdub3JlTGlzdCI6W119
@@ -1,22 +1,20 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = appInsightsSaga;
4
- const effects_1 = require("redux-saga/effects");
5
- const constants_1 = require("../../constants");
6
- const actions_1 = require("../actions");
7
- function* appInsightsSaga() {
8
- const appConfig = (0, constants_1.getAppConfig)();
9
- const appInsightsKey = appConfig.APP_INSIGHTS_CONNECTION_STRING;
10
- if (!appInsightsKey) {
11
- return;
12
- }
13
- const appInsights = (0, constants_1.getAppInsights)();
14
- while (true) {
15
- const userInfoResponse = yield (0, effects_1.take)((action) => (0, actions_1.isModelFetchResultAction)(action) && action.modelPath === 'user.userInfo');
16
- const userId = userInfoResponse.data.id;
17
- appInsights.setAuthenticatedUserContext(userId, undefined, true);
18
- yield (0, effects_1.take)(actions_1.AUTH_ACTION_TYPE.LOG_OUT_REQUESTED);
19
- appInsights.clearAuthenticatedUserContext();
20
- yield (0, effects_1.take)(actions_1.AUTH_TOKEN_SUCCESS_ACTION_TYPE.GET_TOKEN_SUCCEEDED);
21
- }
1
+ import { take } from 'redux-saga/effects';
2
+ import { getAppConfig, getAppInsights } from '../../constants';
3
+ import { AUTH_ACTION_TYPE, AUTH_TOKEN_SUCCESS_ACTION_TYPE, isModelFetchResultAction } from '../actions';
4
+ export default function* appInsightsSaga() {
5
+ const appConfig = getAppConfig();
6
+ const appInsightsKey = appConfig.APP_INSIGHTS_CONNECTION_STRING;
7
+ if (!appInsightsKey) {
8
+ return;
9
+ }
10
+ const appInsights = getAppInsights();
11
+ while (true) {
12
+ const userInfoResponse = yield take(action => isModelFetchResultAction(action) && action.modelPath === 'user.userInfo');
13
+ const userId = userInfoResponse.data.id;
14
+ appInsights.setAuthenticatedUserContext(userId, undefined, true);
15
+ yield take(AUTH_ACTION_TYPE.LOG_OUT_REQUESTED);
16
+ appInsights.clearAuthenticatedUserContext();
17
+ yield take(AUTH_TOKEN_SUCCESS_ACTION_TYPE.GET_TOKEN_SUCCEEDED);
18
+ }
22
19
  }
20
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ0YWtlIiwiZ2V0QXBwQ29uZmlnIiwiZ2V0QXBwSW5zaWdodHMiLCJBVVRIX0FDVElPTl9UWVBFIiwiQVVUSF9UT0tFTl9TVUNDRVNTX0FDVElPTl9UWVBFIiwiaXNNb2RlbEZldGNoUmVzdWx0QWN0aW9uIiwiYXBwSW5zaWdodHNTYWdhIiwiYXBwQ29uZmlnIiwiYXBwSW5zaWdodHNLZXkiLCJBUFBfSU5TSUdIVFNfQ09OTkVDVElPTl9TVFJJTkciLCJhcHBJbnNpZ2h0cyIsInVzZXJJbmZvUmVzcG9uc2UiLCJhY3Rpb24iLCJtb2RlbFBhdGgiLCJ1c2VySWQiLCJkYXRhIiwiaWQiLCJzZXRBdXRoZW50aWNhdGVkVXNlckNvbnRleHQiLCJ1bmRlZmluZWQiLCJMT0dfT1VUX1JFUVVFU1RFRCIsImNsZWFyQXV0aGVudGljYXRlZFVzZXJDb250ZXh0IiwiR0VUX1RPS0VOX1NVQ0NFRURFRCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZWR1eC9zYWdhcy9hcHBJbnNpZ2h0c1NhZ2EudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW55QWN0aW9uIH0gZnJvbSAncmVkdXgnXG5pbXBvcnQgeyBTYWdhSXRlcmF0b3IgfSBmcm9tICdyZWR1eC1zYWdhJ1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3JlZHV4LXNhZ2EvZWZmZWN0cydcbmltcG9ydCB7IGdldEFwcENvbmZpZywgZ2V0QXBwSW5zaWdodHMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnXG5pbXBvcnQgeyBBVVRIX0FDVElPTl9UWVBFLCBBVVRIX1RPS0VOX1NVQ0NFU1NfQUNUSU9OX1RZUEUsIGlzTW9kZWxGZXRjaFJlc3VsdEFjdGlvbiB9IGZyb20gJy4uL2FjdGlvbnMnXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uKiBhcHBJbnNpZ2h0c1NhZ2EoKTogU2FnYUl0ZXJhdG9yIHtcblx0Y29uc3QgYXBwQ29uZmlnID0gZ2V0QXBwQ29uZmlnKClcblx0Y29uc3QgYXBwSW5zaWdodHNLZXkgPSBhcHBDb25maWcuQVBQX0lOU0lHSFRTX0NPTk5FQ1RJT05fU1RSSU5HXG5cdGlmICghYXBwSW5zaWdodHNLZXkpIHtcblx0XHRyZXR1cm5cblx0fVxuXHRjb25zdCBhcHBJbnNpZ2h0cyA9IGdldEFwcEluc2lnaHRzKClcblx0d2hpbGUgKHRydWUpIHtcblx0XHRjb25zdCB1c2VySW5mb1Jlc3BvbnNlID0geWllbGQgdGFrZShcblx0XHRcdChhY3Rpb246IEFueUFjdGlvbikgPT4gaXNNb2RlbEZldGNoUmVzdWx0QWN0aW9uKGFjdGlvbikgJiYgYWN0aW9uLm1vZGVsUGF0aCA9PT0gJ3VzZXIudXNlckluZm8nXG5cdFx0KVxuXHRcdGNvbnN0IHVzZXJJZDogc3RyaW5nID0gdXNlckluZm9SZXNwb25zZS5kYXRhLmlkXG5cdFx0YXBwSW5zaWdodHMuc2V0QXV0aGVudGljYXRlZFVzZXJDb250ZXh0KHVzZXJJZCwgdW5kZWZpbmVkLCB0cnVlKVxuXHRcdHlpZWxkIHRha2UoQVVUSF9BQ1RJT05fVFlQRS5MT0dfT1VUX1JFUVVFU1RFRClcblx0XHRhcHBJbnNpZ2h0cy5jbGVhckF1dGhlbnRpY2F0ZWRVc2VyQ29udGV4dCgpXG5cdFx0eWllbGQgdGFrZShBVVRIX1RPS0VOX1NVQ0NFU1NfQUNUSU9OX1RZUEUuR0VUX1RPS0VOX1NVQ0NFRURFRClcblx0fVxufVxuIl0sIm1hcHBpbmdzIjoiQUFFQSxTQUFTQSxJQUFJLFFBQVEsb0JBQW9CO0FBQ3pDLFNBQVNDLFlBQVksRUFBRUMsY0FBYyxRQUFRLGlCQUFpQjtBQUM5RCxTQUFTQyxnQkFBZ0IsRUFBRUMsOEJBQThCLEVBQUVDLHdCQUF3QixRQUFRLFlBQVk7QUFFdkcsZUFBZSxVQUFVQyxlQUFlQSxDQUFBLEVBQWlCO0VBQ3hELE1BQU1DLFNBQVMsR0FBR04sWUFBWSxDQUFDLENBQUM7RUFDaEMsTUFBTU8sY0FBYyxHQUFHRCxTQUFTLENBQUNFLDhCQUE4QjtFQUMvRCxJQUFJLENBQUNELGNBQWMsRUFBRTtJQUNwQjtFQUNEO0VBQ0EsTUFBTUUsV0FBVyxHQUFHUixjQUFjLENBQUMsQ0FBQztFQUNwQyxPQUFPLElBQUksRUFBRTtJQUNaLE1BQU1TLGdCQUFnQixHQUFHLE1BQU1YLElBQUksQ0FDakNZLE1BQWlCLElBQUtQLHdCQUF3QixDQUFDTyxNQUFNLENBQUMsSUFBSUEsTUFBTSxDQUFDQyxTQUFTLEtBQUssZUFDakYsQ0FBQztJQUNELE1BQU1DLE1BQWMsR0FBR0gsZ0JBQWdCLENBQUNJLElBQUksQ0FBQ0MsRUFBRTtJQUMvQ04sV0FBVyxDQUFDTywyQkFBMkIsQ0FBQ0gsTUFBTSxFQUFFSSxTQUFTLEVBQUUsSUFBSSxDQUFDO0lBQ2hFLE1BQU1sQixJQUFJLENBQUNHLGdCQUFnQixDQUFDZ0IsaUJBQWlCLENBQUM7SUFDOUNULFdBQVcsQ0FBQ1UsNkJBQTZCLENBQUMsQ0FBQztJQUMzQyxNQUFNcEIsSUFBSSxDQUFDSSw4QkFBOEIsQ0FBQ2lCLG1CQUFtQixDQUFDO0VBQy9EO0FBQ0QiLCJpZ25vcmVMaXN0IjpbXX0=