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
@@ -1,52 +1,56 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isGroupEnded = exports.filterGroupsByEndDate = exports.getStartDate = exports.getEndDate = exports.getTermOrDatesUIText = exports.getTerm = void 0;
4
- var date_1 = require("./date");
5
- var getTerm = function (externalTerms, group) {
6
- if (!!group.externalTermId && Object.keys(externalTerms).length > 0) {
7
- var externalTerm = externalTerms[group.externalTermId];
8
- return externalTerm;
9
- }
10
- return null;
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isGroupEnded = exports.getTermOrDatesUIText = exports.getTerm = exports.getStartDate = exports.getEndDate = exports.filterGroupsByEndDate = void 0;
7
+ var _date = require("./date");
8
+ const getTerm = (externalTerms, group) => {
9
+ if (!!group.externalTermId && Object.keys(externalTerms).length > 0) {
10
+ const externalTerm = externalTerms[group.externalTermId];
11
+ return externalTerm;
12
+ }
13
+ return null;
11
14
  };
12
15
  exports.getTerm = getTerm;
13
- var getTermOrDatesUIText = function (externalTerms, group) {
14
- // linked term
15
- var externalTerm = exports.getTerm(externalTerms, group);
16
- if (externalTerm) {
17
- return externalTerm.name;
18
- }
19
- // group dates
20
- if (!!group.startDate && !!group.endDate) {
21
- return date_1.getFormattedNumberedDate(group.startDate) + " - " + date_1.getFormattedNumberedDate(group.endDate);
22
- }
23
- // no term or dates
24
- return 'N/A';
16
+ const getTermOrDatesUIText = (externalTerms, group) => {
17
+ // linked term
18
+ const externalTerm = getTerm(externalTerms, group);
19
+ if (externalTerm) {
20
+ return externalTerm.name;
21
+ }
22
+ // group dates
23
+ if (!!group.startDate && !!group.endDate) {
24
+ return `${(0, _date.getFormattedNumberedDate)(group.startDate)} - ${(0, _date.getFormattedNumberedDate)(group.endDate)}`;
25
+ }
26
+ // no term or dates
27
+ return 'N/A';
25
28
  };
26
29
  exports.getTermOrDatesUIText = getTermOrDatesUIText;
27
- var getEndDate = function (externalTerms, group) {
28
- var externalTerm = exports.getTerm(externalTerms, group);
29
- if (externalTerm) {
30
- return externalTerm.endDate;
31
- }
32
- return group.endDate;
30
+ const getEndDate = (externalTerms, group) => {
31
+ const externalTerm = getTerm(externalTerms, group);
32
+ if (externalTerm) {
33
+ return externalTerm.endDate;
34
+ }
35
+ return group.endDate;
33
36
  };
34
37
  exports.getEndDate = getEndDate;
35
- var getStartDate = function (externalTerms, group) {
36
- var externalTerm = exports.getTerm(externalTerms, group);
37
- if (externalTerm) {
38
- return externalTerm.startDate;
39
- }
40
- return group.startDate;
38
+ const getStartDate = (externalTerms, group) => {
39
+ const externalTerm = getTerm(externalTerms, group);
40
+ if (externalTerm) {
41
+ return externalTerm.startDate;
42
+ }
43
+ return group.startDate;
41
44
  };
42
45
  exports.getStartDate = getStartDate;
43
- var filterGroupsByEndDate = function (groups, externalTerms, filterFunction) {
44
- return groups.filter(function (g) { return !!g.id && !g.isDeleted && filterFunction(exports.getEndDate(externalTerms, g)); });
46
+ const filterGroupsByEndDate = (groups, externalTerms, filterFunction) => {
47
+ return groups.filter(g => !!g.id && !g.isDeleted && filterFunction(getEndDate(externalTerms, g)));
45
48
  };
46
49
  exports.filterGroupsByEndDate = filterGroupsByEndDate;
47
- var isGroupEnded = function (externalTerms, group) {
48
- var groupEndDateMoment = date_1.getLocalMomentFromUtc(exports.getEndDate(externalTerms, group));
49
- var localMoment = date_1.getLocalMomentFromUtc();
50
- return groupEndDateMoment <= localMoment;
50
+ const isGroupEnded = (externalTerms, group) => {
51
+ const groupEndDateMoment = (0, _date.getLocalMomentFromUtc)(getEndDate(externalTerms, group));
52
+ const localMoment = (0, _date.getLocalMomentFromUtc)();
53
+ return groupEndDateMoment <= localMoment;
51
54
  };
52
55
  exports.isGroupEnded = isGroupEnded;
56
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGF0ZSIsInJlcXVpcmUiLCJnZXRUZXJtIiwiZXh0ZXJuYWxUZXJtcyIsImdyb3VwIiwiZXh0ZXJuYWxUZXJtSWQiLCJPYmplY3QiLCJrZXlzIiwibGVuZ3RoIiwiZXh0ZXJuYWxUZXJtIiwiZXhwb3J0cyIsImdldFRlcm1PckRhdGVzVUlUZXh0IiwibmFtZSIsInN0YXJ0RGF0ZSIsImVuZERhdGUiLCJnZXRGb3JtYXR0ZWROdW1iZXJlZERhdGUiLCJnZXRFbmREYXRlIiwiZ2V0U3RhcnREYXRlIiwiZmlsdGVyR3JvdXBzQnlFbmREYXRlIiwiZ3JvdXBzIiwiZmlsdGVyRnVuY3Rpb24iLCJmaWx0ZXIiLCJnIiwiaWQiLCJpc0RlbGV0ZWQiLCJpc0dyb3VwRW5kZWQiLCJncm91cEVuZERhdGVNb21lbnQiLCJnZXRMb2NhbE1vbWVudEZyb21VdGMiLCJsb2NhbE1vbWVudCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9ncm91cERhdGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV4dGVybmFsVGVybSwgR3JvdXAsIE1vZGVsQ29sbGVjdGlvbiB9IGZyb20gJy4uL3R5cGVzJ1xyXG5pbXBvcnQgeyBnZXRGb3JtYXR0ZWROdW1iZXJlZERhdGUsIGdldExvY2FsTW9tZW50RnJvbVV0YyB9IGZyb20gJy4vZGF0ZSdcclxuXHJcbmV4cG9ydCBjb25zdCBnZXRUZXJtID0gKGV4dGVybmFsVGVybXM6IE1vZGVsQ29sbGVjdGlvbjxFeHRlcm5hbFRlcm0+LCBncm91cDogR3JvdXApID0+IHtcclxuXHRpZiAoISFncm91cC5leHRlcm5hbFRlcm1JZCAmJiBPYmplY3Qua2V5cyhleHRlcm5hbFRlcm1zKS5sZW5ndGggPiAwKSB7XHJcblx0XHRjb25zdCBleHRlcm5hbFRlcm0gPSBleHRlcm5hbFRlcm1zW2dyb3VwLmV4dGVybmFsVGVybUlkXVxyXG5cdFx0cmV0dXJuIGV4dGVybmFsVGVybVxyXG5cdH1cclxuXHRyZXR1cm4gbnVsbFxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgZ2V0VGVybU9yRGF0ZXNVSVRleHQgPSAoZXh0ZXJuYWxUZXJtczogTW9kZWxDb2xsZWN0aW9uPEV4dGVybmFsVGVybT4sIGdyb3VwOiBHcm91cCkgPT4ge1xyXG5cdC8vIGxpbmtlZCB0ZXJtXHJcblx0Y29uc3QgZXh0ZXJuYWxUZXJtID0gZ2V0VGVybShleHRlcm5hbFRlcm1zLCBncm91cClcclxuXHRpZiAoZXh0ZXJuYWxUZXJtKSB7XHJcblx0XHRyZXR1cm4gZXh0ZXJuYWxUZXJtLm5hbWVcclxuXHR9XHJcblx0Ly8gZ3JvdXAgZGF0ZXNcclxuXHRpZiAoISFncm91cC5zdGFydERhdGUgJiYgISFncm91cC5lbmREYXRlKSB7XHJcblx0XHRyZXR1cm4gYCR7Z2V0Rm9ybWF0dGVkTnVtYmVyZWREYXRlKGdyb3VwLnN0YXJ0RGF0ZSl9IC0gJHtnZXRGb3JtYXR0ZWROdW1iZXJlZERhdGUoZ3JvdXAuZW5kRGF0ZSl9YFxyXG5cdH1cclxuXHQvLyBubyB0ZXJtIG9yIGRhdGVzXHJcblx0cmV0dXJuICdOL0EnXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBnZXRFbmREYXRlID0gKGV4dGVybmFsVGVybXM6IE1vZGVsQ29sbGVjdGlvbjxFeHRlcm5hbFRlcm0+LCBncm91cDogR3JvdXApID0+IHtcclxuXHRjb25zdCBleHRlcm5hbFRlcm0gPSBnZXRUZXJtKGV4dGVybmFsVGVybXMsIGdyb3VwKVxyXG5cdGlmIChleHRlcm5hbFRlcm0pIHtcclxuXHRcdHJldHVybiBleHRlcm5hbFRlcm0uZW5kRGF0ZVxyXG5cdH1cclxuXHRyZXR1cm4gZ3JvdXAuZW5kRGF0ZSBhcyBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGdldFN0YXJ0RGF0ZSA9IChleHRlcm5hbFRlcm1zOiBNb2RlbENvbGxlY3Rpb248RXh0ZXJuYWxUZXJtPiwgZ3JvdXA6IEdyb3VwKSA9PiB7XHJcblx0Y29uc3QgZXh0ZXJuYWxUZXJtID0gZ2V0VGVybShleHRlcm5hbFRlcm1zLCBncm91cClcclxuXHRpZiAoZXh0ZXJuYWxUZXJtKSB7XHJcblx0XHRyZXR1cm4gZXh0ZXJuYWxUZXJtLnN0YXJ0RGF0ZVxyXG5cdH1cclxuXHRyZXR1cm4gZ3JvdXAuc3RhcnREYXRlIGFzIHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgZmlsdGVyR3JvdXBzQnlFbmREYXRlID0gKFxyXG5cdGdyb3VwczogR3JvdXBbXSxcclxuXHRleHRlcm5hbFRlcm1zOiBNb2RlbENvbGxlY3Rpb248RXh0ZXJuYWxUZXJtPixcclxuXHRmaWx0ZXJGdW5jdGlvbjogKGRhdGVUaW1lVXRjPzogc3RyaW5nLCBub3dVdGM/OiBzdHJpbmcpID0+IGJvb2xlYW5cclxuKSA9PiB7XHJcblx0cmV0dXJuIGdyb3Vwcy5maWx0ZXIoZyA9PiAhIWcuaWQgJiYgIWcuaXNEZWxldGVkICYmIGZpbHRlckZ1bmN0aW9uKGdldEVuZERhdGUoZXh0ZXJuYWxUZXJtcywgZykpKVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgaXNHcm91cEVuZGVkID0gKGV4dGVybmFsVGVybXM6IE1vZGVsQ29sbGVjdGlvbjxFeHRlcm5hbFRlcm0+LCBncm91cDogR3JvdXApID0+IHtcclxuXHRjb25zdCBncm91cEVuZERhdGVNb21lbnQgPSBnZXRMb2NhbE1vbWVudEZyb21VdGMoZ2V0RW5kRGF0ZShleHRlcm5hbFRlcm1zLCBncm91cCkpXHJcblx0Y29uc3QgbG9jYWxNb21lbnQgPSBnZXRMb2NhbE1vbWVudEZyb21VdGMoKVxyXG5cdHJldHVybiBncm91cEVuZERhdGVNb21lbnQgPD0gbG9jYWxNb21lbnRcclxufVxyXG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLElBQUFBLEtBQUEsR0FBQUMsT0FBQTtBQUVPLE1BQU1DLE9BQU8sR0FBR0EsQ0FBQ0MsYUFBNEMsRUFBRUMsS0FBWSxLQUFLO0VBQ3RGLElBQUksQ0FBQyxDQUFDQSxLQUFLLENBQUNDLGNBQWMsSUFBSUMsTUFBTSxDQUFDQyxJQUFJLENBQUNKLGFBQWEsQ0FBQyxDQUFDSyxNQUFNLEdBQUcs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
@@ -1,43 +1,43 @@
1
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.filterSyncedGroupUsers = exports.filterManualGroupUsers = exports.groupsAsAnythingButLearner = exports.groupsAsGrader = exports.groupsAsOwner = exports.groupsAsLearner = void 0;
7
- var lodash_1 = __importDefault(require("lodash"));
8
- var baseRole_1 = require("../constants/baseRole");
9
- var model_1 = require("./model");
10
- var userRole_1 = require("./userRole");
11
- var groupsAsLearner = function (groups) {
12
- return filterGroupsByRole(groups, baseRole_1.BASE_ROLE.GROUP_LEARNER);
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.groupsAsOwner = exports.groupsAsLearner = exports.groupsAsGrader = exports.groupsAsAnythingButLearner = exports.filterSyncedGroupUsers = exports.filterManualGroupUsers = void 0;
8
+ var _lodash = _interopRequireDefault(require("lodash"));
9
+ var _baseRole = require("../constants/baseRole");
10
+ var _model = require("./model");
11
+ var _userRole = require("./userRole");
12
+ const groupsAsLearner = groups => {
13
+ return filterGroupsByRole(groups, _baseRole.BASE_ROLE.GROUP_LEARNER);
13
14
  };
14
15
  exports.groupsAsLearner = groupsAsLearner;
15
- var groupsAsOwner = function (groups) {
16
- return filterGroupsByRole(groups, baseRole_1.BASE_ROLE.GROUP_OWNER);
16
+ const groupsAsOwner = groups => {
17
+ return filterGroupsByRole(groups, _baseRole.BASE_ROLE.GROUP_OWNER);
17
18
  };
18
19
  exports.groupsAsOwner = groupsAsOwner;
19
- var groupsAsGrader = function (groups) {
20
- return filterGroupsByRole(groups, baseRole_1.BASE_ROLE.GROUP_GRADER);
20
+ const groupsAsGrader = groups => {
21
+ return filterGroupsByRole(groups, _baseRole.BASE_ROLE.GROUP_GRADER);
21
22
  };
22
23
  exports.groupsAsGrader = groupsAsGrader;
23
- var groupsAsAnythingButLearner = function (groups) {
24
- return filterGroupsByRoleOtherThanRole(groups, baseRole_1.BASE_ROLE.GROUP_LEARNER);
24
+ const groupsAsAnythingButLearner = groups => {
25
+ return filterGroupsByRoleOtherThanRole(groups, _baseRole.BASE_ROLE.GROUP_LEARNER);
25
26
  };
26
27
  exports.groupsAsAnythingButLearner = groupsAsAnythingButLearner;
27
- var groupHasRole = function (value, key) {
28
- return key !== '_metadata' && !!value && !!value.id && !!value.roles;
28
+ const groupHasRole = (value, key) => key !== '_metadata' && !!value && !!value.id && !!value.roles;
29
+ const filterGroupsByRole = (groups, role) => {
30
+ return _lodash.default.values(_lodash.default.omitBy((0, _model.getModelArray)(groups), (value, key) => !groupHasRole(value, key) || !_lodash.default.includes(value.roles, role)));
29
31
  };
30
- var filterGroupsByRole = function (groups, role) {
31
- return lodash_1.default.values(lodash_1.default.omitBy(model_1.getModelArray(groups), function (value, key) { return !groupHasRole(value, key) || !lodash_1.default.includes(value.roles, role); }));
32
+ const filterGroupsByRoleOtherThanRole = (groups, role) => {
33
+ return _lodash.default.values(_lodash.default.omitBy((0, _model.getModelArray)(groups), (value, key) => !groupHasRole(value, key) || _lodash.default.every(value.roles, r => r === role)));
32
34
  };
33
- var filterGroupsByRoleOtherThanRole = function (groups, role) {
34
- return lodash_1.default.values(lodash_1.default.omitBy(model_1.getModelArray(groups), function (value, key) { return !groupHasRole(value, key) || lodash_1.default.every(value.roles, function (r) { return r === role; }); }));
35
- };
36
- var filterManualGroupUsers = function (groupUsers) {
37
- return groupUsers.filter(function (groupUser) { return !groupUser.roles.some(function (r) { return userRole_1.isExternal(r); }); });
35
+ const filterManualGroupUsers = groupUsers => {
36
+ return groupUsers.filter(groupUser => !groupUser.roles.some(r => (0, _userRole.isExternal)(r)));
38
37
  };
39
38
  exports.filterManualGroupUsers = filterManualGroupUsers;
40
- var filterSyncedGroupUsers = function (groupUsers) {
41
- return groupUsers.filter(function (groupUser) { return groupUser.roles.some(function (r) { return userRole_1.isExternal(r); }); });
39
+ const filterSyncedGroupUsers = groupUsers => {
40
+ return groupUsers.filter(groupUser => groupUser.roles.some(r => (0, _userRole.isExternal)(r)));
42
41
  };
43
42
  exports.filterSyncedGroupUsers = filterSyncedGroupUsers;
43
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfYmFzZVJvbGUiLCJfbW9kZWwiLCJfdXNlclJvbGUiLCJncm91cHNBc0xlYXJuZXIiLCJncm91cHMiLCJmaWx0ZXJHcm91cHNCeVJvbGUiLCJCQVNFX1JPTEUiLCJHUk9VUF9MRUFSTkVSIiwiZXhwb3J0cyIsImdyb3Vwc0FzT3duZXIiLCJHUk9VUF9PV05FUiIsImdyb3Vwc0FzR3JhZGVyIiwiR1JPVVBfR1JBREVSIiwiZ3JvdXBzQXNBbnl0aGluZ0J1dExlYXJuZXIiLCJmaWx0ZXJHcm91cHNCeVJvbGVPdGhlclRoYW5Sb2xlIiwiZ3JvdXBIYXNSb2xlIiwidmFsdWUiLCJrZXkiLCJpZCIsInJvbGVzIiwicm9sZSIsIl8iLCJ2YWx1ZXMiLCJvbWl0QnkiLCJnZXRNb2RlbEFycmF5IiwiaW5jbHVkZXMiLCJldmVyeSIsInIiLCJmaWx0ZXJNYW51YWxHcm91cFVzZXJzIiwiZ3JvdXBVc2VycyIsImZpbHRlciIsImdyb3VwVXNlciIsInNvbWUiLCJpc0V4dGVybmFsIiwiZmlsdGVyU3luY2VkR3JvdXBVc2VycyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9ncm91cFJvbGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCdcclxuaW1wb3J0IHsgQkFTRV9ST0xFIH0gZnJvbSAnLi4vY29uc3RhbnRzL2Jhc2VSb2xlJ1xyXG5pbXBvcnQgeyBHcm91cCwgTWV0YWRhdGEsIE1vZGVsQ29sbGVjdGlvbiwgVXNlcldpdGhSb2xlcyB9IGZyb20gJy4uL3R5cGVzJ1xyXG5pbXBvcnQgeyBnZXRNb2RlbEFycmF5IH0gZnJvbSAnLi9tb2RlbCdcclxuaW1wb3J0IHsgaXNFeHRlcm5hbCB9IGZyb20gJy4vdXNlclJvbGUnXHJcblxyXG5leHBvcnQgY29uc3QgZ3JvdXBzQXNMZWFybmVyID0gKGdyb3VwczogTW9kZWxDb2xsZWN0aW9uPEdyb3VwPikgPT4ge1xyXG5cdHJldHVybiBmaWx0ZXJHcm91cHNCeVJvbGUoZ3JvdXBzLCBCQVNFX1JPTEUuR1JPVVBfTEVBUk5FUilcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGdyb3Vwc0FzT3duZXIgPSAoZ3JvdXBzOiBNb2RlbENvbGxlY3Rpb248R3JvdXA+KSA9PiB7XHJcblx0cmV0dXJuIGZpbHRlckdyb3Vwc0J5Um9sZShncm91cHMsIEJBU0VfUk9MRS5HUk9VUF9PV05FUilcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGdyb3Vwc0FzR3JhZGVyID0gKGdyb3VwczogTW9kZWxDb2xsZWN0aW9uPEdyb3VwPikgPT4ge1xyXG5cdHJldHVybiBmaWx0ZXJHcm91cHNCeVJvbGUoZ3JvdXBzLCBCQVNFX1JPTEUuR1JPVVBfR1JBREVSKVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgZ3JvdXBzQXNBbnl0aGluZ0J1dExlYXJuZXIgPSAoZ3JvdXBzOiBNb2RlbENvbGxlY3Rpb248R3JvdXA+KSA9PiB7XHJcblx0cmV0dXJuIGZpbHRlckdyb3Vwc0J5Um9sZU90aGVyVGhhblJvbGUoZ3JvdXBzLCBCQVNFX1JPTEUuR1JPVVBfTEVBUk5FUilcclxufVxyXG5cclxuY29uc3QgZ3JvdXBIYXNSb2xlID0gKHZhbHVlOiBHcm91cCB8IE1ldGFkYXRhIHwgbnVsbCB8IHVuZGVmaW5lZCwga2V5OiBzdHJpbmcpID0+XHJcblx0a2V5ICE9PSAnX21ldGFkYXRhJyAmJiAhIXZhbHVlICYmICEhKHZhbHVlIGFzIEdyb3VwKS5pZCAmJiAhISh2YWx1ZSBhcyBHcm91cCkucm9sZXNcclxuXHJcbmNvbnN0IGZpbHRlckdyb3Vwc0J5Um9sZSA9IChncm91cHM6IE1vZGVsQ29sbGVjdGlvbjxHcm91cD4sIHJvbGU6IHN0cmluZykgPT4ge1xyXG5cdHJldHVybiBfLnZhbHVlcyhcclxuXHRcdF8ub21pdEJ5KGdldE1vZGVsQXJyYXkoZ3JvdXBzKSwgKHZhbHVlLCBrZXkpID0+ICFncm91cEhhc1JvbGUodmFsdWUsIGtleSkgfHwgIV8uaW5jbHVkZXModmFsdWUucm9sZXMsIHJvbGUpKVxyXG5cdClcclxufVxyXG5cclxuY29uc3QgZmlsdGVyR3JvdXBzQnlSb2xlT3RoZXJUaGFuUm9sZSA9IChncm91cHM6IE1vZGVsQ29sbGVjdGlvbjxHcm91cD4sIHJvbGU6IHN0cmluZykgPT4ge1xyXG5cdHJldHVybiBfLnZhbHVlcyhcclxuXHRcdF8ub21pdEJ5KFxyXG5cdFx0XHRnZXRNb2RlbEFycmF5KGdyb3VwcyksXHJcblx0XHRcdCh2YWx1ZSwga2V5KSA9PiAhZ3JvdXBIYXNSb2xlKHZhbHVlLCBrZXkpIHx8IF8uZXZlcnkodmFsdWUucm9sZXMsIHIgPT4gciA9PT0gcm9sZSlcclxuXHRcdClcclxuXHQpXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBmaWx0ZXJNYW51YWxHcm91cFVzZXJzID0gKGdyb3VwVXNlcnM6IFVzZXJXaXRoUm9sZXNbXSkgPT4ge1xyXG5cdHJldHVybiBncm91cFVzZXJzLmZpbHRlcihncm91cFVzZXIgPT4gIWdyb3VwVXNlci5yb2xlcy5zb21lKHIgPT4gaXNFeHRlcm5hbChyKSkpXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBmaWx0ZXJTeW5jZWRHcm91cFVzZXJzID0gKGdyb3VwVXNlcnM6IFVzZXJXaXRoUm9sZXNbXSkgPT4ge1xyXG5cdHJldHVybiBncm91cFVzZXJzLmZpbHRlcihncm91cFVzZXIgPT4gZ3JvdXBVc2VyLnJvbGVzLnNvbWUociA9PiBpc0V4dGVybmFsKHIpKSlcclxufVxyXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxPQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxTQUFBLEdBQUFELE9BQUE7QUFFQSxJQUFBRSxNQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxTQUFBLEdBQUFILE9BQUE7QUFFTyxNQUFNSSxlQUFlLEdBQUlDLE1BQThCLElBQUs7RUFDbEUsT0FBT0Msa0JBQWtCLENBQUNELE1BQU0sRUFBRUUsbUJBQVMsQ0FBQ0MsYUFBYSxDQUFDO0FBQzNELENBQUM7QUFBQUMsT0FBQSxDQUFBTCxlQUFBLEdBQUFBLGVBQUE7QUFFTSxNQUFNTSxhQUFhLEdBQUlMLE1BQThCLElBQUs7RUFDaEUsT0FBT0Msa0JBQWtCLENBQUNELE1BQU0sRUFBRUUsbUJBQVMsQ0FBQ0ksV0FBVyxDQUFDO0FBQ3pELENBQUM7QUFBQUYsT0FBQSxDQUFBQyxhQUFBLEdBQUFBLGFBQUE7QUFFTSxNQUFNRSxjQUFjLEdBQUlQLE1BQThCLElBQUs7RUFDakUsT0FBT0Msa0JBQWtCLENBQUNELE1BQU0sRUFBRUUsbUJBQVMsQ0FBQ00sWUFBWSxDQUFDO0FBQzFELENBQUM7QUFBQUosT0FBQSxDQUFBRyxjQUFBLEdBQUFBLGNBQUE7QUFFTSxNQUFNRSwwQkFBMEIsR0FBSVQsTUFBOEIsSUFBSztFQUM3RSxPQUFPVSwrQkFBK0IsQ0FBQ1YsTUFBTSxFQUFFRSxtQkFBUyxDQUFDQyxhQUFhLENBQUM7QUFDeEUsQ0FBQztBQUFBQyxPQUFBLENBQUFLLDBCQUFBLEdBQUFBLDBCQUFBO0FBRUQsTUFBTUUsWUFBWSxHQUFHQSxDQUFDQyxLQUEwQyxFQUFFQyxHQUFXLEtBQzVFQSxHQUFHLEtBQUssV0FBVyxJQUFJLENBQUMsQ0FBQ0QsS0FBSyxJQUFJLENBQUMsQ0FBRUEsS0FBSyxDQUFXRSxFQUFFLElBQUksQ0FBQyxDQUFFRixLQUFLLENBQVdHLEtBQUs7QUFFcEYsTUFBTWQsa0JBQWtCLEdBQUdBLENBQUNELE1BQThCLEVBQUVnQixJQUFZLEtBQUs7RUFDNUUsT0FBT0MsZUFBQyxDQUFDQyxNQUFNLENBQ2RELGVBQUMsQ0FBQ0UsTUFBTSxDQUFDLElBQUFDLG9CQUFhLEVBQUNwQixNQUFNLENBQUMsRUFBRSxDQUFDWSxLQUFLLEVBQUVDLEdBQUcsS0FBSyxDQUFDRixZQUFZLENBQUNDLEtBQUssRUFBRUMsR0FBRyxDQUFDLElBQUksQ0FBQ0ksZUFBQyxDQUFDSSxRQUFRLENBQUNULEtBQUssQ0FBQ0csS0FBSyxFQUFFQyxJQUFJLENBQUMsQ0FDNUcsQ0FBQztBQUNGLENBQUM7QUFFRCxNQUFNTiwrQkFBK0IsR0FBR0EsQ0FBQ1YsTUFBOEIsRUFBRWdCLElBQVksS0FBSztFQUN6RixPQUFPQyxlQUFDLENBQUNDLE1BQU0sQ0FDZEQsZUFBQyxDQUFDRSxNQUFNLENBQ1AsSUFBQUMsb0JBQWEsRUFBQ3BCLE1BQU0sQ0FBQyxFQUNyQixDQUFDWSxLQUFLLEVBQUVDLEdBQUcsS0FBSyxDQUFDRixZQUFZLENBQUNDLEtBQUssRUFBRUMsR0FBRyxDQUFDLElBQUlJLGVBQUMsQ0FBQ0ssS0FBSyxDQUFDVixLQUFLLENBQUNHLEtBQUssRUFBRVEsQ0FBQyxJQUFJQSxDQUFDLEtBQUtQLElBQUksQ0FDbEYsQ0FDRCxDQUFDO0FBQ0YsQ0FBQztBQUVNLE1BQU1RLHNCQUFzQixHQUFJQyxVQUEyQixJQUFLO0VBQ3RFLE9BQU9BLFVBQVUsQ0FBQ0MsTUFBTSxDQUFDQyxTQUFTLElBQUksQ0FBQ0EsU0FBUyxDQUFDWixLQUFLLENBQUNhLElBQUksQ0FBQ0wsQ0FBQyxJQUFJLElBQUFNLG9CQUFVLEVBQUNOLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDakYsQ0FBQztBQUFBbkIsT0FBQSxDQUFBb0Isc0JBQUEsR0FBQUEsc0JBQUE7QUFFTSxNQUFNTSxzQkFBc0IsR0FBSUwsVUFBMkIsSUFBSztFQUN0RSxPQUFPQSxVQUFVLENBQUNDLE1BQU0sQ0FBQ0MsU0FBUyxJQUFJQSxTQUFTLENBQUNaLEtBQUssQ0FBQ2EsSUFBSSxDQUFDTCxDQUFDLElBQUksSUFBQU0sb0JBQVUsRUFBQ04sQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNoRixDQUFDO0FBQUFuQixPQUFBLENBQUEwQixzQkFBQSxHQUFBQSxzQkFBQSIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,16 +1,20 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
3
6
  exports.getLockDownBrowserInfo = void 0;
4
- var lockDownBrowser_1 = require("../constants/lockDownBrowser");
5
- var cookies_1 = require("./cookies");
6
- var getLockDownBrowserInfo = function () {
7
- var cookies = cookies_1.getCookies();
8
- return {
9
- isClientLockDownBrowser: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.CLIENT_IS_LOCK_DOWN_BROWSER] === lockDownBrowser_1.LOCKDOWN_BROWSER_TRUE,
10
- buildId: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.BUILD_ID],
11
- buildDateWindows: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.BUILD_DATE_WINDOWS],
12
- buildDateMac: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.BUILD_DATE_MAC],
13
- buildDateIpad: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.BUILD_DATE_IPAD]
14
- };
7
+ var _lockDownBrowser = require("../constants/lockDownBrowser");
8
+ var _cookies = require("./cookies");
9
+ const getLockDownBrowserInfo = () => {
10
+ const cookies = (0, _cookies.getCookies)();
11
+ return {
12
+ isClientLockDownBrowser: cookies[_lockDownBrowser.LOCKDOWN_BROWSER_KEY.CLIENT_IS_LOCK_DOWN_BROWSER] === _lockDownBrowser.LOCKDOWN_BROWSER_TRUE,
13
+ buildId: cookies[_lockDownBrowser.LOCKDOWN_BROWSER_KEY.BUILD_ID],
14
+ buildDateWindows: cookies[_lockDownBrowser.LOCKDOWN_BROWSER_KEY.BUILD_DATE_WINDOWS],
15
+ buildDateMac: cookies[_lockDownBrowser.LOCKDOWN_BROWSER_KEY.BUILD_DATE_MAC],
16
+ buildDateIpad: cookies[_lockDownBrowser.LOCKDOWN_BROWSER_KEY.BUILD_DATE_IPAD]
17
+ };
15
18
  };
16
19
  exports.getLockDownBrowserInfo = getLockDownBrowserInfo;
20
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9ja0Rvd25Ccm93c2VyIiwicmVxdWlyZSIsIl9jb29raWVzIiwiZ2V0TG9ja0Rvd25Ccm93c2VySW5mbyIsImNvb2tpZXMiLCJnZXRDb29raWVzIiwiaXNDbGllbnRMb2NrRG93bkJyb3dzZXIiLCJMT0NLRE9XTl9CUk9XU0VSX0tFWSIsIkNMSUVOVF9JU19MT0NLX0RPV05fQlJPV1NFUiIsIkxPQ0tET1dOX0JST1dTRVJfVFJVRSIsImJ1aWxkSWQiLCJCVUlMRF9JRCIsImJ1aWxkRGF0ZVdpbmRvd3MiLCJCVUlMRF9EQVRFX1dJTkRPV1MiLCJidWlsZERhdGVNYWMiLCJCVUlMRF9EQVRFX01BQyIsImJ1aWxkRGF0ZUlwYWQiLCJCVUlMRF9EQVRFX0lQQUQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2xvY2tEb3duQnJvd3Nlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMT0NLRE9XTl9CUk9XU0VSX0tFWSwgTE9DS0RPV05fQlJPV1NFUl9UUlVFIH0gZnJvbSAnLi4vY29uc3RhbnRzL2xvY2tEb3duQnJvd3NlcidcclxuaW1wb3J0IHsgZ2V0Q29va2llcyB9IGZyb20gJy4vY29va2llcydcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTG9ja0Rvd25Ccm93c2VySW5mbyB7XHJcblx0aXNDbGllbnRMb2NrRG93bkJyb3dzZXI6IGJvb2xlYW5cclxuXHRidWlsZElkPzogc3RyaW5nXHJcblx0YnVpbGREYXRlV2luZG93cz86IHN0cmluZ1xyXG5cdGJ1aWxkRGF0ZU1hYz86IHN0cmluZ1xyXG5cdGJ1aWxkRGF0ZUlwYWQ/OiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGdldExvY2tEb3duQnJvd3NlckluZm8gPSAoKTogTG9ja0Rvd25Ccm93c2VySW5mbyA9PiB7XHJcblx0Y29uc3QgY29va2llcyA9IGdldENvb2tpZXMoKVxyXG5cdHJldHVybiB7XHJcblx0XHRpc0NsaWVudExvY2tEb3duQnJvd3NlcjogY29va2llc1tMT0NLRE9XTl9CUk9XU0VSX0tFWS5DTElFTlRfSVNfTE9DS19ET1dOX0JST1dTRVJdID09PSBMT0NLRE9XTl9CUk9XU0VSX1RSVUUsXHJcblx0XHRidWlsZElkOiBjb29raWVzW0xPQ0tET1dOX0JST1dTRVJfS0VZLkJVSUxEX0lEXSxcclxuXHRcdGJ1aWxkRGF0ZVdpbmRvd3M6IGNvb2tpZXNbTE9DS0RPV05fQlJPV1NFUl9LRVkuQlVJTERfREFURV9XSU5ET1dTXSxcclxuXHRcdGJ1aWxkRGF0ZU1hYzogY29va2llc1tMT0NLRE9XTl9CUk9XU0VSX0tFWS5CVUlMRF9EQVRFX01BQ10sXHJcblx0XHRidWlsZERhdGVJcGFkOiBjb29raWVzW0xPQ0tET1dOX0JST1dTRVJfS0VZLkJVSUxEX0RBVEVfSVBBRF1cclxuXHR9XHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxnQkFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsUUFBQSxHQUFBRCxPQUFBO0FBVU8sTUFBTUUsc0JBQXNCLEdBQUdBLENBQUEsS0FBMkI7RUFDaEUsTUFBTUMsT0FBTyxHQUFHLElBQUFDLG1CQUFVLEVBQUMsQ0FBQztFQUM1QixPQUFPO0lBQ05DLHVCQUF1QixFQUFFRixPQUFPLENBQUNHLHFDQUFvQixDQUFDQywyQkFBMkIsQ0FBQyxLQUFLQyxzQ0FBcUI7SUFDNUdDLE9BQU8sRUFBRU4sT0FBTyxDQUFDRyxxQ0FBb0IsQ0FBQ0ksUUFBUSxDQUFDO0lBQy9DQyxnQkFBZ0IsRUFBRVIsT0FBTyxDQUFDRyxxQ0FBb0IsQ0FBQ00sa0JBQWtCLENBQUM7SUFDbEVDLFlBQVksRUFBRVYsT0FBTyxDQUFDRyxxQ0FBb0IsQ0FBQ1EsY0FBYyxDQUFDO0lBQzFEQyxhQUFhLEVBQUVaLE9BQU8sQ0FBQ0cscUNBQW9CLENBQUNVLGVBQWU7RUFDNUQsQ0FBQztBQUNGLENBQUM7QUFBQUMsT0FBQSxDQUFBZixzQkFBQSxHQUFBQSxzQkFBQSIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,34 +1,39 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getLogger = exports.setLogger = exports.createLogger = exports.dummyLogger = void 0;
4
- var configuration_1 = require("../constants/configuration");
5
- var logger;
6
- var falseLog = function () {
7
- return;
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createLogger = createLogger;
7
+ exports.dummyLogger = void 0;
8
+ exports.getLogger = getLogger;
9
+ exports.setLogger = setLogger;
10
+ var _configuration = require("../constants/configuration");
11
+ let logger;
12
+ const falseLog = () => {
13
+ return;
8
14
  };
9
- exports.dummyLogger = {
10
- debug: falseLog,
11
- info: falseLog,
12
- warn: falseLog,
13
- error: falseLog
15
+ const dummyLogger = exports.dummyLogger = {
16
+ debug: falseLog,
17
+ info: falseLog,
18
+ warn: falseLog,
19
+ error: falseLog
14
20
  };
15
21
  function createLogger() {
16
- if (configuration_1.getAppConfig().NODE_ENV === 'production' || !window.console || !console) {
17
- return exports.dummyLogger;
18
- }
19
- return {
20
- debug: console.debug,
21
- info: console.info,
22
- warn: console.warn,
23
- error: console.error
24
- };
22
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
23
+ if ((0, _configuration.getAppConfig)().NODE_ENV === 'production' || !window.console || !console) {
24
+ return dummyLogger;
25
+ }
26
+ return {
27
+ debug: console.debug,
28
+ info: console.info,
29
+ warn: console.warn,
30
+ error: console.error
31
+ };
25
32
  }
26
- exports.createLogger = createLogger;
27
33
  function setLogger(value) {
28
- logger = value;
34
+ logger = value;
29
35
  }
30
- exports.setLogger = setLogger;
31
36
  function getLogger() {
32
- return logger;
37
+ return logger;
33
38
  }
34
- exports.getLogger = getLogger;
39
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29uZmlndXJhdGlvbiIsInJlcXVpcmUiLCJsb2dnZXIiLCJmYWxzZUxvZyIsImR1bW15TG9nZ2VyIiwiZXhwb3J0cyIsImRlYnVnIiwiaW5mbyIsIndhcm4iLCJlcnJvciIsImNyZWF0ZUxvZ2dlciIsImdldEFwcENvbmZpZyIsIk5PREVfRU5WIiwid2luZG93IiwiY29uc29sZSIsInNldExvZ2dlciIsInZhbHVlIiwiZ2V0TG9nZ2VyIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2xvZ2dlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRBcHBDb25maWcgfSBmcm9tICcuLi9jb25zdGFudHMvY29uZmlndXJhdGlvbidcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTG9nZ2VyIHtcclxuXHRkZWJ1ZzogKG1lc3NhZ2U/OiBhbnksIC4uLm9wdGlvbmFsUGFyYW1zOiBhbnlbXSkgPT4gdm9pZFxyXG5cdGluZm86IChtZXNzYWdlPzogYW55LCAuLi5vcHRpb25hbFBhcmFtczogYW55W10pID0+IHZvaWRcclxuXHR3YXJuOiAobWVzc2FnZT86IGFueSwgLi4ub3B0aW9uYWxQYXJhbXM6IGFueVtdKSA9PiB2b2lkXHJcblx0ZXJyb3I6IChtZXNzYWdlPzogYW55LCAuLi5vcHRpb25hbFBhcmFtczogYW55W10pID0+IHZvaWRcclxufVxyXG5cclxubGV0IGxvZ2dlcjogTG9nZ2VyXHJcblxyXG5jb25zdCBmYWxzZUxvZyA9ICgpID0+IHtcclxuXHRyZXR1cm5cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGR1bW15TG9nZ2VyOiBMb2dnZXIgPSB7XHJcblx0ZGVidWc6IGZhbHNlTG9nLFxyXG5cdGluZm86IGZhbHNlTG9nLFxyXG5cdHdhcm46IGZhbHNlTG9nLFxyXG5cdGVycm9yOiBmYWxzZUxvZ1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTG9nZ2VyKCk6IExvZ2dlciB7XHJcblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bm5lY2Vzc2FyeS1jb25kaXRpb25cclxuXHRpZiAoZ2V0QXBwQ29uZmlnKCkuTk9ERV9FTlYgPT09ICdwcm9kdWN0aW9uJyB8fCAhd2luZG93LmNvbnNvbGUgfHwgIWNvbnNvbGUpIHtcclxuXHRcdHJldHVybiBkdW1teUxvZ2dlclxyXG5cdH1cclxuXHRyZXR1cm4ge1xyXG5cdFx0ZGVidWc6IGNvbnNvbGUuZGVidWcsXHJcblx0XHRpbmZvOiBjb25zb2xlLmluZm8sXHJcblx0XHR3YXJuOiBjb25zb2xlLndhcm4sXHJcblx0XHRlcnJvcjogY29uc29sZS5lcnJvclxyXG5cdH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldExvZ2dlcih2YWx1ZTogTG9nZ2VyKSB7XHJcblx0bG9nZ2VyID0gdmFsdWVcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldExvZ2dlcigpIHtcclxuXHRyZXR1cm4gbG9nZ2VyXHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxJQUFBQSxjQUFBLEdBQUFDLE9BQUE7QUFTQSxJQUFJQyxNQUFjO0FBRWxCLE1BQU1DLFFBQVEsR0FBR0EsQ0FBQSxLQUFNO0VBQ3RCO0FBQ0QsQ0FBQztBQUVNLE1BQU1DLFdBQW1CLEdBQUFDLE9BQUEsQ0FBQUQsV0FBQSxHQUFHO0VBQ2xDRSxLQUFLLEVBQUVILFFBQVE7RUFDZkksSUFBSSxFQUFFSixRQUFRO0VBQ2RLLElBQUksRUFBRUwsUUFBUTtFQUNkTSxLQUFLLEVBQUVOO0FBQ1IsQ0FBQztBQUVNLFNBQVNPLFlBQVlBLENBQUEsRUFBVztFQUN0QztFQUNBLElBQUksSUFBQUMsMkJBQVksRUFBQyxDQUFDLENBQUNDLFFBQVEsS0FBSyxZQUFZLElBQUksQ0FBQ0MsTUFBTSxDQUFDQyxPQUFPLElBQUksQ0FBQ0EsT0FBTyxFQUFFO0lBQzVFLE9BQU9WLFdBQVc7RUFDbkI7RUFDQSxPQUFPO0lBQ05FLEtBQUssRUFBRVEsT0FBTyxDQUFDUixLQUFLO0lBQ3BCQyxJQUFJLEVBQUVPLE9BQU8sQ0FBQ1AsSUFBSTtJQUNsQkMsSUFBSSxFQUFFTSxPQUFPLENBQUNOLElBQUk7SUFDbEJDLEtBQUssRUFBRUssT0FBTyxDQUFDTDtFQUNoQixDQUFDO0FBQ0Y7QUFFTyxTQUFTTSxTQUFTQSxDQUFDQyxLQUFhLEVBQUU7RUFDeENkLE1BQU0sR0FBR2MsS0FBSztBQUNmO0FBRU8sU0FBU0MsU0FBU0EsQ0FBQSxFQUFHO0VBQzNCLE9BQU9mLE1BQU07QUFDZCIsImlnbm9yZUxpc3QiOltdfQ==
package/lib/utils/lti.js CHANGED
@@ -1,9 +1,14 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isBasicLaunch = exports.isInsideIFrame = void 0;
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isInsideIFrame = exports.isBasicLaunch = void 0;
4
7
  // Check if we are inside an iframe
5
- var isInsideIFrame = function () { return window !== window.parent; };
6
- exports.isInsideIFrame = isInsideIFrame;
8
+ const isInsideIFrame = () => window !== window.parent;
9
+
7
10
  // Check whether this is a regular launch or a Deep Link launch
8
- var isBasicLaunch = function (ltiLaunch) { return !ltiLaunch.deepLinkingReturnUrl; };
11
+ exports.isInsideIFrame = isInsideIFrame;
12
+ const isBasicLaunch = ltiLaunch => !ltiLaunch.deepLinkingReturnUrl;
9
13
  exports.isBasicLaunch = isBasicLaunch;
14
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpc0luc2lkZUlGcmFtZSIsIndpbmRvdyIsInBhcmVudCIsImV4cG9ydHMiLCJpc0Jhc2ljTGF1bmNoIiwibHRpTGF1bmNoIiwiZGVlcExpbmtpbmdSZXR1cm5VcmwiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvbHRpLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEx0aUxhdW5jaCB9IGZyb20gJy4uL3R5cGVzJ1xyXG5cclxuLy8gQ2hlY2sgaWYgd2UgYXJlIGluc2lkZSBhbiBpZnJhbWVcclxuZXhwb3J0IGNvbnN0IGlzSW5zaWRlSUZyYW1lID0gKCkgPT4gd2luZG93ICE9PSB3aW5kb3cucGFyZW50XHJcblxyXG4vLyBDaGVjayB3aGV0aGVyIHRoaXMgaXMgYSByZWd1bGFyIGxhdW5jaCBvciBhIERlZXAgTGluayBsYXVuY2hcclxuZXhwb3J0IGNvbnN0IGlzQmFzaWNMYXVuY2ggPSAobHRpTGF1bmNoOiBMdGlMYXVuY2gpID0+ICFsdGlMYXVuY2guZGVlcExpbmtpbmdSZXR1cm5VcmxcclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFQTtBQUNPLE1BQU1BLGNBQWMsR0FBR0EsQ0FBQSxLQUFNQyxNQUFNLEtBQUtBLE1BQU0sQ0FBQ0MsTUFBTTs7QUFFNUQ7QUFBQUMsT0FBQSxDQUFBSCxjQUFBLEdBQUFBLGNBQUE7QUFDTyxNQUFNSSxhQUFhLEdBQUlDLFNBQW9CLElBQUssQ0FBQ0EsU0FBUyxDQUFDQyxvQkFBb0I7QUFBQUgsT0FBQSxDQUFBQyxhQUFBLEdBQUFBLGFBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -1,8 +1,8 @@
1
1
  import { MODEL_STATUS } from '../constants/modelStatus';
2
2
  import { Model, ModelCollection } from '../types';
3
- export declare const getModelArray: <T extends Model>(model: ModelCollection<T>, guid?: string | undefined) => T[];
3
+ export declare const getModelArray: <T extends Model>(model: ModelCollection<T>, guid?: string) => T[];
4
4
  export declare const getModelMinusRelations: <T extends Model>(model: T) => Partial<T>;
5
- export declare const getModelFetchResult: <T extends Model>(model?: T | undefined, nextModel?: T | undefined) => {
5
+ export declare const getModelFetchResult: <T extends Model>(model?: T, nextModel?: T) => {
6
6
  isFinished: boolean;
7
7
  isSuccess: boolean;
8
8
  error: import("../types").FetchErrorData | undefined;
@@ -1,55 +1,46 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.handleModelFetchFinish = exports.getModelFetchResult = exports.getModelMinusRelations = exports.getModelArray = void 0;
4
- var lodash_1 = require("lodash");
5
- var modelStatus_1 = require("../constants/modelStatus");
6
- var getModelArray = function (model, guid) {
7
- return Object.keys(model)
8
- .filter(function (key) { return key !== '_metadata' && key !== guid && !!model[key]; })
9
- .map(function (key) { return model[key]; });
10
- };
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getModelMinusRelations = exports.getModelFetchResult = exports.getModelArray = void 0;
7
+ exports.handleModelFetchFinish = handleModelFetchFinish;
8
+ var _lodash = require("lodash");
9
+ var _modelStatus = require("../constants/modelStatus");
10
+ const getModelArray = (model, guid) => Object.keys(model).filter(key => key !== '_metadata' && key !== guid && !!model[key]).map(key => model[key]);
11
11
  exports.getModelArray = getModelArray;
12
- var getModelMinusRelations = function (model) {
13
- return Object.keys(model)
14
- .filter(function (key) { return key !== 'guid' && !lodash_1.isPlainObject(model[key]) && !lodash_1.isArray(model[key]); })
15
- .reduce(function (retval, key) {
16
- retval[key] = model[key];
17
- return retval;
18
- }, {});
19
- };
12
+ const getModelMinusRelations = model => Object.keys(model).filter(key => key !== 'guid' && !(0, _lodash.isPlainObject)(model[key]) && !(0, _lodash.isArray)(model[key])).reduce((retval, key) => {
13
+ retval[key] = model[key];
14
+ return retval;
15
+ }, {});
20
16
  exports.getModelMinusRelations = getModelMinusRelations;
21
- var getModelFetchResult = function (model, nextModel) {
22
- // from (no model, empty model, fetching model) to (fetched model), e.g. GET
23
- var didFetch = (!model || !model._metadata || model._metadata.isFetching) &&
24
- !!nextModel &&
25
- !!nextModel._metadata &&
26
- !nextModel._metadata.isFetching;
27
- // from (fetching model) to (no model), e.g. DELETED
28
- var didDelete = !!model && !!model._metadata && model._metadata.isFetching && !nextModel;
29
- var isFinished = didFetch || didDelete;
30
- var isSuccess = isFinished && (didDelete || (!!nextModel && !!nextModel._metadata && !nextModel._metadata.hasError));
31
- var error = (isFinished && !didDelete && !!nextModel && !!nextModel._metadata && nextModel._metadata.lastFetchErrorData) ||
32
- undefined;
33
- return {
34
- isFinished: isFinished,
35
- isSuccess: isSuccess,
36
- error: error
37
- };
17
+ const getModelFetchResult = (model, nextModel) => {
18
+ // from (no model, empty model, fetching model) to (fetched model), e.g. GET
19
+ const didFetch = (!model || !model._metadata || model._metadata.isFetching) && !!nextModel && !!nextModel._metadata && !nextModel._metadata.isFetching;
20
+ // from (fetching model) to (no model), e.g. DELETED
21
+ const didDelete = !!model && !!model._metadata && model._metadata.isFetching && !nextModel;
22
+ const isFinished = didFetch || didDelete;
23
+ const isSuccess = isFinished && (didDelete || !!nextModel && !!nextModel._metadata && !nextModel._metadata.hasError);
24
+ const error = isFinished && !didDelete && !!nextModel && !!nextModel._metadata && nextModel._metadata.lastFetchErrorData || undefined;
25
+ return {
26
+ isFinished,
27
+ isSuccess,
28
+ error
29
+ };
38
30
  };
39
- exports.getModelFetchResult = getModelFetchResult;
40
- /**
41
- * When the model has finished fetching, call `changeModelStatus`.
42
- * If `fetchingId` is provided, `model` and `prevModel` are assumed to be `ModelCollection`,
43
- * and the model found at `fetchingId` is used.
31
+
32
+ /**
33
+ * When the model has finished fetching, call `changeModelStatus`.
34
+ * If `fetchingId` is provided, `model` and `prevModel` are assumed to be `ModelCollection`,
35
+ * and the model found at `fetchingId` is used.
44
36
  */
37
+ exports.getModelFetchResult = getModelFetchResult;
45
38
  function handleModelFetchFinish(model, prevModel, fetchingId, changeModelStatus) {
46
- var fetchingModel = fetchingId ? model[fetchingId] : model;
47
- var prevFetchingModel = fetchingId
48
- ? prevModel[fetchingId]
49
- : prevModel;
50
- var modelFetchResult = exports.getModelFetchResult(prevFetchingModel, fetchingModel);
51
- if (modelFetchResult.isFinished) {
52
- changeModelStatus(!modelFetchResult.isSuccess ? modelStatus_1.MODEL_STATUS.ERROR : modelStatus_1.MODEL_STATUS.READY, undefined);
53
- }
39
+ const fetchingModel = fetchingId ? model[fetchingId] : model;
40
+ const prevFetchingModel = fetchingId ? prevModel[fetchingId] : prevModel;
41
+ const modelFetchResult = getModelFetchResult(prevFetchingModel, fetchingModel);
42
+ if (modelFetchResult.isFinished) {
43
+ changeModelStatus(!modelFetchResult.isSuccess ? _modelStatus.MODEL_STATUS.ERROR : _modelStatus.MODEL_STATUS.READY, undefined);
44
+ }
54
45
  }
55
- exports.handleModelFetchFinish = handleModelFetchFinish;
46
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwicmVxdWlyZSIsIl9tb2RlbFN0YXR1cyIsImdldE1vZGVsQXJyYXkiLCJtb2RlbCIsImd1aWQiLCJPYmplY3QiLCJrZXlzIiwiZmlsdGVyIiwia2V5IiwibWFwIiwiZXhwb3J0cyIsImdldE1vZGVsTWludXNSZWxhdGlvbnMiLCJpc1BsYWluT2JqZWN0IiwiaXNBcnJheSIsInJlZHVjZSIsInJldHZhbCIsImdldE1vZGVsRmV0Y2hSZXN1bHQiLCJuZXh0TW9kZWwiLCJkaWRGZXRjaCIsIl9tZXRhZGF0YSIsImlzRmV0Y2hpbmciLCJkaWREZWxldGUiLCJpc0ZpbmlzaGVkIiwiaXNTdWNjZXNzIiwiaGFzRXJyb3IiLCJlcnJvciIsImxhc3RGZXRjaEVycm9yRGF0YSIsInVuZGVmaW5lZCIsImhhbmRsZU1vZGVsRmV0Y2hGaW5pc2giLCJwcmV2TW9kZWwiLCJmZXRjaGluZ0lkIiwiY2hhbmdlTW9kZWxTdGF0dXMiLCJmZXRjaGluZ01vZGVsIiwicHJldkZldGNoaW5nTW9kZWwiLCJtb2RlbEZldGNoUmVzdWx0IiwiTU9ERUxfU1RBVFVTIiwiRVJST1IiLCJSRUFEWSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9tb2RlbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0FycmF5LCBpc1BsYWluT2JqZWN0IH0gZnJvbSAnbG9kYXNoJ1xyXG5pbXBvcnQgeyBNT0RFTF9TVEFUVVMgfSBmcm9tICcuLi9jb25zdGFudHMvbW9kZWxTdGF0dXMnXHJcbmltcG9ydCB7IE1vZGVsLCBNb2RlbENvbGxlY3Rpb24gfSBmcm9tICcuLi90eXBlcydcclxuXHJcbmV4cG9ydCBjb25zdCBnZXRNb2RlbEFycmF5ID0gPFQgZXh0ZW5kcyBNb2RlbD4obW9kZWw6IE1vZGVsQ29sbGVjdGlvbjxUPiwgZ3VpZD86IHN0cmluZyk6IFRbXSA9PlxyXG5cdE9iamVjdC5rZXlzKG1vZGVsKVxyXG5cdFx0LmZpbHRlcihrZXkgPT4ga2V5ICE9PSAnX21ldGFkYXRhJyAmJiBrZXkgIT09IGd1aWQgJiYgISFtb2RlbFtrZXldKVxyXG5cdFx0Lm1hcChrZXkgPT4gbW9kZWxba2V5XSkgYXMgVFtdXHJcblxyXG5leHBvcnQgY29uc3QgZ2V0TW9kZWxNaW51c1JlbGF0aW9ucyA9IDxUIGV4dGVuZHMgTW9kZWw+KG1vZGVsOiBUKSA9PlxyXG5cdChPYmplY3Qua2V5cyhtb2RlbCkgYXMgQXJyYXk8a2V5b2YgVD4pXHJcblx0XHQuZmlsdGVyKGtleSA9PiBrZXkgIT09ICdndWlkJyAmJiAhaXNQbGFpbk9iamVjdChtb2RlbFtrZXldKSAmJiAhaXNBcnJheShtb2RlbFtrZXldKSlcclxuXHRcdC5yZWR1Y2UoKHJldHZhbDogUGFydGlhbDxUPiwga2V5KSA9PiB7XHJcblx0XHRcdHJldHZhbFtrZXldID0gbW9kZWxba2V5XVxyXG5cdFx0XHRyZXR1cm4gcmV0dmFsXHJcblx0XHR9LCB7fSlcclxuXHJcbmV4cG9ydCBjb25zdCBnZXRNb2RlbEZldGNoUmVzdWx0ID0gPFQgZXh0ZW5kcyBNb2RlbD4obW9kZWw/OiBULCBuZXh0TW9kZWw/OiBUKSA9PiB7XHJcblx0Ly8gZnJvbSAobm8gbW9kZWwsIGVtcHR5IG1vZGVsLCBmZXRjaGluZyBtb2RlbCkgdG8gKGZldGNoZWQgbW9kZWwpLCBlLmcuIEdFVFxyXG5cdGNvbnN0IGRpZEZldGNoID1cclxuXHRcdCghbW9kZWwgfHwgIW1vZGVsLl9tZXRhZGF0YSB8fCBtb2RlbC5fbWV0YWRhdGEuaXNGZXRjaGluZykgJiZcclxuXHRcdCEhbmV4dE1vZGVsICYmXHJcblx0XHQhIW5leHRNb2RlbC5fbWV0YWRhdGEgJiZcclxuXHRcdCFuZXh0TW9kZWwuX21ldGFkYXRhLmlzRmV0Y2hpbmdcclxuXHQvLyBmcm9tIChmZXRjaGluZyBtb2RlbCkgdG8gKG5vIG1vZGVsKSwgZS5nLiBERUxFVEVEXHJcblx0Y29uc3QgZGlkRGVsZXRlID0gISFtb2RlbCAmJiAhIW1vZGVsLl9tZXRhZGF0YSAmJiBtb2RlbC5fbWV0YWRhdGEuaXNGZXRjaGluZyAmJiAhbmV4dE1vZGVsXHJcblx0Y29uc3QgaXNGaW5pc2hlZCA9IGRpZEZldGNoIHx8IGRpZERlbGV0ZVxyXG5cdGNvbnN0IGlzU3VjY2VzcyA9XHJcblx0XHRpc0ZpbmlzaGVkICYmIChkaWREZWxldGUgfHwgKCEhbmV4dE1vZGVsICYmICEhbmV4dE1vZGVsLl9tZXRhZGF0YSAmJiAhbmV4dE1vZGVsLl9tZXRhZGF0YS5oYXNFcnJvcikpXHJcblx0Y29uc3QgZXJyb3IgPVxyXG5cdFx0KGlzRmluaXNoZWQgJiYgIWRpZERlbGV0ZSAmJiAhIW5leHRNb2RlbCAmJiAhIW5leHRNb2RlbC5fbWV0YWRhdGEgJiYgbmV4dE1vZGVsLl9tZXRhZGF0YS5sYXN0RmV0Y2hFcnJvckRhdGEpIHx8XHJcblx0XHR1bmRlZmluZWRcclxuXHJcblx0cmV0dXJuIHtcclxuXHRcdGlzRmluaXNoZWQsXHJcblx0XHRpc1N1Y2Nlc3MsXHJcblx0XHRlcnJvclxyXG5cdH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFdoZW4gdGhlIG1vZGVsIGhhcyBmaW5pc2hlZCBmZXRjaGluZywgY2FsbCBgY2hhbmdlTW9kZWxTdGF0dXNgLlxyXG4gKiBJZiBgZmV0Y2hpbmdJZGAgaXMgcHJvdmlkZWQsIGBtb2RlbGAgYW5kIGBwcmV2TW9kZWxgIGFyZSBhc3N1bWVkIHRvIGJlIGBNb2RlbENvbGxlY3Rpb25gLFxyXG4gKiBhbmQgdGhlIG1vZGVsIGZvdW5kIGF0IGBmZXRjaGluZ0lkYCBpcyB1c2VkLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZU1vZGVsRmV0Y2hGaW5pc2g8VE1vZGVsIGV4dGVuZHMgTW9kZWw+KFxyXG5cdG1vZGVsOiBUTW9kZWwgfCBNb2RlbENvbGxlY3Rpb248VE1vZGVsPiB8IHVuZGVmaW5lZCxcclxuXHRwcmV2TW9kZWw6IFRNb2RlbCB8IE1vZGVsQ29sbGVjdGlvbjxUTW9kZWw+IHwgdW5kZWZpbmVkLFxyXG5cdGZldGNoaW5nSWQ6IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZCxcclxuXHRjaGFuZ2VNb2RlbFN0YXR1czogKG1vZGVsU3RhdHVzOiBNT0RFTF9TVEFUVVMsIGZldGNoaW5nSWQ/OiBzdHJpbmcpID0+IHZvaWRcclxuKSB7XHJcblx0Y29uc3QgZmV0Y2hpbmdNb2RlbCA9IGZldGNoaW5nSWQgPyAoKG1vZGVsIGFzIE1vZGVsQ29sbGVjdGlvbjxUTW9kZWw+KVtmZXRjaGluZ0lkXSBhcyBUTW9kZWwgfCB1bmRlZmluZWQpIDogbW9kZWxcclxuXHRjb25zdCBwcmV2RmV0Y2hpbmdNb2RlbCA9IGZldGNoaW5nSWRcclxuXHRcdD8gKChwcmV2TW9kZWwgYXMgTW9kZWxDb2xsZWN0aW9uPFRNb2RlbD4pW2ZldGNoaW5nSWRdIGFzIFRNb2RlbCB8IHVuZGVmaW5lZClcclxuXHRcdDogcHJldk1vZGVsXHJcblx0Y29uc3QgbW9kZWxGZXRjaFJlc3VsdCA9IGdldE1vZGVsRmV0Y2hSZXN1bHQocHJldkZldGNoaW5nTW9kZWwsIGZldGNoaW5nTW9kZWwpXHJcblx0aWYgKG1vZGVsRmV0Y2hSZXN1bHQuaXNGaW5pc2hlZCkge1xyXG5cdFx0Y2hhbmdlTW9kZWxTdGF0dXMoIW1vZGVsRmV0Y2hSZXN1bHQuaXNTdWNjZXNzID8gTU9ERUxfU1RBVFVTLkVSUk9SIDogTU9ERUxfU1RBVFVTLlJFQURZLCB1bmRlZmluZWQpXHJcblx0fVxyXG59XHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE9BQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLFlBQUEsR0FBQUQsT0FBQTtBQUdPLE1BQU1FLGFBQWEsR0FBR0EsQ0FBa0JDLEtBQXlCLEVBQUVDLElBQWEsS0FDdEZDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDSCxLQUFLLENBQUMsQ0FDaEJJLE1BQU0sQ0FBQ0MsR0FBRyxJQUFJQSxHQUFHLEtBQUssV0FBVyxJQUFJQSxHQUFHLEtBQUtKLElBQUksSUFBSSxDQUFDLENBQUNELEtBQUssQ0FBQ0ssR0FBRyxDQUFDLENBQUMsQ0FDbEVDLEdBQUcsQ0FBQ0QsR0FBRyxJQUFJTCxLQUFLLENB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
@@ -1,32 +1,29 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.modulo = exports.hasPrecisionAndScale = void 0;
4
- /**
5
- * Validates that the input is a number and that the number falls within
6
- * the precision and scale constraints provided.
7
- * https://docs.microsoft.com/en-us/sql/t-sql/data-types/precision-scale-and-length-transact-sql?view=sql-server-2017
8
- *
9
- * @export
10
- * @param decimalString - The number to validate. Must be passed as a string (i.e. from a web form)
11
- * @param precision - The number of digits allowed in the value
12
- * @param scale - The number of digits allowed to the right of the decimal point in the value
13
- * @returns A boolean indicating whether the number falls within the precision and scale constraints provided
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.hasPrecisionAndScale = hasPrecisionAndScale;
7
+ exports.modulo = modulo;
8
+ /**
9
+ * Validates that the input is a number and that the number falls within
10
+ * the precision and scale constraints provided.
11
+ * https://docs.microsoft.com/en-us/sql/t-sql/data-types/precision-scale-and-length-transact-sql?view=sql-server-2017
12
+ *
13
+ * @export
14
+ * @param decimalString - The number to validate. Must be passed as a string (i.e. from a web form)
15
+ * @param precision - The number of digits allowed in the value
16
+ * @param scale - The number of digits allowed to the right of the decimal point in the value
17
+ * @returns A boolean indicating whether the number falls within the precision and scale constraints provided
14
18
  */
15
19
  function hasPrecisionAndScale(decimalString, precision, scale) {
16
- if (typeof decimalString !== 'string' ||
17
- isNaN(Number(decimalString)) ||
18
- isNaN(precision) ||
19
- isNaN(scale) ||
20
- precision <= 0 ||
21
- scale < 0) {
22
- return false;
23
- }
24
- var parts = decimalString.toString().split('.');
25
- return !!(new RegExp(precision === scale ? '^0$' : "^-?\\d{1," + (precision - scale) + "}$").exec(parts[0]) &&
26
- (parts.length > 1 ? new RegExp("^\\d{1," + scale + "}$").exec(parts[1]) : true));
20
+ if (isNaN(Number(decimalString)) || isNaN(precision) || isNaN(scale) || precision <= 0 || scale < 0) {
21
+ return false;
22
+ }
23
+ const parts = decimalString.split('.');
24
+ return !!(new RegExp(precision === scale ? '^0$' : `^-?\\d{1,${precision - scale}}$`).exec(parts[0]) && (parts.length > 1 ? new RegExp(`^\\d{1,${scale}}$`).exec(parts[1]) : true));
27
25
  }
28
- exports.hasPrecisionAndScale = hasPrecisionAndScale;
29
26
  function modulo(n, m) {
30
- return ((n % m) + m) % m;
27
+ return (n % m + m) % m;
31
28
  }
32
- exports.modulo = modulo;
29
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJoYXNQcmVjaXNpb25BbmRTY2FsZSIsImRlY2ltYWxTdHJpbmciLCJwcmVjaXNpb24iLCJzY2FsZSIsImlzTmFOIiwiTnVtYmVyIiwicGFydHMiLCJzcGxpdCIsIlJlZ0V4cCIsImV4ZWMiLCJsZW5ndGgiLCJtb2R1bG8iLCJuIiwibSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9udW1iZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIFZhbGlkYXRlcyB0aGF0IHRoZSBpbnB1dCBpcyBhIG51bWJlciBhbmQgdGhhdCB0aGUgbnVtYmVyIGZhbGxzIHdpdGhpblxyXG4gKiB0aGUgcHJlY2lzaW9uIGFuZCBzY2FsZSBjb25zdHJhaW50cyBwcm92aWRlZC5cclxuICogaHR0cHM6Ly9kb2NzLm1pY3Jvc29mdC5jb20vZW4tdXMvc3FsL3Qtc3FsL2RhdGEtdHlwZXMvcHJlY2lzaW9uLXNjYWxlLWFuZC1sZW5ndGgtdHJhbnNhY3Qtc3FsP3ZpZXc9c3FsLXNlcnZlci0yMDE3XHJcbiAqXHJcbiAqIEBleHBvcnRcclxuICogQHBhcmFtIGRlY2ltYWxTdHJpbmcgLSBUaGUgbnVtYmVyIHRvIHZhbGlkYXRlLiBNdXN0IGJlIHBhc3NlZCBhcyBhIHN0cmluZyAoaS5lLiBmcm9tIGEgd2ViIGZvcm0pXHJcbiAqIEBwYXJhbSBwcmVjaXNpb24gLSBUaGUgbnVtYmVyIG9mIGRpZ2l0cyBhbGxvd2VkIGluIHRoZSB2YWx1ZVxyXG4gKiBAcGFyYW0gc2NhbGUgLSBUaGUgbnVtYmVyIG9mIGRpZ2l0cyBhbGxvd2VkIHRvIHRoZSByaWdodCBvZiB0aGUgZGVjaW1hbCBwb2ludCBpbiB0aGUgdmFsdWVcclxuICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgbnVtYmVyIGZhbGxzIHdpdGhpbiB0aGUgcHJlY2lzaW9uIGFuZCBzY2FsZSBjb25zdHJhaW50cyBwcm92aWRlZFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGhhc1ByZWNpc2lvbkFuZFNjYWxlKGRlY2ltYWxTdHJpbmc6IHN0cmluZywgcHJlY2lzaW9uOiBudW1iZXIsIHNjYWxlOiBudW1iZXIpIHtcclxuXHRpZiAoaXNOYU4oTnVtYmVyKGRlY2ltYWxTdHJpbmcpKSB8fCBpc05hTihwcmVjaXNpb24pIHx8IGlzTmFOKHNjYWxlKSB8fCBwcmVjaXNpb24gPD0gMCB8fCBzY2FsZSA8IDApIHtcclxuXHRcdHJldHVybiBmYWxzZVxyXG5cdH1cclxuXHRjb25zdCBwYXJ0cyA9IGRlY2ltYWxTdHJpbmcuc3BsaXQoJy4nKVxyXG5cdHJldHVybiAhIShcclxuXHRcdG5ldyBSZWdFeHAocHJlY2lzaW9uID09PSBzY2FsZSA/ICdeMCQnIDogYF4tP1xcXFxkezEsJHtwcmVjaXNpb24gLSBzY2FsZX19JGApLmV4ZWMocGFydHNbMF0pICYmXHJcblx0XHQocGFydHMubGVuZ3RoID4gMSA/IG5ldyBSZWdFeHAoYF5cXFxcZHsxLCR7c2NhbGV9fSRgKS5leGVjKHBhcnRzWzFdKSA6IHRydWUpXHJcblx0KVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbW9kdWxvKG46IG51bWJlciwgbTogbnVtYmVyKSB7XHJcblx0cmV0dXJuICgobiAlIG0pICsgbSkgJSBtXHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLFNBQVNBLG9CQUFvQkEsQ0FBQ0MsYUFBcUIsRUFBRUMsU0FBaUIsRUFBRUMsS0FBYSxFQUFFO0VBQzdGLElBQUlDLEtBQUssQ0FBQ0MsTUFBTSxDQUFDSixhQUFhLENBQUMsQ0FBQyxJQUFJRyxLQUFLLENBQUNGLFNBQVMsQ0FBQyxJQUFJRSxLQUFLLENBQUNELEtBQUssQ0FBQyxJQUFJRCxTQUFTLElBQUksQ0FBQyxJQUFJQyxLQUFLLEdBQUcsQ0FBQyxFQUFFO0lBQ3BHLE9BQU8sS0FBSztFQUNiO0VBQ0EsTUFBTUcsS0FBSyxHQUFHTCxhQUFhLENBQUNNLEtBQUssQ0FBQyxHQUFHLENBQUM7RUFDdEMsT0FBTyxDQUFDLEVBQ1AsSUFBSUMsTUFBTSxDQUFDTixTQUFTLEtBQUtDLEtBQUssR0FBRyxLQUFLLEdBQUcsWUFBWUQsU0FBUyxHQUFHQyxLQUFLLElBQUksQ0FBQyxDQUFDTSxJQUFJLENBQUNILEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUN6RkEsS0FBSyxDQUFDSSxNQUFNLEdBQUcsQ0FBQyxHQUFHLElBQUlGLE1BQU0sQ0FBQyxVQUFVTCxLQUFLLElBQUksQ0FBQyxDQUFDTSxJQUFJLENBQUNILEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUMxRTtBQUNGO0FBRU8sU0FBU0ssTUFBTUEsQ0FBQ0MsQ0FBUyxFQUFFQyxDQUFTLEVBQUU7RUFDNUMsT0FBTyxDQUFFRCxDQUFDLEdBQUdDLENBQUMsR0FBSUEsQ0FBQyxJQUFJQSxDQUFDO0FBQ3pCIiwiaWdub3JlTGlzdCI6W119
@@ -2,4 +2,9 @@ export interface CancellablePromise<T> {
2
2
  promise: Promise<T>;
3
3
  cancel(): void;
4
4
  }
5
- export declare const cancelablePromise: <T>(promise: Promise<T>) => CancellablePromise<T>;
5
+ export declare class CancelledError extends Error {
6
+ isCancelled: boolean;
7
+ constructor();
8
+ }
9
+ export declare const isErrorCancelled: (error: unknown) => boolean;
10
+ export declare const cancellablePromise: <T>(promise: Promise<T>) => CancellablePromise<T>;
@@ -1,17 +1,36 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.cancelablePromise = void 0;
4
- var cancelablePromise = function (promise) {
5
- var isCancelled = false;
6
- var wrappedPromise = new Promise(function (resolve, reject) {
7
- promise.then(function (val) { return (isCancelled ? reject({ isCancelled: true }) : resolve(val)); }, function (error) { return (isCancelled ? reject({ isCancelled: true }) : reject(error)); });
8
- });
9
- var response = {
10
- promise: wrappedPromise,
11
- cancel: function () {
12
- isCancelled = true;
13
- }
14
- };
15
- return response;
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.isErrorCancelled = exports.cancellablePromise = exports.CancelledError = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ class CancelledError extends Error {
10
+ constructor() {
11
+ super('Promise was cancelled');
12
+ (0, _defineProperty2.default)(this, "isCancelled", void 0);
13
+ this.name = 'CancelledError';
14
+ this.isCancelled = true;
15
+ }
16
+ }
17
+ exports.CancelledError = CancelledError;
18
+ const isErrorCancelled = error => {
19
+ return !!error && error instanceof CancelledError && error.isCancelled;
16
20
  };
17
- exports.cancelablePromise = cancelablePromise;
21
+ exports.isErrorCancelled = isErrorCancelled;
22
+ const cancellablePromise = promise => {
23
+ let isCancelled = false;
24
+ const wrappedPromise = new Promise((resolve, reject) => {
25
+ promise.then(val => isCancelled ? reject(new CancelledError()) : resolve(val), error => isCancelled ? reject(new CancelledError()) : reject(error));
26
+ });
27
+ const response = {
28
+ promise: wrappedPromise,
29
+ cancel() {
30
+ isCancelled = true;
31
+ }
32
+ };
33
+ return response;
34
+ };
35
+ exports.cancellablePromise = cancellablePromise;
36
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDYW5jZWxsZWRFcnJvciIsIkVycm9yIiwiY29uc3RydWN0b3IiLCJfZGVmaW5lUHJvcGVydHkyIiwiZGVmYXVsdCIsIm5hbWUiLCJpc0NhbmNlbGxlZCIsImV4cG9ydHMiLCJpc0Vycm9yQ2FuY2VsbGVkIiwiZXJyb3IiLCJjYW5jZWxsYWJsZVByb21pc2UiLCJwcm9taXNlIiwid3JhcHBlZFByb21pc2UiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInRoZW4iLCJ2YWwiLCJyZXNwb25zZSIsImNhbmNlbCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9wcm9taXNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ2FuY2VsbGFibGVQcm9taXNlPFQ+IHtcclxuXHRwcm9taXNlOiBQcm9taXNlPFQ+XHJcblx0Y2FuY2VsKCk6IHZvaWRcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIENhbmNlbGxlZEVycm9yIGV4dGVuZHMgRXJyb3Ige1xyXG5cdHB1YmxpYyBpc0NhbmNlbGxlZDogYm9vbGVhblxyXG5cdGNvbnN0cnVjdG9yKCkge1xyXG5cdFx0c3VwZXIoJ1Byb21pc2Ugd2FzIGNhbmNlbGxlZCcpXHJcblx0XHR0aGlzLm5hbWUgPSAnQ2FuY2VsbGVkRXJyb3InXHJcblx0XHR0aGlzLmlzQ2FuY2VsbGVkID0gdHJ1ZVxyXG5cdH1cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGlzRXJyb3JDYW5jZWxsZWQgPSAoZXJyb3I6IHVua25vd24pID0+IHtcclxuXHRyZXR1cm4gISFlcnJvciAmJiBlcnJvciBpbnN0YW5jZW9mIENhbmNlbGxlZEVycm9yICYmIGVycm9yLmlzQ2FuY2VsbGVkXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBjYW5jZWxsYWJsZVByb21pc2UgPSA8VD4ocHJvbWlzZTogUHJvbWlzZTxUPikgPT4ge1xyXG5cdGxldCBpc0NhbmNlbGxlZCA9IGZhbHNlXHJcblxyXG5cdGNvbnN0IHdyYXBwZWRQcm9taXNlID0gbmV3IFByb21pc2U8VD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG5cdFx0cHJvbWlzZS50aGVuKFxyXG5cdFx0XHR2YWwgPT4gKGlzQ2FuY2VsbGVkID8gcmVqZWN0KG5ldyBDYW5jZWxsZWRFcnJvcigpKSA6IHJlc29sdmUodmFsKSksXHJcblx0XHRcdChlcnJvcjogdW5rbm93bikgPT4gKGlzQ2FuY2VsbGVkID8gcmVqZWN0KG5ldyBDYW5jZWxsZWRFcnJvcigpKSA6IHJlamVjdChlcnJvciBhcyBFcnJvcikpXHJcblx0XHQpXHJcblx0fSlcclxuXHJcblx0Y29uc3QgcmVzcG9uc2U6IENhbmNlbGxhYmxlUHJvbWlzZTxUPiA9IHtcclxuXHRcdHByb21pc2U6IHdyYXBwZWRQcm9taXNlLFxyXG5cdFx0Y2FuY2VsKCkge1xyXG5cdFx0XHRpc0NhbmNlbGxlZCA9IHRydWVcclxuXHRcdH1cclxuXHR9XHJcblx0cmV0dXJuIHJlc3BvbnNlXHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUtPLE1BQU1BLGNBQWMsU0FBU0MsS0FBSyxDQUFDO0VBRXpDQyxXQUFXQSxDQUFBLEVBQUc7SUFDYixLQUFLLENBQUMsdUJBQXVCLENBQUM7SUFBQSxJQUFBQyxnQkFBQSxDQUFBQyxPQUFBO0lBQzlCLElBQUksQ0FBQ0MsSUFBSSxHQUFHLGdCQUFnQjtJQUM1QixJQUFJLENBQUNDLFdBQVcsR0FBRyxJQUFJO0VBQ3hCO0FBQ0Q7QUFBQ0MsT0FBQSxDQUFBUCxjQUFBLEdBQUFBLGNBQUE7QUFFTSxNQUFNUSxnQkFBZ0IsR0FBSUMsS0FBYyxJQUFLO0VBQ25ELE9BQU8sQ0FBQyxDQUFDQSxLQUFLLElBQUlBLEtBQUssWUFBWVQsY0FBYyxJQUFJUyxLQUFLLENBQUNILFdBQVc7QUFDdkUsQ0FBQztBQUFBQyxPQUFBLENBQUFDLGdCQUFBLEdBQUFBLGdCQUFBO0FBRU0sTUFBTUUsa0JBQWtCLEdBQU9DLE9BQW1CLElBQUs7RUFDN0QsSUFBSUwsV0FBVyxHQUFHLEtBQUs7RUFFdkIsTUFBTU0sY0FBYyxHQUFHLElBQUlDLE9BQU8sQ0FBSSxDQUFDQyxPQUFPLEVBQUVDLE1BQU0sS0FBSztJQUMxREosT0FBTyxDQUFDSyxJQUFJLENBQ1hDLEdBQUcsSUFBS1gsV0FBVyxHQUFHUyxNQUFNLENBQUMsSUFBSWYsY0FBYyxDQUFDLENBQUMsQ0FBQyxHQUFHYyxPQUFPLENBQUNHLEdBQUcsQ0FBRSxFQUNqRVIsS0FBYyxJQUFNSCxXQUFXLEdBQUdTLE1BQU0sQ0FBQyxJQUFJZixjQUFjLENBQUMsQ0FBQyxDQUFDLEdBQUdlLE1BQU0sQ0FBQ04sS0FBYyxDQUN4RixDQUFDO0VBQ0YsQ0FBQyxDQUFDO0VBRUYsTUFBTVMsUUFBK0IsR0FBRztJQUN2Q1AsT0FBTyxFQUFFQyxjQUFjO0lBQ3ZCTyxNQUFNQSxDQUFBLEVBQUc7TUFDUmIsV0FBVyxHQUFHLElBQUk7SUFDbkI7RUFDRCxDQUFDO0VBQ0QsT0FBT1ksUUFBUTtBQUNoQixDQUFDO0FBQUFYLE9BQUEsQ0FBQUcsa0JBQUEsR0FBQUEsa0JBQUEiLCJpZ25vcmVMaXN0IjpbXX0=