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,68 +1,82 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
3
7
  exports.configureMapStateToProps = exports.configureEntityComponent = void 0;
4
8
  exports.default = entityComponent;
5
- const tslib_1 = require("tslib");
6
- const jsx_runtime_1 = require("react/jsx-runtime");
7
- const react_1 = require("react");
8
- const react_redux_1 = require("react-redux");
9
- const react_router_dom_1 = require("react-router-dom");
10
- const baseActivity_1 = require("../../utils/baseActivity");
11
- const route_1 = require("../../utils/route");
12
- const CollectionItemComponent_1 = tslib_1.__importDefault(require("./CollectionItemComponent"));
13
- const ModelErrorRedirectComponent_1 = tslib_1.__importDefault(require("./ModelErrorRedirectComponent"));
9
+ var _react = require("react");
10
+ var _reactRedux = require("react-redux");
11
+ var _reactRouterDom = require("react-router-dom");
12
+ var _baseActivity = require("../../utils/baseActivity");
13
+ var _route = require("../../utils/route");
14
+ var _CollectionItemComponent = _interopRequireDefault(require("./CollectionItemComponent"));
15
+ var _ModelErrorRedirectComponent = _interopRequireDefault(require("./ModelErrorRedirectComponent"));
16
+ var _jsxRuntime = require("react/jsx-runtime");
14
17
  const configureEntityComponent = (WrappedComponent, WrappedHeader, propName, entityName) => {
15
- return class EntityComponent extends react_1.Component {
16
- render() {
17
- const { model, modelName } = this.props;
18
- const newProps = {
19
- [propName]: model
20
- };
21
- return ((0, jsx_runtime_1.jsxs)("div", { children: [!!WrappedHeader && (0, jsx_runtime_1.jsx)(WrappedHeader, Object.assign({}, newProps)), model.isDeleted ? ((0, jsx_runtime_1.jsx)(react_router_dom_1.Redirect, { to: `/${entityName === 'groups' ? 'courses' : entityName}` })) : ((0, jsx_runtime_1.jsx)(WrappedComponent, Object.assign({}, newProps, { modelName: modelName })))] }));
22
- }
23
- };
18
+ return class EntityComponent extends _react.Component {
19
+ render() {
20
+ const {
21
+ model,
22
+ modelName
23
+ } = this.props;
24
+ const newProps = {
25
+ [propName]: model
26
+ };
27
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
28
+ children: [!!WrappedHeader && /*#__PURE__*/(0, _jsxRuntime.jsx)(WrappedHeader, {
29
+ ...newProps
30
+ }), model.isDeleted ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactRouterDom.Redirect, {
31
+ to: `/${entityName === 'groups' ? 'courses' : entityName}`
32
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(WrappedComponent, {
33
+ ...newProps,
34
+ modelName: modelName
35
+ })]
36
+ });
37
+ }
38
+ };
24
39
  };
25
40
  exports.configureEntityComponent = configureEntityComponent;
26
41
  const configureMapStateToProps = (readActivity, modelName) => (state, ownProps) => {
27
- const canReadGlobally = (0, baseActivity_1.canPerformActivityGlobally)(readActivity, (0, baseActivity_1.defaultOptions)(state));
28
- // override modelName if admin does not have a role in the given entity
29
- let newModelName = modelName;
30
- const modelId = (0, route_1.getModelIdFromRouteMatchParams)(ownProps.match.params, newModelName);
31
- let hasAccess;
32
- if (modelId === undefined) {
33
- hasAccess = false;
34
- }
35
- else {
36
- hasAccess =
37
- !!state.models[modelName] &&
38
- !!state.models[modelName][modelId] &&
39
- !!state.models[modelName][modelId].id;
40
- }
41
- if (canReadGlobally && !hasAccess) {
42
- newModelName = `search.${newModelName}`;
43
- }
44
- return {
45
- modelName: newModelName
46
- };
42
+ const canReadGlobally = (0, _baseActivity.canPerformActivityGlobally)(readActivity, (0, _baseActivity.defaultOptions)(state));
43
+
44
+ // override modelName if admin does not have a role in the given entity
45
+ let newModelName = modelName;
46
+ const modelId = (0, _route.getModelIdFromRouteMatchParams)(ownProps.match.params, newModelName);
47
+ let hasAccess;
48
+ if (modelId === undefined) {
49
+ hasAccess = false;
50
+ } else {
51
+ hasAccess = !!state.models[modelName] && !!state.models[modelName][modelId] && !!state.models[modelName][modelId].id;
52
+ }
53
+ if (canReadGlobally && !hasAccess) {
54
+ newModelName = `search.${newModelName}`;
55
+ }
56
+ return {
57
+ modelName: newModelName
58
+ };
47
59
  };
48
- exports.configureMapStateToProps = configureMapStateToProps;
49
- /**
50
- * A wrapper using CollectionItemComponent that passes down the `model`, to allow nesting of collection components.
51
- * Uses `CollectionItemComponent`, `ModelErrorRedirectComponent`, `withRouter`, and `connect`.
52
- *
53
- * This HOC does NOT pass extra props through to children
54
- *
55
- * @param WrappedComponent The wrapped component
56
- * @param WrappedHeader The wrapped header
57
- * @param readActivity Read activity that will be checked for global access
58
- * @param modelName Model name passed to wrapped component and `CollectionItemComponent`. May be modified when only global read is available
59
- * @param propName The name for the prop with which the `model` will be passed to the wrapped component
60
+
61
+ /**
62
+ * A wrapper using CollectionItemComponent that passes down the `model`, to allow nesting of collection components.
63
+ * Uses `CollectionItemComponent`, `ModelErrorRedirectComponent`, `withRouter`, and `connect`.
64
+ *
65
+ * This HOC does NOT pass extra props through to children
66
+ *
67
+ * @param WrappedComponent The wrapped component
68
+ * @param WrappedHeader The wrapped header
69
+ * @param readActivity Read activity that will be checked for global access
70
+ * @param modelName Model name passed to wrapped component and `CollectionItemComponent`. May be modified when only global read is available
71
+ * @param propName The name for the prop with which the `model` will be passed to the wrapped component
60
72
  */
73
+ exports.configureMapStateToProps = configureMapStateToProps;
61
74
  function entityComponent(WrappedComponent, WrappedHeader, readActivity, modelName, propName) {
62
- const EntityComponent = (0, exports.configureEntityComponent)(WrappedComponent, WrappedHeader, propName, modelName);
63
- const mapStateToProps = (0, exports.configureMapStateToProps)(readActivity, modelName);
64
- // @ts-ignore: could not match inferred type from the `connect` HOC
65
- return (0, react_router_dom_1.withRouter)(
66
- // @ts-ignore: could not match inferred type from the `connect` HOC
67
- (0, react_redux_1.connect)(mapStateToProps)((0, CollectionItemComponent_1.default)((0, ModelErrorRedirectComponent_1.default)(EntityComponent), modelName)));
75
+ const EntityComponent = configureEntityComponent(WrappedComponent, WrappedHeader, propName, modelName);
76
+ const mapStateToProps = configureMapStateToProps(readActivity, modelName);
77
+ // @ts-ignore: could not match inferred type from the `connect` HOC
78
+ return (0, _reactRouterDom.withRouter)(
79
+ // @ts-ignore: could not match inferred type from the `connect` HOC
80
+ (0, _reactRedux.connect)(mapStateToProps)((0, _CollectionItemComponent.default)((0, _ModelErrorRedirectComponent.default)(EntityComponent), modelName)));
68
81
  }
82
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3JlYWN0UmVkdXgiLCJfcmVhY3RSb3V0ZXJEb20iLCJfYmFzZUFjdGl2aXR5IiwiX3JvdXRlIiwiX0NvbGxlY3Rpb25JdGVtQ29tcG9uZW50IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9Nb2RlbEVycm9yUmVkaXJlY3RDb21wb25lbnQiLCJfanN4UnVudGltZSIsImNvbmZpZ3VyZUVudGl0eUNvbXBvbmVudCIsIldyYXBwZWRDb21wb25lbnQiLCJXcmFwcGVkSGVhZGVyIiwicHJvcE5hbWUiLCJlbnRpdHlOYW1lIiwiRW50aXR5Q29tcG9uZW50IiwiQ29tcG9uZW50IiwicmVuZGVyIiwibW9kZWwiLCJtb2RlbE5hbWUiLCJwcm9wcyIsIm5ld1Byb3BzIiwianN4cyIsImNoaWxkcmVuIiwianN4IiwiaXNEZWxldGVkIiwiUmVkaXJlY3QiLCJ0byIsImV4cG9ydHMiLCJjb25maWd1cmVNYXBTdGF0ZVRvUHJvcHMiLCJyZWFkQWN0aXZpdHkiLCJzdGF0ZSIsIm93blByb3BzIiwiY2FuUmVhZEdsb2JhbGx5IiwiY2FuUGVyZm9ybUFjdGl2aXR5R2xvYmFsbHkiLCJkZWZhdWx0T3B0aW9ucyIsIm5ld01vZGVsTmFtZSIsIm1vZGVsSWQiLCJnZXRNb2RlbElkRnJvbVJvdXRlTWF0Y2hQYXJhbXMiLCJtYXRjaCIsInBhcmFtcyIsImhhc0FjY2VzcyIsInVuZGVmaW5lZCIsIm1vZGVscyIsImlkIiwiZW50aXR5Q29tcG9uZW50IiwibWFwU3RhdGVUb1Byb3BzIiwid2l0aFJvdXRlciIsImNvbm5lY3QiLCJDb2xsZWN0aW9uSXRlbUNvbXBvbmVudCIsIk1vZGVsRXJyb3JSZWRpcmVjdENvbXBvbmVudCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0hPQy9FbnRpdHlDb21wb25lbnQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29tcG9uZW50Q2xhc3MsIENvbXBvbmVudFR5cGUgfSBmcm9tICdyZWFjdCdcclxuaW1wb3J0IHsgY29ubmVjdCB9IGZyb20gJ3JlYWN0LXJlZHV4J1xyXG5pbXBvcnQgeyBSZWRpcmVjdCwgUm91dGVDb21wb25lbnRQcm9wcywgd2l0aFJvdXRlciB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nXHJcbmltcG9ydCB7IEJhc2VSZWR1eFN0YXRlLCBEZWxldGFibGVNb2RlbCwgTW9kZWwsIE1vZGVsQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzJ1xyXG5pbXBvcnQgeyBDb2xsZWN0aW9uQ29tbW9uUHJvcHMgfSBmcm9tICcuLi8uLi90eXBlcy9Db2xsZWN0aW9uJ1xyXG5pbXBvcnQgeyBjYW5QZXJmb3JtQWN0aXZpdHlHbG9iYWxseSwgZGVmYXVsdE9wdGlvbnMgfSBmcm9tICcuLi8uLi91dGlscy9iYXNlQWN0aXZpdHknXHJcbmltcG9ydCB7IGdldE1vZGVsSWRGcm9tUm91dGVNYXRjaFBhcmFtcyB9IGZyb20gJy4uLy4uL3V0aWxzL3JvdXRlJ1xyXG5pbXBvcnQgQ29sbGVjdGlvbkl0ZW1Db21wb25lbnQsIHsgQ29sbGVjdGlvbkl0ZW1Db21wb25lbnRXcmFwcGVkUHJvcHMgfSBmcm9tICcuL0NvbGxlY3Rpb25JdGVtQ29tcG9uZW50J1xyXG5pbXBvcnQgTW9kZWxFcnJvclJlZGlyZWN0Q29tcG9uZW50IGZyb20gJy4vTW9kZWxFcnJvclJlZGlyZWN0Q29tcG9uZW50J1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFbnRpdHlDb21wb25lbnRQcm9wczxUIGV4dGVuZHMgRGVsZXRhYmxlTW9kZWw+XHJcblx0ZXh0ZW5kcyBDb2xsZWN0aW9uSXRlbUNvbXBvbmVudFdyYXBwZWRQcm9wczxUPixcclxuXHRcdFJvdXRlQ29tcG9uZW50UHJvcHMge1xyXG5cdG1vZGVsOiBUXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEVudGl0eUNvbXBvbmVudFdyYXBwZWRIZWFkZXJQcm9wczxUIGV4dGVuZHMgRGVsZXRhYmxlTW9kZWwsIFRQcm9wIGV4dGVuZHMga2V5b2YgYW55PiA9IHsgW1AgaW4gVFByb3BdOiBUIH1cclxuXHJcbmV4cG9ydCB0eXBlIEVudGl0eUNvbXBvbmVudFdyYXBwZWRQcm9wczxcclxuXHRUIGV4dGVuZHMgRGVsZXRhYmxlTW9kZWwsXHJcblx0VFByb3AgZXh0ZW5kcyBrZXlvZiBhbnlcclxuPiA9IEVudGl0eUNvbXBvbmVudFdyYXBwZWRIZWFkZXJQcm9wczxULCBUUHJvcD4gJiB7XHJcblx0bW9kZWxOYW1lOiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGNvbmZpZ3VyZUVudGl0eUNvbXBvbmVudCA9IDxUIGV4dGVuZHMgRGVsZXRhYmxlTW9kZWwsIFRQcm9wTmFtZSBleHRlbmRzIGtleW9mIGFueT4oXHJcblx0V3JhcHBlZENvbXBvbmVudDogQ29tcG9uZW50VHlwZTxFbnRpdHlDb21wb25lbnRXcmFwcGVkUHJvcHM8VCwgVFByb3BOYW1lPj4sXHJcblx0V3JhcHBlZEhlYWRlcjogQ29tcG9uZW50VHlwZTxFbnRpdHlDb21wb25lbnRXcmFwcGVkSGVhZGVyUHJvcHM8VCwgVFByb3BOYW1lPj4gfCB1bmRlZmluZWQsXHJcblx0cHJvcE5hbWU6IFRQcm9wTmFtZSxcclxuXHRlbnRpdHlOYW1lOiBzdHJpbmdcclxuKSA9PiB7XHJcblx0cmV0dXJuIGNsYXNzIEVudGl0eUNvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudDxFbnRpdHlDb21wb25lbnRQcm9wczxUPj4ge1xyXG5cdFx0cmVuZGVyKCkge1xyXG5cdFx0XHRjb25zdCB7IG1vZGVsLCBtb2RlbE5hbWUgfTogeyBtb2RlbDogVDsgbW9kZWxOYW1lOiBzdHJpbmcgfSA9IHRoaXMucHJvcHNcclxuXHRcdFx0Y29uc3QgbmV3UHJvcHMgPSB7XHJcblx0XHRcdFx0W3Byb3BOYW1lXTogbW9kZWxcclxuXHRcdFx0fSBhcyBFbnRpdHlDb21wb25lbnRXcmFwcGVkSGVhZGVyUHJvcHM8VCwgVFByb3BOYW1lPlxyXG5cdFx0XHRyZXR1cm4gKFxyXG5cdFx0XHRcdDxkaXY+XHJcblx0XHRcdFx0XHR7ISFXcmFwcGVkSGVhZGVyICYmIDxXcmFwcGVkSGVhZGVyIHsuLi5uZXdQcm9wc30gLz59XHJcblx0XHRcdFx0XHR7bW9kZWwuaXNEZWxldGVkID8gKFxyXG5cdFx0XHRcdFx0XHQ8UmVkaXJlY3QgdG89e2AvJHtlbnRpdHlOYW1lID09PSAnZ3JvdXBzJyA/ICdjb3Vyc2VzJyA6IGVudGl0eU5hbWV9YH0gLz5cclxuXHRcdFx0XHRcdCkgOiAoXHJcblx0XHRcdFx0XHRcdDxXcmFwcGVkQ29tcG9uZW50IHsuLi5uZXdQcm9wc30gbW9kZWxOYW1lPXttb2RlbE5hbWV9IC8+XHJcblx0XHRcdFx0XHQpfVxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHQpXHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgY29uZmlndXJlTWFwU3RhdGVUb1Byb3BzID1cclxuXHQ8VCBleHRlbmRzIERlbGV0YWJsZU1vZGVsPihyZWFkQWN0aXZpdHk6IHN0cmluZywgbW9kZWxOYW1lOiBzdHJpbmcpID0+XHJcblx0KHN0YXRlOiBCYXNlUmVkdXhTdGF0ZSwgb3duUHJvcHM6IEVudGl0eUNvbXBvbmVudFByb3BzPFQ+KSA9PiB7XHJcblx0XHRjb25zdCBjYW5SZWFkR2xvYmFsbHkgPSBjYW5QZXJmb3JtQWN0aXZpdHlHbG9iYWxseShyZWFkQWN0aXZpdHksIGRlZmF1bHRPcHRpb25zKHN0YXRlKSlcclxuXHJcblx0XHQvLyBvdmVycmlkZSBtb2RlbE5hbWUgaWYgYWRtaW4gZG9lcyBub3QgaGF2ZSBhIHJvbGUgaW4gdGhlIGdpdmVuIGVudGl0eVxyXG5cdFx0bGV0IG5ld01vZGVsTmFtZSA9IG1vZGVsTmFtZVxyXG5cdFx0Y29uc3QgbW9kZWxJZCA9IGdldE1vZGVsSWRGcm9tUm91dGVNYXRjaFBhcmFtcyhvd25Qcm9wcy5tYXRjaC5wYXJhbXMsIG5ld01vZGVsTmFtZSlcclxuXHRcdGxldCBoYXNBY2Nlc3NcclxuXHRcdGlmIChtb2RlbElkID09PSB1bmRlZmluZWQpIHtcclxuXHRcdFx0aGFzQWNjZXNzID0gZmFsc2VcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdGhhc0FjY2VzcyA9XHJcblx0XHRcdFx0ISFzdGF0ZS5tb2RlbHNbbW9kZWxOYW1lXSAmJlxyXG5cdFx0XHRcdCEhKHN0YXRlLm1vZGVsc1ttb2RlbE5hbWVdIGFzIE1vZGVsQ29sbGVjdGlvbilbbW9kZWxJZF0gJiZcclxuXHRcdFx0XHQhISgoc3RhdGUubW9kZWxzW21vZGVsTmFtZV0gYXMgTW9kZWxDb2xsZWN0aW9uKVttb2RlbElkXSBhcyBNb2RlbCkuaWRcclxuXHRcdH1cclxuXHRcdGlmIChjYW5SZWFkR2xvYmFsbHkgJiYgIWhhc0FjY2Vzcykge1xyXG5cdFx0XHRuZXdNb2RlbE5hbWUgPSBgc2VhcmNoLiR7bmV3TW9kZWxOYW1lfWBcclxuXHRcdH1cclxuXHJcblx0XHRyZXR1cm4ge1xyXG5cdFx0XHRtb2RlbE5hbWU6IG5ld01vZGVsTmFtZVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcbi8qKlxyXG4gKiBBIHdyYXBwZXIgdXNpbmcgQ29sbGVjdGlvbkl0ZW1Db21wb25lbnQgdGhhdCBwYXNzZXMgZG93biB0aGUgYG1vZGVsYCwgdG8gYWxsb3cgbmVzdGluZyBvZiBjb2xsZWN0aW9uIGNvbXBvbmVudHMuXHJcbiAqIFVzZXMgYENvbGxlY3Rpb25JdGVtQ29tcG9uZW50YCwgYE1vZGVsRXJyb3JSZWRpcmVjdENvbXBvbmVudGAsIGB3aXRoUm91dGVyYCwgYW5kIGBjb25uZWN0YC5cclxuICpcclxuICogVGhpcyBIT0MgZG9lcyBOT1QgcGFzcyBleHRyYSBwcm9wcyB0aHJvdWdoIHRvIGNoaWxkcmVuXHJcbiAqXHJcbiAqIEBwYXJhbSBXcmFwcGVkQ29tcG9uZW50IFRoZSB3cmFwcGVkIGNvbXBvbmVudFxyXG4gKiBAcGFyYW0gV3JhcHBlZEhlYWRlciBUaGUgd3JhcHBlZCBoZWFkZXJcclxuICogQHBhcmFtIHJlYWRBY3Rpdml0eSBSZWFkIGFjdGl2aXR5IHRoYXQgd2lsbCBiZSBjaGVja2VkIGZvciBnbG9iYWwgYWNjZXNzXHJcbiAqIEBwYXJhbSBtb2RlbE5hbWUgTW9kZWwgbmFtZSBwYXNzZWQgdG8gd3JhcHBlZCBjb21wb25lbnQgYW5kIGBDb2xsZWN0aW9uSXRlbUNvbXBvbmVudGAuIE1heSBiZSBtb2RpZmllZCB3aGVuIG9ubHkgZ2xvYmFsIHJlYWQgaXMgYXZhaWxhYmxlXHJcbiAqIEBwYXJhbSBwcm9wTmFtZSBUaGUgbmFtZSBmb3IgdGhlIHByb3Agd2l0aCB3aGljaCB0aGUgYG1vZGVsYCB3aWxsIGJlIHBhc3NlZCB0byB0aGUgd3JhcHBlZCBjb21wb25lbnRcclxuICovXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGVudGl0eUNvbXBvbmVudDxUIGV4dGVuZHMgRGVsZXRhYmxlTW9kZWwsIFRQcm9wTmFtZSBleHRlbmRzIGtleW9mIGFueT4oXHJcblx0V3JhcHBlZENvbXBvbmVudDogQ29tcG9uZW50VHlwZTxFbnRpdHlDb21wb25lbnRXcmFwcGVkUHJvcHM8VCwgVFByb3BOYW1lPj4sXHJcblx0V3JhcHBlZEhlYWRlcjogQ29tcG9uZW50VHlwZTxFbnRpdHlDb21wb25lbnRXcmFwcGVkSGVhZGVyUHJvcHM8VCwgVFByb3BOYW1lPj4gfCB1bmRlZmluZWQsXHJcblx0cmVhZEFjdGl2aXR5OiBzdHJpbmcsXHJcblx0bW9kZWxOYW1lOiBzdHJpbmcsXHJcblx0cHJvcE5hbWU6IFRQcm9wTmFtZVxyXG4pOiBDb21wb25lbnRDbGFzczxQYXJ0aWFsPENvbGxlY3Rpb25Db21tb25Qcm9wcz4+IHtcclxuXHRjb25zdCBFbnRpdHlDb21wb25lbnQgPSBjb25maWd1cmVFbnRpdHlDb21wb25lbnQ8VCwgVFByb3BOYW1lPihXcmFwcGVkQ29tcG9uZW50LCBXcmFwcGVkSGVhZGVyLCBwcm9wTmFtZSwgbW9kZWxOYW1lKVxyXG5cdGNvbnN0IG1hcFN0YXRlVG9Qcm9wcyA9IGNvbmZpZ3VyZU1hcFN0YXRlVG9Qcm9wcyhyZWFkQWN0aXZpdHksIG1vZGVsTmFtZSlcclxuXHQvLyBAdHMtaWdub3JlOiBjb3VsZCBub3QgbWF0Y2ggaW5mZXJyZWQgdHlwZSBmcm9tIHRoZSBgY29ubmVjdGAgSE9DXHJcblx0cmV0dXJuIHdpdGhSb3V0ZXIoXHJcblx0XHQvLyBAdHMtaWdub3JlOiBjb3VsZCBub3QgbWF0Y2ggaW5mZXJyZWQgdHlwZSBmcm9tIHRoZSBgY29ubmVjdGAgSE9DXHJcblx0XHRjb25uZWN0KG1hcFN0YXRlVG9Qcm9wcykoQ29sbGVjdGlvbkl0ZW1Db21wb25lbnQoTW9kZWxFcnJvclJlZGlyZWN0Q29tcG9uZW50KEVudGl0eUNvbXBvbmVudCksIG1vZGVsTmFtZSkpXHJcblx0KVxyXG59XHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxlQUFBLEdBQUFGLE9BQUE7QUFHQSxJQUFBRyxhQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxNQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyx3QkFBQSxHQUFBQyxzQkFBQSxDQUFBTixPQUFBO0FBQ0EsSUFBQU8sNEJBQUEsR0FBQUQsc0JBQUEsQ0FBQU4sT0FBQTtBQUF1RSxJQUFBUSxXQUFBLEdBQUFSLE9BQUE7QUFpQmhFLE1BQU1TLHdCQUF3QixHQUFHQSxDQUN2Q0MsZ0JBQTBFLEVBQzFFQyxhQUF5RixFQUN6RkMsUUFBbUIsRUFDbkJDLFVBQWtCLEtBQ2Q7RUFDSixPQUFPLE1BQU1DLGVBQWUsU0FBU0MsZ0JBQVMsQ0FBMEI7SUFDdkVDLE1BQU1BLENBQUEsRUFBRztNQUNSLE1BQU07UUFBRUMsS0FBSztRQUFFQztNQUEyQyxDQUFDLEdBQUcsSUFBSSxDQUFDQyxLQUFLO01BQ3hFLE1BQU1DLFFBQVEsR0FBRztRQUNoQixDQUFDUixRQUFRLEdBQUdLO01BQ2IsQ0FBb0Q7TUFDcEQsb0JBQ0MsSUFBQVQsV0FBQSxDQUFBYSxJQUFBO1FBQUFDLFFBQUEsR0FDRSxDQUFDLENBQUNYLGFBQWEsaUJBQUksSUFBQUgsV0FBQSxDQUFBZSxHQUFB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
@@ -1,134 +1,174 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
3
7
  exports.configureFullscreenModalComponent = configureFullscreenModalComponent;
8
+ exports.default = void 0;
4
9
  exports.fullscreenModalComponent = fullscreenModalComponent;
5
- const tslib_1 = require("tslib");
6
- const jsx_runtime_1 = require("react/jsx-runtime");
7
- const react_1 = require("react");
8
- const react_modal_1 = tslib_1.__importDefault(require("react-modal"));
9
- const ConnectedModalComponent_1 = require("./ConnectedModalComponent");
10
- /**
11
- * HOC that manages a `ReactModal`, adds inline css, and
12
- * coordinates modal state in redux using.
13
- *
14
- * NOTE: Meant for testing. Should be wrapped in `connectedModalComponent` normally.
15
- *
16
- * @param WrappedComponent The component to wrap.
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _react = require("react");
12
+ var _reactModal = _interopRequireDefault(require("react-modal"));
13
+ var _ConnectedModalComponent = require("./ConnectedModalComponent");
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+ /**
16
+ * The props that are provided to the HOC component directly from the caller, not other wrapping HOCs
17
+ * NOTE: if more flexibility is needed, add more props from `ReactModal.Props`
18
+ */
19
+
20
+ /** The props that are provided to the HOC component, either directly or from other wrapping HOCs */
21
+
22
+ /** The props that are provide to the wrapped component. */
23
+
24
+ /**
25
+ * HOC that manages a `ReactModal`, adds inline css, and
26
+ * coordinates modal state in redux using.
27
+ *
28
+ * NOTE: Meant for testing. Should be wrapped in `connectedModalComponent` normally.
29
+ *
30
+ * @param WrappedComponent The component to wrap.
17
31
  */
18
32
  function configureFullscreenModalComponent(WrappedComponent) {
19
- return class FullscreenModalComponent extends react_1.Component {
20
- constructor(props) {
21
- super(props);
22
- this.disableScroll = (e) => {
23
- document.documentElement.scrollTop = 0;
24
- e.preventDefault();
25
- return false;
26
- };
27
- this.onOpen = () => {
28
- document.documentElement.addEventListener('touchmove', this.disableScroll);
29
- this.props.onEntering();
30
- };
31
- this.onClose = () => {
32
- document.documentElement.removeEventListener('touchmove', this.disableScroll);
33
- this.props.onExited();
34
- };
35
- this.closeModal = () => {
36
- if (this.props.closeModal) {
37
- this.props.closeModal();
38
- return;
39
- }
40
- this.setState({
41
- isOpen: false
42
- });
43
- };
44
- this.state = {
45
- isOpen: props.isOpen === undefined ? true : props.isOpen
46
- };
47
- // https://github.com/reactjs/react-modal#app-element
48
- // Accessibility fixed when reading the content in the modal
49
- if (document.getElementById('root')) {
50
- react_modal_1.default.setAppElement('#root');
51
- }
52
- }
53
- componentDidMount() {
54
- const { isOpen } = this.state;
55
- if (isOpen) {
56
- this.onOpen();
57
- }
58
- }
59
- componentWillUnmount() {
60
- document.documentElement.removeEventListener('touchmove', this.disableScroll);
61
- }
62
- componentDidUpdate(prevProps, prevState) {
63
- let isOpen;
64
- if (this.props.isOpen !== undefined && this.props.isOpen !== this.state.isOpen) {
65
- // using props to handle isOpen, update state
66
- isOpen = this.props.isOpen;
67
- }
68
- else if (this.props.isOpen === undefined && prevState.isOpen !== this.state.isOpen) {
69
- // using state only to handle isOpen
70
- isOpen = this.state.isOpen;
71
- }
72
- if (isOpen === undefined) {
73
- return;
74
- }
75
- if (isOpen) {
76
- this.onOpen();
77
- }
78
- else {
79
- this.onClose();
80
- }
81
- this.setState({
82
- isOpen
83
- });
33
+ return class FullscreenModalComponent extends _react.Component {
34
+ constructor(props) {
35
+ super(props);
36
+ (0, _defineProperty2.default)(this, "disableScroll", e => {
37
+ document.documentElement.scrollTop = 0;
38
+ e.preventDefault();
39
+ return false;
40
+ });
41
+ (0, _defineProperty2.default)(this, "onOpen", () => {
42
+ document.documentElement.addEventListener('touchmove', this.disableScroll);
43
+ this.props.onEntering();
44
+ });
45
+ (0, _defineProperty2.default)(this, "onClose", () => {
46
+ document.documentElement.removeEventListener('touchmove', this.disableScroll);
47
+ this.props.onExited();
48
+ });
49
+ (0, _defineProperty2.default)(this, "closeModal", () => {
50
+ if (this.props.closeModal) {
51
+ this.props.closeModal();
52
+ return;
84
53
  }
85
- render() {
86
- const _a = this.props, { contentLabel, isTopOpenFullscreenModal, onEntering, onExited, isOpen: _, closeModal, zIndex } = _a, remainingProps = tslib_1.__rest(_a, ["contentLabel", "isTopOpenFullscreenModal", "onEntering", "onExited", "isOpen", "closeModal", "zIndex"]);
87
- // do not pass ConnectedModalWrappedProps to wrapped component
88
- const wrappedProps = Object.assign(Object.assign({}, remainingProps), { closeModal: this.closeModal });
89
- const { isOpen } = this.state;
90
- return ((0, jsx_runtime_1.jsx)(react_modal_1.default, { isOpen: isOpen, contentLabel: contentLabel, style: {
91
- content: {
92
- position: 'absolute',
93
- top: 0,
94
- left: 0,
95
- right: 0,
96
- bottom: 0,
97
- overflow: 'hidden',
98
- padding: 0,
99
- border: 'none',
100
- backgroundColor: 'white'
101
- },
102
- overlay: {
103
- position: 'absolute',
104
- top: 0,
105
- left: 0,
106
- right: 0,
107
- bottom: 0,
108
- zIndex: zIndex !== null && zIndex !== void 0 ? zIndex : 2000
109
- }
110
- },
111
- // hide the rendered portal if this is not the top open fullscreen modal
112
- portalClassName: `ReactModalPortal${!isTopOpenFullscreenModal ? ' dn' : ''}`, shouldCloseOnOverlayClick: false, children: (0, jsx_runtime_1.jsx)(WrappedComponent, Object.assign({}, wrappedProps)) }));
54
+ this.setState({
55
+ isOpen: false
56
+ });
57
+ });
58
+ this.state = {
59
+ isOpen: props.isOpen === undefined ? true : props.isOpen
60
+ };
61
+
62
+ // https://github.com/reactjs/react-modal#app-element
63
+ // Accessibility fixed when reading the content in the modal
64
+ if (document.getElementById('root')) {
65
+ _reactModal.default.setAppElement('#root');
66
+ }
67
+ }
68
+ componentDidMount() {
69
+ const {
70
+ isOpen
71
+ } = this.state;
72
+ if (isOpen) {
73
+ this.onOpen();
74
+ }
75
+ }
76
+ componentWillUnmount() {
77
+ document.documentElement.removeEventListener('touchmove', this.disableScroll);
78
+ }
79
+ componentDidUpdate(prevProps, prevState) {
80
+ let isOpen;
81
+ if (this.props.isOpen !== undefined && this.props.isOpen !== this.state.isOpen) {
82
+ // using props to handle isOpen, update state
83
+ isOpen = this.props.isOpen;
84
+ } else if (this.props.isOpen === undefined && prevState.isOpen !== this.state.isOpen) {
85
+ // using state only to handle isOpen
86
+ isOpen = this.state.isOpen;
87
+ }
88
+ if (isOpen === undefined) {
89
+ return;
90
+ }
91
+ if (isOpen) {
92
+ this.onOpen();
93
+ } else {
94
+ this.onClose();
95
+ }
96
+ this.setState({
97
+ isOpen
98
+ });
99
+ }
100
+ render() {
101
+ const {
102
+ contentLabel,
103
+ isTopOpenFullscreenModal,
104
+ onEntering,
105
+ onExited,
106
+ isOpen: _,
107
+ closeModal,
108
+ zIndex,
109
+ ...remainingProps
110
+ } = this.props;
111
+ // do not pass ConnectedModalWrappedProps to wrapped component
112
+ const wrappedProps = {
113
+ ...remainingProps,
114
+ closeModal: this.closeModal
115
+ };
116
+ const {
117
+ isOpen
118
+ } = this.state;
119
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactModal.default, {
120
+ isOpen: isOpen,
121
+ contentLabel: contentLabel,
122
+ style: {
123
+ content: {
124
+ position: 'absolute',
125
+ top: 0,
126
+ left: 0,
127
+ right: 0,
128
+ bottom: 0,
129
+ overflow: 'hidden',
130
+ padding: 0,
131
+ border: 'none',
132
+ backgroundColor: 'white'
133
+ },
134
+ overlay: {
135
+ position: 'absolute',
136
+ top: 0,
137
+ left: 0,
138
+ right: 0,
139
+ bottom: 0,
140
+ zIndex: zIndex ?? 2000
141
+ }
113
142
  }
114
- };
143
+ // hide the rendered portal if this is not the top open fullscreen modal
144
+ ,
145
+ portalClassName: `ReactModalPortal${!isTopOpenFullscreenModal ? ' dn' : ''}`,
146
+ shouldCloseOnOverlayClick: false,
147
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(WrappedComponent, {
148
+ ...wrappedProps
149
+ })
150
+ });
151
+ }
152
+ };
115
153
  }
116
- /**
117
- * HOC that contains a `ReactModal` which can be auto managed or managed with props,
118
- * adds fullscreen styles, and coordinates modal state in redux.
119
- *
120
- * Uses `connectedModalComponent`.
121
- *
122
- * NOTE: Please add the following css
123
- *
124
- * .ReactModal__Body--open {
125
- * overflow: hidden;
126
- * }
127
- *
128
- * @param WrappedComponent The component to wrap.
154
+
155
+ /**
156
+ * HOC that contains a `ReactModal` which can be auto managed or managed with props,
157
+ * adds fullscreen styles, and coordinates modal state in redux.
158
+ *
159
+ * Uses `connectedModalComponent`.
160
+ *
161
+ * NOTE: Please add the following css
162
+ *
163
+ * .ReactModal__Body--open {
164
+ * overflow: hidden;
165
+ * }
166
+ *
167
+ * @param WrappedComponent The component to wrap.
129
168
  */
130
169
  function fullscreenModalComponent(WrappedComponent) {
131
- const component = configureFullscreenModalComponent(WrappedComponent);
132
- return (0, ConnectedModalComponent_1.connectedModalComponent)(component, true);
170
+ const component = configureFullscreenModalComponent(WrappedComponent);
171
+ return (0, _ConnectedModalComponent.connectedModalComponent)(component, true);
133
172
  }
134
- exports.default = fullscreenModalComponent;
173
+ var _default = exports.default = fullscreenModalComponent;
174
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3JlYWN0TW9kYWwiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0Nvbm5lY3RlZE1vZGFsQ29tcG9uZW50IiwiX2pzeFJ1bnRpbWUiLCJjb25maWd1cmVGdWxsc2NyZWVuTW9kYWxDb21wb25lbnQiLCJXcmFwcGVkQ29tcG9uZW50IiwiRnVsbHNjcmVlbk1vZGFsQ29tcG9uZW50IiwiQ29tcG9uZW50IiwiY29uc3RydWN0b3IiLCJwcm9wcyIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJkZWZhdWx0IiwiZSIsImRvY3VtZW50IiwiZG9jdW1lbnRFbGVtZW50Iiwic2Nyb2xsVG9wIiwicHJldmVudERlZmF1bHQiLCJhZGRFdmVudExpc3RlbmVyIiwiZGlzYWJsZVNjcm9sbCIsIm9uRW50ZXJpbmciLCJyZW1vdmVFdmVudExpc3RlbmVyIiwib25FeGl0ZWQiLCJjbG9zZU1vZGFsIiwic2V0U3RhdGUiLCJpc09wZW4iLCJzdGF0ZSIsInVuZGVmaW5lZCIsImdldEVsZW1lbnRCeUlkIiwiUmVhY3RNb2RhbCIsInNldEFwcEVsZW1lbnQiLCJjb21wb25lbnREaWRNb3VudCIsIm9uT3BlbiIsImNvbXBvbmVudFdpbGxVbm1vdW50IiwiY29tcG9uZW50RGlkVXBkYXRlIiwicHJldlByb3BzIiwicHJldlN0YXRlIiwib25DbG9zZSIsInJlbmRlciIsImNvbnRlbnRMYWJlbCIsImlzVG9wT3BlbkZ1bGxzY3JlZW5Nb2RhbCIsIl8iLCJ6SW5kZXgiLCJyZW1haW5pbmdQcm9wcyIsIndyYXBwZWRQcm9wcyIsImpzeCIsInN0eWxlIiwiY29udGVudCIsInBvc2l0aW9uIiwidG9wIiwibGVmdCIsInJpZ2h0IiwiYm90dG9tIiwib3ZlcmZsb3ciLCJwYWRkaW5nIiwiYm9yZGVyIiwiYmFja2dyb3VuZENvbG9yIiwib3ZlcmxheSIsInBvcnRhbENsYXNzTmFtZSIsInNob3VsZENsb3NlT25PdmVybGF5Q2xpY2siLCJjaGlsZHJlbiIsImZ1bGxzY3JlZW5Nb2RhbENvbXBvbmVudCIsImNvbXBvbmVudCIsImNvbm5lY3RlZE1vZGFsQ29tcG9uZW50IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvSE9DL0Z1bGxzY3JlZW5Nb2RhbENvbXBvbmVudC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb21wb25lbnRDbGFzcywgQ29tcG9uZW50VHlwZSB9IGZyb20gJ3JlYWN0J1xyXG5pbXBvcnQgUmVhY3RNb2RhbCBmcm9tICdyZWFjdC1tb2RhbCdcclxuaW1wb3J0IHsgY29ubmVjdGVkTW9kYWxDb21wb25lbnQsIENvbm5lY3RlZE1vZGFsV3JhcHBlZFByb3BzIH0gZnJvbSAnLi9Db25uZWN0ZWRNb2RhbENvbXBvbmVudCdcclxuaW1wb3J0IHsgR3VpZENvbXBvbmVudFdyYXBwZWRQcm9wcyB9IGZyb20gJy4vR3VpZENvbXBvbmVudCdcclxuXHJcbi8qKlxyXG4gKiBUaGUgcHJvcHMgdGhhdCBhcmUgcHJvdmlkZWQgdG8gdGhlIEhPQyBjb21wb25lbnQgZGlyZWN0bHkgZnJvbSB0aGUgY2FsbGVyLCBub3Qgb3RoZXIgd3JhcHBpbmcgSE9Dc1xyXG4gKiBOT1RFOiBpZiBtb3JlIGZsZXhpYmlsaXR5IGlzIG5lZWRlZCwgYWRkIG1vcmUgcHJvcHMgZnJvbSBgUmVhY3RNb2RhbC5Qcm9wc2BcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgRnVsbHNjcmVlbk1vZGFsT3duUHJvcHMge1xyXG5cdC8qIEJvb2xlYW4gZGVzY3JpYmluZyBpZiB0aGUgbW9kYWwgc2hvdWxkIGJlIHNob3duIG9yIG5vdC4gSWYgbm90IHByb3ZpZGVkLCB0aGUgbW9kYWwgbWFuYWdlcyBpdHNlbGYsIGRlZmF1bHRpbmcgdG8gb3Blbi4gKi9cclxuXHRpc09wZW4/OiBib29sZWFuXHJcblxyXG5cdC8qKlxyXG5cdCAqIEZ1bmN0aW9uIHRoYXQgd2lsbCBiZSBjYWxsZWQgd2hlbiB0aGUgbW9kYWwgc2hvdWxkIGJlIGNsb3NlZCwgYW5kIHRoZSBwYXJlbnQgc2hvdWxkIHNldCBgcHJvcHMuaXNPcGVuYCB0byBgZmFsc2VgLlxyXG5cdCAqIElmIG5vdCBwcm92aWRlZCwgdGhlIG1vZGFsIG1hbmFnZXMgaXRzZWxmLlxyXG5cdCAqL1xyXG5cdGNsb3NlTW9kYWw/OiAoKSA9PiB2b2lkXHJcblxyXG5cdC8qIFN0cmluZyBpbmRpY2F0aW5nIGhvdyB0aGUgY29udGVudCBjb250YWluZXIgc2hvdWxkIGJlIGFubm91bmNlZCB0byBzY3JlZW4gcmVhZGVycy4gKi9cclxuXHRjb250ZW50TGFiZWw/OiBzdHJpbmdcclxuXHJcblx0LyogT3B0aW9uYWwgdmFsdWUgaW5kaWNhdGluZyB0aGUgekluZGV4IHRoZSBtb2RhbCBvdmVybGF5IHNob3VsZCBoYXZlICovXHJcblx0ekluZGV4PzogbnVtYmVyXHJcbn1cclxuXHJcbi8qKiBUaGUgcHJvcHMgdGhhdCBhcmUgcHJvdmlkZWQgdG8gdGhlIEhPQyBjb21wb25lbnQsIGVpdGhlciBkaXJlY3RseSBvciBmcm9tIG90aGVyIHdyYXBwaW5nIEhPQ3MgKi9cclxuZXhwb3J0IHR5cGUgRnVsbHNjcmVlbk1vZGFsQ29tcG9uZW50UHJvcHMgPSBGdWxsc2NyZWVuTW9kYWxPd25Qcm9wcyAmXHJcblx0Q29ubmVjdGVkTW9kYWxXcmFwcGVkUHJvcHMgJlxyXG5cdEd1aWRDb21wb25lbnRXcmFwcGVkUHJvcHNcclxuXHJcbi8qKiBUaGUgcHJvcHMgdGhhdCBhcmUgcHJvdmlkZSB0byB0aGUgd3JhcHBlZCBjb21wb25lbnQuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgRnVsbHNjcmVlbk1vZGFsV3JhcHBlZFByb3BzIHtcclxuXHQvKiogR1VJRCBvZiB0aGUgZnVsbHNjcmVlbiBtb2RhbCwgdXNlZCBpbiBzdGF0ZS5tb2RhbHMuICovXHJcblx0Z3VpZDogc3RyaW5nXHJcblx0LyoqIEZ1bmN0aW9uIHRoYXQgd2lsbCBjbG9zZSB0aGUgbW9kYWwuICovXHJcblx0Y2xvc2VNb2RhbDogKCkgPT4gdm9pZFxyXG59XHJcblxyXG5pbnRlcmZhY2UgRnVsbHNjcmVlbk1vZGFsU3RhdGUge1xyXG5cdGlzT3BlbjogYm9vbGVhblxyXG59XHJcblxyXG4vKipcclxuICogSE9DIHRoYXQgbWFuYWdlcyBhIGBSZWFjdE1vZGFsYCwgYWRkcyBpbmxpbmUgY3NzLCBhbmRcclxuICogY29vcmRpbmF0ZXMgbW9kYWwgc3RhdGUgaW4gcmVkdXggdXNpbmcuXHJcbiAqXHJcbiAqIE5PVEU6IE1lYW50IGZvciB0ZXN0aW5nLiBTaG91bGQgYmUgd3JhcHBlZCBpbiBgY29ubmVjdGVkTW9kYWxDb21wb25lbnRgIG5vcm1hbGx5LlxyXG4gKlxyXG4gKiBAcGFyYW0gV3JhcHBlZENvbXBvbmVudCBUaGUgY29tcG9uZW50IHRvIHdyYXAuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gY29uZmlndXJlRnVsbHNjcmVlbk1vZGFsQ29tcG9uZW50PFRPd25Qcm9wcyBleHRlbmRzIG9iamVjdD4oXHJcblx0V3JhcHBlZENvbXBvbmVudDogQ29tcG9uZW50VHlwZTxUT3duUHJvcHMgJiBGdWxsc2NyZWVuTW9kYWxXcmFwcGVkUHJvcHM+XHJcbikge1xyXG5cdHR5cGUgSG9jUHJvcHMgPSBUT3duUHJvcHMgJiBGdWxsc2NyZWVuTW9kYWxDb21wb25lbnRQcm9wc1xyXG5cdHJldHVybiBjbGFzcyBGdWxsc2NyZWVuTW9kYWxDb21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnQ8SG9jUHJvcHMsIEZ1bGxzY3JlZW5Nb2RhbFN0YXRlPiB7XHJcblx0XHRjb25zdHJ1Y3Rvcihwcm9wczogSG9jUHJvcHMpIHtcclxuXHRcdFx0c3VwZXIocHJvcHMpXHJcblxyXG5cdFx0XHR0aGlzLnN0YXRlID0ge1xyXG5cdFx0XHRcdGlzT3BlbjogcHJvcHMuaXNPcGVuID09PSB1bmRlZmluZWQgPyB0cnVlIDogcHJvcHMuaXNPcGVuXHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9yZWFjdGpzL3JlYWN0LW1vZGFsI2FwcC1lbGVtZW50XHJcblx0XHRcdC8vIEFjY2Vzc2liaWxpdHkgZml4ZWQgd2hlbiByZWFkaW5nIHRoZSBjb250ZW50IGluIHRoZSBtb2RhbFxyXG5cdFx0XHRpZiAoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jvb3QnKSkge1xyXG5cdFx0XHRcdFJlYWN0TW9kYWwuc2V0QXBwRWxlbWVudCgnI3Jvb3QnKVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Y29tcG9uZW50RGlkTW91bnQoKSB7XHJcblx0XHRcdGNvbnN0IHsgaXNPcGVuIH0gPSB0aGlzLnN0YXRlXHJcblx0XHRcdGlmIChpc09wZW4pIHtcclxuXHRcdFx0XHR0aGlzLm9uT3BlbigpXHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcclxuXHRcdFx0ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNobW92ZScsIHRoaXMuZGlzYWJsZVNjcm9sbClcclxuXHRcdH1cclxuXHJcblx0XHRjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzOiBIb2NQcm9wcywgcHJldlN0YXRlOiBGdWxsc2NyZWVuTW9kYWxTdGF0ZSkge1xyXG5cdFx0XHRsZXQgaXNPcGVuOiBib29sZWFuIHwgdW5kZWZpbmVkXHJcblxyXG5cdFx0XHRpZiAodGhpcy5wcm9wcy5pc09wZW4gIT09IHVuZGVmaW5lZCAmJiB0aGlzLnByb3BzLmlzT3BlbiAhPT0gdGhpcy5zdGF0ZS5pc09wZW4pIHtcclxuXHRcdFx0XHQvLyB1c2luZyBwcm9wcyB0byBoYW5kbGUgaXNPcGVuLCB1cGRhdGUgc3RhdGVcclxuXHRcdFx0XHRpc09wZW4gPSB0aGlzLnByb3BzLmlzT3BlblxyXG5cdFx0XHR9IGVsc2UgaWYgKHRoaXMucHJvcHMuaXNPcGVuID09PSB1bmRlZmluZWQgJiYgcHJldlN0YXRlLmlzT3BlbiAhPT0gdGhpcy5zdGF0ZS5pc09wZW4pIHtcclxuXHRcdFx0XHQvLyB1c2luZyBzdGF0ZSBvbmx5IHRvIGhhbmRsZSBpc09wZW5cclxuXHRcdFx0XHRpc09wZW4gPSB0aGlzLnN0YXRlLmlzT3BlblxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRpZiAoaXNPcGVuID09PSB1bmRlZmluZWQpIHtcclxuXHRcdFx0XHRyZXR1cm5cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aWYgKGlzT3Blbikge1xyXG5cdFx0XHRcdHRoaXMub25PcGVuKClcclxuXHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHR0aGlzLm9uQ2xvc2UoKVxyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMuc2V0U3RhdGUoe1xyXG5cdFx0XHRcdGlzT3BlblxyXG5cdFx0XHR9KVxyXG5cdFx0fVxyXG5cclxuXHRcdGRpc2FibGVTY3JvbGwgPSAoZTogRXZlbnQpID0+IHtcclxuXHRcdFx0ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCA9IDBcclxuXHRcdFx0ZS5wcmV2ZW50RGVmYXVsdCgpXHJcblx0XHRcdHJldHVybiBmYWxzZVxyXG5cdFx0fVxyXG5cclxuXHRcdG9uT3BlbiA9ICgpID0+IHtcclxuXHRcdFx0ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNobW92ZScsIHRoaXMuZGlzYWJsZVNjcm9sbClcclxuXHRcdFx0dGhpcy5wcm9wcy5vbkVudGVyaW5nKClcclxuXHRcdH1cclxuXHJcblx0XHRvbkNsb3NlID0gKCkgPT4ge1xyXG5cdFx0XHRkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgdGhpcy5kaXNhYmxlU2Nyb2xsKVxyXG5cdFx0XHR0aGlzLnByb3BzLm9uRXhpdGVkKClcclxuXHRcdH1cclxuXHJcblx0XHRjbG9zZU1vZGFsID0gKCkgPT4ge1xyXG5cdFx0XHRpZiAodGhpcy5wcm9wcy5jbG9zZU1vZGFsKSB7XHJcblx0XHRcdFx0dGhpcy5wcm9wcy5jbG9zZU1vZGFsKClcclxuXHRcdFx0XHRyZXR1cm5cclxuXHRcdFx0fVxyXG5cdFx0XHR0aGlzLnNldFN0YXRlKHtcclxuXHRcdFx0XHRpc09wZW46IGZhbHNlXHJcblx0XHRcdH0pXHJcblx0XHR9XHJcblxyXG5cdFx0cmVuZGVyKCkge1xyXG5cdFx0XHRjb25zdCB7XHJcblx0XHRcdFx0Y29udGVudExhYmVsLFxyXG5cdFx0XHRcdGlzVG9wT3BlbkZ1bGxzY3JlZW5Nb2RhbCxcclxuXHRcdFx0XHRvbkVudGVyaW5nLFxyXG5cdFx0XHRcdG9uRXhpdGVkLFxyXG5cdFx0XHRcdGlzT3BlbjogXyxcclxuXHRcdFx0XHRjbG9zZU1vZGFsLFxyXG5cdFx0XHRcdHpJbmRleCxcclxuXHRcdFx0XHQuLi5yZW1haW5pbmdQcm9wc1xyXG5cdFx0XHR9ID0gdGhpcy5wcm9wc1xyXG5cdFx0XHQvLyBkbyBub3QgcGFzcyBDb25uZWN0ZWRNb2RhbFdyYXBwZWRQcm9wcyB0byB3cmFwcGVkIGNvbXBvbmVudFxyXG5cdFx0XHRjb25zdCB3cmFwcGVkUHJvcHMgPSB7XHJcblx0XHRcdFx0Li4ucmVtYWluaW5nUHJvcHMsXHJcblx0XHRcdFx0Y2xvc2VNb2RhbDogdGhpcy5jbG9zZU1vZGFsXHJcblx0XHRcdH0gYXMgVE93blByb3BzICYgRnVsbHNjcmVlbk1vZGFsV3JhcHBlZFByb3BzXHJcblx0XHRcdGNvbnN0IHsgaXNPcGVuIH0gPSB0aGlzLnN0YXRlXHJcblx0XHRcdHJldHVybiAoXHJcblx0XHRcdFx0PFJlYWN0TW9kYWxcclxuXHRcdFx0XHRcdGlzT3Blbj17aXNPcGVufVxyXG5cdFx0XHRcdFx0Y29udGVudExhYmVsPXtjb250ZW50TGFiZWx9XHJcblx0XHRcdFx0XHRzdHlsZT17e1xyXG5cdFx0XHRcdFx0XHRjb250ZW50OiB7XHJcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246ICdhYnNvbHV0ZScsXHJcblx0XHRcdFx0XHRcdFx0dG9wOiAwLFxyXG5cdFx0XHRcdFx0XHRcdGxlZnQ6IDAsXHJcblx0XHRcdFx0XHRcdFx0cmlnaHQ6IDAsXHJcblx0XHRcdFx0XHRcdFx0Ym90dG9tOiAwLFxyXG5cdFx0XHRcdFx0XHRcdG92ZXJmbG93OiAnaGlkZGVuJyxcclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAwLFxyXG5cdFx0XHRcdFx0XHRcdGJvcmRlcjogJ25vbmUnLFxyXG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmRDb2xvcjogJ3doaXRlJ1xyXG5cdFx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0XHRvdmVybGF5OiB7XHJcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246ICdhYnNvbHV0ZScsXHJcblx0XHRcdFx0XHRcdFx0dG9wOiAwLFxyXG5cdFx0XHRcdFx0XHRcdGxlZnQ6IDAsXHJcblx0XHRcdFx0XHRcdFx0cmlnaHQ6IDAsXHJcblx0XHRcdFx0XHRcdFx0Ym90dG9tOiAwLFxyXG5cdFx0XHRcdFx0XHRcdHpJbmRleDogekluZGV4ID8/IDIwMDBcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fX1cclxuXHRcdFx0XHRcdC8vIGhpZGUgdGhlIHJlbmRlcmVkIHBvcnRhbCBpZiB0aGlzIGlzIG5vdCB0aGUgdG9wIG9wZW4gZnVsbHNjcmVlbiBtb2RhbFxyXG5cdFx0XHRcdFx0cG9ydGFsQ2xhc3NOYW1lPXtgUmVhY3RNb2RhbFBvcnRhbCR7IWlzVG9wT3BlbkZ1bGxzY3JlZW5Nb2RhbCA/ICcgZG4nIDogJyd9YH1cclxuXHRcdFx0XHRcdHNob3VsZENsb3NlT25PdmVybGF5Q2xpY2s9e2ZhbHNlfT5cclxuXHRcdFx0XHRcdDxXcmFwcGVkQ29tcG9uZW50IHsuLi53cmFwcGVkUHJvcHN9IC8+XHJcblx0XHRcdFx0PC9SZWFjdE1vZGFsPlxyXG5cdFx0XHQpXHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4vKipcclxuICogSE9DIHRoYXQgY29udGFpbnMgYSBgUmVhY3RNb2RhbGAgd2hpY2ggY2FuIGJlIGF1dG8gbWFuYWdlZCBvciBtYW5hZ2VkIHdpdGggcHJvcHMsXHJcbiAqIGFkZHMgZnVsbHNjcmVlbiBzdHlsZXMsIGFuZCBjb29yZGluYXRlcyBtb2RhbCBzdGF0ZSBpbiByZWR1eC5cclxuICpcclxuICogVXNlcyBgY29ubmVjdGVkTW9kYWxDb21wb25lbnRgLlxyXG4gKlxyXG4gKiBOT1RFOiBQbGVhc2UgYWRkIHRoZSBmb2xsb3dpbmcgY3NzXHJcbiAqXHJcbiAqIC5SZWFjdE1vZGFsX19Cb2R5LS1vcGVuIHtcclxuICogXHRvdmVyZmxvdzogaGlkZGVuO1xyXG4gKiB9XHJcbiAqXHJcbiAqIEBwYXJhbSBXcmFwcGVkQ29tcG9uZW50IFRoZSBjb21wb25lbnQgdG8gd3JhcC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBmdWxsc2NyZWVuTW9kYWxDb21wb25lbnQ8VE93blByb3BzIGV4dGVuZHMgb2JqZWN0PihcclxuXHRXcmFwcGVkQ29tcG9uZW50OiBDb21wb25lbnRUeXBlPFRPd25Qcm9wcyAmIEZ1bGxzY3JlZW5Nb2RhbFdyYXBwZWRQcm9wcz5cclxuKTogQ29tcG9uZW50Q2xhc3M8VE93blByb3BzICYgRnVsbHNjcmVlbk1vZGFsT3duUHJvcHM+IHtcclxuXHRjb25zdCBjb21wb25lbnQgPSBjb25maWd1cmVGdWxsc2NyZWVuTW9kYWxDb21wb25lbnQ8VE93blByb3BzPihXcmFwcGVkQ29tcG9uZW50KVxyXG5cdHJldHVybiBjb25uZWN0ZWRNb2RhbENvbXBvbmVudChjb21wb25lbnQsIHRydWUpXHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bGxzY3JlZW5Nb2RhbENvbXBvbmVudFxyXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyx3QkFBQSxHQUFBSCxPQUFBO0FBQStGLElBQUFJLFdBQUEsR0FBQUosT0FBQTtBQUcvRjtBQUNBO0FBQ0E7QUFDQTs7QUFrQkE7O0FBS0E7O0FBWUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLFNBQVNLLGlDQUFpQ0EsQ0FDaERDLGdCQUF3RSxFQUN2RTtFQUVELE9BQU8sTUFBTUMsd0JBQXdCLFNBQVNDLGdCQUFTLENBQWlDO0lBQ3ZGQyxXQUFXQSxDQUFDQyxLQUFlLEVBQUU7TUFDNUIsS0FBSyxDQUFDQSxLQUFLLENBQUM7TUFBQSxJQUFBQyxnQkFBQSxDQUFBQyxPQUFBLHlCQWlESUMsQ0FBUSxJQUFLO1FBQzdCQyxRQUFRLENBQUNDLGVBQWUsQ0FBQ0MsU0FBUyxHQUFHLENBQUM7UUFDdENILENBQUMsQ0FBQ0ksY0FBYyxDQUFDLENBQUM7UUFDbEIsT0FBTyxLQUFLO01BQ2IsQ0FBQztNQUFBLElBQUFOLGdCQUFBLENBQUFDLE9BQUEsa0JBRVEsTUFBTTtRQUNkRSxRQUFRLENBQUNDLGVBQWUsQ0FBQ0csZ0JBQWdCLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQ0MsYUFBYSxDQUFDO1FBQzFFLElBQUksQ0FBQ1QsS0FBSyxDQUFDVSxVQUFVLENBQUMsQ0FBQztNQUN4QixDQUFDO01BQUEsSUFBQVQsZ0JBQUEsQ0FBQUMsT0FBQSxtQkFFUyxNQUFNO1FBQ2ZFLFFBQVEsQ0FBQ0MsZUFBZSxDQUFDTSxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDRixhQUFhLENBQUM7UUFDN0UsSUFBSSxDQUFDVCxLQUFLLENBQUNZLFFBQVEsQ0FBQyxDQUFDO01BQ3RCLENBQUM7TUFBQSxJQUFBWCxnQkFBQSxDQUFBQyxPQUFBLHNCQUVZLE1BQU07UUFDbEIsSUFBSSxJQUFJLENBQUNGLEtBQUssQ0FBQ2EsVUFBVSxFQUFFO1VBQzFCLElBQUksQ0FBQ2IsS0FBSyxDQUFDYSxVQUFVLENBQUMsQ0FBQztVQUN2QjtRQUNEO1FBQ0EsSUFBSSxDQUFDQyxRQUFRLENBQUM7VUFDYkMsTUFBTSxFQUFFO1FBQ1QsQ0FBQyxDQUFDO01BQ0gsQ0FBQztNQXZFQSxJQUFJLENBQUNDLEtBQUssR0FBRztRQUNaRCxNQUFNLEVBQUVmLEtBQUssQ0FBQ2UsTUFBTSxLQUFLRSxTQUFTLEdBQUcsSUFBSSxHQUFHakIsS0FBSyxDQUFDZTtNQUNuRCxDQUFDOztNQUVEO01BQ0E7TUFDQSxJQUFJWCxRQUFRLENBQUNjLGNBQWMsQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUNwQ0MsbUJBQVUsQ0FBQ0MsYUFBYSxDQUFDLE9BQU8sQ0FBQztNQUNsQztJQUNEO0lBRUFDLGlCQUFpQkEsQ0FBQSxFQUFHO01BQ25CLE1BQU07UUFBRU47TUFBTyxDQUFDLEdBQUcsSUFBSSxDQUFDQyxLQUFLO01BQzdCLElBQUlELE1BQU0sRUFBRTtRQUNYLElBQUksQ0FBQ08sTUFBTSxDQUFDLENBQUM7TUFDZDtJQUNEO0lBRUFDLG9CQUFvQkEsQ0FBQSxFQUFHO01BQ3RCbkIsUUFBUSxDQUFDQyxlQUFlLENBQUNNLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUNGLGFBQWEsQ0FBQztJQUM5RTtJQUVBZSxrQkFBa0JBLENBQUNDLFNBQW1CLEVBQUVDLFNBQStCLEVBQUU7TUFDeEUsSUFBSVgsTUFBMkI7TUFFL0IsSUFBSSxJQUFJLENBQUNmLEtBQUssQ0FBQ2UsTUFBTSxLQUFLRSxTQUFTLElBQUksSUFBSSxDQUFDakIsS0FBSyxDQUFDZSxNQUFNLEtBQUssSUFBSSxDQUFDQyxLQUFLLENBQUNELE1BQU0sRUFBRTtRQUMvRTtRQUNBQSxNQUFNLEdBQUcsSUFBSSxDQUFDZixLQUFLLENBQUNlLE1BQU07TUFDM0IsQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDZixLQUFLLENBQUNlLE1BQU0sS0FBS0UsU0FBUyxJQUFJUyxTQUFTLENBQUNYLE1BQU0sS0FBSyxJQUFJLENBQUNDLEtBQUssQ0FBQ0QsTUFBTSxFQUFFO1FBQ3JGO1FBQ0FBLE1BQU0sR0FBRyxJQUFJLENBQUNDLEtBQUssQ0FBQ0QsTUFBTTtNQUMzQjtNQUVBLElBQUlBLE1BQU0sS0FBS0UsU0FBUyxFQUFFO1FBQ3pCO01BQ0Q7TUFFQSxJQUFJRixNQUFNLEVBQUU7UUFDWCxJQUFJLENBQUNPLE1BQU0sQ0FBQyxDQUFDO01BQ2QsQ0FBQyxNQUFNO1FBQ04sSUFBSSxDQUFDSyxPQUFPLENBQUMsQ0FBQztNQUNmO01BQ0EsSUFBSSxDQUFDYixRQUFRLENBQUM7UUFDYkM7TUFDRCxDQUFDLENBQUM7SUFDSDtJQTRCQWEsTUFBTUEsQ0FBQSxFQUFHO01BQ1IsTUFBTTtRQUNMQyxZQUFZO1FBQ1pDLHdCQUF3QjtRQUN4QnBCLFVBQVU7UUFDVkUsUUFBUTtRQUNSRyxNQUFNLEVBQUVnQixDQUFDO1FBQ1RsQixVQUFVO1FBQ1ZtQixNQUFNO1FBQ04sR0FBR0M7TUFDSixDQUFDLEdBQUcsSUFBSSxDQUFDakMsS0FBSztNQUNkO01BQ0EsTUFBTWtDLFlBQVksR0FBRztRQUNwQixHQUFHRCxjQUFjO1FBQ2pCcEIsVUFBVSxFQUFFLElBQUksQ0FBQ0E7TUFDbEIsQ0FBNEM7TUFDNUMsTUFBTTtRQUFFRTtNQUFPLENBQUMsR0FBRyxJQUFJLENBQUNDLEtBQUs7TUFDN0Isb0JBQ0MsSUFBQXRCLFdBQUEsQ0FBQXlDLEdBQUEsRUFBQzVDLFdBQUEsQ0FBQVcsT0FBVTtRQUNWYSxNQUFNLEVBQUVBLE1BQU87UUFDZmMsWUFBWSxFQUFFQSxZQUFhO1FBQzNCTyxLQUFLLEVBQUU7VUFDTkMsT0FBTyxFQUFFO1lBQ1JDLFFBQVEsRUFBRSxVQUFVO1lBQ3BCQyxHQUFHLEVBQUUsQ0FBQztZQUNOQyxJQUFJLEVBQUUsQ0FBQztZQUNQQyxLQUFLLEVBQUUsQ0FBQztZQUNSQyxNQUFNLEVBQUUsQ0FBQztZQUNUQyxRQUFRLEVBQUUsUUFBUTtZQUNsQkMsT0FBTyxFQUFFLENBQUM7WUFDVkMsTUFBTSxFQUFFLE1BQU07WUFDZEMsZUFBZSxFQUFFO1VBQ2xCLENBQUM7VUFDREMsT0FBTyxFQUFFO1lBQ1JULFFBQVEsRUFBRSxVQUFVO1lBQ3BCQyxHQUFHLEVBQUUsQ0FBQztZQUNOQyxJQUFJLEVBQUUsQ0FBQztZQUNQQyxLQUFLLEVBQUUsQ0FBQztZQUNSQyxNQUFNLEVBQUUsQ0FBQztZQUNUVixNQUFNLEVBQUVBLE1BQU0sSUFBSTtVQUNuQjtRQUNEO1FBQ0E7UUFBQTtRQUNBZ0IsZUFBZSxFQUFFLG1CQUFtQixDQUFDbEIsd0JBQXdCLEdBQUcsS0FBSyxHQUFHLEVBQUUsRUFBRztRQUM3RW1CLHlCQUF5QixFQUFFLEtBQU07UUFBQUMsUUFBQSxlQUNqQyxJQUFBeEQsV0FBQSxDQUFBeUMsR0FBQSxFQUFDdkMsZ0JBQWdCO1VBQUEsR0FBS3NDO1FBQVksQ0FBRztNQUFDLENBQzNCLENBQUM7SUFFZjtFQUNELENBQUM7QUFDRjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sU0FBU2lCLHdCQUF3QkEsQ0FDdkN2RCxnQkFBd0UsRUFDbEI7RUFDdEQsTUFBTXdELFNBQVMsR0FBR3pELGlDQUFpQyxDQUFZQyxnQkFBZ0IsQ0FBQztFQUNoRixPQUFPLElBQUF5RCxnREFBdUIsRUFBQ0QsU0FBUyxFQUFFLElBQUksQ0FBQztBQUNoRDtBQUFDLElBQUFFLFFBQUEsR0FBQUMsT0FBQSxDQUFBckQsT0FBQSxHQUVjaUQsd0JBQXdCIiwiaWdub3JlTGlzdCI6W119
@@ -1,40 +1,54 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
3
6
  exports.configureMapStateToProps = void 0;
4
7
  exports.default = groupActivityRequiredComponent;
5
- const react_redux_1 = require("react-redux");
6
- const baseActivity_1 = require("../../utils/baseActivity");
7
- const ActivityRequiredComponent_1 = require("./ActivityRequiredComponent");
8
- /**
9
- * Return `mapStateToProps` function. Add a `hasAccess` boolean property to the component's props
10
- * checking whether the user has the passed `requiredActivity` for the group referenced by
11
- * `ownProps.model.groupId`, if any.
12
- *
13
- * @param accessPredicate A predicate accepting a required activity and an optional entity and/or userInfo object
14
- * @param requiredActivity The required activity which is passed to the predicate for evaluation
15
- * @param redirectPath (Optional) A string or function that provides the redirect path for when `accessPredicate` is false. Defaults to '/'.
8
+ var _reactRedux = require("react-redux");
9
+ var _baseActivity = require("../../utils/baseActivity");
10
+ var _ActivityRequiredComponent = require("./ActivityRequiredComponent");
11
+ /**
12
+ * An entity that has a `groupId`
13
+ */
14
+
15
+ /**
16
+ * Return `mapStateToProps` function. Add a `hasAccess` boolean property to the component's props
17
+ * checking whether the user has the passed `requiredActivity` for the group referenced by
18
+ * `ownProps.model.groupId`, if any.
19
+ *
20
+ * @param accessPredicate A predicate accepting a required activity and an optional entity and/or userInfo object
21
+ * @param requiredActivity The required activity which is passed to the predicate for evaluation
22
+ * @param redirectPath (Optional) A string or function that provides the redirect path for when `accessPredicate` is false. Defaults to '/'.
16
23
  */
17
24
  const configureMapStateToProps = (accessPredicate, requiredActivity, redirectPath) => (state, ownProps) => {
18
- const entity = ownProps && state.models.groups ? state.models.groups[ownProps.model.groupId] : undefined;
19
- const options = Object.assign(Object.assign({}, (0, baseActivity_1.defaultOptions)(state, ownProps)), { entity });
20
- return {
21
- hasAccess: accessPredicate(requiredActivity, options),
22
- redirectPath: (typeof redirectPath === 'function' ? redirectPath(options) : redirectPath) || '/'
23
- };
25
+ const entity = ownProps && state.models.groups ? state.models.groups[ownProps.model.groupId] : undefined;
26
+ const options = {
27
+ ...(0, _baseActivity.defaultOptions)(state, ownProps),
28
+ ...{
29
+ entity
30
+ }
31
+ };
32
+ return {
33
+ hasAccess: accessPredicate(requiredActivity, options),
34
+ redirectPath: (typeof redirectPath === 'function' ? redirectPath(options) : redirectPath) || '/'
35
+ };
24
36
  };
25
- exports.configureMapStateToProps = configureMapStateToProps;
26
- /**
27
- * This HOC ensures that the wrapped component is only rendered if the group referenced by
28
- * `props.model.groupId`, if any, satisfies the `accessPredicate` for the `requiredActivity`.
29
- *
30
- * @param WrappedComponent The component which requires activity/activities in order to render
31
- * @param accessPredicate A predicate accepting a required activity and an optional entity and/or userInfo object
32
- * @param requiredActivity The required activity which is passed to the predicate for evaluation
33
- * @param redirectPath (Optional) A string or function that provides the redirect path for when `accessPredicate` is false. Defaults to '/'.
37
+
38
+ /**
39
+ * This HOC ensures that the wrapped component is only rendered if the group referenced by
40
+ * `props.model.groupId`, if any, satisfies the `accessPredicate` for the `requiredActivity`.
41
+ *
42
+ * @param WrappedComponent The component which requires activity/activities in order to render
43
+ * @param accessPredicate A predicate accepting a required activity and an optional entity and/or userInfo object
44
+ * @param requiredActivity The required activity which is passed to the predicate for evaluation
45
+ * @param redirectPath (Optional) A string or function that provides the redirect path for when `accessPredicate` is false. Defaults to '/'.
34
46
  */
47
+ exports.configureMapStateToProps = configureMapStateToProps;
35
48
  function groupActivityRequiredComponent(WrappedComponent, accessPredicate, requiredActivity, redirectPath) {
36
- const ActivityRequiredComponent = (0, ActivityRequiredComponent_1.configureActivityRequiredComponent)(WrappedComponent);
37
- const mapStateToProps = (0, exports.configureMapStateToProps)(accessPredicate, requiredActivity, redirectPath);
38
- // @ts-ignore: could not match inferred type from the `connect` HOC
39
- return (0, react_redux_1.connect)(mapStateToProps)(ActivityRequiredComponent);
49
+ const ActivityRequiredComponent = (0, _ActivityRequiredComponent.configureActivityRequiredComponent)(WrappedComponent);
50
+ const mapStateToProps = configureMapStateToProps(accessPredicate, requiredActivity, redirectPath);
51
+ // @ts-ignore: could not match inferred type from the `connect` HOC
52
+ return (0, _reactRedux.connect)(mapStateToProps)(ActivityRequiredComponent);
40
53
  }
54
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3RSZWR1eCIsInJlcXVpcmUiLCJfYmFzZUFjdGl2aXR5IiwiX0FjdGl2aXR5UmVxdWlyZWRDb21wb25lbnQiLCJjb25maWd1cmVNYXBTdGF0ZVRvUHJvcHMiLCJhY2Nlc3NQcmVkaWNhdGUiLCJyZXF1aXJlZEFjdGl2aXR5IiwicmVkaXJlY3RQYXRoIiwic3RhdGUiLCJvd25Qcm9wcyIsImVudGl0eSIsIm1vZGVscyIsImdyb3VwcyIsIm1vZGVsIiwiZ3JvdXBJZCIsInVuZGVmaW5lZCIsIm9wdGlvbnMiLCJkZWZhdWx0T3B0aW9ucyIsImhhc0FjY2VzcyIsImV4cG9ydHMiLCJncm91cEFjdGl2aXR5UmVxdWlyZWRDb21wb25lbnQiLCJXcmFwcGVkQ29tcG9uZW50IiwiQWN0aXZpdHlSZXF1aXJlZENvbXBvbmVudCIsImNvbmZpZ3VyZUFjdGl2aXR5UmVxdWlyZWRDb21wb25lbnQiLCJtYXBTdGF0ZVRvUHJvcHMiLCJjb25uZWN0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvSE9DL0dyb3VwQWN0aXZpdHlSZXF1aXJlZENvbXBvbmVudC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50Q2xhc3MsIENvbXBvbmVudFR5cGUgfSBmcm9tICdyZWFjdCdcclxuaW1wb3J0IHsgY29ubmVjdCB9IGZyb20gJ3JlYWN0LXJlZHV4J1xyXG5pbXBvcnQgeyBCYXNlUmVkdXhTdGF0ZSwgTW9kZWwgfSBmcm9tICcuLi8uLi90eXBlcydcclxuaW1wb3J0IHsgQWN0aXZpdHlPcHRpb25zLCBkZWZhdWx0T3B0aW9ucyB9IGZyb20gJy4uLy4uL3V0aWxzL2Jhc2VBY3Rpdml0eSdcclxuaW1wb3J0IHsgQWN0aXZpdHlSZXF1aXJlZFN0YXRlUHJvcHMsIGNvbmZpZ3VyZUFjdGl2aXR5UmVxdWlyZWRDb21wb25lbnQgfSBmcm9tICcuL0FjdGl2aXR5UmVxdWlyZWRDb21wb25lbnQnXHJcbmltcG9ydCB7IENvbGxlY3Rpb25JdGVtQ29tcG9uZW50V3JhcHBlZFByb3BzIH0gZnJvbSAnLi9Db2xsZWN0aW9uSXRlbUNvbXBvbmVudCdcclxuXHJcbi8qKlxyXG4gKiBBbiBlbnRpdHkgdGhhdCBoYXMgYSBgZ3JvdXBJZGBcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgR3JvdXBSZWxhdGVkRW50aXR5IGV4dGVuZHMgTW9kZWwge1xyXG5cdGdyb3VwSWQ6IG51bWJlclxyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIGBtYXBTdGF0ZVRvUHJvcHNgIGZ1bmN0aW9uLiBBZGQgYSBgaGFzQWNjZXNzYCBib29sZWFuIHByb3BlcnR5IHRvIHRoZSBjb21wb25lbnQncyBwcm9wc1xyXG4gKiBjaGVja2luZyB3aGV0aGVyIHRoZSB1c2VyIGhhcyB0aGUgcGFzc2VkIGByZXF1aXJlZEFjdGl2aXR5YCBmb3IgdGhlIGdyb3VwIHJlZmVyZW5jZWQgYnlcclxuICogYG93blByb3BzLm1vZGVsLmdyb3VwSWRgLCBpZiBhbnkuXHJcbiAqXHJcbiAqIEBwYXJhbSBhY2Nlc3NQcmVkaWNhdGUgQSBwcmVkaWNhdGUgYWNjZXB0aW5nIGEgcmVxdWlyZWQgYWN0aXZpdHkgYW5kIGFuIG9wdGlvbmFsIGVudGl0eSBhbmQvb3IgdXNlckluZm8gb2JqZWN0XHJcbiAqIEBwYXJhbSByZXF1aXJlZEFjdGl2aXR5IFRoZSByZXF1aXJlZCBhY3Rpdml0eSB3aGljaCBpcyBwYXNzZWQgdG8gdGhlIHByZWRpY2F0ZSBmb3IgZXZhbHVhdGlvblxyXG4gKiBAcGFyYW0gcmVkaXJlY3RQYXRoIChPcHRpb25hbCkgQSBzdHJpbmcgb3IgZnVuY3Rpb24gdGhhdCBwcm92aWRlcyB0aGUgcmVkaXJlY3QgcGF0aCBmb3Igd2hlbiBgYWNjZXNzUHJlZGljYXRlYCBpcyBmYWxzZS4gRGVmYXVsdHMgdG8gJy8nLlxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IGNvbmZpZ3VyZU1hcFN0YXRlVG9Qcm9wcyA9XHJcblx0KFxyXG5cdFx0YWNjZXNzUHJlZGljYXRlOiAocmVxdWlyZWRBY3Rpdml0eTogc3RyaW5nLCBvcHRpb25zOiBBY3Rpdml0eU9wdGlvbnMpID0+IGJvb2xlYW4sXHJcblx0XHRyZXF1aXJlZEFjdGl2aXR5OiBzdHJpbmcsXHJcblx0XHRyZWRpcmVjdFBhdGg/OiBzdHJpbmcgfCAoKG9wdGlvbnM6IEFjdGl2aXR5T3B0aW9ucykgPT4gc3RyaW5nIHwgdW5kZWZpbmVkKVxyXG5cdCkgPT5cclxuXHQoXHJcblx0XHRzdGF0ZTogQmFzZVJlZHV4U3RhdGUsXHJcblx0XHRvd25Qcm9wcz86IENvbGxlY3Rpb25JdGVtQ29tcG9uZW50V3JhcHBlZFByb3BzPEdyb3VwUmVsYXRlZEVudGl0eT5cclxuXHQpOiBBY3Rpdml0eVJlcXVpcmVkU3RhdGVQcm9wcyA9PiB7XHJcblx0XHRjb25zdCBlbnRpdHkgPSBvd25Qcm9wcyAmJiBzdGF0ZS5tb2RlbHMuZ3JvdXBzID8gc3RhdGUubW9kZWxzLmdyb3Vwc1tvd25Qcm9wcy5tb2RlbC5ncm91cElkXSA6IHVuZGVmaW5lZFxyXG5cdFx0Y29uc3Qgb3B0aW9ucyA9IHsgLi4uZGVmYXVsdE9wdGlvbnMoc3RhdGUsIG93blByb3BzKSwgLi4ueyBlbnRpdHkgfSB9IGFzIEFjdGl2aXR5T3B0aW9uc1xyXG5cdFx0cmV0dXJuIHtcclxuXHRcdFx0aGFzQWNjZXNzOiBhY2Nlc3NQcmVkaWNhdGUocmVxdWlyZWRBY3Rpdml0eSwgb3B0aW9ucyksXHJcblx0XHRcdHJlZGlyZWN0UGF0aDogKHR5cGVvZiByZWRpcmVjdFBhdGggPT09ICdmdW5jdGlvbicgPyByZWRpcmVjdFBhdGgob3B0aW9ucykgOiByZWRpcmVjdFBhdGgpIHx8ICcvJ1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcbi8qKlxyXG4gKiBUaGlzIEhPQyBlbnN1cmVzIHRoYXQgdGhlIHdyYXBwZWQgY29tcG9uZW50IGlzIG9ubHkgcmVuZGVyZWQgaWYgdGhlIGdyb3VwIHJlZmVyZW5jZWQgYnlcclxuICogYHByb3BzLm1vZGVsLmdyb3VwSWRgLCBpZiBhbnksIHNhdGlzZmllcyB0aGUgYGFjY2Vzc1ByZWRpY2F0ZWAgZm9yIHRoZSBgcmVxdWlyZWRBY3Rpdml0eWAuXHJcbiAqXHJcbiAqIEBwYXJhbSBXcmFwcGVkQ29tcG9uZW50IFRoZSBjb21wb25lbnQgd2hpY2ggcmVxdWlyZXMgYWN0aXZpdHkvYWN0aXZpdGllcyBpbiBvcmRlciB0byByZW5kZXJcclxuICogQHBhcmFtIGFjY2Vzc1ByZWRpY2F0ZSBBIHByZWRpY2F0ZSBhY2NlcHRpbmcgYSByZXF1aXJlZCBhY3Rpdml0eSBhbmQgYW4gb3B0aW9uYWwgZW50aXR5IGFuZC9vciB1c2VySW5mbyBvYmplY3RcclxuICogQHBhcmFtIHJlcXVpcmVkQWN0aXZpdHkgVGhlIHJlcXVpcmVkIGFjdGl2aXR5IHdoaWNoIGlzIHBhc3NlZCB0byB0aGUgcHJlZGljYXRlIGZvciBldmFsdWF0aW9uXHJcbiAqIEBwYXJhbSByZWRpcmVjdFBhdGggKE9wdGlvbmFsKSBBIHN0cmluZyBvciBmdW5jdGlvbiB0aGF0IHByb3ZpZGVzIHRoZSByZWRpcmVjdCBwYXRoIGZvciB3aGVuIGBhY2Nlc3NQcmVkaWNhdGVgIGlzIGZhbHNlLiBEZWZhdWx0cyB0byAnLycuXHJcbiAqL1xyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBncm91cEFjdGl2aXR5UmVxdWlyZWRDb21wb25lbnQ8XHJcblx0VE93blByb3BzIGV4dGVuZHMgQ29sbGVjdGlvbkl0ZW1Db21wb25lbnRXcmFwcGVkUHJvcHM8R3JvdXBSZWxhdGVkRW50aXR5PlxyXG4+KFxyXG5cdFdyYXBwZWRDb21wb25lbnQ6IENvbXBvbmVudFR5cGU8VE93blByb3BzPixcclxuXHRhY2Nlc3NQcmVkaWNhdGU6IChyZXF1aXJlZEFjdGl2aXR5OiBzdHJpbmcsIG9wdGlvbnM6IGFueSkgPT4gYm9vbGVhbixcclxuXHRyZXF1aXJlZEFjdGl2aXR5OiBzdHJpbmcsXHJcblx0cmVkaXJlY3RQYXRoPzogc3RyaW5nIHwgKChvcHRpb25zOiBBY3Rpdml0eU9wdGlvbnMpID0+IHN0cmluZyB8IHVuZGVmaW5lZClcclxuKTogQ29tcG9uZW50Q2xhc3M8VE93blByb3BzPiB7XHJcblx0Y29uc3QgQWN0aXZpdHlSZXF1aXJlZENvbXBvbmVudCA9IGNvbmZpZ3VyZUFjdGl2aXR5UmVxdWlyZWRDb21wb25lbnQoV3JhcHBlZENvbXBvbmVudClcclxuXHRjb25zdCBtYXBTdGF0ZVRvUHJvcHMgPSBjb25maWd1cmVNYXBTdGF0ZVRvUHJvcHMoYWNjZXNzUHJlZGljYXRlLCByZXF1aXJlZEFjdGl2aXR5LCByZWRpcmVjdFBhdGgpXHJcblx0Ly8gQHRzLWlnbm9yZTogY291bGQgbm90IG1hdGNoIGluZmVycmVkIHR5cGUgZnJvbSB0aGUgYGNvbm5lY3RgIEhPQ1xyXG5cdHJldHVybiBjb25uZWN0KG1hcFN0YXRlVG9Qcm9wcykoQWN0aXZpdHlSZXF1aXJlZENvbXBvbmVudClcclxufVxyXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFDQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUFFQSxJQUFBQyxhQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSwwQkFBQSxHQUFBRixPQUFBO0FBR0E7QUFDQTtBQUNBOztBQUtBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLE1BQU1HLHdCQUF3QixHQUNwQ0EsQ0FDQ0MsZUFBZ0YsRUFDaEZDLGdCQUF3QixFQUN4QkMsWUFBMEUsS0FFM0UsQ0FDQ0MsS0FBcUIsRUFDckJDLFFBQWtFLEtBQ2xDO0VBQ2hDLE1BQU1DLE1BQU0sR0FBR0QsUUFBUSxJQUFJRCxLQUFLLENBQUNHLE1BQU0sQ0FBQ0MsTUFBTSxHQUFHSixLQUFLLENBQUNHLE1BQU0sQ0FBQ0MsTUFBTSxDQUFDSCxRQUFRLENBQUNJLEtBQUssQ0FBQ0MsT0FBTyxDQUFDLEdBQUdDLFNBQVM7RUFDeEcsTUFBTUMsT0FBTyxHQUFHO0lBQUUsR0FBRyxJQUFBQyw0QkFBYyxFQUFDVCxLQUFLLEVBQUVDLFFBQVEsQ0FBQztJQUFFLEdBQUc7TUFBRUM7SUFBTztFQUFFLENBQW9CO0VBQ3hGLE9BQU87SUFDTlEsU0FBUyxFQUFFYixlQUFlLENBQUNDLGdCQUFnQixFQUFFVSxPQUFPLENBQUM7SUFDckRULFlBQVksRUFBRSxDQUFDLE9BQU9BLFlBQVksS0FBSyxVQUFVLEdBQUdBLFlBQVksQ0FBQ1MsT0FBTyxDQUFDLEdBQUdULFlBQVksS0FBSztFQUM5RixDQUFDO0FBQ0YsQ0FBQzs7QUFFRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFSQVksT0FBQSxDQUFBZix3QkFBQSxHQUFBQSx3QkFBQTtBQVNlLFNBQVNnQiw4QkFBOEJBLENBR3JEQyxnQkFBMEMsRUFDMUNoQixlQUFvRSxFQUNwRUMsZ0JBQXdCLEVBQ3hCQyxZQUEwRSxFQUM5QztFQUM1QixNQUFNZSx5QkFBeUIsR0FBRyxJQUFBQyw2REFBa0MsRUFBQ0YsZ0JBQWdCLENBQUM7RUFDdEYsTUFBTUcsZUFBZSxHQUFHcEIsd0JBQXdCLENBQUNDLGVBQWUsRUFBRUMsZ0JBQWdCLEVBQUVDLFlBQVksQ0FBQztFQUNqRztFQUNBLE9BQU8sSUFBQWtCLG1CQUFPLEVBQUNELGVBQWUsQ0FBQyxDQUFDRix5QkFBeUIsQ0FBQztBQUMzRCIsImlnbm9yZUxpc3QiOltdfQ==