studiokit-scaffolding-js 7.0.12-next.1.4 → 7.0.12-next.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (258) hide show
  1. package/lib/components/ActionList.js +170 -34
  2. package/lib/components/AlertDialog.js +133 -9
  3. package/lib/components/AlertWithIcon.js +92 -25
  4. package/lib/components/ConnectedModal.js +43 -13
  5. package/lib/components/Dropdowns/GroupsDropdown.js +69 -44
  6. package/lib/components/Dropdowns/ManagedNavDropdown.js +100 -67
  7. package/lib/components/Dropdowns/UserDropdown.js +111 -21
  8. package/lib/components/Dropdowns/index.js +27 -9
  9. package/lib/components/EntityOwnerList.js +52 -18
  10. package/lib/components/Error.js +106 -11
  11. package/lib/components/ErrorBoundary.js +134 -35
  12. package/lib/components/ErrorMessage.js +44 -9
  13. package/lib/components/Forms/DateField.js +61 -42
  14. package/lib/components/Forms/TimeField.js +81 -42
  15. package/lib/components/Forms/index.js +27 -4
  16. package/lib/components/Groups/CreateEditCopySaveButtons.js +114 -11
  17. package/lib/components/Groups/ExternalGroups/Attach.js +212 -148
  18. package/lib/components/Groups/ExternalGroups/Table.js +181 -45
  19. package/lib/components/Groups/GroupCreateOrEditCommonProps.js +5 -1
  20. package/lib/components/Groups/RosterSyncInfo.js +147 -20
  21. package/lib/components/HOC/AccessibleAppComponent.js +98 -73
  22. package/lib/components/HOC/ActivityRequiredComponent.js +92 -49
  23. package/lib/components/HOC/AsyncComponent.js +54 -39
  24. package/lib/components/HOC/AuthenticatedComponent.js +58 -38
  25. package/lib/components/HOC/CollectionComponent.js +170 -110
  26. package/lib/components/HOC/CollectionFirstItemComponent.js +51 -38
  27. package/lib/components/HOC/CollectionItemComponent.js +168 -106
  28. package/lib/components/HOC/ConnectedModalComponent.js +109 -80
  29. package/lib/components/HOC/DataDependentComponent.js +29 -21
  30. package/lib/components/HOC/EntityComponent.js +71 -57
  31. package/lib/components/HOC/FullscreenModalComponent.js +163 -123
  32. package/lib/components/HOC/GroupActivityRequiredComponent.js +45 -31
  33. package/lib/components/HOC/GuidComponent.js +29 -22
  34. package/lib/components/HOC/ModelContextDependencyVerifyComponent.js +41 -31
  35. package/lib/components/HOC/ModelErrorRedirectComponent.js +51 -47
  36. package/lib/components/HOC/SearchPersistorComponent.js +240 -166
  37. package/lib/components/HOC/UnauthenticatedComponent.js +37 -25
  38. package/lib/components/HOC/UserComponent.js +12 -7
  39. package/lib/components/Icons/IconAlphaList.js +33 -5
  40. package/lib/components/Icons/IconExternalUser.js +33 -5
  41. package/lib/components/Icons/IconImpersonation.js +33 -5
  42. package/lib/components/Icons/IconStopImpersonating.js +33 -5
  43. package/lib/components/Icons/IconTable.js +35 -7
  44. package/lib/components/Icons/IconTableDeleteCol.js +33 -5
  45. package/lib/components/Icons/IconTableDeleteRow.js +33 -5
  46. package/lib/components/Icons/IconTableInsertCol.js +33 -5
  47. package/lib/components/Icons/IconTableInsertRow.js +33 -5
  48. package/lib/components/Impersonation/Button.js +77 -13
  49. package/lib/components/Impersonation/Link.js +77 -13
  50. package/lib/components/Impersonation/UserDetail.js +66 -9
  51. package/lib/components/Loading.js +26 -4
  52. package/lib/components/LockDownBrowser/Check.js +194 -49
  53. package/lib/components/LockDownBrowser/ExitButton.js +26 -9
  54. package/lib/components/LockDownBrowser/Launch.js +70 -62
  55. package/lib/components/Lti/Confirm.js +152 -11
  56. package/lib/components/Lti/CreateNonLtiGroupAlertDialog.js +170 -33
  57. package/lib/components/Lti/Launch.js +105 -24
  58. package/lib/components/Lti/LaunchGroup.js +85 -13
  59. package/lib/components/ManageTable.js +309 -87
  60. package/lib/components/ManageTableNoDataComponent.js +42 -4
  61. package/lib/components/NewVersionAlert.js +82 -46
  62. package/lib/components/NotFound.js +86 -10
  63. package/lib/components/Notifications.js +185 -126
  64. package/lib/components/PaginationNextButton.js +33 -6
  65. package/lib/components/PaginationPreviousButton.js +33 -6
  66. package/lib/components/Quill/CustomToolbar.js +432 -218
  67. package/lib/components/Quill/Formats/Image.js +73 -63
  68. package/lib/components/Quill/Formats/List.js +45 -45
  69. package/lib/components/Quill/Formats/Video.js +28 -24
  70. package/lib/components/Quill/ImageDropModule.js +147 -117
  71. package/lib/components/Quill/ImageWarning.js +47 -9
  72. package/lib/components/Quill/ImageWithAltTextModal.js +425 -86
  73. package/lib/components/Quill/Specs/CustomImageSpec.js +42 -34
  74. package/lib/components/Quill/Specs/CustomVideoSpec.js +34 -28
  75. package/lib/components/Quill/TableModule/Blots/BaseTableBlot.js +98 -98
  76. package/lib/components/Quill/TableModule/Blots/TableBlot.js +52 -47
  77. package/lib/components/Quill/TableModule/Blots/TableBodyBlot.js +53 -48
  78. package/lib/components/Quill/TableModule/Blots/TableCellBlot.js +224 -221
  79. package/lib/components/Quill/TableModule/Blots/TableContainer.js +80 -83
  80. package/lib/components/Quill/TableModule/Blots/TableRowBlot.js +75 -70
  81. package/lib/components/Quill/TableModule/constants.js +45 -41
  82. package/lib/components/Quill/TableModule/index.js +362 -301
  83. package/lib/components/Quill/TableModule/utils.js +42 -38
  84. package/lib/components/Quill/accessibilityFix.js +234 -232
  85. package/lib/components/Quill/index.js +34 -28
  86. package/lib/components/RefreshIndicator/Bordered.js +47 -6
  87. package/lib/components/RefreshIndicator/Inline.js +47 -8
  88. package/lib/components/RefreshIndicator/index.js +263 -59
  89. package/lib/components/SearchControls.js +216 -11
  90. package/lib/components/SentryRoute.js +11 -6
  91. package/lib/components/Tables/RoleFilter.js +69 -32
  92. package/lib/components/Tables/TextFilter.js +62 -13
  93. package/lib/components/UserRoles/Add.js +199 -96
  94. package/lib/components/UserRoles/Context.js +11 -7
  95. package/lib/components/UserRoles/RoleCell.js +181 -72
  96. package/lib/components/UserRoles/Select.js +157 -17
  97. package/lib/components/UserRoles/Table.js +221 -80
  98. package/lib/components/UserRoles/index.js +534 -384
  99. package/lib/config/eslint/index.js +32 -28
  100. package/lib/config/eslint/lib/order.js +26 -27
  101. package/lib/config/eslint/lib/prettier.js +20 -18
  102. package/lib/config/eslint/lib/typescript.js +93 -112
  103. package/lib/config/eslint/react.js +24 -14
  104. package/lib/constants/baseActivity.js +30 -26
  105. package/lib/constants/baseRole.js +14 -10
  106. package/lib/constants/configuration.js +33 -29
  107. package/lib/constants/externalProviderType.js +10 -6
  108. package/lib/constants/fetchErrorData.js +15 -11
  109. package/lib/constants/index.js +137 -14
  110. package/lib/constants/lockDownBrowser.js +28 -24
  111. package/lib/constants/mockData.js +382 -297
  112. package/lib/constants/modelStatus.js +15 -11
  113. package/lib/constants/notificationType.js +12 -8
  114. package/lib/constants/operatingSystem.js +12 -8
  115. package/lib/constants/shard.js +11 -7
  116. package/lib/constants/table.js +21 -21
  117. package/lib/constants/tier.js +12 -8
  118. package/lib/constants/userRole.js +15 -5
  119. package/lib/endpointMappings.js +197 -181
  120. package/lib/hooks/useCollection.js +82 -62
  121. package/lib/hooks/useCollectionConfiguration.js +228 -83
  122. package/lib/hooks/useCollectionItem.js +154 -54
  123. package/lib/hooks/useGuid.js +20 -8
  124. package/lib/hooks/usePrevious.js +19 -13
  125. package/lib/index.js +157 -25
  126. package/lib/redux/actionCreator.js +50 -28
  127. package/lib/redux/actions/AuthAction.js +44 -31
  128. package/lib/redux/actions/ModalAction.js +10 -6
  129. package/lib/redux/actions/ModelAction.js +77 -39
  130. package/lib/redux/actions/NotificationAction.js +10 -6
  131. package/lib/redux/actions/SearchAction.js +9 -5
  132. package/lib/redux/actions/index.js +60 -7
  133. package/lib/redux/configureReducers.js +60 -49
  134. package/lib/redux/configureStore.js +83 -87
  135. package/lib/redux/helpers.js +6 -2
  136. package/lib/redux/reducers/authReducer.js +50 -43
  137. package/lib/redux/reducers/index.js +41 -13
  138. package/lib/redux/reducers/modalsReducer.js +47 -29
  139. package/lib/redux/reducers/modelsReducer.js +178 -173
  140. package/lib/redux/reducers/notificationsReducer.js +24 -18
  141. package/lib/redux/reducers/searchReducer.js +25 -19
  142. package/lib/redux/sagas/appInsightsSaga.js +22 -18
  143. package/lib/redux/sagas/authSaga.js +253 -218
  144. package/lib/redux/sagas/caliperSaga.js +159 -143
  145. package/lib/redux/sagas/clockOffsetSaga.js +34 -31
  146. package/lib/redux/sagas/configurationSaga.js +11 -7
  147. package/lib/redux/sagas/downtimeApiErrorSaga.js +20 -17
  148. package/lib/redux/sagas/errorSaga.js +27 -21
  149. package/lib/redux/sagas/googleAnalyticsSaga.js +28 -24
  150. package/lib/redux/sagas/identityProviderSaga.js +22 -18
  151. package/lib/redux/sagas/initialDataLoadSaga.js +37 -28
  152. package/lib/redux/sagas/lockDownBrowserErrorSaga.js +29 -20
  153. package/lib/redux/sagas/modelFetchSaga.js +355 -322
  154. package/lib/redux/sagas/noStoreSaga.js +61 -48
  155. package/lib/redux/sagas/postLoginDataSaga.js +45 -34
  156. package/lib/redux/sagas/postLoginRedirectSaga.js +27 -27
  157. package/lib/redux/sagas/rootSaga.js +82 -57
  158. package/lib/redux/sagas/sentrySaga.js +29 -25
  159. package/lib/redux/sagas/userIdSaga.js +16 -12
  160. package/lib/services/codeProviderService.js +25 -19
  161. package/lib/services/dateService.js +12 -7
  162. package/lib/services/documentService.js +17 -12
  163. package/lib/services/fetchService.js +129 -112
  164. package/lib/services/persistenceService.js +33 -29
  165. package/lib/services/ticketProviderService.js +29 -23
  166. package/lib/services/tokenPersistenceService.js +12 -8
  167. package/lib/services/windowService.js +18 -14
  168. package/lib/startup.js +132 -114
  169. package/lib/types/AppConfiguration.js +5 -1
  170. package/lib/types/Artifact.js +11 -7
  171. package/lib/types/BaseReduxState.js +5 -1
  172. package/lib/types/Client.js +5 -1
  173. package/lib/types/Collection.js +5 -1
  174. package/lib/types/Configuration.js +5 -1
  175. package/lib/types/DeepLinkingResponseRequest.js +5 -1
  176. package/lib/types/DeletableModel.js +5 -1
  177. package/lib/types/Event.js +5 -1
  178. package/lib/types/ExternalGroup.js +5 -1
  179. package/lib/types/ExternalProvider.js +5 -1
  180. package/lib/types/ExternalTerm.js +5 -1
  181. package/lib/types/Group.js +5 -1
  182. package/lib/types/IdentityProvider.js +5 -1
  183. package/lib/types/LtiLaunch.js +5 -1
  184. package/lib/types/NameOnlyEntity.js +5 -1
  185. package/lib/types/Notification.js +5 -1
  186. package/lib/types/OptionalRecord.js +5 -1
  187. package/lib/types/OwnerSchedule.js +5 -1
  188. package/lib/types/PropertyOfType.js +5 -1
  189. package/lib/types/Quill.js +5 -1
  190. package/lib/types/RoleDescription.js +5 -1
  191. package/lib/types/Search.js +5 -1
  192. package/lib/types/SimpleLocation.js +5 -1
  193. package/lib/types/UniTime.js +5 -1
  194. package/lib/types/User.js +5 -1
  195. package/lib/types/UserRole.js +5 -1
  196. package/lib/types/auth/AuthState.js +5 -1
  197. package/lib/types/auth/CasV1LoginRequestBody.js +5 -1
  198. package/lib/types/auth/ClientCredentials.js +5 -1
  199. package/lib/types/auth/CodeProviderService.js +5 -1
  200. package/lib/types/auth/LocalLoginRequestBody.js +5 -1
  201. package/lib/types/auth/TicketProviderService.js +5 -1
  202. package/lib/types/auth/TokenPersistenceService.js +5 -1
  203. package/lib/types/auth/index.js +82 -9
  204. package/lib/types/externals.d.js +2 -0
  205. package/lib/types/index.js +313 -30
  206. package/lib/types/net/EndpointConfig.js +5 -1
  207. package/lib/types/net/EndpointMapping.js +5 -1
  208. package/lib/types/net/EndpointMappings.js +5 -1
  209. package/lib/types/net/ErrorHandler.js +5 -1
  210. package/lib/types/net/FetchConfig.js +5 -1
  211. package/lib/types/net/FetchErrorData.js +10 -6
  212. package/lib/types/net/FetchResult.js +5 -1
  213. package/lib/types/net/HTTPMethod.js +5 -1
  214. package/lib/types/net/HTTPStatusCode.js +16 -12
  215. package/lib/types/net/Metadata.js +5 -1
  216. package/lib/types/net/Model.js +5 -1
  217. package/lib/types/net/ModelCollection.js +5 -1
  218. package/lib/types/net/ModelsState.js +5 -1
  219. package/lib/types/net/OAuthToken.js +5 -1
  220. package/lib/types/net/OAuthTokenOrNull.js +5 -1
  221. package/lib/types/net/TokenAccessFunction.js +5 -1
  222. package/lib/types/net/index.js +181 -18
  223. package/lib/utils/baseActivity.js +133 -123
  224. package/lib/utils/baseRole.js +37 -33
  225. package/lib/utils/collection.js +425 -298
  226. package/lib/utils/cookies.js +22 -19
  227. package/lib/utils/date.js +303 -279
  228. package/lib/utils/dom.js +176 -165
  229. package/lib/utils/domainIdentifier.js +9 -5
  230. package/lib/utils/entityUserRole.js +6 -2
  231. package/lib/utils/error.js +17 -15
  232. package/lib/utils/events.js +40 -31
  233. package/lib/utils/externalGroup.js +22 -18
  234. package/lib/utils/externalProviders.js +8 -4
  235. package/lib/utils/externalTerms.js +10 -3
  236. package/lib/utils/fetch.js +179 -180
  237. package/lib/utils/group.js +18 -7
  238. package/lib/utils/groupDates.js +37 -33
  239. package/lib/utils/groupRoles.js +25 -21
  240. package/lib/utils/lockDownBrowser.js +15 -11
  241. package/lib/utils/logger.js +26 -22
  242. package/lib/utils/lti.js +9 -4
  243. package/lib/utils/model.js +36 -41
  244. package/lib/utils/number.js +21 -18
  245. package/lib/utils/promise.js +28 -21
  246. package/lib/utils/quill.js +65 -62
  247. package/lib/utils/route.js +58 -55
  248. package/lib/utils/search.js +76 -80
  249. package/lib/utils/shard.js +37 -37
  250. package/lib/utils/sort.js +50 -42
  251. package/lib/utils/string.js +13 -8
  252. package/lib/utils/table.js +38 -33
  253. package/lib/utils/timezone.js +10 -6
  254. package/lib/utils/url.js +142 -142
  255. package/lib/utils/user.js +58 -55
  256. package/lib/utils/userAgent.js +10 -10
  257. package/lib/utils/userRole.js +57 -49
  258. package/package.json +17 -3
@@ -1,144 +1,154 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defaultOptions = exports.canPerformActivityGloballyOrOnSomeEntities = exports.canPerformActivityGloballyOrOnEntity = exports.canPerformActivityGlobally = exports.canPerformActivityOnSomeEntities = exports.canPerformActivityOnEntity = void 0;
4
- const model_1 = require("./model");
5
- /*
6
- The functions in this module all are designed as predicates to determine whether a
7
- user has been granted a set of activities to perform, either at an entity-specific
8
- level or at a global level.
9
2
 
10
- Because Javascript doesn’t have named parameters, we use an 'options object' to
11
- pass the needed items. By ensuring all these functions have the same signature,
12
- we can use them interchangeably in constructing the ActivityRequiredComponent.
13
-
14
- The options object has the following structure:
15
- {
16
- entities: {
17
- {
18
- 1: {
19
- activities: [
20
- "activityName1",
21
- "activityName2"
22
- ...
23
- ]
24
- },
25
- ...
26
- }
27
- },
28
- entity: {
29
- activities: [
30
- "activityName1",
31
- "activityName2"
32
- ...
33
- ]
34
- }
35
- userInfo: {
36
- activities: [
37
- "activityName1",
38
- "activityName2",
39
- ...
40
- ]
41
- }
42
- }
43
-
44
- `entity` is a single entity and `entities` is a set of entities to which a user has been granted a set of activities.
45
- While we could use the array of entities and eliminate the need for the entity property, the singular property will be
46
- used in most cases and it prevents to the need to stuff the entity in an array unnecessarily.
47
-
48
- `userInfo` contains a property with an array of activities the user has been granted at a global level
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.defaultOptions = exports.canPerformActivityOnSomeEntities = exports.canPerformActivityOnEntity = exports.canPerformActivityGloballyOrOnSomeEntities = exports.canPerformActivityGloballyOrOnEntity = exports.canPerformActivityGlobally = void 0;
7
+ var _model = require("./model");
8
+ /*
9
+ The functions in this module all are designed as predicates to determine whether a
10
+ user has been granted a set of activities to perform, either at an entity-specific
11
+ level or at a global level.
12
+
13
+ Because Javascript doesn’t have named parameters, we use an 'options object' to
14
+ pass the needed items. By ensuring all these functions have the same signature,
15
+ we can use them interchangeably in constructing the ActivityRequiredComponent.
16
+
17
+ The options object has the following structure:
18
+ {
19
+ entities: {
20
+ {
21
+ 1: {
22
+ activities: [
23
+ "activityName1",
24
+ "activityName2"
25
+ ...
26
+ ]
27
+ },
28
+ ...
29
+ }
30
+ },
31
+ entity: {
32
+ activities: [
33
+ "activityName1",
34
+ "activityName2"
35
+ ...
36
+ ]
37
+ }
38
+ userInfo: {
39
+ activities: [
40
+ "activityName1",
41
+ "activityName2",
42
+ ...
43
+ ]
44
+ }
45
+ }
46
+
47
+ `entity` is a single entity and `entities` is a set of entities to which a user has been granted a set of activities.
48
+ While we could use the array of entities and eliminate the need for the entity property, the singular property will be
49
+ used in most cases and it prevents to the need to stuff the entity in an array unnecessarily.
50
+
51
+ `userInfo` contains a property with an array of activities the user has been granted at a global level
49
52
  */
50
- /**
51
- * Return true if user has activity for the single entity
52
- *
53
- * @param {string} requiredActivity The activity required to return true
54
- * @param {object} options See above
53
+
54
+ /**
55
+ * Return true if user has activity for the single entity
56
+ *
57
+ * @param {string} requiredActivity The activity required to return true
58
+ * @param {object} options See above
55
59
  */
56
60
  const canPerformActivityOnEntity = (requiredActivity, options) => {
57
- var _a;
58
- if (!requiredActivity) {
59
- throw new Error('`requiredActivity` must be provided');
60
- }
61
- if (!options.entity) {
62
- throw new Error('`options.entity` must be provided');
63
- }
64
- return !!((_a = options.entity.activities) === null || _a === void 0 ? void 0 : _a.includes(requiredActivity));
61
+ if (!requiredActivity) {
62
+ throw new Error('`requiredActivity` must be provided');
63
+ }
64
+ if (!options.entity) {
65
+ throw new Error('`options.entity` must be provided');
66
+ }
67
+ return !!options.entity.activities?.includes(requiredActivity);
65
68
  };
66
- exports.canPerformActivityOnEntity = canPerformActivityOnEntity;
67
- /**
68
- * Return true if user has activity on any of the entities
69
- *
70
- * @param {string} requiredActivity The activity required to return true
71
- * @param {object} options See above
69
+
70
+ /**
71
+ * Return true if user has activity on any of the entities
72
+ *
73
+ * @param {string} requiredActivity The activity required to return true
74
+ * @param {object} options See above
72
75
  */
76
+ exports.canPerformActivityOnEntity = canPerformActivityOnEntity;
73
77
  const canPerformActivityOnSomeEntities = (requiredActivity, options) => {
74
- if (!requiredActivity) {
75
- throw new Error('`requiredActivity` must be provided');
76
- }
77
- if (!options.entities) {
78
- throw new Error('`options.entities` must be provided');
79
- }
80
- return (0, model_1.getModelArray)(options.entities).some(entity => (0, exports.canPerformActivityOnEntity)(requiredActivity, { entity }));
78
+ if (!requiredActivity) {
79
+ throw new Error('`requiredActivity` must be provided');
80
+ }
81
+ if (!options.entities) {
82
+ throw new Error('`options.entities` must be provided');
83
+ }
84
+ return (0, _model.getModelArray)(options.entities).some(entity => canPerformActivityOnEntity(requiredActivity, {
85
+ entity
86
+ }));
81
87
  };
82
- exports.canPerformActivityOnSomeEntities = canPerformActivityOnSomeEntities;
83
- /**
84
- * Return true if user has activity globally
85
- *
86
- * This function can accept an null/undefined userInfo property for the
87
- * options argument. In which case it returns false. This is because userInfo
88
- * may not be loaded yet. If it is provided however, it must contain an
89
- * activities array
90
- *
91
- * @param {string} requiredActivity The activity required to return true
92
- * @param {object} options See above
88
+
89
+ /**
90
+ * Return true if user has activity globally
91
+ *
92
+ * This function can accept an null/undefined userInfo property for the
93
+ * options argument. In which case it returns false. This is because userInfo
94
+ * may not be loaded yet. If it is provided however, it must contain an
95
+ * activities array
96
+ *
97
+ * @param {string} requiredActivity The activity required to return true
98
+ * @param {object} options See above
93
99
  */
100
+ exports.canPerformActivityOnSomeEntities = canPerformActivityOnSomeEntities;
94
101
  const canPerformActivityGlobally = (requiredActivity, options) => {
95
- if (!requiredActivity) {
96
- throw new Error('`requiredActivity` must be provided');
97
- }
98
- if (!!options.userInfo && !!options.userInfo.activities && !Array.isArray(options.userInfo.activities)) {
99
- throw new Error('`options.userInfo.activities` must be an array');
100
- }
101
- return !!options.userInfo && !!options.userInfo.activities && options.userInfo.activities.includes(requiredActivity);
102
+ if (!requiredActivity) {
103
+ throw new Error('`requiredActivity` must be provided');
104
+ }
105
+ if (!!options.userInfo && !!options.userInfo.activities && !Array.isArray(options.userInfo.activities)) {
106
+ throw new Error('`options.userInfo.activities` must be an array');
107
+ }
108
+ return !!options.userInfo && !!options.userInfo.activities && options.userInfo.activities.includes(requiredActivity);
102
109
  };
110
+
111
+ /**
112
+ * Return true if user has activity either globally or on a single entity
113
+ *
114
+ * @param {string} requiredActivity The activity required to return true
115
+ * @param {object} options See above
116
+ */
103
117
  exports.canPerformActivityGlobally = canPerformActivityGlobally;
104
- /**
105
- * Return true if user has activity either globally or on a single entity
106
- *
107
- * @param {string} requiredActivity The activity required to return true
108
- * @param {object} options See above
118
+ const canPerformActivityGloballyOrOnEntity = (requiredActivity, options) => canPerformActivityGlobally(requiredActivity, options) || canPerformActivityOnEntity(requiredActivity, options);
119
+
120
+ /**
121
+ * Return true if user has activity globally or on any of the entities provided
122
+ *
123
+ * @param {string} requiredActivity The activity required to return true
124
+ * @param {object} options See above
109
125
  */
110
- const canPerformActivityGloballyOrOnEntity = (requiredActivity, options) => (0, exports.canPerformActivityGlobally)(requiredActivity, options) || (0, exports.canPerformActivityOnEntity)(requiredActivity, options);
111
126
  exports.canPerformActivityGloballyOrOnEntity = canPerformActivityGloballyOrOnEntity;
112
- /**
113
- * Return true if user has activity globally or on any of the entities provided
114
- *
115
- * @param {string} requiredActivity The activity required to return true
116
- * @param {object} options See above
117
- */
118
127
  const canPerformActivityGloballyOrOnSomeEntities = (requiredActivity, options) => {
119
- return ((0, exports.canPerformActivityGlobally)(requiredActivity, options) ||
120
- (0, exports.canPerformActivityOnSomeEntities)(requiredActivity, options));
128
+ return canPerformActivityGlobally(requiredActivity, options) || canPerformActivityOnSomeEntities(requiredActivity, options);
121
129
  };
122
- exports.canPerformActivityGloballyOrOnSomeEntities = canPerformActivityGloballyOrOnSomeEntities;
123
- /**
124
- * Return an options object that can be used in the functions in this module. This
125
- * encapsulates the default logic of looking in state for a set of entities or
126
- * looking in props for a single entity.
127
- *
128
- * Override or decorate with app specific logic in your app if needed.
129
- *
130
- * @param {Object} state The redux state
131
- * @param {Object} [props] A props object (typically ownProps)
132
- * @param {string} [modelsProperty] The property used to locate the entity or entities
133
- * needed for entity-level activity grants. For sets of entities, this function
134
- * looks in `state.models`. For a single entity, it looks in `props`
130
+
131
+ /**
132
+ * Return an options object that can be used in the functions in this module. This
133
+ * encapsulates the default logic of looking in state for a set of entities or
134
+ * looking in props for a single entity.
135
+ *
136
+ * Override or decorate with app specific logic in your app if needed.
137
+ *
138
+ * @param {Object} state The redux state
139
+ * @param {Object} [props] A props object (typically ownProps)
140
+ * @param {string} [modelsProperty] The property used to locate the entity or entities
141
+ * needed for entity-level activity grants. For sets of entities, this function
142
+ * looks in `state.models`. For a single entity, it looks in `props`
135
143
  */
144
+ exports.canPerformActivityGloballyOrOnSomeEntities = canPerformActivityGloballyOrOnSomeEntities;
136
145
  const defaultOptions = (state, props, modelsProperty) => {
137
- // if implementing in app, override / decorate with app specific logic
138
- return {
139
- entity: modelsProperty ? props && props[modelsProperty] : undefined,
140
- entities: modelsProperty ? state.models[modelsProperty] : undefined,
141
- userInfo: state.models.user && state.models.user.userInfo
142
- };
146
+ // if implementing in app, override / decorate with app specific logic
147
+ return {
148
+ entity: modelsProperty ? props && props[modelsProperty] : undefined,
149
+ entities: modelsProperty ? state.models[modelsProperty] : undefined,
150
+ userInfo: state.models.user && state.models.user.userInfo
151
+ };
143
152
  };
144
153
  exports.defaultOptions = defaultOptions;
154
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9kZWwiLCJyZXF1aXJlIiwiY2FuUGVyZm9ybUFjdGl2aXR5T25FbnRpdHkiLCJyZXF1aXJlZEFjdGl2aXR5Iiwib3B0aW9ucyIsIkVycm9yIiwiZW50aXR5IiwiYWN0aXZpdGllcyIsImluY2x1ZGVzIiwiZXhwb3J0cyIsImNhblBlcmZvcm1BY3Rpdml0eU9uU29tZUVudGl0aWVzIiwiZW50aXRpZXMiLCJnZXRNb2RlbEFycmF5Iiwic29tZSIsImNhblBlcmZvcm1BY3Rpdml0eUdsb2JhbGx5IiwidXNlckluZm8iLCJBcnJheSIsImlzQXJyYXkiLCJjYW5QZXJmb3JtQWN0aXZpdHlHbG9iYWxseU9yT25FbnRpdHkiLCJjYW5QZXJmb3JtQWN0aXZpdHlHbG9iYWxseU9yT25Tb21lRW50aXRpZXMiLCJkZWZhdWx0T3B0aW9ucyIsInN0YXRlIiwicHJvcHMiLCJtb2RlbHNQcm9wZXJ0eSIsInVuZGVmaW5lZCIsIm1vZGVscyIsInVzZXIiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvYmFzZUFjdGl2aXR5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VSZWR1eFN0YXRlLCBNb2RlbCwgTW9kZWxDb2xsZWN0aW9uLCBVc2VySW5mbyB9IGZyb20gJy4uL3R5cGVzJ1xyXG5pbXBvcnQgeyBnZXRNb2RlbEFycmF5IH0gZnJvbSAnLi9tb2RlbCdcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQWN0aXZpdHlPcHRpb25zIHtcclxuXHRlbnRpdHk/OiBNb2RlbCAmIHtcclxuXHRcdGFjdGl2aXRpZXM/OiBzdHJpbmdbXVxyXG5cdH1cclxuXHRlbnRpdGllcz86IE1vZGVsQ29sbGVjdGlvblxyXG5cdHVzZXJJbmZvPzogVXNlckluZm8gfCBQYXJ0aWFsPFVzZXJJbmZvPlxyXG59XHJcblxyXG4vKlxyXG5cdFRoZSBmdW5jdGlvbnMgaW4gdGhpcyBtb2R1bGUgYWxsIGFyZSBkZXNpZ25lZCBhcyBwcmVkaWNhdGVzIHRvIGRldGVybWluZSB3aGV0aGVyIGFcclxuXHR1c2VyIGhhcyBiZWVuIGdyYW50ZWQgYSBzZXQgb2YgYWN0aXZpdGllcyB0byBwZXJmb3JtLCBlaXRoZXIgYXQgYW4gZW50aXR5LXNwZWNpZmljXHJcblx0bGV2ZWwgb3IgYXQgYSBnbG9iYWwgbGV2ZWwuXHJcblxyXG5cdEJlY2F1c2UgSmF2YXNjcmlwdCBkb2VzbuKAmXQgaGF2ZSBuYW1lZCBwYXJhbWV0ZXJzLCB3ZSB1c2UgYW4gJ29wdGlvbnMgb2JqZWN0JyB0b1xyXG5cdHBhc3MgdGhlIG5lZWRlZCBpdGVtcy4gQnkgZW5zdXJpbmcgYWxsIHRoZXNlIGZ1bmN0aW9ucyBoYXZlIHRoZSBzYW1lIHNpZ25hdHVyZSxcclxuXHR3ZSBjYW4gdXNlIHRoZW0gaW50ZXJjaGFuZ2VhYmx5IGluIGNvbnN0cnVjdGluZyB0aGUgQWN0aXZpdHlSZXF1aXJlZENvbXBvbmVudC5cclxuXHJcblx0VGhlIG9wdGlvbnMgb2JqZWN0IGhhcyB0aGUgZm9sbG93aW5nIHN0cnVjdHVyZTpcclxuXHR7XHJcblx0XHRlbnRpdGllczoge1xyXG5cdFx0XHR7XHJcblx0XHRcdFx0MToge1xyXG5cdFx0XHRcdFx0XHRhY3Rpdml0aWVzOiBbXHJcblx0XHRcdFx0XHRcdFx0XCJhY3Rpdml0eU5hbWUxXCIsXHJcblx0XHRcdFx0XHRcdFx0XCJhY3Rpdml0eU5hbWUyXCJcclxuXHRcdFx0XHRcdFx0XHQuLi5cclxuXHRcdFx0XHRcdFx0XVxyXG5cdFx0XHRcdFx0fSxcclxuXHRcdFx0XHRcdC4uLlxyXG5cdFx0XHR9XHJcblx0XHR9LFxyXG5cdFx0ZW50aXR5OiB7XHJcblx0XHRcdFx0YWN0aXZpdGllczogW1xyXG5cdFx0XHRcdFx0XCJhY3Rpdml0eU5hbWUxXCIsXHJcblx0XHRcdFx0XHRcImFjdGl2aXR5TmFtZTJcIlxyXG5cdFx0XHRcdFx0Li4uXHJcblx0XHRcdFx0XVxyXG5cdFx0fVxyXG5cdFx0dXNlckluZm86IHtcclxuXHRcdFx0YWN0aXZpdGllczogW1xyXG5cdFx0XHRcdFwiYWN0aXZpdHlOYW1lMVwiLFxyXG5cdFx0XHRcdFwiYWN0aXZpdHlOYW1lMlwiLFxyXG5cdFx0XHRcdC4uLlxyXG5cdFx0XHRdXHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRgZW50aXR5YCBpcyBhIHNpbmdsZSBlbnRpdHkgYW5kIGBlbnRpdGllc2AgaXMgYSBzZXQgb2YgZW50aXRpZXMgdG8gd2hpY2ggYSB1c2VyIGhhcyBiZWVuIGdyYW50ZWQgYSBzZXQgb2YgYWN0aXZpdGllcy5cclxuXHRXaGlsZSB3ZSBjb3VsZCB1c2UgdGhlIGFycmF5IG9mIGVudGl0aWVzIGFuZCBlbGltaW5hdGUgdGhlIG5lZWQgZm9yIHRoZSBlbnRpdHkgcHJvcGVydHksIHRoZSBzaW5ndWxhciBwcm9wZXJ0eSB3aWxsIGJlXHJcblx0dXNlZCBpbiBtb3N0IGNhc2VzIGFuZCBpdCBwcmV2ZW50cyB0byB0aGUgbmVlZCB0byBzdHVmZiB0aGUgZW50aXR5IGluIGFuIGFycmF5IHVubmVjZXNzYXJpbHkuXHJcblxyXG5cdGB1c2VySW5mb2AgY29udGFpbnMgYSBwcm9wZXJ0eSB3aXRoIGFuIGFycmF5IG9mIGFjdGl2aXRpZXMgdGhlIHVzZXIgaGFzIGJlZW4gZ3JhbnRlZCBhdCBhIGdsb2JhbCBsZXZlbFxyXG4qL1xyXG5cclxuLyoqXHJcbiAqIFJldHVybiB0cnVlIGlmIHVzZXIgaGFzIGFjdGl2aXR5IGZvciB0aGUgc2luZ2xlIGVudGl0eVxyXG4gKlxyXG4gKiBAcGFyYW0ge3N0cmluZ30gcmVxdWlyZWRBY3Rpdml0eSBUaGUgYWN0aXZpdHkgcmVxdWlyZWQgdG8gcmV0dXJuIHRydWVcclxuICogQHBhcmFtIHtvYmplY3R9IG9wdGlvbnMgU2VlIGFib3ZlXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgY2FuUGVyZm9ybUFjdGl2aXR5T25FbnRpdHkgPSAocmVxdWlyZWRBY3Rpdml0eTogc3RyaW5nLCBvcHRpb25zOiBBY3Rpdml0eU9wdGlvbnMpID0+IHtcclxuXHRpZiAoIXJlcXVpcmVkQWN0aXZpdHkpIHtcclxuXHRcdHRocm93IG5ldyBFcnJvcignYHJlcXVpcmVkQWN0aXZpdHlgIG11c3QgYmUgcHJvdmlkZWQnKVxyXG5cdH1cclxuXHRpZiAoIW9wdGlvbnMuZW50aXR5KSB7XHJcblx0XHR0aHJvdyBuZXcgRXJyb3IoJ2BvcHRpb25zLmVudGl0eWAgbXVzdCBiZSBwcm92aWRlZCcpXHJcblx0fVxyXG5cdHJldHVybiAhIW9wdGlvbnMuZW50aXR5LmFjdGl2aXRpZXM/LmluY2x1ZGVzKHJlcXVpcmVkQWN0aXZpdHkpXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdHJ1ZSBpZiB1c2VyIGhhcyBhY3Rpdml0eSBvbiBhbnkgb2YgdGhlIGVudGl0aWVzXHJcbiAqXHJcbiAqIEBwYXJhbSB7c3RyaW5nfSByZXF1aXJlZEFjdGl2aXR5IFRoZSBhY3Rpdml0eSByZXF1aXJlZCB0byByZXR1cm4gdHJ1ZVxyXG4gKiBAcGFyYW0ge29iamVjdH0gb3B0aW9ucyBTZWUgYWJvdmVcclxuICovXHJcbmV4cG9ydCBjb25zdCBjYW5QZXJmb3JtQWN0aXZpdHlPblNvbWVFbnRpdGllcyA9IChyZXF1aXJlZEFjdGl2aXR5OiBzdHJpbmcsIG9wdGlvbnM6IEFjdGl2aXR5T3B0aW9ucykgPT4ge1xyXG5cdGlmICghcmVxdWlyZWRBY3Rpdml0eSkge1xyXG5cdFx0dGhyb3cgbmV3IEVycm9yKCdgcmVxdWlyZWRBY3Rpdml0eWAgbXVzdCBiZSBwcm92aWRlZCcpXHJcblx0fVxyXG5cdGlmICghb3B0aW9ucy5lbnRpdGllcykge1xyXG5cdFx0dGhyb3cgbmV3IEVycm9yKCdgb3B0aW9ucy5lbnRpdGllc2AgbXVzdCBiZSBwcm92aWRlZCcpXHJcblx0fVxyXG5cdHJldHVybiBnZXRNb2RlbEFycmF5KG9wdGlvbnMuZW50aXRpZXMpLnNvbWUoZW50aXR5ID0+IGNhblBlcmZvcm1BY3Rpdml0eU9uRW50aXR5KHJlcXVpcmVkQWN0aXZpdHksIHsgZW50aXR5IH0pKVxyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIHRydWUgaWYgdXNlciBoYXMgYWN0aXZpdHkgZ2xvYmFsbHlcclxuICpcclxuICogVGhpcyBmdW5jdGlvbiBjYW4gYWNjZXB0IGFuIG51bGwvdW5kZWZpbmVkIHVzZXJJbmZvIHByb3BlcnR5IGZvciB0aGVcclxuICogb3B0aW9ucyBhcmd1bWVudC4gSW4gd2hpY2ggY2FzZSBpdCByZXR1cm5zIGZhbHNlLiBUaGlzIGlzIGJlY2F1c2UgdXNlckluZm9cclxuICogbWF5IG5vdCBiZSBsb2FkZWQgeWV0LiBJZiBpdCBpcyBwcm92aWRlZCBob3dldmVyLCBpdCBtdXN0IGNvbnRhaW4gYW5cclxuICogYWN0aXZpdGllcyBhcnJheVxyXG4gKlxyXG4gKiBAcGFyYW0ge3N0cmluZ30gcmVxdWlyZWRBY3Rpdml0eSBUaGUgYWN0aXZpdHkgcmVxdWlyZWQgdG8gcmV0dXJuIHRydWVcclxuICogQHBhcmFtIHtvYmplY3R9IG9wdGlvbnMgU2VlIGFib3ZlXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgY2FuUGVyZm9ybUFjdGl2aXR5R2xvYmFsbHkgPSAocmVxdWlyZWRBY3Rpdml0eTogc3RyaW5nLCBvcHRpb25zOiBBY3Rpdml0eU9wdGlvbnMpID0+IHtcclxuXHRpZiAoIXJlcXVpcmVkQWN0aXZpdHkpIHtcclxuXHRcdHRocm93IG5ldyBFcnJvcignYHJlcXVpcmVkQWN0aXZpdHlgIG11c3QgYmUgcHJvdmlkZWQnKVxyXG5cdH1cclxuXHRpZiAoISFvcHRpb25zLnVzZXJJbmZvICYmICEhb3B0aW9ucy51c2VySW5mby5hY3Rpdml0aWVzICYmICFBcnJheS5pc0FycmF5KG9wdGlvbnMudXNlckluZm8uYWN0aXZpdGllcykpIHtcclxuXHRcdHRocm93IG5ldyBFcnJvcignYG9wdGlvbnMudXNlckluZm8uYWN0aXZpdGllc2AgbXVzdCBiZSBhbiBhcnJheScpXHJcblx0fVxyXG5cdHJldHVybiAhIW9wdGlvbnMudXNlckluZm8gJiYgISFvcHRpb25zLnVzZXJJbmZvLmFjdGl2aXRpZXMgJiYgb3B0aW9ucy51c2VySW5mby5hY3Rpdml0aWVzLmluY2x1ZGVzKHJlcXVpcmVkQWN0aXZpdHkpXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdHJ1ZSBpZiB1c2VyIGhhcyBhY3Rpdml0eSBlaXRoZXIgZ2xvYmFsbHkgb3Igb24gYSBzaW5nbGUgZW50aXR5XHJcbiAqXHJcbiAqIEBwYXJhbSB7c3RyaW5nfSByZXF1aXJlZEFjdGl2aXR5IFRoZSBhY3Rpdml0eSByZXF1aXJlZCB0byByZXR1cm4gdHJ1ZVxyXG4gKiBAcGFyYW0ge29iamVjdH0gb3B0aW9ucyBTZWUgYWJvdmVcclxuICovXHJcbmV4cG9ydCBjb25zdCBjYW5QZXJmb3JtQWN0aXZpdHlHbG9iYWxseU9yT25FbnRpdHkgPSAocmVxdWlyZWRBY3Rpdml0eTogc3RyaW5nLCBvcHRpb25zOiBBY3Rpdml0eU9wdGlvbnMpID0+XHJcblx0Y2FuUGVyZm9ybUFjdGl2aXR5R2xvYmFsbHkocmVxdWlyZWRBY3Rpdml0eSwgb3B0aW9ucykgfHwgY2FuUGVyZm9ybUFjdGl2aXR5T25FbnRpdHkocmVxdWlyZWRBY3Rpdml0eSwgb3B0aW9ucylcclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdHJ1ZSBpZiB1c2VyIGhhcyBhY3Rpdml0eSBnbG9iYWxseSBvciBvbiBhbnkgb2YgdGhlIGVudGl0aWVzIHByb3ZpZGVkXHJcbiAqXHJcbiAqIEBwYXJhbSB7c3RyaW5nfSByZXF1aXJlZEFjdGl2aXR5IFRoZSBhY3Rpdml0eSByZXF1aXJlZCB0byByZXR1cm4gdHJ1ZVxyXG4gKiBAcGFyYW0ge29iamVjdH0gb3B0aW9ucyBTZWUgYWJvdmVcclxuICovXHJcbmV4cG9ydCBjb25zdCBjYW5QZXJmb3JtQWN0aXZpdHlHbG9iYWxseU9yT25Tb21lRW50aXRpZXMgPSAocmVxdWlyZWRBY3Rpdml0eTogc3RyaW5nLCBvcHRpb25zOiBBY3Rpdml0eU9wdGlvbnMpID0+IHtcclxuXHRyZXR1cm4gKFxyXG5cdFx0Y2FuUGVyZm9ybUFjdGl2aXR5R2xvYmFsbHkocmVxdWlyZWRBY3Rpdml0eSwgb3B0aW9ucykgfHxcclxuXHRcdGNhblBlcmZvcm1BY3Rpdml0eU9uU29tZUVudGl0aWVzKHJlcXVpcmVkQWN0aXZpdHksIG9wdGlvbnMpXHJcblx0KVxyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIGFuIG9wdGlvbnMgb2JqZWN0IHRoYXQgY2FuIGJlIHVzZWQgaW4gdGhlIGZ1bmN0aW9ucyBpbiB0aGlzIG1vZHVsZS4gVGhpc1xyXG4gKiBlbmNhcHN1bGF0ZXMgdGhlIGRlZmF1bHQgbG9naWMgb2YgbG9va2luZyBpbiBzdGF0ZSBmb3IgYSBzZXQgb2YgZW50aXRpZXMgb3JcclxuICogbG9va2luZyBpbiBwcm9wcyBmb3IgYSBzaW5nbGUgZW50aXR5LlxyXG4gKlxyXG4gKiBPdmVycmlkZSBvciBkZWNvcmF0ZSB3aXRoIGFwcCBzcGVjaWZpYyBsb2dpYyBpbiB5b3VyIGFwcCBpZiBuZWVkZWQuXHJcbiAqXHJcbiAqIEBwYXJhbSB7T2JqZWN0fSBzdGF0ZSBUaGUgcmVkdXggc3RhdGVcclxuICogQHBhcmFtIHtPYmplY3R9IFtwcm9wc10gQSBwcm9wcyBvYmplY3QgKHR5cGljYWxseSBvd25Qcm9wcylcclxuICogQHBhcmFtIHtzdHJpbmd9IFttb2RlbHNQcm9wZXJ0eV0gVGhlIHByb3BlcnR5IHVzZWQgdG8gbG9jYXRlIHRoZSBlbnRpdHkgb3IgZW50aXRpZXNcclxuICogbmVlZGVkIGZvciBlbnRpdHktbGV2ZWwgYWN0aXZpdHkgZ3JhbnRzLiBGb3Igc2V0cyBvZiBlbnRpdGllcywgdGhpcyBmdW5jdGlvblxyXG4gKiBsb29rcyBpbiBgc3RhdGUubW9kZWxzYC4gRm9yIGEgc2luZ2xlIGVudGl0eSwgaXQgbG9va3MgaW4gYHByb3BzYFxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IGRlZmF1bHRPcHRpb25zID0gKHN0YXRlOiBCYXNlUmVkdXhTdGF0ZSwgcHJvcHM/OiBhbnksIG1vZGVsc1Byb3BlcnR5Pzogc3RyaW5nKTogQWN0aXZpdHlPcHRpb25zID0+IHtcclxuXHQvLyBpZiBpbXBsZW1lbnRpbmcgaW4gYXBwLCBvdmVycmlkZSAvIGRlY29yYXRlIHdpdGggYXBwIHNwZWNpZmljIGxvZ2ljXHJcblx0cmV0dXJuIHtcclxuXHRcdGVudGl0eTogbW9kZWxzUHJvcGVydHkgPyBwcm9wcyAmJiBwcm9wc1ttb2RlbHNQcm9wZXJ0eV0gOiB1bmRlZmluZWQsXHJcblx0XHRlbnRpdGllczogbW9kZWxzUHJvcGVydHkgPyAoc3RhdGUubW9kZWxzW21vZGVsc1Byb3BlcnR5XSBhcyBNb2RlbENvbGxlY3Rpb24gfCB1bmRlZmluZWQpIDogdW5kZWZpbmVkLFxyXG5cdFx0dXNlckluZm86IHN0YXRlLm1vZGVscy51c2VyICYmIHN0YXRlLm1vZGVscy51c2VyLnVzZXJJbmZvXHJcblx0fVxyXG59XHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsSUFBQUEsTUFBQSxHQUFBQyxPQUFBO0FBVUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLE1BQU1DLDBCQUEwQixHQUFHQSxDQUFDQyxnQkFBd0IsRUFBRUMsT0FBd0IsS0FBSztFQUNqRyxJQUFJLENBQUNELGdCQUFnQixFQUFFO0lBQ3RCLE1BQU0sSUFBSUUsS0FBSyxDQUFDLHFDQUFxQyxDQUFDO0VBQ3ZEO0VBQ0EsSUFBSSxDQUFDRCxPQUFPLENBQUNFLE1BQU0sRUFBRTtJQUNwQixNQUFNLElBQUlELEtBQUssQ0FBQyxtQ0FBbUMsQ0FBQztFQUNyRDtFQUNBLE9BQU8sQ0FBQyxDQUFDRCxPQUFPLENBQUNFLE1BQU0sQ0FBQ0MsVUFBVSxFQUFFQyxRQUFRLENBQUNMLGdCQUFnQixDQUFDO0FBQy9ELENB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
@@ -1,38 +1,42 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.singularArticleForBaseRole = exports.textForBaseRole = void 0;
4
- const baseRole_1 = require("../constants/baseRole");
5
- const textForBaseRole = (role) => {
6
- switch (role) {
7
- case baseRole_1.BASE_ROLE.SUPER_ADMIN:
8
- return 'Super Admin';
9
- case baseRole_1.BASE_ROLE.ADMIN:
10
- return 'Admin';
11
- case baseRole_1.BASE_ROLE.CREATOR:
12
- return 'Creator';
13
- case baseRole_1.BASE_ROLE.GROUP_LEARNER:
14
- return 'Student';
15
- case baseRole_1.BASE_ROLE.GROUP_OWNER:
16
- return 'Instructor';
17
- case baseRole_1.BASE_ROLE.GROUP_GRADER:
18
- return 'Grader';
19
- default:
20
- throw new Error(`role '${role}' was not found in switch statement`);
21
- }
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.textForBaseRole = exports.singularArticleForBaseRole = void 0;
7
+ var _baseRole = require("../constants/baseRole");
8
+ const textForBaseRole = role => {
9
+ switch (role) {
10
+ case _baseRole.BASE_ROLE.SUPER_ADMIN:
11
+ return 'Super Admin';
12
+ case _baseRole.BASE_ROLE.ADMIN:
13
+ return 'Admin';
14
+ case _baseRole.BASE_ROLE.CREATOR:
15
+ return 'Creator';
16
+ case _baseRole.BASE_ROLE.GROUP_LEARNER:
17
+ return 'Student';
18
+ case _baseRole.BASE_ROLE.GROUP_OWNER:
19
+ return 'Instructor';
20
+ case _baseRole.BASE_ROLE.GROUP_GRADER:
21
+ return 'Grader';
22
+ default:
23
+ throw new Error(`role '${role}' was not found in switch statement`);
24
+ }
22
25
  };
23
26
  exports.textForBaseRole = textForBaseRole;
24
- const singularArticleForBaseRole = (role) => {
25
- switch (role) {
26
- case baseRole_1.BASE_ROLE.ADMIN:
27
- case baseRole_1.BASE_ROLE.GROUP_OWNER:
28
- return 'an';
29
- case baseRole_1.BASE_ROLE.SUPER_ADMIN:
30
- case baseRole_1.BASE_ROLE.GROUP_LEARNER:
31
- case baseRole_1.BASE_ROLE.GROUP_GRADER:
32
- case baseRole_1.BASE_ROLE.CREATOR:
33
- return 'a';
34
- default:
35
- throw new Error(`role '${role}' was not found in switch statement`);
36
- }
27
+ const singularArticleForBaseRole = role => {
28
+ switch (role) {
29
+ case _baseRole.BASE_ROLE.ADMIN:
30
+ case _baseRole.BASE_ROLE.GROUP_OWNER:
31
+ return 'an';
32
+ case _baseRole.BASE_ROLE.SUPER_ADMIN:
33
+ case _baseRole.BASE_ROLE.GROUP_LEARNER:
34
+ case _baseRole.BASE_ROLE.GROUP_GRADER:
35
+ case _baseRole.BASE_ROLE.CREATOR:
36
+ return 'a';
37
+ default:
38
+ throw new Error(`role '${role}' was not found in switch statement`);
39
+ }
37
40
  };
38
41
  exports.singularArticleForBaseRole = singularArticleForBaseRole;
42
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYmFzZVJvbGUiLCJyZXF1aXJlIiwidGV4dEZvckJhc2VSb2xlIiwicm9sZSIsIkJBU0VfUk9MRSIsIlNVUEVSX0FETUlOIiwiQURNSU4iLCJDUkVBVE9SIiwiR1JPVVBfTEVBUk5FUiIsIkdST1VQX09XTkVSIiwiR1JPVVBfR1JBREVSIiwiRXJyb3IiLCJleHBvcnRzIiwic2luZ3VsYXJBcnRpY2xlRm9yQmFzZVJvbGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvYmFzZVJvbGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQkFTRV9ST0xFIH0gZnJvbSAnLi4vY29uc3RhbnRzL2Jhc2VSb2xlJ1xyXG5cclxuZXhwb3J0IGNvbnN0IHRleHRGb3JCYXNlUm9sZSA9IChyb2xlOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xyXG5cdHN3aXRjaCAocm9sZSkge1xyXG5cdFx0Y2FzZSBCQVNFX1JPTEUuU1VQRVJfQURNSU46XHJcblx0XHRcdHJldHVybiAnU3VwZXIgQWRtaW4nXHJcblx0XHRjYXNlIEJBU0VfUk9MRS5BRE1JTjpcclxuXHRcdFx0cmV0dXJuICdBZG1pbidcclxuXHRcdGNhc2UgQkFTRV9ST0xFLkNSRUFUT1I6XHJcblx0XHRcdHJldHVybiAnQ3JlYXRvcidcclxuXHRcdGNhc2UgQkFTRV9ST0xFLkdST1VQX0xFQVJORVI6XHJcblx0XHRcdHJldHVybiAnU3R1ZGVudCdcclxuXHRcdGNhc2UgQkFTRV9ST0xFLkdST1VQX09XTkVSOlxyXG5cdFx0XHRyZXR1cm4gJ0luc3RydWN0b3InXHJcblx0XHRjYXNlIEJBU0VfUk9MRS5HUk9VUF9HUkFERVI6XHJcblx0XHRcdHJldHVybiAnR3JhZGVyJ1xyXG5cdFx0ZGVmYXVsdDpcclxuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGByb2xlICcke3JvbGV9JyB3YXMgbm90IGZvdW5kIGluIHN3aXRjaCBzdGF0ZW1lbnRgKVxyXG5cdH1cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IHNpbmd1bGFyQXJ0aWNsZUZvckJhc2VSb2xlID0gKHJvbGU6IHN0cmluZyk6IHN0cmluZyA9PiB7XHJcblx0c3dpdGNoIChyb2xlKSB7XHJcblx0XHRjYXNlIEJBU0VfUk9MRS5BRE1JTjpcclxuXHRcdGNhc2UgQkFTRV9ST0xFLkdST1VQX09XTkVSOlxyXG5cdFx0XHRyZXR1cm4gJ2FuJ1xyXG5cdFx0Y2FzZSBCQVNFX1JPTEUuU1VQRVJfQURNSU46XHJcblx0XHRjYXNlIEJBU0VfUk9MRS5HUk9VUF9MRUFSTkVSOlxyXG5cdFx0Y2FzZSBCQVNFX1JPTEUuR1JPVVBfR1JBREVSOlxyXG5cdFx0Y2FzZSBCQVNFX1JPTEUuQ1JFQVRPUjpcclxuXHRcdFx0cmV0dXJuICdhJ1xyXG5cdFx0ZGVmYXVsdDpcclxuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGByb2xlICcke3JvbGV9JyB3YXMgbm90IGZvdW5kIGluIHN3aXRjaCBzdGF0ZW1lbnRgKVxyXG5cdH1cclxufVxyXG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLFNBQUEsR0FBQUMsT0FBQTtBQUVPLE1BQU1DLGVBQWUsR0FBSUMsSUFBWSxJQUFhO0VBQ3hELFFBQVFBLElBQUk7SUFDWCxLQUFLQyxtQkFBUyxDQUFDQyxXQUFXO01BQ3pCLE9BQU8sYUFBYTtJQUNyQixLQUFLRCxtQkFBUyxDQUFDRSxLQUFLO01BQ25CLE9BQU8sT0FBTztJQUNmLEtBQUtGLG1CQUFTLENBQUNHLE9BQU87TUFDckIsT0FBTyxTQUFTO0lBQ2pCLEtBQUtILG1CQUFTLENBQUNJLGFBQWE7TUFDM0IsT0FBTyxTQUFTO0lBQ2pCLEtBQUtKLG1CQUFTLENBQUNLLFdBQVc7TUFDekIsT0FBTyxZQUFZO0lBQ3BCLEtBQUtMLG1CQUFTLENBQUNNLFlBQVk7TUFDMUIsT0FBTyxRQUFRO0lBQ2hCO01BQ0MsTUFBTSxJQUFJQyxLQUFLLENBQUMsU0FBU1IsSUFBSSxxQ0FBcUMsQ0FBQztFQUNyRTtBQUNELENBQUM7QUFBQVMsT0FBQSxDQUFBVixlQUFBLEdBQUFBLGVBQUE7QUFFTSxNQUFNVywwQkFBMEIsR0FBSVYsSUFBWSxJQUFhO0VBQ25FLFFBQVFBLElBQUk7SUFDWCxLQUFLQyxtQkFBUyxDQUFDRSxLQUFLO0lBQ3BCLEtBQUtGLG1CQUFTLENBQUNLLFdBQVc7TUFDekIsT0FBTyxJQUFJO0lBQ1osS0FBS0wsbUJBQVMsQ0FBQ0MsV0FBVztJQUMxQixLQUFLRCxtQkFBUyxDQUFDSSxhQUFhO0lBQzVCLEtBQUtKLG1CQUFTLENBQUNNLFlBQVk7SUFDM0IsS0FBS04sbUJBQVMsQ0FBQ0csT0FBTztNQUNyQixPQUFPLEdBQUc7SUFDWDtNQUNDLE1BQU0sSUFBSUksS0FBSyxDQUFDLFNBQVNSLElBQUkscUNBQXFDLENBQUM7RUFDckU7QUFDRCxDQUFDO0FBQUFTLE9BQUEsQ0FBQUMsMEJBQUEsR0FBQUEsMEJBQUEiLCJpZ25vcmVMaXN0IjpbXX0=