studiokit-scaffolding-js 4.3.21 → 4.3.22

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 (334) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +127 -127
  3. package/lib/components/ActionList.d.ts +20 -20
  4. package/lib/components/ActionList.js +94 -94
  5. package/lib/components/AlertDialog.d.ts +18 -18
  6. package/lib/components/AlertDialog.js +21 -21
  7. package/lib/components/AlertWithIcon.d.ts +7 -7
  8. package/lib/components/AlertWithIcon.js +57 -57
  9. package/lib/components/Blots/CustomImageSpec.d.ts +14 -14
  10. package/lib/components/Blots/CustomImageSpec.js +45 -45
  11. package/lib/components/Blots/CustomVideoSpec.d.ts +16 -16
  12. package/lib/components/Blots/CustomVideoSpec.js +47 -47
  13. package/lib/components/ConnectedModal.d.ts +6 -6
  14. package/lib/components/ConnectedModal.js +11 -11
  15. package/lib/components/Dropdowns/GroupsDropdown.d.ts +18 -18
  16. package/lib/components/Dropdowns/GroupsDropdown.js +90 -90
  17. package/lib/components/Dropdowns/ManagedNavDropdown.d.ts +32 -32
  18. package/lib/components/Dropdowns/ManagedNavDropdown.js +118 -118
  19. package/lib/components/Dropdowns/UserDropdown.d.ts +6 -6
  20. package/lib/components/Dropdowns/UserDropdown.js +76 -76
  21. package/lib/components/Dropdowns/index.d.ts +3 -3
  22. package/lib/components/Dropdowns/index.js +12 -12
  23. package/lib/components/EntityOwnerList.d.ts +11 -11
  24. package/lib/components/EntityOwnerList.js +63 -63
  25. package/lib/components/ErrorBoundary.d.ts +11 -11
  26. package/lib/components/ErrorBoundary.js +74 -74
  27. package/lib/components/Forms/DateField.d.ts +13 -13
  28. package/lib/components/Forms/DateField.js +99 -99
  29. package/lib/components/Forms/TimeField.d.ts +11 -11
  30. package/lib/components/Forms/TimeField.js +112 -112
  31. package/lib/components/Forms/index.d.ts +2 -2
  32. package/lib/components/Forms/index.js +14 -14
  33. package/lib/components/Groups/CreateEditCopySaveButtons.d.ts +10 -10
  34. package/lib/components/Groups/CreateEditCopySaveButtons.js +18 -18
  35. package/lib/components/Groups/GroupCreateOrEditCommonProps.d.ts +6 -6
  36. package/lib/components/Groups/GroupCreateOrEditCommonProps.js +2 -2
  37. package/lib/components/Groups/RosterSyncInfo.d.ts +5 -5
  38. package/lib/components/Groups/RosterSyncInfo.js +54 -54
  39. package/lib/components/HOC/AccessibleAppComponent.d.ts +15 -15
  40. package/lib/components/HOC/AccessibleAppComponent.js +135 -135
  41. package/lib/components/HOC/ActivityRequiredComponent.d.ts +105 -105
  42. package/lib/components/HOC/ActivityRequiredComponent.js +101 -101
  43. package/lib/components/HOC/AsyncComponent.d.ts +37 -37
  44. package/lib/components/HOC/AsyncComponent.js +136 -136
  45. package/lib/components/HOC/AuthenticatedComponent.d.ts +10 -10
  46. package/lib/components/HOC/AuthenticatedComponent.js +104 -104
  47. package/lib/components/HOC/CollectionComponent.d.ts +61 -61
  48. package/lib/components/HOC/CollectionComponent.js +175 -175
  49. package/lib/components/HOC/CollectionFirstItemComponent.d.ts +67 -67
  50. package/lib/components/HOC/CollectionFirstItemComponent.js +94 -94
  51. package/lib/components/HOC/CollectionItemComponent.d.ts +61 -61
  52. package/lib/components/HOC/CollectionItemComponent.js +172 -172
  53. package/lib/components/HOC/ConnectedModalComponent.d.ts +26 -26
  54. package/lib/components/HOC/ConnectedModalComponent.js +110 -110
  55. package/lib/components/HOC/DataDependentComponent.d.ts +61 -61
  56. package/lib/components/HOC/DataDependentComponent.js +90 -90
  57. package/lib/components/HOC/EntityComponent.d.ts +83 -83
  58. package/lib/components/HOC/EntityComponent.js +120 -120
  59. package/lib/components/HOC/FullscreenModalComponent.d.ts +74 -74
  60. package/lib/components/HOC/FullscreenModalComponent.js +173 -173
  61. package/lib/components/HOC/GroupActivityRequiredComponent.d.ts +29 -29
  62. package/lib/components/HOC/GroupActivityRequiredComponent.js +49 -49
  63. package/lib/components/HOC/GuidComponent.d.ts +14 -14
  64. package/lib/components/HOC/GuidComponent.js +72 -72
  65. package/lib/components/HOC/ModelContextDependencyVerifyComponent.d.ts +172 -172
  66. package/lib/components/HOC/ModelContextDependencyVerifyComponent.js +72 -72
  67. package/lib/components/HOC/ModelErrorRedirectComponent.d.ts +69 -69
  68. package/lib/components/HOC/ModelErrorRedirectComponent.js +101 -101
  69. package/lib/components/HOC/SearchPersistorComponent.d.ts +85 -85
  70. package/lib/components/HOC/SearchPersistorComponent.js +198 -198
  71. package/lib/components/HOC/UnauthenticatedComponent.d.ts +62 -62
  72. package/lib/components/HOC/UnauthenticatedComponent.js +90 -90
  73. package/lib/components/HOC/UserComponent.d.ts +3 -3
  74. package/lib/components/HOC/UserComponent.js +12 -12
  75. package/lib/components/Icons/IconExternalUser.d.ts +3 -3
  76. package/lib/components/Icons/IconExternalUser.js +24 -24
  77. package/lib/components/Icons/IconImpersonation.d.ts +3 -3
  78. package/lib/components/Icons/IconImpersonation.js +24 -24
  79. package/lib/components/Icons/IconStopImpersonating.d.ts +3 -3
  80. package/lib/components/Icons/IconStopImpersonating.js +24 -24
  81. package/lib/components/Impersonation/Button.d.ts +7 -7
  82. package/lib/components/Impersonation/Button.js +61 -61
  83. package/lib/components/Impersonation/Link.d.ts +7 -7
  84. package/lib/components/Impersonation/Link.js +58 -58
  85. package/lib/components/Impersonation/UserDetail.css +22 -22
  86. package/lib/components/Impersonation/UserDetail.d.ts +22 -22
  87. package/lib/components/Impersonation/UserDetail.js +23 -23
  88. package/lib/components/Loading.d.ts +4 -4
  89. package/lib/components/Loading.js +24 -24
  90. package/lib/components/Lti/Confirm.d.ts +8 -8
  91. package/lib/components/Lti/Confirm.js +37 -37
  92. package/lib/components/Lti/CreateNonLtiGroupAlertDialog.d.ts +15 -15
  93. package/lib/components/Lti/CreateNonLtiGroupAlertDialog.js +83 -83
  94. package/lib/components/Lti/Launch.d.ts +21 -21
  95. package/lib/components/Lti/Launch.js +52 -52
  96. package/lib/components/Lti/LaunchGroup.d.ts +9 -9
  97. package/lib/components/Lti/LaunchGroup.js +45 -45
  98. package/lib/components/NewVersionAlert.d.ts +18 -18
  99. package/lib/components/NewVersionAlert.js +97 -97
  100. package/lib/components/NotFound.d.ts +3 -3
  101. package/lib/components/NotFound.js +30 -28
  102. package/lib/components/Notifications.d.ts +39 -39
  103. package/lib/components/Notifications.js +175 -175
  104. package/lib/components/RefreshIndicator/Bordered.d.ts +7 -7
  105. package/lib/components/RefreshIndicator/Bordered.js +35 -35
  106. package/lib/components/RefreshIndicator/Inline.d.ts +4 -4
  107. package/lib/components/RefreshIndicator/Inline.js +36 -36
  108. package/lib/components/RefreshIndicator/index.d.ts +21 -21
  109. package/lib/components/RefreshIndicator/index.js +116 -116
  110. package/lib/components/SearchControls.d.ts +14 -14
  111. package/lib/components/SearchControls.js +34 -34
  112. package/lib/components/SentryRoute.d.ts +3 -3
  113. package/lib/components/SentryRoute.js +25 -25
  114. package/lib/components/Tables/RoleFilter.d.ts +14 -14
  115. package/lib/components/Tables/RoleFilter.js +53 -53
  116. package/lib/components/Tables/TextFilter.d.ts +7 -7
  117. package/lib/components/Tables/TextFilter.js +26 -26
  118. package/lib/components/UserRoles/Add.d.ts +31 -31
  119. package/lib/components/UserRoles/Add.js +165 -165
  120. package/lib/components/UserRoles/RoleCell.d.ts +21 -21
  121. package/lib/components/UserRoles/RoleCell.js +53 -53
  122. package/lib/components/UserRoles/Select.d.ts +27 -27
  123. package/lib/components/UserRoles/Select.js +44 -44
  124. package/lib/components/UserRoles/Table.d.ts +16 -16
  125. package/lib/components/UserRoles/Table.js +99 -99
  126. package/lib/components/UserRoles/index.d.ts +76 -76
  127. package/lib/components/UserRoles/index.js +361 -361
  128. package/lib/constants/baseActivity.d.ts +25 -25
  129. package/lib/constants/baseActivity.js +29 -29
  130. package/lib/constants/baseRole.d.ts +9 -9
  131. package/lib/constants/baseRole.js +13 -13
  132. package/lib/constants/configuration.d.ts +8 -8
  133. package/lib/constants/configuration.js +39 -39
  134. package/lib/constants/externalProviderType.d.ts +5 -5
  135. package/lib/constants/externalProviderType.js +9 -9
  136. package/lib/constants/index.d.ts +8 -8
  137. package/lib/constants/index.js +20 -20
  138. package/lib/constants/mockData.d.ts +84 -82
  139. package/lib/constants/mockData.js +379 -379
  140. package/lib/constants/modelStatus.d.ts +10 -10
  141. package/lib/constants/modelStatus.js +14 -14
  142. package/lib/constants/notificationType.d.ts +7 -7
  143. package/lib/constants/notificationType.js +11 -11
  144. package/lib/constants/shard.d.ts +6 -6
  145. package/lib/constants/shard.js +10 -10
  146. package/lib/constants/tier.d.ts +6 -6
  147. package/lib/constants/tier.js +10 -10
  148. package/lib/constants/userRole.d.ts +2 -2
  149. package/lib/constants/userRole.js +21 -21
  150. package/lib/css/base/_base.css +98 -98
  151. package/lib/css/base/_typography.css +130 -130
  152. package/lib/css/components/_alert.css +85 -85
  153. package/lib/css/components/_bootstrap-grid.css +28 -28
  154. package/lib/css/components/_buttons.css +325 -325
  155. package/lib/css/components/_forms.css +91 -91
  156. package/lib/css/components/_menu.css +56 -56
  157. package/lib/css/components/_modals.css +41 -41
  158. package/lib/css/components/_tables.css +426 -426
  159. package/lib/css/components/_tags.css +12 -12
  160. package/lib/css/index-with-variables.css +14 -14
  161. package/lib/css/index.css +13 -13
  162. package/lib/css/utils/_border.css +463 -463
  163. package/lib/css/utils/_color.css +271 -271
  164. package/lib/css/utils/_display.css +312 -312
  165. package/lib/css/utils/_general.css +48 -48
  166. package/lib/css/utils/_icon.css +16 -16
  167. package/lib/css/utils/_text.css +24 -24
  168. package/lib/css/utils/_width.css +60 -60
  169. package/lib/css/variables.css +70 -70
  170. package/lib/endpointMappings.d.ts +4 -4
  171. package/lib/endpointMappings.js +173 -173
  172. package/lib/hooks/useCollection.d.ts +6 -6
  173. package/lib/hooks/useCollection.js +61 -61
  174. package/lib/hooks/useCollectionConfiguration.d.ts +27 -27
  175. package/lib/hooks/useCollectionConfiguration.js +67 -67
  176. package/lib/hooks/useCollectionItem.d.ts +6 -6
  177. package/lib/hooks/useCollectionItem.js +54 -54
  178. package/lib/hooks/useGuid.d.ts +4 -4
  179. package/lib/hooks/useGuid.js +14 -14
  180. package/lib/hooks/usePrevious.d.ts +5 -5
  181. package/lib/hooks/usePrevious.js +18 -18
  182. package/lib/index.d.ts +8 -8
  183. package/lib/index.js +30 -30
  184. package/lib/redux/actionCreator.d.ts +5 -5
  185. package/lib/redux/actionCreator.js +16 -16
  186. package/lib/redux/actions.d.ts +12 -12
  187. package/lib/redux/actions.js +30 -30
  188. package/lib/redux/configureReducers.d.ts +22 -22
  189. package/lib/redux/configureReducers.js +94 -94
  190. package/lib/redux/configureStore.d.ts +14 -14
  191. package/lib/redux/configureStore.js +118 -118
  192. package/lib/redux/helpers.d.ts +2 -2
  193. package/lib/redux/helpers.js +7 -7
  194. package/lib/redux/reducers/index.d.ts +4 -4
  195. package/lib/redux/reducers/index.js +12 -12
  196. package/lib/redux/reducers/modalsReducer.d.ts +8 -8
  197. package/lib/redux/reducers/modalsReducer.js +54 -54
  198. package/lib/redux/reducers/notificationsReducer.d.ts +9 -9
  199. package/lib/redux/reducers/notificationsReducer.js +27 -27
  200. package/lib/redux/reducers/searchReducer.d.ts +17 -17
  201. package/lib/redux/reducers/searchReducer.js +26 -26
  202. package/lib/redux/sagas/caliperSaga.d.ts +2 -2
  203. package/lib/redux/sagas/caliperSaga.js +296 -296
  204. package/lib/redux/sagas/clockOffsetSaga.d.ts +10 -10
  205. package/lib/redux/sagas/clockOffsetSaga.js +81 -81
  206. package/lib/redux/sagas/configurationSaga.d.ts +1 -1
  207. package/lib/redux/sagas/configurationSaga.js +48 -48
  208. package/lib/redux/sagas/errorSaga.d.ts +2 -2
  209. package/lib/redux/sagas/errorSaga.js +66 -66
  210. package/lib/redux/sagas/identityProviderSaga.d.ts +2 -2
  211. package/lib/redux/sagas/identityProviderSaga.js +91 -91
  212. package/lib/redux/sagas/initialDataLoadSaga.d.ts +1 -1
  213. package/lib/redux/sagas/initialDataLoadSaga.js +33 -33
  214. package/lib/redux/sagas/postLoginDataSaga.d.ts +9 -9
  215. package/lib/redux/sagas/postLoginDataSaga.js +87 -87
  216. package/lib/redux/sagas/postLoginRedirectSaga.d.ts +6 -6
  217. package/lib/redux/sagas/postLoginRedirectSaga.js +96 -96
  218. package/lib/redux/sagas/rootSaga.d.ts +5 -5
  219. package/lib/redux/sagas/rootSaga.js +144 -144
  220. package/lib/redux/sagas/sentrySaga.d.ts +1 -1
  221. package/lib/redux/sagas/sentrySaga.js +103 -103
  222. package/lib/services/codeProviderService.d.ts +3 -3
  223. package/lib/services/codeProviderService.js +36 -36
  224. package/lib/services/documentService.d.ts +10 -10
  225. package/lib/services/documentService.js +17 -17
  226. package/lib/services/persistenceService.d.ts +13 -13
  227. package/lib/services/persistenceService.js +45 -45
  228. package/lib/services/ticketProviderService.d.ts +3 -3
  229. package/lib/services/ticketProviderService.js +40 -40
  230. package/lib/services/windowService.d.ts +9 -9
  231. package/lib/services/windowService.js +15 -15
  232. package/lib/setupTests.d.ts +1 -1
  233. package/lib/setupTests.js +25 -25
  234. package/lib/startup.d.ts +29 -29
  235. package/lib/startup.js +128 -128
  236. package/lib/types/AppConfiguration.d.ts +32 -32
  237. package/lib/types/AppConfiguration.js +2 -2
  238. package/lib/types/Artifact.d.ts +14 -14
  239. package/lib/types/Artifact.js +9 -9
  240. package/lib/types/BaseReduxState.d.ts +57 -57
  241. package/lib/types/BaseReduxState.js +2 -2
  242. package/lib/types/Client.d.ts +6 -6
  243. package/lib/types/Client.js +2 -2
  244. package/lib/types/Collection.d.ts +175 -175
  245. package/lib/types/Collection.js +2 -2
  246. package/lib/types/Configuration.d.ts +12 -12
  247. package/lib/types/Configuration.js +2 -2
  248. package/lib/types/DeepLinkingResponseRequest.d.ts +4 -4
  249. package/lib/types/DeepLinkingResponseRequest.js +2 -2
  250. package/lib/types/DeletableModel.d.ts +4 -4
  251. package/lib/types/DeletableModel.js +2 -2
  252. package/lib/types/External.d.ts +31 -31
  253. package/lib/types/External.js +2 -2
  254. package/lib/types/Group.d.ts +19 -19
  255. package/lib/types/Group.js +2 -2
  256. package/lib/types/IdentityProvider.d.ts +11 -11
  257. package/lib/types/IdentityProvider.js +2 -2
  258. package/lib/types/LtiLaunch.d.ts +20 -20
  259. package/lib/types/LtiLaunch.js +2 -2
  260. package/lib/types/NameOnlyEntity.d.ts +3 -3
  261. package/lib/types/NameOnlyEntity.js +2 -2
  262. package/lib/types/Notification.d.ts +15 -15
  263. package/lib/types/Notification.js +2 -2
  264. package/lib/types/OptionalRecord.d.ts +4 -4
  265. package/lib/types/OptionalRecord.js +2 -2
  266. package/lib/types/OwnerSchedule.d.ts +9 -9
  267. package/lib/types/OwnerSchedule.js +2 -2
  268. package/lib/types/PropertyOfType.d.ts +12 -12
  269. package/lib/types/PropertyOfType.js +2 -2
  270. package/lib/types/RoleDescription.d.ts +4 -4
  271. package/lib/types/RoleDescription.js +2 -2
  272. package/lib/types/Search.d.ts +11 -11
  273. package/lib/types/Search.js +2 -2
  274. package/lib/types/SimpleLocation.d.ts +46 -46
  275. package/lib/types/SimpleLocation.js +2 -2
  276. package/lib/types/UniTime.d.ts +17 -17
  277. package/lib/types/UniTime.js +2 -2
  278. package/lib/types/User.d.ts +68 -68
  279. package/lib/types/User.js +2 -2
  280. package/lib/types/UserRole.d.ts +19 -19
  281. package/lib/types/UserRole.js +2 -2
  282. package/lib/types/index.d.ts +21 -21
  283. package/lib/types/index.js +33 -33
  284. package/lib/utils/baseActivity.d.ts +63 -63
  285. package/lib/utils/baseActivity.js +155 -155
  286. package/lib/utils/baseRole.d.ts +2 -2
  287. package/lib/utils/baseRole.js +38 -38
  288. package/lib/utils/collection.d.ts +43 -43
  289. package/lib/utils/collection.js +337 -337
  290. package/lib/utils/date.d.ts +162 -162
  291. package/lib/utils/date.js +401 -401
  292. package/lib/utils/domainIdentifier.d.ts +2 -2
  293. package/lib/utils/domainIdentifier.js +12 -12
  294. package/lib/utils/entityUserRole.d.ts +3 -3
  295. package/lib/utils/entityUserRole.js +7 -7
  296. package/lib/utils/externalGroup.d.ts +4 -4
  297. package/lib/utils/externalGroup.js +32 -32
  298. package/lib/utils/externalProviders.d.ts +2 -2
  299. package/lib/utils/externalProviders.js +11 -11
  300. package/lib/utils/externalTerms.d.ts +2 -2
  301. package/lib/utils/externalTerms.js +10 -10
  302. package/lib/utils/group.d.ts +15 -15
  303. package/lib/utils/group.js +15 -15
  304. package/lib/utils/groupDates.d.ts +9 -9
  305. package/lib/utils/groupDates.js +52 -52
  306. package/lib/utils/groupRoles.d.ts +8 -8
  307. package/lib/utils/groupRoles.js +42 -42
  308. package/lib/utils/logger.d.ts +10 -10
  309. package/lib/utils/logger.js +34 -34
  310. package/lib/utils/lti.d.ts +3 -3
  311. package/lib/utils/lti.js +9 -9
  312. package/lib/utils/model.d.ts +15 -15
  313. package/lib/utils/model.js +58 -58
  314. package/lib/utils/number.d.ts +13 -13
  315. package/lib/utils/number.js +32 -32
  316. package/lib/utils/promise.d.ts +5 -5
  317. package/lib/utils/promise.js +17 -17
  318. package/lib/utils/route.d.ts +5 -5
  319. package/lib/utils/route.js +69 -69
  320. package/lib/utils/shard.d.ts +3 -3
  321. package/lib/utils/shard.js +45 -45
  322. package/lib/utils/sort.d.ts +11 -11
  323. package/lib/utils/sort.js +69 -69
  324. package/lib/utils/string.d.ts +2 -2
  325. package/lib/utils/string.js +16 -16
  326. package/lib/utils/timezone.d.ts +2 -2
  327. package/lib/utils/timezone.js +32 -32
  328. package/lib/utils/url.d.ts +23 -23
  329. package/lib/utils/url.js +163 -163
  330. package/lib/utils/user.d.ts +8 -8
  331. package/lib/utils/user.js +73 -73
  332. package/lib/utils/userRole.d.ts +21 -21
  333. package/lib/utils/userRole.js +48 -48
  334. package/package.json +192 -192
@@ -1,13 +1,13 @@
1
- import { TokenPersistenceService } from 'studiokit-auth-js';
2
- import { CaliperToken } from 'studiokit-caliper-js/lib/types';
3
- export declare const returnUrlKey = "studioKit:login:returnUrl";
4
- export declare const identityProviderKey = "studioKit:auth:identityProvider";
5
- export declare const isCasGatewayRequestedKey = "studioKit:auth:isCasGatewayRequested";
6
- export interface PersistenceService extends TokenPersistenceService {
7
- getItem: (key: string) => any | Promise<any>;
8
- setItem: (key: string, item: any) => void | Promise<void>;
9
- removeItem: (key: string) => void | Promise<void>;
10
- getPersistedCaliperToken: () => CaliperToken | null | Promise<CaliperToken | null>;
11
- }
12
- declare const service: PersistenceService;
13
- export default service;
1
+ import { TokenPersistenceService } from 'studiokit-auth-js';
2
+ import { CaliperToken } from 'studiokit-caliper-js/lib/types';
3
+ export declare const returnUrlKey = "studioKit:login:returnUrl";
4
+ export declare const identityProviderKey = "studioKit:auth:identityProvider";
5
+ export declare const isCasGatewayRequestedKey = "studioKit:auth:isCasGatewayRequested";
6
+ export interface PersistenceService extends TokenPersistenceService {
7
+ getItem: (key: string) => any | Promise<any>;
8
+ setItem: (key: string, item: any) => void | Promise<void>;
9
+ removeItem: (key: string) => void | Promise<void>;
10
+ getPersistedCaliperToken: () => CaliperToken | null | Promise<CaliperToken | null>;
11
+ }
12
+ declare const service: PersistenceService;
13
+ export default service;
@@ -1,45 +1,45 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.isCasGatewayRequestedKey = exports.identityProviderKey = exports.returnUrlKey = void 0;
7
- var local_storage_fallback_1 = __importDefault(require("local-storage-fallback"));
8
- var tokenKey = '@authStore:oauthToken';
9
- var caliperTokenKey = 'studioKit:caliperService:token';
10
- exports.returnUrlKey = 'studioKit:login:returnUrl';
11
- exports.identityProviderKey = 'studioKit:auth:identityProvider';
12
- exports.isCasGatewayRequestedKey = 'studioKit:auth:isCasGatewayRequested';
13
- var getItem = function (key) {
14
- var itemValue = local_storage_fallback_1.default.getItem(key);
15
- if (!itemValue) {
16
- return null;
17
- }
18
- return JSON.parse(itemValue);
19
- };
20
- var setItem = function (key, item) {
21
- local_storage_fallback_1.default.setItem(key, JSON.stringify(item));
22
- };
23
- var removeItem = function (key) {
24
- return local_storage_fallback_1.default.removeItem(key);
25
- };
26
- var getPersistedToken = function () {
27
- var token = getItem(tokenKey);
28
- return token;
29
- };
30
- var persistToken = function (token) {
31
- setItem(tokenKey, token);
32
- };
33
- var getPersistedCaliperToken = function () {
34
- var token = getItem(caliperTokenKey);
35
- return token;
36
- };
37
- var service = {
38
- getItem: getItem,
39
- setItem: setItem,
40
- removeItem: removeItem,
41
- getPersistedToken: getPersistedToken,
42
- persistToken: persistToken,
43
- getPersistedCaliperToken: getPersistedCaliperToken
44
- };
45
- exports.default = service;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.isCasGatewayRequestedKey = exports.identityProviderKey = exports.returnUrlKey = void 0;
7
+ var local_storage_fallback_1 = __importDefault(require("local-storage-fallback"));
8
+ var tokenKey = '@authStore:oauthToken';
9
+ var caliperTokenKey = 'studioKit:caliperService:token';
10
+ exports.returnUrlKey = 'studioKit:login:returnUrl';
11
+ exports.identityProviderKey = 'studioKit:auth:identityProvider';
12
+ exports.isCasGatewayRequestedKey = 'studioKit:auth:isCasGatewayRequested';
13
+ var getItem = function (key) {
14
+ var itemValue = local_storage_fallback_1.default.getItem(key);
15
+ if (!itemValue) {
16
+ return null;
17
+ }
18
+ return JSON.parse(itemValue);
19
+ };
20
+ var setItem = function (key, item) {
21
+ local_storage_fallback_1.default.setItem(key, JSON.stringify(item));
22
+ };
23
+ var removeItem = function (key) {
24
+ return local_storage_fallback_1.default.removeItem(key);
25
+ };
26
+ var getPersistedToken = function () {
27
+ var token = getItem(tokenKey);
28
+ return token;
29
+ };
30
+ var persistToken = function (token) {
31
+ setItem(tokenKey, token);
32
+ };
33
+ var getPersistedCaliperToken = function () {
34
+ var token = getItem(caliperTokenKey);
35
+ return token;
36
+ };
37
+ var service = {
38
+ getItem: getItem,
39
+ setItem: setItem,
40
+ removeItem: removeItem,
41
+ getPersistedToken: getPersistedToken,
42
+ persistToken: persistToken,
43
+ getPersistedCaliperToken: getPersistedCaliperToken
44
+ };
45
+ exports.default = service;
@@ -1,3 +1,3 @@
1
- import { TicketProviderService } from 'studiokit-auth-js';
2
- declare const ticketProviderService: TicketProviderService;
3
- export default ticketProviderService;
1
+ import { TicketProviderService } from 'studiokit-auth-js';
2
+ declare const ticketProviderService: TicketProviderService;
3
+ export default ticketProviderService;
@@ -1,40 +1,40 @@
1
- "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- var query_string_1 = require("query-string");
18
- var windowService_1 = __importDefault(require("./windowService"));
19
- var ticketProviderService = {
20
- getTicket: function () {
21
- var location = windowService_1.default.getLocation();
22
- return query_string_1.parse(location.search).ticket;
23
- },
24
- getAppServiceName: function () {
25
- var location = windowService_1.default.getLocation();
26
- return location.protocol + "//" + location.host;
27
- },
28
- removeTicket: function () {
29
- var location = windowService_1.default.getLocation();
30
- var history = windowService_1.default.getHistory();
31
- var parsedSearch = query_string_1.parse(location.search);
32
- var ticket = parsedSearch.ticket, newSearch = __rest(parsedSearch, ["ticket"]);
33
- var newSearchString = query_string_1.stringify(newSearch);
34
- if (newSearchString) {
35
- newSearchString = "?" + newSearchString;
36
- }
37
- history.pushState('', '', location.protocol + "//" + location.host + location.pathname + newSearchString);
38
- }
39
- };
40
- exports.default = ticketProviderService;
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var query_string_1 = require("query-string");
18
+ var windowService_1 = __importDefault(require("./windowService"));
19
+ var ticketProviderService = {
20
+ getTicket: function () {
21
+ var location = windowService_1.default.getLocation();
22
+ return query_string_1.parse(location.search).ticket;
23
+ },
24
+ getAppServiceName: function () {
25
+ var location = windowService_1.default.getLocation();
26
+ return location.protocol + "//" + location.host;
27
+ },
28
+ removeTicket: function () {
29
+ var location = windowService_1.default.getLocation();
30
+ var history = windowService_1.default.getHistory();
31
+ var parsedSearch = query_string_1.parse(location.search);
32
+ var ticket = parsedSearch.ticket, newSearch = __rest(parsedSearch, ["ticket"]);
33
+ var newSearchString = query_string_1.stringify(newSearch);
34
+ if (newSearchString) {
35
+ newSearchString = "?" + newSearchString;
36
+ }
37
+ history.pushState('', '', location.protocol + "//" + location.host + location.pathname + newSearchString);
38
+ }
39
+ };
40
+ exports.default = ticketProviderService;
@@ -1,9 +1,9 @@
1
- import { SimpleLocation } from '../types';
2
- export interface WindowService {
3
- setLocation: (value?: SimpleLocation) => void;
4
- getLocation: () => SimpleLocation | Location;
5
- setHistory: (value?: History) => void;
6
- getHistory: () => History;
7
- }
8
- declare const windowService: WindowService;
9
- export default windowService;
1
+ import { SimpleLocation } from '../types';
2
+ export interface WindowService {
3
+ setLocation: (value?: SimpleLocation) => void;
4
+ getLocation: () => SimpleLocation | Location;
5
+ setHistory: (value?: History) => void;
6
+ getHistory: () => History;
7
+ }
8
+ declare const windowService: WindowService;
9
+ export default windowService;
@@ -1,15 +1,15 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var location;
4
- var history;
5
- var windowService = {
6
- setLocation: function (value) {
7
- location = value;
8
- },
9
- getLocation: function () { return location || window.location; },
10
- setHistory: function (value) {
11
- history = value;
12
- },
13
- getHistory: function () { return history || window.history; }
14
- };
15
- exports.default = windowService;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var location;
4
+ var history;
5
+ var windowService = {
6
+ setLocation: function (value) {
7
+ location = value;
8
+ },
9
+ getLocation: function () { return location || window.location; },
10
+ setHistory: function (value) {
11
+ history = value;
12
+ },
13
+ getHistory: function () { return history || window.history; }
14
+ };
15
+ exports.default = windowService;
@@ -1 +1 @@
1
- export {};
1
+ export {};
package/lib/setupTests.js CHANGED
@@ -1,25 +1,25 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- var enzyme_adapter_react_17_1 = __importDefault(require("@wojtekmaj/enzyme-adapter-react-17"));
7
- var enzyme_1 = require("enzyme");
8
- // import MockDate from 'mockdate'
9
- // import { defaultDate } from './constants/mockData'
10
- jest.mock('./redux/actionCreator');
11
- jest.mock('./utils/timezone', function () {
12
- return {
13
- getDefaultTimeZone: function () { return 'America/Indianapolis'; },
14
- guessTimeZoneId: function () { return 'America/Indianapolis'; }
15
- };
16
- });
17
- // globally mock the date
18
- // beforeEach(() => {
19
- // console.log('test')
20
- // MockDate.set(defaultDate)
21
- // })
22
- // afterEach(() => {
23
- // MockDate.reset()
24
- // })
25
- enzyme_1.configure({ adapter: new enzyme_adapter_react_17_1.default() });
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var enzyme_adapter_react_17_1 = __importDefault(require("@wojtekmaj/enzyme-adapter-react-17"));
7
+ var enzyme_1 = require("enzyme");
8
+ // import MockDate from 'mockdate'
9
+ // import { defaultDate } from './constants/mockData'
10
+ jest.mock('./redux/actionCreator');
11
+ jest.mock('./utils/timezone', function () {
12
+ return {
13
+ getDefaultTimeZone: function () { return 'America/Indianapolis'; },
14
+ guessTimeZoneId: function () { return 'America/Indianapolis'; }
15
+ };
16
+ });
17
+ // globally mock the date
18
+ // beforeEach(() => {
19
+ // console.log('test')
20
+ // MockDate.set(defaultDate)
21
+ // })
22
+ // afterEach(() => {
23
+ // MockDate.reset()
24
+ // })
25
+ enzyme_1.configure({ adapter: new enzyme_adapter_react_17_1.default() });
package/lib/startup.d.ts CHANGED
@@ -1,29 +1,29 @@
1
- import { History } from 'history';
2
- import { Persistor } from 'redux-persist';
3
- import { EndpointMappings } from 'studiokit-net-js';
4
- import { CustomStore } from './redux/configureStore';
5
- import { AppConfiguration, BaseReduxState } from './types';
6
- export interface StartupResponse<TReduxState extends BaseReduxState> {
7
- history: History<any>;
8
- store: CustomStore<TReduxState>;
9
- persistor: Persistor;
10
- }
11
- /**
12
- * The main startup method for your app. Should be called before rendering your app or importing other scaffolding modules.
13
- *
14
- * Optional startup methods are available to provide additional configuration. Call these **before** `startup`. These methods can all be imported from `studiokit-scaffolding-js`.
15
- * * `redux/sagas/rootSaga`
16
- * * `setOtherDependentSagas` to add more sagas
17
- * * `redux/sagas/postLoginDataSaga`
18
- * * `setOnPostLogin` to load more data after login
19
- * * `redux/configureReducers`
20
- * * `updatePersistBlacklist` and `setOtherReducers` to add more reducers
21
- *
22
- * @template TReduxState The type of state to be stored in redux
23
- *
24
- * @param appConfig The static configuration for the application.
25
- * @param endpointMappings The mapping of redux models to api endpoints.
26
- *
27
- * @returns An object containing the created `history`, `store`, and `persistor` objects.
28
- */
29
- export declare const startup: <TReduxState extends BaseReduxState<import("./types").BaseModelsState<import("./types").Group, import("./types").BaseSearchModelsState<import("./types").Group>>>>(appConfig: AppConfiguration, endpointMappings: EndpointMappings) => StartupResponse<TReduxState>;
1
+ import { History } from 'history';
2
+ import { Persistor } from 'redux-persist';
3
+ import { EndpointMappings } from 'studiokit-net-js';
4
+ import { CustomStore } from './redux/configureStore';
5
+ import { AppConfiguration, BaseReduxState } from './types';
6
+ export interface StartupResponse<TReduxState extends BaseReduxState> {
7
+ history: History<any>;
8
+ store: CustomStore<TReduxState>;
9
+ persistor: Persistor;
10
+ }
11
+ /**
12
+ * The main startup method for your app. Should be called before rendering your app or importing other scaffolding modules.
13
+ *
14
+ * Optional startup methods are available to provide additional configuration. Call these **before** `startup`. These methods can all be imported from `studiokit-scaffolding-js`.
15
+ * * `redux/sagas/rootSaga`
16
+ * * `setOtherDependentSagas` to add more sagas
17
+ * * `redux/sagas/postLoginDataSaga`
18
+ * * `setOnPostLogin` to load more data after login
19
+ * * `redux/configureReducers`
20
+ * * `updatePersistBlacklist` and `setOtherReducers` to add more reducers
21
+ *
22
+ * @template TReduxState The type of state to be stored in redux
23
+ *
24
+ * @param appConfig The static configuration for the application.
25
+ * @param endpointMappings The mapping of redux models to api endpoints.
26
+ *
27
+ * @returns An object containing the created `history`, `store`, and `persistor` objects.
28
+ */
29
+ export declare const startup: <TReduxState extends BaseReduxState<import("./types").BaseModelsState<import("./types").Group, import("./types").BaseSearchModelsState<import("./types").Group>>>>(appConfig: AppConfiguration, endpointMappings: EndpointMappings) => StartupResponse<TReduxState>;
package/lib/startup.js CHANGED
@@ -1,128 +1,128 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- var __importDefault = (this && this.__importDefault) || function (mod) {
22
- return (mod && mod.__esModule) ? mod : { "default": mod };
23
- };
24
- Object.defineProperty(exports, "__esModule", { value: true });
25
- exports.startup = void 0;
26
- var applicationinsights_web_1 = require("@microsoft/applicationinsights-web");
27
- var Sentry = __importStar(require("@sentry/react"));
28
- var tracing_1 = require("@sentry/tracing");
29
- var history_1 = require("history");
30
- var react_ga_1 = __importDefault(require("react-ga"));
31
- var configuration_1 = require("./constants/configuration");
32
- var configureStore_1 = __importDefault(require("./redux/configureStore"));
33
- var logger_1 = require("./utils/logger");
34
- var url_1 = require("./utils/url");
35
- /**
36
- * The main startup method for your app. Should be called before rendering your app or importing other scaffolding modules.
37
- *
38
- * Optional startup methods are available to provide additional configuration. Call these **before** `startup`. These methods can all be imported from `studiokit-scaffolding-js`.
39
- * * `redux/sagas/rootSaga`
40
- * * `setOtherDependentSagas` to add more sagas
41
- * * `redux/sagas/postLoginDataSaga`
42
- * * `setOnPostLogin` to load more data after login
43
- * * `redux/configureReducers`
44
- * * `updatePersistBlacklist` and `setOtherReducers` to add more reducers
45
- *
46
- * @template TReduxState The type of state to be stored in redux
47
- *
48
- * @param appConfig The static configuration for the application.
49
- * @param endpointMappings The mapping of redux models to api endpoints.
50
- *
51
- * @returns An object containing the created `history`, `store`, and `persistor` objects.
52
- */
53
- var startup = function (appConfig, endpointMappings) {
54
- // set initial config, enabling `getApiBaseUrl` and `getShardKey`
55
- configuration_1.setAppConfig(appConfig);
56
- // update API_BASE_URL with final value
57
- var apiBaseUrl = url_1.getApiBaseUrl(appConfig.TIER, appConfig.API_BASE_URL);
58
- appConfig.API_BASE_URL = apiBaseUrl;
59
- configuration_1.setEndpointMappings(endpointMappings);
60
- logger_1.setLogger(logger_1.createLogger());
61
- // History and Listener
62
- var history = history_1.createBrowserHistory();
63
- var locationListener = function (location, action) {
64
- // send pageview to Google Analytics
65
- if (appConfig.GOOGLE_ANALYTICS_TRACKING_ID) {
66
- react_ga_1.default.pageview(location.pathname);
67
- }
68
- // send pageview to Application Insights
69
- if (appInsights) {
70
- appInsights.trackPageView({ uri: location.pathname });
71
- }
72
- };
73
- history.listen(locationListener);
74
- // Sentry
75
- if (appConfig.SENTRY_DSN) {
76
- Sentry.init({
77
- dsn: appConfig.SENTRY_DSN,
78
- release: appConfig.VERSION,
79
- environment: appConfig.TIER,
80
- debug: appConfig.NODE_ENV !== 'production',
81
- // limit depth of data attached to breadcrumbs and contexts
82
- normalizeDepth: 15,
83
- beforeBreadcrumb: function (breadcrumb, hint) {
84
- // do not track console logs when running in development mode (locally)
85
- return breadcrumb.category === 'console' && appConfig.NODE_ENV !== 'production' ? null : breadcrumb;
86
- },
87
- // enable performance tracing
88
- integrations: [
89
- new tracing_1.Integrations.BrowserTracing({
90
- routingInstrumentation: Sentry.reactRouterV5Instrumentation(history)
91
- })
92
- ],
93
- // set a uniform sample rate
94
- tracesSampleRate: appConfig.SENTRY_TRACES_SAMPLE_RATE
95
- });
96
- }
97
- // Unhandled Errors
98
- window.onunhandledrejection = function (evt) {
99
- if (evt.reason.name === 'ChunkLoadError' || evt.reason.code === 'CSS_CHUNK_LOAD_FAILED') {
100
- window.alert("A new version of " + appConfig.APP_NAME + " is available. Your browser will now refresh. If you see this message again, please clear your browser cache and try again.");
101
- document.location.reload();
102
- }
103
- else {
104
- Sentry.captureException(evt.reason);
105
- }
106
- };
107
- // Google Analytics
108
- if (appConfig.GOOGLE_ANALYTICS_TRACKING_ID) {
109
- react_ga_1.default.initialize(appConfig.GOOGLE_ANALYTICS_TRACKING_ID);
110
- // track initial page
111
- react_ga_1.default.pageview(window.location.pathname);
112
- }
113
- // Application Insights
114
- var appInsights;
115
- if (appConfig.APP_INSIGHTS_KEY) {
116
- appInsights = new applicationinsights_web_1.ApplicationInsights({
117
- config: {
118
- instrumentationKey: appConfig.APP_INSIGHTS_KEY
119
- }
120
- });
121
- appInsights.loadAppInsights();
122
- }
123
- // Redux Store and Persistor
124
- var _a = configureStore_1.default(history), store = _a.store, persistor = _a.persistor;
125
- var response = { history: history, store: store, persistor: persistor };
126
- return response;
127
- };
128
- exports.startup = startup;
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.startup = void 0;
26
+ var applicationinsights_web_1 = require("@microsoft/applicationinsights-web");
27
+ var Sentry = __importStar(require("@sentry/react"));
28
+ var tracing_1 = require("@sentry/tracing");
29
+ var history_1 = require("history");
30
+ var react_ga_1 = __importDefault(require("react-ga"));
31
+ var configuration_1 = require("./constants/configuration");
32
+ var configureStore_1 = __importDefault(require("./redux/configureStore"));
33
+ var logger_1 = require("./utils/logger");
34
+ var url_1 = require("./utils/url");
35
+ /**
36
+ * The main startup method for your app. Should be called before rendering your app or importing other scaffolding modules.
37
+ *
38
+ * Optional startup methods are available to provide additional configuration. Call these **before** `startup`. These methods can all be imported from `studiokit-scaffolding-js`.
39
+ * * `redux/sagas/rootSaga`
40
+ * * `setOtherDependentSagas` to add more sagas
41
+ * * `redux/sagas/postLoginDataSaga`
42
+ * * `setOnPostLogin` to load more data after login
43
+ * * `redux/configureReducers`
44
+ * * `updatePersistBlacklist` and `setOtherReducers` to add more reducers
45
+ *
46
+ * @template TReduxState The type of state to be stored in redux
47
+ *
48
+ * @param appConfig The static configuration for the application.
49
+ * @param endpointMappings The mapping of redux models to api endpoints.
50
+ *
51
+ * @returns An object containing the created `history`, `store`, and `persistor` objects.
52
+ */
53
+ var startup = function (appConfig, endpointMappings) {
54
+ // set initial config, enabling `getApiBaseUrl` and `getShardKey`
55
+ configuration_1.setAppConfig(appConfig);
56
+ // update API_BASE_URL with final value
57
+ var apiBaseUrl = url_1.getApiBaseUrl(appConfig.TIER, appConfig.API_BASE_URL);
58
+ appConfig.API_BASE_URL = apiBaseUrl;
59
+ configuration_1.setEndpointMappings(endpointMappings);
60
+ logger_1.setLogger(logger_1.createLogger());
61
+ // History and Listener
62
+ var history = history_1.createBrowserHistory();
63
+ var locationListener = function (location, action) {
64
+ // send pageview to Google Analytics
65
+ if (appConfig.GOOGLE_ANALYTICS_TRACKING_ID) {
66
+ react_ga_1.default.pageview(location.pathname);
67
+ }
68
+ // send pageview to Application Insights
69
+ if (appInsights) {
70
+ appInsights.trackPageView({ uri: location.pathname });
71
+ }
72
+ };
73
+ history.listen(locationListener);
74
+ // Sentry
75
+ if (appConfig.SENTRY_DSN) {
76
+ Sentry.init({
77
+ dsn: appConfig.SENTRY_DSN,
78
+ release: appConfig.VERSION,
79
+ environment: appConfig.TIER,
80
+ debug: appConfig.NODE_ENV !== 'production',
81
+ // limit depth of data attached to breadcrumbs and contexts
82
+ normalizeDepth: 15,
83
+ beforeBreadcrumb: function (breadcrumb, hint) {
84
+ // do not track console logs when running in development mode (locally)
85
+ return breadcrumb.category === 'console' && appConfig.NODE_ENV !== 'production' ? null : breadcrumb;
86
+ },
87
+ // enable performance tracing
88
+ integrations: [
89
+ new tracing_1.Integrations.BrowserTracing({
90
+ routingInstrumentation: Sentry.reactRouterV5Instrumentation(history)
91
+ })
92
+ ],
93
+ // set a uniform sample rate
94
+ tracesSampleRate: appConfig.SENTRY_TRACES_SAMPLE_RATE
95
+ });
96
+ }
97
+ // Unhandled Errors
98
+ window.onunhandledrejection = function (evt) {
99
+ if (evt.reason.name === 'ChunkLoadError' || evt.reason.code === 'CSS_CHUNK_LOAD_FAILED') {
100
+ window.alert("A new version of " + appConfig.APP_NAME + " is available. Your browser will now refresh. If you see this message again, please clear your browser cache and try again.");
101
+ document.location.reload();
102
+ }
103
+ else {
104
+ Sentry.captureException(evt.reason);
105
+ }
106
+ };
107
+ // Google Analytics
108
+ if (appConfig.GOOGLE_ANALYTICS_TRACKING_ID) {
109
+ react_ga_1.default.initialize(appConfig.GOOGLE_ANALYTICS_TRACKING_ID);
110
+ // track initial page
111
+ react_ga_1.default.pageview(window.location.pathname);
112
+ }
113
+ // Application Insights
114
+ var appInsights;
115
+ if (appConfig.APP_INSIGHTS_KEY) {
116
+ appInsights = new applicationinsights_web_1.ApplicationInsights({
117
+ config: {
118
+ instrumentationKey: appConfig.APP_INSIGHTS_KEY
119
+ }
120
+ });
121
+ appInsights.loadAppInsights();
122
+ }
123
+ // Redux Store and Persistor
124
+ var _a = configureStore_1.default(history), store = _a.store, persistor = _a.persistor;
125
+ var response = { history: history, store: store, persistor: persistor };
126
+ return response;
127
+ };
128
+ exports.startup = startup;