@beinformed/ui 1.12.1 → 1.13.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 (281) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/esm/builder/mergeLayoutHintConfigurations.js +3 -3
  3. package/esm/builder/mergeLayoutHintConfigurations.js.map +1 -1
  4. package/esm/constants/Settings.js +2 -1
  5. package/esm/constants/Settings.js.map +1 -1
  6. package/esm/exceptions/ConfigurationException.js +2 -1
  7. package/esm/exceptions/ConfigurationException.js.map +1 -1
  8. package/esm/exceptions/FetchException.js +4 -3
  9. package/esm/exceptions/FetchException.js.map +1 -1
  10. package/esm/exceptions/IllegalArgumentException.js +2 -1
  11. package/esm/exceptions/IllegalArgumentException.js.map +1 -1
  12. package/esm/exceptions/IllegalReturnException.js +2 -1
  13. package/esm/exceptions/IllegalReturnException.js.map +1 -1
  14. package/esm/exceptions/IllegalStateException.js +2 -1
  15. package/esm/exceptions/IllegalStateException.js.map +1 -1
  16. package/esm/exceptions/JsonParseException.js +2 -1
  17. package/esm/exceptions/JsonParseException.js.map +1 -1
  18. package/esm/exceptions/MissingPropertyException.js +2 -1
  19. package/esm/exceptions/MissingPropertyException.js.map +1 -1
  20. package/esm/exceptions/NetworkException.js +2 -1
  21. package/esm/exceptions/NetworkException.js.map +1 -1
  22. package/esm/exceptions/NotAllowedUriException.js +2 -1
  23. package/esm/exceptions/NotAllowedUriException.js.map +1 -1
  24. package/esm/exceptions/NotFoundException.js +2 -1
  25. package/esm/exceptions/NotFoundException.js.map +1 -1
  26. package/esm/exceptions/ServerRequestException.js +2 -1
  27. package/esm/exceptions/ServerRequestException.js.map +1 -1
  28. package/esm/exceptions/ThemePropertyException.js +2 -1
  29. package/esm/exceptions/ThemePropertyException.js.map +1 -1
  30. package/esm/exceptions/TimeoutException.js +2 -1
  31. package/esm/exceptions/TimeoutException.js.map +1 -1
  32. package/esm/exceptions/UnauthorizedException.js +2 -1
  33. package/esm/exceptions/UnauthorizedException.js.map +1 -1
  34. package/esm/exceptions/UnsupportedOperationException.js +2 -1
  35. package/esm/exceptions/UnsupportedOperationException.js.map +1 -1
  36. package/esm/hooks/useContent.js +2 -2
  37. package/esm/hooks/useContent.js.map +1 -1
  38. package/esm/hooks/useDeepCompareEffect.js +2 -1
  39. package/esm/hooks/useDeepCompareEffect.js.map +1 -1
  40. package/esm/hooks/useForm.js.map +1 -1
  41. package/esm/hooks/useModal.js +2 -2
  42. package/esm/hooks/useModal.js.map +1 -1
  43. package/esm/hooks/useModularUI.js +0 -1
  44. package/esm/hooks/useModularUI.js.map +1 -1
  45. package/esm/hooks/useProgressIndicator.js +2 -2
  46. package/esm/i18n/Locale.js +11 -4
  47. package/esm/i18n/Locale.js.map +1 -1
  48. package/esm/i18n/Locales.js +2 -2
  49. package/esm/i18n/Message.js +2 -2
  50. package/esm/i18n/languages.js +2 -1
  51. package/esm/i18n/languages.js.map +1 -1
  52. package/esm/models/attributes/AttributeCollection.js +2 -2
  53. package/esm/models/attributes/AttributeContent.js +58 -30
  54. package/esm/models/attributes/AttributeContent.js.map +1 -1
  55. package/esm/models/attributes/AttributeDataHelper.js +2 -2
  56. package/esm/models/attributes/BooleanAttributeModel.js +2 -2
  57. package/esm/models/attributes/ChoiceAttributeModel.js +2 -2
  58. package/esm/models/attributes/ChoiceAttributeOptionCollection.js +2 -2
  59. package/esm/models/attributes/CompositeAttributeChildCollection.js +2 -2
  60. package/esm/models/attributes/_createAttribute.js +2 -2
  61. package/esm/models/base/ResourceModel.js +2 -2
  62. package/esm/models/caseview/CaseViewModel.js +2 -1
  63. package/esm/models/caseview/CaseViewModel.js.map +1 -1
  64. package/esm/models/concepts/ConceptDetailModel.js +2 -2
  65. package/esm/models/concepts/SourceReferenceModel.js +2 -2
  66. package/esm/models/content/ContentTOCModel.js +2 -2
  67. package/esm/models/filters/AssignmentFilterModel.js +2 -2
  68. package/esm/models/filters/BaseFilterModel.js +2 -2
  69. package/esm/models/filters/ConceptIndexFilterModel.js +2 -1
  70. package/esm/models/filters/ConceptIndexFilterModel.js.map +1 -1
  71. package/esm/models/filters/FilterCollection.js +2 -2
  72. package/esm/models/filters/FilterModel.js +2 -1
  73. package/esm/models/filters/FilterModel.js.map +1 -1
  74. package/esm/models/form/FormModel.js +28 -4
  75. package/esm/models/form/FormModel.js.map +1 -1
  76. package/esm/models/form/FormObjectModel.js +2 -2
  77. package/esm/models/grouping/GroupingModel.js +2 -2
  78. package/esm/models/links/normalizeLinkJSON.js +2 -2
  79. package/esm/models/list/ListDetailModel.js +2 -2
  80. package/esm/models/list/ListItemCollection.js +38 -0
  81. package/esm/models/list/ListItemCollection.js.map +1 -1
  82. package/esm/models/list/ListItemModel.js +14 -2
  83. package/esm/models/list/ListItemModel.js.map +1 -1
  84. package/esm/models/list/ListModel.js +17 -70
  85. package/esm/models/list/ListModel.js.map +1 -1
  86. package/esm/models/lookup/LookupOptionCollection.js +2 -2
  87. package/esm/modularui/ModularUIError.js +2 -1
  88. package/esm/modularui/ModularUIError.js.map +1 -1
  89. package/esm/modularui/ModularUIRequest.js +71 -49
  90. package/esm/modularui/ModularUIRequest.js.map +1 -1
  91. package/esm/react-server/serverUtil.js +2 -2
  92. package/esm/react-theme/createTheme.js +2 -2
  93. package/esm/redux/_i18n/reducer.js +2 -2
  94. package/esm/redux/_modularui/actions.js +2 -2
  95. package/esm/redux/_modularui/connector.js +2 -2
  96. package/esm/redux/_modularui/reducer.js +2 -2
  97. package/esm/redux/_modularui/selectors.js +2 -2
  98. package/esm/redux/reducers/AuthReducer.js +2 -2
  99. package/esm/redux/reducers/ModalsReducer.js +2 -2
  100. package/esm/redux/reducers/NotificationReducer.js +2 -2
  101. package/esm/redux/reducers/PreferencesReducer.js +2 -2
  102. package/esm/redux/reducers/ProgressIndicatorReducer.js +2 -2
  103. package/esm/redux/store/configureStore.js +2 -2
  104. package/esm/utils/browser/Cookies.js +18 -32
  105. package/esm/utils/browser/Cookies.js.map +1 -1
  106. package/esm/utils/fetch/xhr.js +6 -4
  107. package/esm/utils/fetch/xhr.js.map +1 -1
  108. package/lib/builder/mergeLayoutHintConfigurations.js +3 -3
  109. package/lib/builder/mergeLayoutHintConfigurations.js.flow +3 -3
  110. package/lib/builder/mergeLayoutHintConfigurations.js.map +1 -1
  111. package/lib/constants/Settings.js +2 -1
  112. package/lib/constants/Settings.js.flow +2 -0
  113. package/lib/constants/Settings.js.map +1 -1
  114. package/lib/exceptions/ConfigurationException.js +3 -1
  115. package/lib/exceptions/ConfigurationException.js.map +1 -1
  116. package/lib/exceptions/FetchException.js +5 -3
  117. package/lib/exceptions/FetchException.js.map +1 -1
  118. package/lib/exceptions/IllegalArgumentException.js +3 -1
  119. package/lib/exceptions/IllegalArgumentException.js.map +1 -1
  120. package/lib/exceptions/IllegalReturnException.js +3 -1
  121. package/lib/exceptions/IllegalReturnException.js.map +1 -1
  122. package/lib/exceptions/IllegalStateException.js +3 -1
  123. package/lib/exceptions/IllegalStateException.js.map +1 -1
  124. package/lib/exceptions/JsonParseException.js +3 -1
  125. package/lib/exceptions/JsonParseException.js.map +1 -1
  126. package/lib/exceptions/MissingPropertyException.js +3 -1
  127. package/lib/exceptions/MissingPropertyException.js.map +1 -1
  128. package/lib/exceptions/NetworkException.js +3 -1
  129. package/lib/exceptions/NetworkException.js.map +1 -1
  130. package/lib/exceptions/NotAllowedUriException.js +3 -1
  131. package/lib/exceptions/NotAllowedUriException.js.map +1 -1
  132. package/lib/exceptions/NotFoundException.js +3 -1
  133. package/lib/exceptions/NotFoundException.js.map +1 -1
  134. package/lib/exceptions/ServerRequestException.js +3 -1
  135. package/lib/exceptions/ServerRequestException.js.map +1 -1
  136. package/lib/exceptions/ThemePropertyException.js +3 -1
  137. package/lib/exceptions/ThemePropertyException.js.map +1 -1
  138. package/lib/exceptions/TimeoutException.js +3 -1
  139. package/lib/exceptions/TimeoutException.js.map +1 -1
  140. package/lib/exceptions/UnauthorizedException.js +3 -1
  141. package/lib/exceptions/UnauthorizedException.js.map +1 -1
  142. package/lib/exceptions/UnsupportedOperationException.js +3 -1
  143. package/lib/exceptions/UnsupportedOperationException.js.map +1 -1
  144. package/lib/hooks/useContent.js +2 -2
  145. package/lib/hooks/useContent.js.flow +2 -2
  146. package/lib/hooks/useContent.js.map +1 -1
  147. package/lib/hooks/useDeepCompareEffect.js +2 -1
  148. package/lib/hooks/useDeepCompareEffect.js.flow +1 -1
  149. package/lib/hooks/useDeepCompareEffect.js.map +1 -1
  150. package/lib/hooks/useForm.js.flow +1 -2
  151. package/lib/hooks/useForm.js.map +1 -1
  152. package/lib/hooks/useModal.js +2 -2
  153. package/lib/hooks/useModal.js.flow +1 -1
  154. package/lib/hooks/useModal.js.map +1 -1
  155. package/lib/hooks/useModularUI.js +0 -1
  156. package/lib/hooks/useModularUI.js.flow +0 -2
  157. package/lib/hooks/useModularUI.js.map +1 -1
  158. package/lib/hooks/useProgressIndicator.js +2 -2
  159. package/lib/i18n/Locale.js +11 -5
  160. package/lib/i18n/Locale.js.flow +7 -0
  161. package/lib/i18n/Locale.js.map +1 -1
  162. package/lib/i18n/Locales.js +2 -2
  163. package/lib/i18n/Message.js +2 -2
  164. package/lib/i18n/__tests__/Locale.spec.js.flow +14 -0
  165. package/lib/i18n/languages.js +2 -1
  166. package/lib/i18n/languages.js.flow +1 -0
  167. package/lib/i18n/languages.js.map +1 -1
  168. package/lib/i18n/types.js.flow +1 -0
  169. package/lib/models/attributes/AttributeCollection.js +2 -2
  170. package/lib/models/attributes/AttributeContent.js +59 -31
  171. package/lib/models/attributes/AttributeContent.js.flow +63 -16
  172. package/lib/models/attributes/AttributeContent.js.map +1 -1
  173. package/lib/models/attributes/AttributeDataHelper.js +2 -2
  174. package/lib/models/attributes/BooleanAttributeModel.js +2 -2
  175. package/lib/models/attributes/ChoiceAttributeModel.js +2 -2
  176. package/lib/models/attributes/ChoiceAttributeOptionCollection.js +2 -2
  177. package/lib/models/attributes/CompositeAttributeChildCollection.js +2 -2
  178. package/lib/models/attributes/__tests__/AttributeContent.spec.js.flow +13 -19
  179. package/lib/models/attributes/__tests__/StringAttributeModel.spec.js.flow +1 -1
  180. package/lib/models/attributes/_createAttribute.js +2 -2
  181. package/lib/models/base/ResourceModel.js +2 -2
  182. package/lib/models/base/__tests__/BaseModel.spec.js.flow +5 -5
  183. package/lib/models/caseview/CaseViewModel.js +3 -1
  184. package/lib/models/caseview/CaseViewModel.js.flow +3 -1
  185. package/lib/models/caseview/CaseViewModel.js.map +1 -1
  186. package/lib/models/caseview/__tests__/CaseViewModel.spec.js.flow +38 -1
  187. package/lib/models/concepts/ConceptDetailModel.js +2 -2
  188. package/lib/models/concepts/SourceReferenceModel.js +2 -2
  189. package/lib/models/content/ContentTOCModel.js +2 -2
  190. package/lib/models/filters/AssignmentFilterModel.js +2 -2
  191. package/lib/models/filters/BaseFilterModel.js +2 -2
  192. package/lib/models/filters/ConceptIndexFilterModel.js +3 -1
  193. package/lib/models/filters/ConceptIndexFilterModel.js.map +1 -1
  194. package/lib/models/filters/FilterCollection.js +2 -2
  195. package/lib/models/filters/FilterModel.js +3 -1
  196. package/lib/models/filters/FilterModel.js.map +1 -1
  197. package/lib/models/form/FormModel.js +28 -4
  198. package/lib/models/form/FormModel.js.flow +18 -1
  199. package/lib/models/form/FormModel.js.map +1 -1
  200. package/lib/models/form/FormObjectModel.js +2 -2
  201. package/lib/models/form/__tests__/FormModel.getters.spec.js.flow +15 -0
  202. package/lib/models/grouping/GroupingModel.js +2 -2
  203. package/lib/models/links/normalizeLinkJSON.js +2 -2
  204. package/lib/models/list/ListDetailModel.js +2 -2
  205. package/lib/models/list/ListItemCollection.js +40 -0
  206. package/lib/models/list/ListItemCollection.js.flow +38 -1
  207. package/lib/models/list/ListItemCollection.js.map +1 -1
  208. package/lib/models/list/ListItemModel.js +14 -2
  209. package/lib/models/list/ListItemModel.js.flow +15 -0
  210. package/lib/models/list/ListItemModel.js.map +1 -1
  211. package/lib/models/list/ListModel.js +16 -71
  212. package/lib/models/list/ListModel.js.flow +1 -45
  213. package/lib/models/list/ListModel.js.map +1 -1
  214. package/lib/models/list/__tests__/ListItemCollection.spec.js.flow +22 -0
  215. package/lib/models/list/__tests__/ListModel.spec.js.flow +0 -2
  216. package/lib/models/lookup/LookupOptionCollection.js +2 -2
  217. package/lib/models/panels/__tests__/GroupingPanelModel.spec.js.flow +38 -21
  218. package/lib/models/process/__tests__/ProcessStatusSettingsModel.spec.js.flow +11 -0
  219. package/lib/models/types.js.flow +3 -3
  220. package/lib/modularui/ModularUIError.js +3 -1
  221. package/lib/modularui/ModularUIError.js.map +1 -1
  222. package/lib/modularui/ModularUIRequest.js +69 -49
  223. package/lib/modularui/ModularUIRequest.js.flow +38 -22
  224. package/lib/modularui/ModularUIRequest.js.map +1 -1
  225. package/lib/react-server/serverUtil.js +2 -2
  226. package/lib/react-theme/createTheme.js +2 -2
  227. package/lib/redux/_i18n/reducer.js +2 -2
  228. package/lib/redux/_modularui/actions.js +2 -2
  229. package/lib/redux/_modularui/connector.js +2 -2
  230. package/lib/redux/_modularui/reducer.js +2 -2
  231. package/lib/redux/_modularui/selectors.js +2 -2
  232. package/lib/redux/reducers/AuthReducer.js +2 -2
  233. package/lib/redux/reducers/ModalsReducer.js +2 -2
  234. package/lib/redux/reducers/NotificationReducer.js +2 -2
  235. package/lib/redux/reducers/PreferencesReducer.js +2 -2
  236. package/lib/redux/reducers/ProgressIndicatorReducer.js +2 -2
  237. package/lib/redux/store/configureStore.js +2 -2
  238. package/lib/utils/browser/Cookies.js +18 -31
  239. package/lib/utils/browser/Cookies.js.flow +22 -28
  240. package/lib/utils/browser/Cookies.js.map +1 -1
  241. package/lib/utils/browser/__tests__/Cookies.spec.js.flow +51 -0
  242. package/lib/utils/fetch/xhr.js +7 -4
  243. package/lib/utils/fetch/xhr.js.flow +6 -2
  244. package/lib/utils/fetch/xhr.js.map +1 -1
  245. package/package.json +36 -34
  246. package/src/builder/mergeLayoutHintConfigurations.js +3 -3
  247. package/src/constants/Settings.js +2 -0
  248. package/src/hooks/useContent.js +2 -2
  249. package/src/hooks/useDeepCompareEffect.js +1 -1
  250. package/src/hooks/useForm.js +1 -2
  251. package/src/hooks/useModal.js +1 -1
  252. package/src/hooks/useModularUI.js +0 -2
  253. package/src/i18n/Locale.js +7 -0
  254. package/src/i18n/__tests__/Locale.spec.js +14 -0
  255. package/src/i18n/languages.js +1 -0
  256. package/src/i18n/types.js +1 -0
  257. package/src/models/attributes/AttributeContent.js +63 -16
  258. package/src/models/attributes/__tests__/AttributeContent.spec.js +13 -19
  259. package/src/models/attributes/__tests__/StringAttributeModel.spec.js +1 -1
  260. package/src/models/base/__tests__/BaseModel.spec.js +5 -5
  261. package/src/models/caseview/CaseViewModel.js +3 -1
  262. package/src/models/caseview/__tests__/CaseViewModel.spec.js +38 -1
  263. package/src/models/caseview/__tests__/caseview.json +14 -3
  264. package/src/models/caseview/__tests__/caseviewContributions.json +48 -77
  265. package/src/models/caseview/__tests__/caseview_local_taskgroup.json +57 -0
  266. package/src/models/form/FormModel.js +18 -1
  267. package/src/models/form/__tests__/FormModel.getters.spec.js +15 -0
  268. package/src/models/list/ListItemCollection.js +38 -1
  269. package/src/models/list/ListItemModel.js +15 -0
  270. package/src/models/list/ListModel.js +1 -45
  271. package/src/models/list/__tests__/ListItemCollection.spec.js +22 -0
  272. package/src/models/list/__tests__/ListModel.spec.js +0 -2
  273. package/src/models/panels/__tests__/GroupingPanelModel.spec.js +38 -21
  274. package/src/models/panels/__tests__/groupingPanel.json +20 -1
  275. package/src/models/panels/__tests__/groupingPanelContributions.json +14 -1
  276. package/src/models/process/__tests__/ProcessStatusSettingsModel.spec.js +11 -0
  277. package/src/models/types.js +3 -3
  278. package/src/modularui/ModularUIRequest.js +38 -22
  279. package/src/utils/browser/Cookies.js +22 -28
  280. package/src/utils/browser/__tests__/Cookies.spec.js +51 -0
  281. package/src/utils/fetch/xhr.js +6 -2
@@ -19,9 +19,9 @@ exports.default = void 0;
19
19
 
20
20
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
21
21
 
22
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); if (enumerableOnly) { symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
22
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
23
23
 
24
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (_Object$getOwnPropertyDescriptors) { Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } } return target; }
24
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
25
25
 
26
26
  // REDUCER
27
27
  var initialState = {
@@ -19,9 +19,9 @@ exports.default = void 0;
19
19
 
20
20
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
21
21
 
22
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); if (enumerableOnly) { symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
22
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
23
23
 
24
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (_Object$getOwnPropertyDescriptors) { Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } } return target; }
24
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
25
25
 
26
26
  var initialState = {};
27
27
  /**
@@ -19,9 +19,9 @@ exports.default = void 0;
19
19
 
20
20
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
21
21
 
22
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); if (enumerableOnly) { symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
22
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
23
23
 
24
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (_Object$getOwnPropertyDescriptors) { Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } } return target; }
24
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
25
25
 
26
26
  // REDUCER
27
27
  var initialState = {
@@ -31,9 +31,9 @@ var _createReducer = require("../reducers/createReducer");
31
31
 
32
32
  var _actions = require("../_router/actions");
33
33
 
34
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); if (enumerableOnly) { symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
34
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
35
35
 
36
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (_Object$getOwnPropertyDescriptors) { Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } } return target; }
36
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
37
37
 
38
38
  /**
39
39
  */
@@ -7,23 +7,14 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.setCookie = exports.getCookie = exports.clearCookie = void 0;
9
9
 
10
- var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
10
+ var _jsCookie = _interopRequireDefault(require("js-cookie"));
11
11
 
12
12
  var _Constants = require("../../constants/Constants");
13
13
 
14
14
  /**
15
15
  */
16
16
  var getCookie = function getCookie(name) {
17
- if (typeof document !== "undefined") {
18
- var value = ";".concat(document.cookie);
19
- var parts = value.split("; ".concat(name, "="));
20
-
21
- if (parts.length === 2) {
22
- return parts.pop().split(";").shift();
23
- }
24
- }
25
-
26
- return null;
17
+ return _jsCookie.default.get(name);
27
18
  };
28
19
  /**
29
20
  */
@@ -38,27 +29,23 @@ var setCookie = function setCookie(name, value) {
38
29
  sameSite = _ref$sameSite === void 0 ? "Strict" : _ref$sameSite,
39
30
  secure = _ref.secure;
40
31
 
41
- if (typeof document !== "undefined") {
42
- var _context, _context2, _context3, _context4, _context5;
43
-
44
- var valuePart = (0, _concat.default)(_context = "".concat(name, "=")).call(_context, value || "");
45
- var expires = "";
46
-
47
- if (days) {
48
- var date = new Date();
49
- date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);
50
- expires = "; expires=".concat(date.toUTCString());
51
- }
32
+ var attributes = {
33
+ path: _Constants.BASE
34
+ };
52
35
 
53
- var sameSitePart = "";
36
+ if (days) {
37
+ attributes.expires = days;
38
+ }
54
39
 
55
- if (sameSite) {
56
- sameSitePart = "; SameSite=".concat(sameSite);
57
- }
40
+ if (sameSite) {
41
+ attributes.sameSite = sameSite;
42
+ }
58
43
 
59
- var securePart = secure ? "Secure" : "";
60
- document.cookie = (0, _concat.default)(_context2 = (0, _concat.default)(_context3 = (0, _concat.default)(_context4 = (0, _concat.default)(_context5 = "".concat(valuePart)).call(_context5, expires)).call(_context4, sameSitePart)).call(_context3, securePart, "; path=")).call(_context2, _Constants.BASE);
44
+ if (secure) {
45
+ attributes.secure = secure;
61
46
  }
47
+
48
+ _jsCookie.default.set(name, value, attributes);
62
49
  };
63
50
  /**
64
51
  */
@@ -67,9 +54,9 @@ var setCookie = function setCookie(name, value) {
67
54
  exports.setCookie = setCookie;
68
55
 
69
56
  var clearCookie = function clearCookie(name) {
70
- if (typeof document !== "undefined") {
71
- document.cookie = "".concat(name, "=; Max-Age=-99999999;");
72
- }
57
+ _jsCookie.default.remove(name, {
58
+ path: _Constants.BASE
59
+ });
73
60
  };
74
61
 
75
62
  exports.clearCookie = clearCookie;
@@ -1,4 +1,6 @@
1
1
  // @flow
2
+ import Cookies from "js-cookie";
3
+
2
4
  import { BASE } from "../../constants/Constants";
3
5
 
4
6
  type CookieOptions = {
@@ -7,18 +9,17 @@ type CookieOptions = {
7
9
  secure?: boolean,
8
10
  };
9
11
 
12
+ type CookieAttributes = {
13
+ path: string,
14
+ expires?: number,
15
+ sameSite?: string,
16
+ secure?: boolean,
17
+ };
18
+
10
19
  /**
11
20
  */
12
21
  const getCookie = (name: string): null | string => {
13
- if (typeof document !== "undefined") {
14
- const value = `;${document.cookie}`;
15
- const parts = value.split(`; ${name}=`);
16
- if (parts.length === 2) {
17
- return parts.pop().split(";").shift();
18
- }
19
- }
20
-
21
- return null;
22
+ return Cookies.get(name);
22
23
  };
23
24
 
24
25
  /**
@@ -28,31 +29,24 @@ const setCookie = (
28
29
  value: any,
29
30
  { days, sameSite = "Strict", secure }: CookieOptions = {}
30
31
  ) => {
31
- if (typeof document !== "undefined") {
32
- const valuePart = `${name}=${value || ""}`;
33
-
34
- let expires = "";
35
- if (days) {
36
- const date = new Date();
37
- date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);
38
- expires = `; expires=${date.toUTCString()}`;
39
- }
40
- let sameSitePart = "";
41
- if (sameSite) {
42
- sameSitePart = `; SameSite=${sameSite}`;
43
- }
44
- const securePart = secure ? "Secure" : "";
45
-
46
- document.cookie = `${valuePart}${expires}${sameSitePart}${securePart}; path=${BASE}`;
32
+ const attributes: CookieAttributes = { path: BASE };
33
+ if (days) {
34
+ attributes.expires = days;
35
+ }
36
+ if (sameSite) {
37
+ attributes.sameSite = sameSite;
38
+ }
39
+ if (secure) {
40
+ attributes.secure = secure;
47
41
  }
42
+
43
+ Cookies.set(name, value, attributes);
48
44
  };
49
45
 
50
46
  /**
51
47
  */
52
48
  const clearCookie = (name: string) => {
53
- if (typeof document !== "undefined") {
54
- document.cookie = `${name}=; Max-Age=-99999999;`;
55
- }
49
+ Cookies.remove(name, { path: BASE });
56
50
  };
57
51
 
58
52
  export { getCookie, setCookie, clearCookie };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/browser/Cookies.js"],"names":["getCookie","name","document","value","cookie","parts","split","length","pop","shift","setCookie","days","sameSite","secure","valuePart","expires","date","Date","setTime","getTime","toUTCString","sameSitePart","securePart","BASE","clearCookie"],"mappings":";;;;;;;;;;;AACA;;AAQA;AACA;AACA,IAAMA,SAAS,GAAG,SAAZA,SAAY,CAACC,IAAD,EAAiC;AACjD,MAAI,OAAOC,QAAP,KAAoB,WAAxB,EAAqC;AACnC,QAAMC,KAAK,cAAOD,QAAQ,CAACE,MAAhB,CAAX;AACA,QAAMC,KAAK,GAAGF,KAAK,CAACG,KAAN,aAAiBL,IAAjB,OAAd;;AACA,QAAII,KAAK,CAACE,MAAN,KAAiB,CAArB,EAAwB;AACtB,aAAOF,KAAK,CAACG,GAAN,GAAYF,KAAZ,CAAkB,GAAlB,EAAuBG,KAAvB,EAAP;AACD;AACF;;AAED,SAAO,IAAP;AACD,CAVD;AAYA;AACA;;;;;AACA,IAAMC,SAAS,GAAG,SAAZA,SAAY,CAChBT,IADgB,EAEhBE,KAFgB,EAIb;AAAA,iFADoD,EACpD;AAAA,MADDQ,IACC,QADDA,IACC;AAAA,2BADKC,QACL;AAAA,MADKA,QACL,8BADgB,QAChB;AAAA,MAD0BC,MAC1B,QAD0BA,MAC1B;;AACH,MAAI,OAAOX,QAAP,KAAoB,WAAxB,EAAqC;AAAA;;AACnC,QAAMY,SAAS,6CAAMb,IAAN,uBAAcE,KAAK,IAAI,EAAvB,CAAf;AAEA,QAAIY,OAAO,GAAG,EAAd;;AACA,QAAIJ,IAAJ,EAAU;AACR,UAAMK,IAAI,GAAG,IAAIC,IAAJ,EAAb;AACAD,MAAAA,IAAI,CAACE,OAAL,CAAaF,IAAI,CAACG,OAAL,KAAiBR,IAAI,GAAG,EAAP,GAAY,EAAZ,GAAiB,EAAjB,GAAsB,IAApD;AACAI,MAAAA,OAAO,uBAAgBC,IAAI,CAACI,WAAL,EAAhB,CAAP;AACD;;AACD,QAAIC,YAAY,GAAG,EAAnB;;AACA,QAAIT,QAAJ,EAAc;AACZS,MAAAA,YAAY,wBAAiBT,QAAjB,CAAZ;AACD;;AACD,QAAMU,UAAU,GAAGT,MAAM,GAAG,QAAH,GAAc,EAAvC;AAEAX,IAAAA,QAAQ,CAACE,MAAT,iJAAqBU,SAArB,mBAAiCC,OAAjC,mBAA2CM,YAA3C,mBAA0DC,UAA1D,8BAA8EC,eAA9E;AACD;AACF,CAtBD;AAwBA;AACA;;;;;AACA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACvB,IAAD,EAAkB;AACpC,MAAI,OAAOC,QAAP,KAAoB,WAAxB,EAAqC;AACnCA,IAAAA,QAAQ,CAACE,MAAT,aAAqBH,IAArB;AACD;AACF,CAJD","sourcesContent":["// @flow\nimport { BASE } from \"../../constants/Constants\";\n\ntype CookieOptions = {\n days?: number,\n sameSite?: \"None\" | \"Lax\" | \"Strict\",\n secure?: boolean,\n};\n\n/**\n */\nconst getCookie = (name: string): null | string => {\n if (typeof document !== \"undefined\") {\n const value = `;${document.cookie}`;\n const parts = value.split(`; ${name}=`);\n if (parts.length === 2) {\n return parts.pop().split(\";\").shift();\n }\n }\n\n return null;\n};\n\n/**\n */\nconst setCookie = (\n name: string,\n value: any,\n { days, sameSite = \"Strict\", secure }: CookieOptions = {}\n) => {\n if (typeof document !== \"undefined\") {\n const valuePart = `${name}=${value || \"\"}`;\n\n let expires = \"\";\n if (days) {\n const date = new Date();\n date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);\n expires = `; expires=${date.toUTCString()}`;\n }\n let sameSitePart = \"\";\n if (sameSite) {\n sameSitePart = `; SameSite=${sameSite}`;\n }\n const securePart = secure ? \"Secure\" : \"\";\n\n document.cookie = `${valuePart}${expires}${sameSitePart}${securePart}; path=${BASE}`;\n }\n};\n\n/**\n */\nconst clearCookie = (name: string) => {\n if (typeof document !== \"undefined\") {\n document.cookie = `${name}=; Max-Age=-99999999;`;\n }\n};\n\nexport { getCookie, setCookie, clearCookie };\n"],"file":"Cookies.js"}
1
+ {"version":3,"sources":["../../../src/utils/browser/Cookies.js"],"names":["getCookie","name","Cookies","get","setCookie","value","days","sameSite","secure","attributes","path","BASE","expires","set","clearCookie","remove"],"mappings":";;;;;;;;;AACA;;AAEA;;AAeA;AACA;AACA,IAAMA,SAAS,GAAG,SAAZA,SAAY,CAACC,IAAD,EAAiC;AACjD,SAAOC,kBAAQC,GAAR,CAAYF,IAAZ,CAAP;AACD,CAFD;AAIA;AACA;;;;;AACA,IAAMG,SAAS,GAAG,SAAZA,SAAY,CAChBH,IADgB,EAEhBI,KAFgB,EAIb;AAAA,iFADoD,EACpD;AAAA,MADDC,IACC,QADDA,IACC;AAAA,2BADKC,QACL;AAAA,MADKA,QACL,8BADgB,QAChB;AAAA,MAD0BC,MAC1B,QAD0BA,MAC1B;;AACH,MAAMC,UAA4B,GAAG;AAAEC,IAAAA,IAAI,EAAEC;AAAR,GAArC;;AACA,MAAIL,IAAJ,EAAU;AACRG,IAAAA,UAAU,CAACG,OAAX,GAAqBN,IAArB;AACD;;AACD,MAAIC,QAAJ,EAAc;AACZE,IAAAA,UAAU,CAACF,QAAX,GAAsBA,QAAtB;AACD;;AACD,MAAIC,MAAJ,EAAY;AACVC,IAAAA,UAAU,CAACD,MAAX,GAAoBA,MAApB;AACD;;AAEDN,oBAAQW,GAAR,CAAYZ,IAAZ,EAAkBI,KAAlB,EAAyBI,UAAzB;AACD,CAjBD;AAmBA;AACA;;;;;AACA,IAAMK,WAAW,GAAG,SAAdA,WAAc,CAACb,IAAD,EAAkB;AACpCC,oBAAQa,MAAR,CAAed,IAAf,EAAqB;AAAES,IAAAA,IAAI,EAAEC;AAAR,GAArB;AACD,CAFD","sourcesContent":["// @flow\nimport Cookies from \"js-cookie\";\n\nimport { BASE } from \"../../constants/Constants\";\n\ntype CookieOptions = {\n days?: number,\n sameSite?: \"None\" | \"Lax\" | \"Strict\",\n secure?: boolean,\n};\n\ntype CookieAttributes = {\n path: string,\n expires?: number,\n sameSite?: string,\n secure?: boolean,\n};\n\n/**\n */\nconst getCookie = (name: string): null | string => {\n return Cookies.get(name);\n};\n\n/**\n */\nconst setCookie = (\n name: string,\n value: any,\n { days, sameSite = \"Strict\", secure }: CookieOptions = {}\n) => {\n const attributes: CookieAttributes = { path: BASE };\n if (days) {\n attributes.expires = days;\n }\n if (sameSite) {\n attributes.sameSite = sameSite;\n }\n if (secure) {\n attributes.secure = secure;\n }\n\n Cookies.set(name, value, attributes);\n};\n\n/**\n */\nconst clearCookie = (name: string) => {\n Cookies.remove(name, { path: BASE });\n};\n\nexport { getCookie, setCookie, clearCookie };\n"],"file":"Cookies.js"}
@@ -0,0 +1,51 @@
1
+ import { getCookie, setCookie, clearCookie } from "../Cookies";
2
+
3
+ describe("cookies util", () => {
4
+ beforeEach(() => {
5
+ Object.defineProperty(
6
+ window.document,
7
+ "cookie",
8
+ (function (cookies) {
9
+ return {
10
+ get: function _get() {
11
+ const output = [];
12
+ for (const cookieName in cookies) {
13
+ output.push(cookieName + "=" + cookies[cookieName]);
14
+ }
15
+ return output.join("; ");
16
+ },
17
+ set: function _set(s) {
18
+ const indexOfSeparator = s.indexOf("=");
19
+ const key = s.substr(0, indexOfSeparator);
20
+ const value = s.substring(indexOfSeparator + 1);
21
+ const valueWithoutAttributes = value.substr(0, value.indexOf(";"));
22
+
23
+ if (valueWithoutAttributes === "") {
24
+ delete cookies[key];
25
+ } else {
26
+ cookies[key] = value;
27
+ }
28
+ return key + "=" + value;
29
+ },
30
+ reset: function _reset() {
31
+ cookies = {};
32
+ },
33
+ configurable: true,
34
+ };
35
+ })({})
36
+ );
37
+ });
38
+
39
+ it("should be able retrieve cookies by name", () => {
40
+ setCookie("newCookie", "test");
41
+ expect(getCookie("newCookie")).toBe("test");
42
+
43
+ setCookie("newCookie2", "test2");
44
+ expect(getCookie("newCookie")).toBe("test");
45
+ expect(getCookie("newCookie2")).toBe("test2");
46
+
47
+ clearCookie("newCookie2");
48
+ expect(getCookie("newCookie")).toBe("test");
49
+ expect(getCookie("newCookie2")).toBeUndefined();
50
+ });
51
+ });
@@ -45,9 +45,11 @@ var _Cache = _interopRequireDefault(require("../browser/Cache"));
45
45
 
46
46
  var _Constants = require("../../constants/Constants");
47
47
 
48
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys2(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); if (enumerableOnly) { symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
48
+ var _Settings = require("../../constants/Settings");
49
49
 
50
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (_Object$getOwnPropertyDescriptors) { Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } } return target; }
50
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys2(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
51
+
52
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
51
53
 
52
54
  var NETWORK_ERROR_CODE = 0;
53
55
  var SUCCESS_CODE = 200;
@@ -168,7 +170,7 @@ var XHR = /*#__PURE__*/function () {
168
170
  }, {
169
171
  key: "timeout",
170
172
  get: function get() {
171
- return this.options.timeout || 300000;
173
+ return this.options.timeout || (0, _Settings.getSetting)("XHR_TIMEOUT_MS", 300000);
172
174
  }
173
175
  /**
174
176
  */
@@ -188,7 +190,8 @@ var XHR = /*#__PURE__*/function () {
188
190
  return this.options.onProgress;
189
191
  }
190
192
 
191
- return function () {};
193
+ return function () {// do nothing
194
+ };
192
195
  }
193
196
  /**
194
197
  */
@@ -15,6 +15,8 @@ import Cache from "../browser/Cache";
15
15
 
16
16
  import { HTTP_METHODS } from "../../constants/Constants";
17
17
 
18
+ import { getSetting } from "../../constants/Settings";
19
+
18
20
  import type { RequestOptions } from "./types";
19
21
 
20
22
  const NETWORK_ERROR_CODE = 0;
@@ -116,7 +118,7 @@ class XHR {
116
118
  /**
117
119
  */
118
120
  get timeout() {
119
- return this.options.timeout || 300000;
121
+ return this.options.timeout || getSetting("XHR_TIMEOUT_MS", 300000);
120
122
  }
121
123
 
122
124
  /**
@@ -132,7 +134,9 @@ class XHR {
132
134
  return this.options.onProgress;
133
135
  }
134
136
 
135
- return () => {};
137
+ return () => {
138
+ // do nothing
139
+ };
136
140
  }
137
141
 
138
142
  /**
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/fetch/xhr.js"],"names":["NETWORK_ERROR_CODE","SUCCESS_CODE","CLIENT_ERROR_CODE","UNAUTHORIZED_CODE","REDIRECTION_CODE","NOT_FOUND_CODE","JSON_TYPE","XHR","options","_options","_attempts","_xmlhttp","xmlhttp","attempts","url","params","aUrl","split","data","method","HTTP_METHODS","GET","timeout","responseType","onProgress","events","baseHeaders","Accept","headers","reject","TimeoutException","responseJSON","status","isReload","NetworkException","NotFoundException","UnauthorizedException","FetchException","response","getResponseHeader","JSON","parse","error","JsonParseException","resolve","getResponse","errorHandler","forEach","eventType","addEventListener","timeoutHandler","responseHandler","eventName","open","Cache","hasItem","withCredentials","basicToken","getItem","setRequestHeader","headerName","send","stringData","XMLHttpRequest","setEventListeners","openConnection","setBasicAuthentication","setCustomHeaders","setOtherOptions","sendData","setXMLHttpRequest","fetch","validateInputArguments","args","IllegalArgumentException","toString","xhr"],"mappings":"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","sourcesContent":["// @flow\nimport { has, isPlainObject } from \"../helpers/objects\";\n\nimport {\n IllegalArgumentException,\n UnauthorizedException,\n FetchException,\n TimeoutException,\n NotFoundException,\n JsonParseException,\n NetworkException,\n} from \"../../exceptions\";\n\nimport Cache from \"../browser/Cache\";\n\nimport { HTTP_METHODS } from \"../../constants/Constants\";\n\nimport type { RequestOptions } from \"./types\";\n\nconst NETWORK_ERROR_CODE = 0;\nconst SUCCESS_CODE = 200;\nconst CLIENT_ERROR_CODE = 400;\nconst UNAUTHORIZED_CODE = 401;\nconst REDIRECTION_CODE = 300;\nconst NOT_FOUND_CODE = 404;\n\nconst JSON_TYPE = \"application/json\";\n\n/**\n * @private\n */\nclass XHR {\n _options: RequestOptions;\n _xmlhttp: XMLHttpRequest;\n _attempts: number;\n\n /**\n */\n constructor(options: RequestOptions) {\n this._options = options;\n this._attempts = 0;\n }\n\n /**\n */\n get xmlhttp() {\n return this._xmlhttp;\n }\n\n /**\n */\n set xmlhttp(xmlhttp) {\n this._xmlhttp = xmlhttp;\n }\n\n /**\n */\n get options() {\n return this._options;\n }\n\n /**\n */\n set options(options: RequestOptions) {\n this._options = options;\n }\n\n /**\n */\n get attempts() {\n return this._attempts;\n }\n\n /**\n */\n set attempts(attempts) {\n this._attempts = attempts;\n }\n\n /**\n * Create and fix url when params or both querystring and params exist.\n */\n get url() {\n const { url } = this.options;\n if (this.params !== \"\") {\n if (url.includes(\"?\")) {\n const aUrl = url.split(\"?\");\n\n return `${aUrl[0]}?${aUrl[1]}&${this.params}`;\n }\n\n return `${url}?${this.params}`;\n }\n\n return url;\n }\n\n /**\n */\n get params() {\n return this.options.params || \"\";\n }\n\n /**\n */\n get data() {\n return this.options.data || null;\n }\n\n /**\n */\n get method() {\n return this.options.method || HTTP_METHODS.GET;\n }\n\n /**\n */\n get timeout() {\n return this.options.timeout || 300000;\n }\n\n /**\n */\n get responseType() {\n return this.options.responseType || \"json\";\n }\n\n /**\n */\n get onProgress(): ProgressEventHandler {\n if (this.options.onProgress) {\n return this.options.onProgress;\n }\n\n return () => {};\n }\n\n /**\n */\n get events() {\n return this.options.events || {};\n }\n\n /**\n */\n get headers() {\n const baseHeaders = {\n Accept: JSON_TYPE,\n \"Content-Type\": JSON_TYPE,\n\n // needed for csrf, see: https://plaza.beinformed.com/amdoc/csrf-protection-in-modular-ui-services-40054554.html\n \"X-Requested-With\": \"XMLHttpRequest\",\n\n \"Accept-Language\": \"en\",\n };\n\n if (this.options.headers) {\n // $FlowFixMe[cannot-spread-indexer]\n return {\n ...baseHeaders,\n ...this.options.headers,\n };\n }\n\n return baseHeaders;\n }\n\n /**\n */\n timeoutHandler(reject) {\n return reject(new TimeoutException(this.url, this.method));\n }\n\n /**\n */\n errorHandler(reject, responseJSON = null) {\n const { status } = this.xmlhttp;\n const { isReload } = this.options;\n\n if (status === NETWORK_ERROR_CODE) {\n return reject(new NetworkException(this.url, this.method));\n }\n\n if (status === NOT_FOUND_CODE) {\n return reject(new NotFoundException(this.url, this.method, isReload));\n }\n\n if (status === UNAUTHORIZED_CODE) {\n return reject(\n new UnauthorizedException(this.url, this.method, responseJSON)\n );\n }\n\n return reject(new FetchException(responseJSON, this.xmlhttp, this.options));\n }\n\n /**\n */\n getResponse() {\n const { responseType, response } = this.xmlhttp;\n\n if (\n (responseType === \"\" || responseType === \"text\") &&\n this.getResponseHeader(\"Content-Type\") === JSON_TYPE\n ) {\n if (isPlainObject(response)) {\n return response;\n }\n\n try {\n return JSON.parse(response);\n } catch (error) {\n throw new JsonParseException(error);\n }\n }\n\n return response;\n }\n\n /**\n */\n responseHandler(resolve, reject) {\n const { status } = this.xmlhttp;\n\n let response = null;\n try {\n response = this.getResponse();\n } catch (error) {\n return reject(error);\n }\n\n if (\n (status >= SUCCESS_CODE && status < REDIRECTION_CODE) ||\n (status === CLIENT_ERROR_CODE && has(response, \"formresponse\"))\n ) {\n return resolve(response);\n }\n\n return this.errorHandler(reject, response);\n }\n\n /**\n */\n setEventListeners(resolve, reject) {\n if (this.options.onProgress) {\n [\"load\", \"loadend\", \"loadstart\", \"progress\"].forEach((eventType) => {\n this.xmlhttp.addEventListener(eventType, this.onProgress);\n });\n }\n\n [\"abort\", \"error\"].forEach((eventType) => {\n this.xmlhttp.addEventListener(eventType, () => this.errorHandler(reject));\n });\n\n this.xmlhttp.addEventListener(\"timeout\", () => this.timeoutHandler(reject));\n\n this.xmlhttp.addEventListener(\"load\", () =>\n this.responseHandler(resolve, reject)\n );\n\n // Set custom events\n Object.keys(this.events).forEach((eventName) => {\n this.xmlhttp.addEventListener(eventName, this.events[eventName]);\n });\n }\n\n /**\n */\n openConnection() {\n this.xmlhttp.open(this.method, this.url, true);\n }\n\n /**\n */\n setBasicAuthentication() {\n if (Cache.hasItem(\"basic\")) {\n this.xmlhttp.withCredentials = true;\n const basicToken = Cache.getItem(\"basic\");\n\n if (typeof basicToken === \"string\") {\n this.xmlhttp.setRequestHeader(\"Authorization\", `Basic ${basicToken}`);\n }\n }\n }\n\n /**\n */\n getResponseHeader(headerName) {\n return this.xmlhttp.getResponseHeader(headerName);\n }\n\n /**\n */\n setCustomHeaders() {\n Object.keys(this.headers).forEach((headerName) => {\n this.xmlhttp.setRequestHeader(headerName, this.headers[headerName]);\n });\n }\n\n /**\n */\n setOtherOptions() {\n this.xmlhttp.responseType = this.responseType;\n this.xmlhttp.timeout = this.timeout;\n }\n\n /**\n */\n sendData() {\n if (this.data == null) {\n this.xmlhttp.send();\n } else {\n const stringData = isPlainObject(this.data)\n ? JSON.stringify(this.data)\n : this.data;\n this.xmlhttp.send(stringData);\n }\n }\n\n /**\n */\n setXMLHttpRequest() {\n return new Promise((resolve, reject) => {\n this.xmlhttp = new XMLHttpRequest();\n\n this.setEventListeners(resolve, reject);\n\n this.openConnection();\n\n this.setBasicAuthentication();\n\n this.setCustomHeaders();\n\n this.setOtherOptions();\n\n this.sendData();\n });\n }\n\n /**\n */\n async fetch() {\n try {\n return await this.setXMLHttpRequest();\n } catch (err) {\n if (err instanceof NetworkException && this.attempts < 2) {\n this.attempts += 1;\n return this.fetch();\n }\n\n throw err;\n }\n }\n}\n\n/**\n */\nconst validateInputArguments = (args: RequestOptions) => {\n if (args == null) {\n throw new IllegalArgumentException(\n \"Missing request options, expecting an object as argument for xhr\"\n );\n }\n\n if (!isPlainObject(args)) {\n throw new IllegalArgumentException(\n `Expecting an object as argument for xhr, but received: ${args.toString()}`\n );\n }\n\n if (!has(args, \"url\")) {\n throw new IllegalArgumentException(\n `No url property found in arguments of xhr, received: ${JSON.stringify(\n args\n )}`\n );\n }\n\n return true;\n};\n\n/**\n */\nconst xhr = (args: RequestOptions): Promise<any> => {\n validateInputArguments(args);\n\n return new XHR(args).fetch();\n};\n\nexport default xhr;\n"],"file":"xhr.js"}
1
+ {"version":3,"sources":["../../../src/utils/fetch/xhr.js"],"names":["NETWORK_ERROR_CODE","SUCCESS_CODE","CLIENT_ERROR_CODE","UNAUTHORIZED_CODE","REDIRECTION_CODE","NOT_FOUND_CODE","JSON_TYPE","XHR","options","_options","_attempts","_xmlhttp","xmlhttp","attempts","url","params","aUrl","split","data","method","HTTP_METHODS","GET","timeout","responseType","onProgress","events","baseHeaders","Accept","headers","reject","TimeoutException","responseJSON","status","isReload","NetworkException","NotFoundException","UnauthorizedException","FetchException","response","getResponseHeader","JSON","parse","error","JsonParseException","resolve","getResponse","errorHandler","forEach","eventType","addEventListener","timeoutHandler","responseHandler","eventName","open","Cache","hasItem","withCredentials","basicToken","getItem","setRequestHeader","headerName","send","stringData","XMLHttpRequest","setEventListeners","openConnection","setBasicAuthentication","setCustomHeaders","setOtherOptions","sendData","setXMLHttpRequest","fetch","validateInputArguments","args","IllegalArgumentException","toString","xhr"],"mappings":"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","sourcesContent":["// @flow\nimport { has, isPlainObject } from \"../helpers/objects\";\n\nimport {\n IllegalArgumentException,\n UnauthorizedException,\n FetchException,\n TimeoutException,\n NotFoundException,\n JsonParseException,\n NetworkException,\n} from \"../../exceptions\";\n\nimport Cache from \"../browser/Cache\";\n\nimport { HTTP_METHODS } from \"../../constants/Constants\";\n\nimport { getSetting } from \"../../constants/Settings\";\n\nimport type { RequestOptions } from \"./types\";\n\nconst NETWORK_ERROR_CODE = 0;\nconst SUCCESS_CODE = 200;\nconst CLIENT_ERROR_CODE = 400;\nconst UNAUTHORIZED_CODE = 401;\nconst REDIRECTION_CODE = 300;\nconst NOT_FOUND_CODE = 404;\n\nconst JSON_TYPE = \"application/json\";\n\n/**\n * @private\n */\nclass XHR {\n _options: RequestOptions;\n _xmlhttp: XMLHttpRequest;\n _attempts: number;\n\n /**\n */\n constructor(options: RequestOptions) {\n this._options = options;\n this._attempts = 0;\n }\n\n /**\n */\n get xmlhttp() {\n return this._xmlhttp;\n }\n\n /**\n */\n set xmlhttp(xmlhttp) {\n this._xmlhttp = xmlhttp;\n }\n\n /**\n */\n get options() {\n return this._options;\n }\n\n /**\n */\n set options(options: RequestOptions) {\n this._options = options;\n }\n\n /**\n */\n get attempts() {\n return this._attempts;\n }\n\n /**\n */\n set attempts(attempts) {\n this._attempts = attempts;\n }\n\n /**\n * Create and fix url when params or both querystring and params exist.\n */\n get url() {\n const { url } = this.options;\n if (this.params !== \"\") {\n if (url.includes(\"?\")) {\n const aUrl = url.split(\"?\");\n\n return `${aUrl[0]}?${aUrl[1]}&${this.params}`;\n }\n\n return `${url}?${this.params}`;\n }\n\n return url;\n }\n\n /**\n */\n get params() {\n return this.options.params || \"\";\n }\n\n /**\n */\n get data() {\n return this.options.data || null;\n }\n\n /**\n */\n get method() {\n return this.options.method || HTTP_METHODS.GET;\n }\n\n /**\n */\n get timeout() {\n return this.options.timeout || getSetting(\"XHR_TIMEOUT_MS\", 300000);\n }\n\n /**\n */\n get responseType() {\n return this.options.responseType || \"json\";\n }\n\n /**\n */\n get onProgress(): ProgressEventHandler {\n if (this.options.onProgress) {\n return this.options.onProgress;\n }\n\n return () => {\n // do nothing\n };\n }\n\n /**\n */\n get events() {\n return this.options.events || {};\n }\n\n /**\n */\n get headers() {\n const baseHeaders = {\n Accept: JSON_TYPE,\n \"Content-Type\": JSON_TYPE,\n\n // needed for csrf, see: https://plaza.beinformed.com/amdoc/csrf-protection-in-modular-ui-services-40054554.html\n \"X-Requested-With\": \"XMLHttpRequest\",\n\n \"Accept-Language\": \"en\",\n };\n\n if (this.options.headers) {\n // $FlowFixMe[cannot-spread-indexer]\n return {\n ...baseHeaders,\n ...this.options.headers,\n };\n }\n\n return baseHeaders;\n }\n\n /**\n */\n timeoutHandler(reject) {\n return reject(new TimeoutException(this.url, this.method));\n }\n\n /**\n */\n errorHandler(reject, responseJSON = null) {\n const { status } = this.xmlhttp;\n const { isReload } = this.options;\n\n if (status === NETWORK_ERROR_CODE) {\n return reject(new NetworkException(this.url, this.method));\n }\n\n if (status === NOT_FOUND_CODE) {\n return reject(new NotFoundException(this.url, this.method, isReload));\n }\n\n if (status === UNAUTHORIZED_CODE) {\n return reject(\n new UnauthorizedException(this.url, this.method, responseJSON)\n );\n }\n\n return reject(new FetchException(responseJSON, this.xmlhttp, this.options));\n }\n\n /**\n */\n getResponse() {\n const { responseType, response } = this.xmlhttp;\n\n if (\n (responseType === \"\" || responseType === \"text\") &&\n this.getResponseHeader(\"Content-Type\") === JSON_TYPE\n ) {\n if (isPlainObject(response)) {\n return response;\n }\n\n try {\n return JSON.parse(response);\n } catch (error) {\n throw new JsonParseException(error);\n }\n }\n\n return response;\n }\n\n /**\n */\n responseHandler(resolve, reject) {\n const { status } = this.xmlhttp;\n\n let response = null;\n try {\n response = this.getResponse();\n } catch (error) {\n return reject(error);\n }\n\n if (\n (status >= SUCCESS_CODE && status < REDIRECTION_CODE) ||\n (status === CLIENT_ERROR_CODE && has(response, \"formresponse\"))\n ) {\n return resolve(response);\n }\n\n return this.errorHandler(reject, response);\n }\n\n /**\n */\n setEventListeners(resolve, reject) {\n if (this.options.onProgress) {\n [\"load\", \"loadend\", \"loadstart\", \"progress\"].forEach((eventType) => {\n this.xmlhttp.addEventListener(eventType, this.onProgress);\n });\n }\n\n [\"abort\", \"error\"].forEach((eventType) => {\n this.xmlhttp.addEventListener(eventType, () => this.errorHandler(reject));\n });\n\n this.xmlhttp.addEventListener(\"timeout\", () => this.timeoutHandler(reject));\n\n this.xmlhttp.addEventListener(\"load\", () =>\n this.responseHandler(resolve, reject)\n );\n\n // Set custom events\n Object.keys(this.events).forEach((eventName) => {\n this.xmlhttp.addEventListener(eventName, this.events[eventName]);\n });\n }\n\n /**\n */\n openConnection() {\n this.xmlhttp.open(this.method, this.url, true);\n }\n\n /**\n */\n setBasicAuthentication() {\n if (Cache.hasItem(\"basic\")) {\n this.xmlhttp.withCredentials = true;\n const basicToken = Cache.getItem(\"basic\");\n\n if (typeof basicToken === \"string\") {\n this.xmlhttp.setRequestHeader(\"Authorization\", `Basic ${basicToken}`);\n }\n }\n }\n\n /**\n */\n getResponseHeader(headerName) {\n return this.xmlhttp.getResponseHeader(headerName);\n }\n\n /**\n */\n setCustomHeaders() {\n Object.keys(this.headers).forEach((headerName) => {\n this.xmlhttp.setRequestHeader(headerName, this.headers[headerName]);\n });\n }\n\n /**\n */\n setOtherOptions() {\n this.xmlhttp.responseType = this.responseType;\n this.xmlhttp.timeout = this.timeout;\n }\n\n /**\n */\n sendData() {\n if (this.data == null) {\n this.xmlhttp.send();\n } else {\n const stringData = isPlainObject(this.data)\n ? JSON.stringify(this.data)\n : this.data;\n this.xmlhttp.send(stringData);\n }\n }\n\n /**\n */\n setXMLHttpRequest() {\n return new Promise((resolve, reject) => {\n this.xmlhttp = new XMLHttpRequest();\n\n this.setEventListeners(resolve, reject);\n\n this.openConnection();\n\n this.setBasicAuthentication();\n\n this.setCustomHeaders();\n\n this.setOtherOptions();\n\n this.sendData();\n });\n }\n\n /**\n */\n async fetch() {\n try {\n return await this.setXMLHttpRequest();\n } catch (err) {\n if (err instanceof NetworkException && this.attempts < 2) {\n this.attempts += 1;\n return this.fetch();\n }\n\n throw err;\n }\n }\n}\n\n/**\n */\nconst validateInputArguments = (args: RequestOptions) => {\n if (args == null) {\n throw new IllegalArgumentException(\n \"Missing request options, expecting an object as argument for xhr\"\n );\n }\n\n if (!isPlainObject(args)) {\n throw new IllegalArgumentException(\n `Expecting an object as argument for xhr, but received: ${args.toString()}`\n );\n }\n\n if (!has(args, \"url\")) {\n throw new IllegalArgumentException(\n `No url property found in arguments of xhr, received: ${JSON.stringify(\n args\n )}`\n );\n }\n\n return true;\n};\n\n/**\n */\nconst xhr = (args: RequestOptions): Promise<any> => {\n validateInputArguments(args);\n\n return new XHR(args).fetch();\n};\n\nexport default xhr;\n"],"file":"xhr.js"}
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@beinformed/ui",
3
- "version": "1.12.1",
3
+ "version": "1.13.2",
4
4
  "description": "Toolbox for be informed javascript layouts",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "bugs": "http://support.beinformed.com",
7
7
  "main": "lib/index.js",
8
8
  "module": "esm/index.js",
9
9
  "engines": {
10
- "node": "^12.20 || ^14.14.0 || ^16"
10
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
11
11
  },
12
12
  "esnext": "src/index.js",
13
13
  "sideEffects": false,
@@ -38,7 +38,7 @@
38
38
  "prepublishOnly": "npm run build",
39
39
  "docs": "node ./.build/docs.js",
40
40
  "prepare": "husky install",
41
- "security-audit": "npm audit --production --json | node ./.build/transform-audit.js > npm-audit.json"
41
+ "security-audit": "auditjs ossi --xml > npm-audit.xml"
42
42
  },
43
43
  "repository": {
44
44
  "type": "git",
@@ -71,16 +71,16 @@
71
71
  "react": "^16.14.0 || ^17.0.0",
72
72
  "react-dom": "^16.14.0 || ^17.0.0",
73
73
  "react-helmet-async": "^1.0.0",
74
- "redux": "^4.0.0",
75
74
  "react-redux": "^7.0.0",
76
75
  "react-router-dom": "^5.2.0",
76
+ "redux": "^4.0.0",
77
77
  "redux-thunk": "^2.3.0",
78
78
  "styled-components": "^5.2.0"
79
79
  },
80
80
  "dependencies": {
81
- "@babel/runtime-corejs3": "^7.15.4",
81
+ "@babel/runtime-corejs3": "^7.16.8",
82
82
  "big.js": "^6.1.1",
83
- "date-fns": "^2.25.0",
83
+ "date-fns": "^2.28.0",
84
84
  "deepmerge": "^4.2.2",
85
85
  "dequal": "^2.0.2",
86
86
  "element-closest": "^3.0.2",
@@ -89,59 +89,61 @@
89
89
  "format-message": "^6.2.3",
90
90
  "he": "^1.2.0",
91
91
  "iban": "^0.0.14",
92
+ "js-cookie": "^3.0.1",
92
93
  "lodash": "^4.17.21",
93
- "reselect": "^4.1.0",
94
+ "reselect": "^4.1.5",
94
95
  "setimmediate": "^1.0.5"
95
96
  },
96
97
  "devDependencies": {
97
- "@babel/cli": "^7.15.7",
98
- "@babel/core": "^7.15.8",
99
- "@babel/eslint-parser": "^7.15.8",
100
- "@babel/eslint-plugin": "^7.14.5",
98
+ "@babel/cli": "^7.16.8",
99
+ "@babel/core": "^7.16.12",
100
+ "@babel/eslint-parser": "^7.16.5",
101
+ "@babel/eslint-plugin": "^7.16.5",
101
102
  "@babel/plugin-syntax-dynamic-import": "^7.8.3",
102
- "@babel/plugin-transform-runtime": "^7.15.8",
103
- "@babel/preset-env": "^7.15.8",
104
- "@babel/preset-flow": "^7.14.5",
105
- "@babel/preset-react": "^7.14.5",
106
- "@commitlint/cli": "^13.2.1",
107
- "@commitlint/config-conventional": "^13.2.0",
103
+ "@babel/plugin-transform-runtime": "^7.16.10",
104
+ "@babel/preset-env": "^7.16.11",
105
+ "@babel/preset-flow": "^7.16.7",
106
+ "@babel/preset-react": "^7.16.7",
107
+ "@commitlint/cli": "^16.1.0",
108
+ "@commitlint/config-conventional": "^16.0.0",
108
109
  "@testing-library/react-hooks": "^7.0.2",
109
- "babel-jest": "^27.3.1",
110
- "babel-plugin-styled-components": "^1.13.3",
110
+ "auditjs": "^4.0.35",
111
+ "babel-jest": "^27.4.6",
112
+ "babel-plugin-styled-components": "^2.0.2",
111
113
  "cherry-pick": "^0.5.0",
112
114
  "cross-env": "^7.0.3",
113
115
  "documentation": "^13.2.5",
114
- "eslint": "^7.32.0",
116
+ "eslint": "^8.7.0",
115
117
  "eslint-config-prettier": "^8.3.0",
116
118
  "eslint-plugin-babel": "^5.3.1",
117
- "eslint-plugin-flowtype": "^6.1.1",
118
- "eslint-plugin-import": "^2.25.2",
119
- "eslint-plugin-jest": "^25.2.2",
120
- "eslint-plugin-jsdoc": "^37.0.3",
121
- "eslint-plugin-react": "^7.26.1",
122
- "eslint-plugin-react-hooks": "^4.2.0",
119
+ "eslint-plugin-flowtype": "^8.0.3",
120
+ "eslint-plugin-import": "^2.25.4",
121
+ "eslint-plugin-jest": "^26.0.0",
122
+ "eslint-plugin-jsdoc": "^37.7.0",
123
+ "eslint-plugin-react": "^7.28.0",
124
+ "eslint-plugin-react-hooks": "^4.3.0",
123
125
  "flow-bin": "0.152.0",
124
126
  "flow-copy-source": "^2.0.9",
125
- "flow-typed": "^3.4.0",
127
+ "flow-typed": "^3.6.1",
126
128
  "glob": "^7.2.0",
127
129
  "history": "^4.0.0",
128
130
  "husky": "^7.0.4",
129
- "jest": "^27.3.1",
131
+ "jest": "^27.4.7",
130
132
  "jest-junit": "^13.0.0",
131
133
  "jest-sonar-reporter": "^2.0.0",
132
134
  "jscodeshift": "^0.13.0",
133
- "lint-staged": "^11.2.4",
134
- "polished": "^4.1.3",
135
- "prettier": "^2.4.1",
135
+ "lint-staged": "^12.3.2",
136
+ "polished": "^4.1.4",
137
+ "prettier": "^2.5.1",
136
138
  "react": "^17.0.2",
137
139
  "react-dom": "^17.0.2",
138
- "react-helmet-async": "^1.1.2",
140
+ "react-helmet-async": "^1.2.2",
139
141
  "react-redux": "^7.2.6",
140
142
  "react-router-dom": "^5.3.0",
141
143
  "react-test-renderer": "^17.0.2",
142
- "redux": "^4.1.1",
144
+ "redux": "^4.1.2",
143
145
  "redux-mock-store": "^1.5.4",
144
- "redux-thunk": "^2.4.0",
146
+ "redux-thunk": "^2.4.1",
145
147
  "rimraf": "^3.0.2",
146
148
  "standard-version": "^9.3.2",
147
149
  "styled-components": "^5.3.3",
@@ -44,9 +44,9 @@ exports.mergeLayoutHintConfigurations = async (
44
44
  path.join(outputFolder, "LayoutHintConfig.json"),
45
45
  JSON.stringify(newConfig),
46
46
 
47
- (err) => {
48
- if (err) {
49
- return reject(err);
47
+ (writeErr) => {
48
+ if (writeErr) {
49
+ return reject(writeErr);
50
50
  }
51
51
 
52
52
  return resolve();
@@ -64,6 +64,8 @@ const defaultSettings = {
64
64
 
65
65
  // reload the complete page on signout, usefull when third party authentication is in place
66
66
  PAGE_RELOAD_ON_UNAUTHORIZED_ERROR: false,
67
+
68
+ XHR_TIMEOUT_MS: 300000,
67
69
  };
68
70
 
69
71
  let settings = defaultSettings;
@@ -35,8 +35,8 @@ export const useContentFromSourceReferences = (
35
35
  });
36
36
 
37
37
  start();
38
- Promise.all(requests).then((content) => {
39
- setContent(content);
38
+ Promise.all(requests).then((responseContent) => {
39
+ setContent(responseContent);
40
40
  finish();
41
41
  });
42
42
 
@@ -10,7 +10,7 @@ type DependencyList = Array<mixed>;
10
10
  * Need to copy this, because the dependency on dequal breaks in ie11
11
11
  */
12
12
  const useDeepCompareMemoize = (value: DependencyList) => {
13
- const ref = React.useRef<DependencyList | null>(null);
13
+ const ref = React.useRef<DependencyList | null>(null); // NOSONAR
14
14
  const signalRef = React.useRef<number>(0);
15
15
 
16
16
  if (!deepEqual(value, ref.current)) {
@@ -20,8 +20,7 @@ import {
20
20
 
21
21
  import FormModel from "../models/form/FormModel";
22
22
 
23
- import type { FormObjectModel } from "../models";
24
- import type { AttributeType } from "../models";
23
+ import type { FormObjectModel, AttributeType } from "../models";
25
24
  import type { UpdateFormOptions } from "../redux/types";
26
25
  import type {
27
26
  RemoveModelByKeyAction,