@beinformed/ui 1.12.2 → 1.13.3

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 (291) 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/LayoutHintConfig.js +9 -0
  5. package/esm/constants/LayoutHintConfig.js.map +1 -1
  6. package/esm/constants/LayoutHints.js +5 -0
  7. package/esm/constants/LayoutHints.js.map +1 -1
  8. package/esm/constants/Settings.js +2 -1
  9. package/esm/constants/Settings.js.map +1 -1
  10. package/esm/exceptions/ConfigurationException.js +2 -1
  11. package/esm/exceptions/ConfigurationException.js.map +1 -1
  12. package/esm/exceptions/FetchException.js +4 -3
  13. package/esm/exceptions/FetchException.js.map +1 -1
  14. package/esm/exceptions/IllegalArgumentException.js +2 -1
  15. package/esm/exceptions/IllegalArgumentException.js.map +1 -1
  16. package/esm/exceptions/IllegalReturnException.js +2 -1
  17. package/esm/exceptions/IllegalReturnException.js.map +1 -1
  18. package/esm/exceptions/IllegalStateException.js +2 -1
  19. package/esm/exceptions/IllegalStateException.js.map +1 -1
  20. package/esm/exceptions/JsonParseException.js +2 -1
  21. package/esm/exceptions/JsonParseException.js.map +1 -1
  22. package/esm/exceptions/MissingPropertyException.js +2 -1
  23. package/esm/exceptions/MissingPropertyException.js.map +1 -1
  24. package/esm/exceptions/NetworkException.js +2 -1
  25. package/esm/exceptions/NetworkException.js.map +1 -1
  26. package/esm/exceptions/NotAllowedUriException.js +2 -1
  27. package/esm/exceptions/NotAllowedUriException.js.map +1 -1
  28. package/esm/exceptions/NotFoundException.js +2 -1
  29. package/esm/exceptions/NotFoundException.js.map +1 -1
  30. package/esm/exceptions/ServerRequestException.js +2 -1
  31. package/esm/exceptions/ServerRequestException.js.map +1 -1
  32. package/esm/exceptions/ThemePropertyException.js +2 -1
  33. package/esm/exceptions/ThemePropertyException.js.map +1 -1
  34. package/esm/exceptions/TimeoutException.js +2 -1
  35. package/esm/exceptions/TimeoutException.js.map +1 -1
  36. package/esm/exceptions/UnauthorizedException.js +2 -1
  37. package/esm/exceptions/UnauthorizedException.js.map +1 -1
  38. package/esm/exceptions/UnsupportedOperationException.js +2 -1
  39. package/esm/exceptions/UnsupportedOperationException.js.map +1 -1
  40. package/esm/hooks/useContent.js +2 -2
  41. package/esm/hooks/useContent.js.map +1 -1
  42. package/esm/hooks/useDeepCompareEffect.js +2 -1
  43. package/esm/hooks/useDeepCompareEffect.js.map +1 -1
  44. package/esm/hooks/useForm.js.map +1 -1
  45. package/esm/hooks/useModal.js +2 -2
  46. package/esm/hooks/useModal.js.map +1 -1
  47. package/esm/hooks/useModularUI.js +0 -1
  48. package/esm/hooks/useModularUI.js.map +1 -1
  49. package/esm/hooks/useProgressIndicator.js +2 -2
  50. package/esm/i18n/Locale.js +11 -4
  51. package/esm/i18n/Locale.js.map +1 -1
  52. package/esm/i18n/Locales.js +2 -2
  53. package/esm/i18n/Message.js +2 -2
  54. package/esm/i18n/languages.js +2 -1
  55. package/esm/i18n/languages.js.map +1 -1
  56. package/esm/models/attributes/AttributeCollection.js +2 -2
  57. package/esm/models/attributes/AttributeContent.js +2 -2
  58. package/esm/models/attributes/AttributeDataHelper.js +2 -2
  59. package/esm/models/attributes/BooleanAttributeModel.js +2 -2
  60. package/esm/models/attributes/ChoiceAttributeModel.js +2 -2
  61. package/esm/models/attributes/ChoiceAttributeOptionCollection.js +2 -2
  62. package/esm/models/attributes/CompositeAttributeChildCollection.js +2 -2
  63. package/esm/models/attributes/DatetimeAttributeModel.js +7 -3
  64. package/esm/models/attributes/DatetimeAttributeModel.js.map +1 -1
  65. package/esm/models/attributes/_createAttribute.js +2 -2
  66. package/esm/models/base/ResourceModel.js +2 -2
  67. package/esm/models/caseview/CaseViewModel.js +2 -1
  68. package/esm/models/caseview/CaseViewModel.js.map +1 -1
  69. package/esm/models/concepts/ConceptDetailModel.js +2 -2
  70. package/esm/models/concepts/SourceReferenceModel.js +2 -2
  71. package/esm/models/content/ContentTOCModel.js +2 -2
  72. package/esm/models/filters/AssignmentFilterModel.js +2 -2
  73. package/esm/models/filters/BaseFilterModel.js +2 -2
  74. package/esm/models/filters/ConceptIndexFilterModel.js +2 -1
  75. package/esm/models/filters/ConceptIndexFilterModel.js.map +1 -1
  76. package/esm/models/filters/FilterCollection.js +2 -2
  77. package/esm/models/filters/FilterModel.js +2 -1
  78. package/esm/models/filters/FilterModel.js.map +1 -1
  79. package/esm/models/form/FormModel.js +28 -4
  80. package/esm/models/form/FormModel.js.map +1 -1
  81. package/esm/models/form/FormObjectModel.js +2 -2
  82. package/esm/models/grouping/GroupingModel.js +2 -2
  83. package/esm/models/links/normalizeLinkJSON.js +2 -2
  84. package/esm/models/list/ListDetailModel.js +2 -2
  85. package/esm/models/list/ListItemCollection.js +38 -0
  86. package/esm/models/list/ListItemCollection.js.map +1 -1
  87. package/esm/models/list/ListItemModel.js +14 -2
  88. package/esm/models/list/ListItemModel.js.map +1 -1
  89. package/esm/models/list/ListModel.js +17 -70
  90. package/esm/models/list/ListModel.js.map +1 -1
  91. package/esm/models/lookup/LookupOptionCollection.js +2 -2
  92. package/esm/modularui/ModularUIError.js +2 -1
  93. package/esm/modularui/ModularUIError.js.map +1 -1
  94. package/esm/modularui/ModularUIRequest.js +71 -49
  95. package/esm/modularui/ModularUIRequest.js.map +1 -1
  96. package/esm/react-server/serverUtil.js +2 -2
  97. package/esm/react-theme/createTheme.js +2 -2
  98. package/esm/redux/_i18n/reducer.js +2 -2
  99. package/esm/redux/_modularui/actions.js +2 -2
  100. package/esm/redux/_modularui/connector.js +2 -2
  101. package/esm/redux/_modularui/reducer.js +2 -2
  102. package/esm/redux/_modularui/selectors.js +2 -2
  103. package/esm/redux/reducers/AuthReducer.js +2 -2
  104. package/esm/redux/reducers/ModalsReducer.js +2 -2
  105. package/esm/redux/reducers/NotificationReducer.js +2 -2
  106. package/esm/redux/reducers/PreferencesReducer.js +2 -2
  107. package/esm/redux/reducers/ProgressIndicatorReducer.js +2 -2
  108. package/esm/redux/store/configureStore.js +2 -2
  109. package/esm/utils/browser/Cookies.js +18 -32
  110. package/esm/utils/browser/Cookies.js.map +1 -1
  111. package/esm/utils/fetch/xhr.js +6 -4
  112. package/esm/utils/fetch/xhr.js.map +1 -1
  113. package/lib/builder/mergeLayoutHintConfigurations.js +3 -3
  114. package/lib/builder/mergeLayoutHintConfigurations.js.flow +3 -3
  115. package/lib/builder/mergeLayoutHintConfigurations.js.map +1 -1
  116. package/lib/constants/LayoutHintConfig.js +9 -0
  117. package/lib/constants/LayoutHintConfig.js.flow +9 -0
  118. package/lib/constants/LayoutHintConfig.js.map +1 -1
  119. package/lib/constants/LayoutHints.js +8 -2
  120. package/lib/constants/LayoutHints.js.flow +4 -0
  121. package/lib/constants/LayoutHints.js.map +1 -1
  122. package/lib/constants/Settings.js +2 -1
  123. package/lib/constants/Settings.js.flow +2 -0
  124. package/lib/constants/Settings.js.map +1 -1
  125. package/lib/exceptions/ConfigurationException.js +3 -1
  126. package/lib/exceptions/ConfigurationException.js.map +1 -1
  127. package/lib/exceptions/FetchException.js +5 -3
  128. package/lib/exceptions/FetchException.js.map +1 -1
  129. package/lib/exceptions/IllegalArgumentException.js +3 -1
  130. package/lib/exceptions/IllegalArgumentException.js.map +1 -1
  131. package/lib/exceptions/IllegalReturnException.js +3 -1
  132. package/lib/exceptions/IllegalReturnException.js.map +1 -1
  133. package/lib/exceptions/IllegalStateException.js +3 -1
  134. package/lib/exceptions/IllegalStateException.js.map +1 -1
  135. package/lib/exceptions/JsonParseException.js +3 -1
  136. package/lib/exceptions/JsonParseException.js.map +1 -1
  137. package/lib/exceptions/MissingPropertyException.js +3 -1
  138. package/lib/exceptions/MissingPropertyException.js.map +1 -1
  139. package/lib/exceptions/NetworkException.js +3 -1
  140. package/lib/exceptions/NetworkException.js.map +1 -1
  141. package/lib/exceptions/NotAllowedUriException.js +3 -1
  142. package/lib/exceptions/NotAllowedUriException.js.map +1 -1
  143. package/lib/exceptions/NotFoundException.js +3 -1
  144. package/lib/exceptions/NotFoundException.js.map +1 -1
  145. package/lib/exceptions/ServerRequestException.js +3 -1
  146. package/lib/exceptions/ServerRequestException.js.map +1 -1
  147. package/lib/exceptions/ThemePropertyException.js +3 -1
  148. package/lib/exceptions/ThemePropertyException.js.map +1 -1
  149. package/lib/exceptions/TimeoutException.js +3 -1
  150. package/lib/exceptions/TimeoutException.js.map +1 -1
  151. package/lib/exceptions/UnauthorizedException.js +3 -1
  152. package/lib/exceptions/UnauthorizedException.js.map +1 -1
  153. package/lib/exceptions/UnsupportedOperationException.js +3 -1
  154. package/lib/exceptions/UnsupportedOperationException.js.map +1 -1
  155. package/lib/hooks/useContent.js +2 -2
  156. package/lib/hooks/useContent.js.flow +2 -2
  157. package/lib/hooks/useContent.js.map +1 -1
  158. package/lib/hooks/useDeepCompareEffect.js +2 -1
  159. package/lib/hooks/useDeepCompareEffect.js.flow +1 -1
  160. package/lib/hooks/useDeepCompareEffect.js.map +1 -1
  161. package/lib/hooks/useForm.js.flow +1 -2
  162. package/lib/hooks/useForm.js.map +1 -1
  163. package/lib/hooks/useModal.js +2 -2
  164. package/lib/hooks/useModal.js.flow +1 -1
  165. package/lib/hooks/useModal.js.map +1 -1
  166. package/lib/hooks/useModularUI.js +0 -1
  167. package/lib/hooks/useModularUI.js.flow +0 -2
  168. package/lib/hooks/useModularUI.js.map +1 -1
  169. package/lib/hooks/useProgressIndicator.js +2 -2
  170. package/lib/i18n/Locale.js +11 -5
  171. package/lib/i18n/Locale.js.flow +7 -0
  172. package/lib/i18n/Locale.js.map +1 -1
  173. package/lib/i18n/Locales.js +2 -2
  174. package/lib/i18n/Message.js +2 -2
  175. package/lib/i18n/__tests__/Locale.spec.js.flow +14 -0
  176. package/lib/i18n/languages.js +2 -1
  177. package/lib/i18n/languages.js.flow +1 -0
  178. package/lib/i18n/languages.js.map +1 -1
  179. package/lib/i18n/types.js.flow +1 -0
  180. package/lib/models/attributes/AttributeCollection.js +2 -2
  181. package/lib/models/attributes/AttributeContent.js +2 -2
  182. package/lib/models/attributes/AttributeDataHelper.js +2 -2
  183. package/lib/models/attributes/BooleanAttributeModel.js +2 -2
  184. package/lib/models/attributes/ChoiceAttributeModel.js +2 -2
  185. package/lib/models/attributes/ChoiceAttributeOptionCollection.js +2 -2
  186. package/lib/models/attributes/CompositeAttributeChildCollection.js +2 -2
  187. package/lib/models/attributes/DatetimeAttributeModel.js +7 -3
  188. package/lib/models/attributes/DatetimeAttributeModel.js.flow +9 -4
  189. package/lib/models/attributes/DatetimeAttributeModel.js.map +1 -1
  190. package/lib/models/attributes/__tests__/StringAttributeModel.spec.js.flow +1 -1
  191. package/lib/models/attributes/_createAttribute.js +2 -2
  192. package/lib/models/base/ResourceModel.js +2 -2
  193. package/lib/models/base/__tests__/BaseModel.spec.js.flow +5 -5
  194. package/lib/models/caseview/CaseViewModel.js +3 -1
  195. package/lib/models/caseview/CaseViewModel.js.flow +3 -1
  196. package/lib/models/caseview/CaseViewModel.js.map +1 -1
  197. package/lib/models/caseview/__tests__/CaseViewModel.spec.js.flow +38 -1
  198. package/lib/models/concepts/ConceptDetailModel.js +2 -2
  199. package/lib/models/concepts/SourceReferenceModel.js +2 -2
  200. package/lib/models/content/ContentTOCModel.js +2 -2
  201. package/lib/models/filters/AssignmentFilterModel.js +2 -2
  202. package/lib/models/filters/BaseFilterModel.js +2 -2
  203. package/lib/models/filters/ConceptIndexFilterModel.js +3 -1
  204. package/lib/models/filters/ConceptIndexFilterModel.js.map +1 -1
  205. package/lib/models/filters/FilterCollection.js +2 -2
  206. package/lib/models/filters/FilterModel.js +3 -1
  207. package/lib/models/filters/FilterModel.js.map +1 -1
  208. package/lib/models/form/FormModel.js +28 -4
  209. package/lib/models/form/FormModel.js.flow +18 -1
  210. package/lib/models/form/FormModel.js.map +1 -1
  211. package/lib/models/form/FormObjectModel.js +2 -2
  212. package/lib/models/form/__tests__/FormModel.getters.spec.js.flow +15 -0
  213. package/lib/models/grouping/GroupingModel.js +2 -2
  214. package/lib/models/links/normalizeLinkJSON.js +2 -2
  215. package/lib/models/list/ListDetailModel.js +2 -2
  216. package/lib/models/list/ListItemCollection.js +40 -0
  217. package/lib/models/list/ListItemCollection.js.flow +38 -1
  218. package/lib/models/list/ListItemCollection.js.map +1 -1
  219. package/lib/models/list/ListItemModel.js +14 -2
  220. package/lib/models/list/ListItemModel.js.flow +15 -0
  221. package/lib/models/list/ListItemModel.js.map +1 -1
  222. package/lib/models/list/ListModel.js +16 -71
  223. package/lib/models/list/ListModel.js.flow +1 -45
  224. package/lib/models/list/ListModel.js.map +1 -1
  225. package/lib/models/list/__tests__/ListItemCollection.spec.js.flow +22 -0
  226. package/lib/models/list/__tests__/ListModel.spec.js.flow +0 -2
  227. package/lib/models/lookup/LookupOptionCollection.js +2 -2
  228. package/lib/models/panels/__tests__/GroupingPanelModel.spec.js.flow +38 -21
  229. package/lib/models/process/__tests__/ProcessStatusSettingsModel.spec.js.flow +11 -0
  230. package/lib/modularui/ModularUIError.js +3 -1
  231. package/lib/modularui/ModularUIError.js.map +1 -1
  232. package/lib/modularui/ModularUIRequest.js +69 -49
  233. package/lib/modularui/ModularUIRequest.js.flow +38 -22
  234. package/lib/modularui/ModularUIRequest.js.map +1 -1
  235. package/lib/react-server/serverUtil.js +2 -2
  236. package/lib/react-theme/createTheme.js +2 -2
  237. package/lib/redux/_i18n/reducer.js +2 -2
  238. package/lib/redux/_modularui/actions.js +2 -2
  239. package/lib/redux/_modularui/connector.js +2 -2
  240. package/lib/redux/_modularui/reducer.js +2 -2
  241. package/lib/redux/_modularui/selectors.js +2 -2
  242. package/lib/redux/reducers/AuthReducer.js +2 -2
  243. package/lib/redux/reducers/ModalsReducer.js +2 -2
  244. package/lib/redux/reducers/NotificationReducer.js +2 -2
  245. package/lib/redux/reducers/PreferencesReducer.js +2 -2
  246. package/lib/redux/reducers/ProgressIndicatorReducer.js +2 -2
  247. package/lib/redux/store/configureStore.js +2 -2
  248. package/lib/utils/browser/Cookies.js +18 -31
  249. package/lib/utils/browser/Cookies.js.flow +22 -28
  250. package/lib/utils/browser/Cookies.js.map +1 -1
  251. package/lib/utils/browser/__tests__/Cookies.spec.js.flow +51 -0
  252. package/lib/utils/fetch/xhr.js +7 -4
  253. package/lib/utils/fetch/xhr.js.flow +6 -2
  254. package/lib/utils/fetch/xhr.js.map +1 -1
  255. package/package.json +37 -35
  256. package/src/builder/mergeLayoutHintConfigurations.js +3 -3
  257. package/src/constants/LayoutHintConfig.js +9 -0
  258. package/src/constants/LayoutHints.js +4 -0
  259. package/src/constants/Settings.js +2 -0
  260. package/src/hooks/useContent.js +2 -2
  261. package/src/hooks/useDeepCompareEffect.js +1 -1
  262. package/src/hooks/useForm.js +1 -2
  263. package/src/hooks/useModal.js +1 -1
  264. package/src/hooks/useModularUI.js +0 -2
  265. package/src/i18n/Locale.js +7 -0
  266. package/src/i18n/__tests__/Locale.spec.js +14 -0
  267. package/src/i18n/languages.js +1 -0
  268. package/src/i18n/types.js +1 -0
  269. package/src/models/attributes/DatetimeAttributeModel.js +9 -4
  270. package/src/models/attributes/__tests__/StringAttributeModel.spec.js +1 -1
  271. package/src/models/base/__tests__/BaseModel.spec.js +5 -5
  272. package/src/models/caseview/CaseViewModel.js +3 -1
  273. package/src/models/caseview/__tests__/CaseViewModel.spec.js +38 -1
  274. package/src/models/caseview/__tests__/caseview.json +14 -3
  275. package/src/models/caseview/__tests__/caseviewContributions.json +48 -77
  276. package/src/models/caseview/__tests__/caseview_local_taskgroup.json +57 -0
  277. package/src/models/form/FormModel.js +18 -1
  278. package/src/models/form/__tests__/FormModel.getters.spec.js +15 -0
  279. package/src/models/list/ListItemCollection.js +38 -1
  280. package/src/models/list/ListItemModel.js +15 -0
  281. package/src/models/list/ListModel.js +1 -45
  282. package/src/models/list/__tests__/ListItemCollection.spec.js +22 -0
  283. package/src/models/list/__tests__/ListModel.spec.js +0 -2
  284. package/src/models/panels/__tests__/GroupingPanelModel.spec.js +38 -21
  285. package/src/models/panels/__tests__/groupingPanel.json +20 -1
  286. package/src/models/panels/__tests__/groupingPanelContributions.json +14 -1
  287. package/src/models/process/__tests__/ProcessStatusSettingsModel.spec.js +11 -0
  288. package/src/modularui/ModularUIRequest.js +38 -22
  289. package/src/utils/browser/Cookies.js +22 -28
  290. package/src/utils/browser/__tests__/Cookies.spec.js +51 -0
  291. package/src/utils/fetch/xhr.js +6 -2
@@ -2,7 +2,6 @@ import _Reflect$construct from "@babel/runtime-corejs3/core-js-stable/reflect/co
2
2
  import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
3
3
  import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
4
4
  import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
5
- import _slicedToArray from "@babel/runtime-corejs3/helpers/esm/slicedToArray";
6
5
  import _classCallCheck from "@babel/runtime-corejs3/helpers/esm/classCallCheck";
7
6
  import _createClass from "@babel/runtime-corejs3/helpers/esm/createClass";
8
7
  import _assertThisInitialized from "@babel/runtime-corejs3/helpers/esm/assertThisInitialized";
@@ -11,15 +10,15 @@ import _possibleConstructorReturn from "@babel/runtime-corejs3/helpers/esm/possi
11
10
  import _getPrototypeOf from "@babel/runtime-corejs3/helpers/esm/getPrototypeOf";
12
11
  import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
13
12
 
14
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys3(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; }
13
+ 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; }
15
14
 
16
- 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) { _defineProperty(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; }
15
+ 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) { _defineProperty(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; }
17
16
 
18
17
  import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
19
18
  import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
20
19
  import _findInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/find";
21
- import _Object$keys3 from "@babel/runtime-corejs3/core-js-stable/object/keys";
22
20
  import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
21
+ import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
23
22
  import _endsWithInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/ends-with";
24
23
  import _includesInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/includes";
25
24
 
@@ -27,7 +26,6 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
27
26
 
28
27
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
29
28
 
30
- import { ConfigurationException } from "../../exceptions";
31
29
  import ModularUIResponse from "../../modularui/ModularUIResponse";
32
30
  import ListItemCollection from "../list/ListItemCollection";
33
31
  import ListDetailModel from "../list/ListDetailModel";
@@ -155,57 +153,6 @@ var ListModel = /*#__PURE__*/function (_ResourceModel) {
155
153
 
156
154
  return "";
157
155
  }
158
- /**
159
- * Create a listitem collection from the data and contributions of a list
160
- */
161
-
162
- }, {
163
- key: "createListItemCollection",
164
- value: function createListItemCollection() {
165
- var _this2 = this;
166
-
167
- var listitemCollection = new ListItemCollection();
168
-
169
- var _embedded = this.getData("_embedded");
170
-
171
- if (_embedded !== null) {
172
- var _context3;
173
-
174
- if (Array.isArray(_embedded)) {
175
- throw new ConfigurationException("One record panel with multiple tables is not supported, place all types in one panel for the panel with key ".concat(this.key));
176
- }
177
-
178
- listitemCollection.collection = _mapInstanceProperty(_context3 = _embedded.results).call(_context3, function (result) {
179
- return _this2.createListItem(result);
180
- });
181
- }
182
-
183
- return listitemCollection;
184
- }
185
- /**
186
- * Create a ListItem
187
- */
188
-
189
- }, {
190
- key: "createListItem",
191
- value: function createListItem(resultItem) {
192
- var _Object$keys = _Object$keys3(resultItem),
193
- _Object$keys2 = _slicedToArray(_Object$keys, 1),
194
- key = _Object$keys2[0];
195
-
196
- var listitemData = resultItem[key];
197
- var listitemContributions = this.contributions.results[key];
198
-
199
- if (this.data.dynamicschema) {
200
- listitemData.dynamicschema = this.data.dynamicschema;
201
- }
202
-
203
- var listitemModelInput = new ModularUIResponse();
204
- listitemModelInput.key = key;
205
- listitemModelInput.data = listitemData;
206
- listitemModelInput.contributions = listitemContributions;
207
- return new ListItemModel(listitemModelInput);
208
- }
209
156
  /**
210
157
  * Getting the results
211
158
  */
@@ -214,7 +161,7 @@ var ListModel = /*#__PURE__*/function (_ResourceModel) {
214
161
  key: "listItemCollection",
215
162
  get: function get() {
216
163
  if (!this._listItemCollection) {
217
- this._listItemCollection = this.createListItemCollection();
164
+ this._listItemCollection = ListItemCollection.createFromList(this);
218
165
  }
219
166
 
220
167
  return this._listItemCollection;
@@ -241,11 +188,11 @@ var ListModel = /*#__PURE__*/function (_ResourceModel) {
241
188
  ,
242
189
  set: function set(detail) {
243
190
  if (detail instanceof ListDetailModel) {
244
- var _context4;
191
+ var _context3;
245
192
 
246
193
  var listitemHref = detail.selfhref;
247
194
 
248
- var listitem = _findInstanceProperty(_context4 = this.listItemCollection).call(_context4, function (listItem) {
195
+ var listitem = _findInstanceProperty(_context3 = this.listItemCollection).call(_context3, function (listItem) {
249
196
  return listItem.selfhref.equals(listitemHref);
250
197
  });
251
198
 
@@ -313,10 +260,10 @@ var ListModel = /*#__PURE__*/function (_ResourceModel) {
313
260
  }, {
314
261
  key: "getListItemById",
315
262
  value: function getListItemById(id) {
316
- var _context5;
263
+ var _context4;
317
264
 
318
265
  var decodedId = decodeURIComponent(id.toString());
319
- return _findInstanceProperty(_context5 = this.listItemCollection).call(_context5, function (result) {
266
+ return _findInstanceProperty(_context4 = this.listItemCollection).call(_context4, function (result) {
320
267
  return result.id.toString() === decodedId;
321
268
  });
322
269
  }
@@ -327,9 +274,9 @@ var ListModel = /*#__PURE__*/function (_ResourceModel) {
327
274
  }, {
328
275
  key: "getListItemByHref",
329
276
  value: function getListItemByHref(href) {
330
- var _context6;
277
+ var _context5;
331
278
 
332
- return _findInstanceProperty(_context6 = this.listItemCollection).call(_context6, function (result) {
279
+ return _findInstanceProperty(_context5 = this.listItemCollection).call(_context5, function (result) {
333
280
  return result.selfhref.equals(href);
334
281
  });
335
282
  }
@@ -495,16 +442,16 @@ var ListModel = /*#__PURE__*/function (_ResourceModel) {
495
442
  }, {
496
443
  key: "setHeaders",
497
444
  value: function setHeaders() {
498
- var _this3 = this;
445
+ var _this2 = this;
499
446
 
500
447
  var tempHeaders = [];
501
448
 
502
449
  if (this.contributions.results) {
503
450
  var results = this.contributions.results;
504
451
 
505
- _Object$keys3(results).forEach(function (key) {
452
+ _Object$keys(results).forEach(function (key) {
506
453
  results[key].attributes.forEach(function (attribute) {
507
- var listHeader = new ListHeaderModel(attribute, _this3.sorting);
454
+ var listHeader = new ListHeaderModel(attribute, _this2.sorting);
508
455
  var exists = tempHeaders.some(function (tempHeader) {
509
456
  return tempHeader.equals(listHeader);
510
457
  });
@@ -529,9 +476,9 @@ var ListModel = /*#__PURE__*/function (_ResourceModel) {
529
476
  if (this.contributions.results) {
530
477
  var results = this.contributions.results;
531
478
 
532
- _Object$keys3(results).forEach(function (key) {
479
+ _Object$keys(results).forEach(function (key) {
533
480
  results[key].attributes.forEach(function (attribute) {
534
- var attributeKey = _Object$keys3(attribute)[0];
481
+ var attributeKey = _Object$keys(attribute)[0];
535
482
 
536
483
  sortingLabels[attributeKey] = attribute[attributeKey].label;
537
484
  });
@@ -552,9 +499,9 @@ var ListModel = /*#__PURE__*/function (_ResourceModel) {
552
499
  }], [{
553
500
  key: "isApplicableModel",
554
501
  value: function isApplicableModel(data) {
555
- var _context7, _context8, _context9;
502
+ var _context6, _context7, _context8;
556
503
 
557
- return data.contributions.resourcetype && (_endsWithInstanceProperty(_context7 = data.contributions.resourcetype).call(_context7, "List") || _endsWithInstanceProperty(_context8 = data.contributions.resourcetype).call(_context8, "ListPanel") || _includesInstanceProperty(_context9 = ["DatastoreRelatedDatastorePanel", "list-related-cases", "CaseRelatedDataStorePanel", "RecordPanel", "EventHistoryPanel", "NotePanel", "AppointmentPanel", "DocumentPanel", "AssignmentPanel"]).call(_context9, data.contributions.resourcetype));
504
+ return data.contributions.resourcetype && (_endsWithInstanceProperty(_context6 = data.contributions.resourcetype).call(_context6, "List") || _endsWithInstanceProperty(_context7 = data.contributions.resourcetype).call(_context7, "ListPanel") || _includesInstanceProperty(_context8 = ["DatastoreRelatedDatastorePanel", "list-related-cases", "CaseRelatedDataStorePanel", "RecordPanel", "EventHistoryPanel", "NotePanel", "AppointmentPanel", "DocumentPanel", "AssignmentPanel"]).call(_context8, data.contributions.resourcetype));
558
505
  }
559
506
  }]);
560
507
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/models/list/ListModel.js"],"names":["ConfigurationException","ModularUIResponse","ListItemCollection","ListDetailModel","ActionCollection","FilterCollection","GroupingModel","ListHeaderModel","ListHref","ListItemModel","PagingModel","ResourceModel","SortingModel","CASEVIEW_LINK","HIDE_WHEN_EMPTY","SHOW_ONE_RESULT_AS_DETAIL","ListModel","layouthint","has","listItemCollection","length","listItem","listDetailLink","selflink","targetModel","models","detail","childModel","type","contributions","label","data","content","text","message","Array","isArray","texts","listitemCollection","_embedded","getData","key","collection","results","result","createListItem","resultItem","listitemData","listitemContributions","dynamicschema","listitemModelInput","_listItemCollection","createListItemCollection","_detail","listitemHref","selfhref","listitem","equals","setSelfHref","_grouping","setGrouping","grouping","contexts","hasGroups","hasItems","hasResults","actionCollection","isEmpty","filterCollection","hasActiveFilters","id","decodedId","decodeURIComponent","toString","href","_paging","setPaging","paging","_sorting","setSorting","getSortingLabels","sorting","_filterCollection","setFilters","listkey","filter","_actionCollection","setActionCollection","actions","selfLink","links","getLinkByKey","_selfhref","_headers","setHeaders","tempHeaders","forEach","attributes","attribute","listHeader","exists","some","tempHeader","push","sortingLabels","attributeKey","actionType","getActionsByType","resourcetype"],"mappings":"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","sourcesContent":["// @flow\nimport { ConfigurationException } from \"../../exceptions\";\n\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\nimport ListItemCollection from \"../list/ListItemCollection\";\nimport ListDetailModel from \"../list/ListDetailModel\";\nimport ActionCollection from \"../actions/ActionCollection\";\nimport FilterCollection from \"../filters/FilterCollection\";\nimport GroupingModel from \"../grouping/GroupingModel\";\nimport ListHeaderModel from \"../list/ListHeaderModel\";\nimport ListHref from \"../href/ListHref\";\nimport ListItemModel from \"../list/ListItemModel\";\nimport PagingModel from \"../paging/PagingModel\";\nimport ResourceModel from \"../base/ResourceModel\";\nimport SortingModel from \"../sorting/SortingModel\";\nimport {\n CASEVIEW_LINK,\n HIDE_WHEN_EMPTY,\n SHOW_ONE_RESULT_AS_DETAIL,\n} from \"../../constants/LayoutHints\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type LinkModel from \"../links/LinkModel\";\n\n/**\n * Defines a list object\n */\nexport default class ListModel extends ResourceModel {\n _detail: ?ListDetailModel = null;\n _headers: Array<ListHeaderModel>;\n _paging: PagingModel;\n _filterCollection: FilterCollection;\n _sorting: SortingModel;\n _actionCollection: ActionCollection;\n _listItemCollection: ListItemCollection;\n _grouping: GroupingModel;\n _selfhref: ListHref;\n\n /**\n */\n get type(): string {\n return \"List\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n (data.contributions.resourcetype.endsWith(\"List\") ||\n data.contributions.resourcetype.endsWith(\"ListPanel\") ||\n [\n \"DatastoreRelatedDatastorePanel\",\n \"list-related-cases\",\n \"CaseRelatedDataStorePanel\",\n \"RecordPanel\",\n \"EventHistoryPanel\",\n \"NotePanel\",\n \"AppointmentPanel\",\n \"DocumentPanel\",\n \"AssignmentPanel\",\n ].includes(data.contributions.resourcetype))\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n if (\n this.layouthint.has(SHOW_ONE_RESULT_AS_DETAIL) &&\n this.listItemCollection.length === 1\n ) {\n return this.listItemCollection.map((listItem) => {\n const listDetailLink = listItem.selflink;\n listDetailLink.targetModel = ListDetailModel;\n return listDetailLink;\n });\n }\n\n return [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n this.detail = models.find((childModel) => childModel.type === \"ListDetail\");\n }\n\n /**\n * Getting the label of the list\n */\n get label(): string {\n return this.contributions.label;\n }\n\n /**\n * Getting the introduction text\n */\n get introtext(): string {\n if (this.data.content) {\n return this.data.content.text.message;\n }\n\n if (this.contributions.text) {\n return this.contributions.text.message ?? this.contributions.text;\n }\n\n if (Array.isArray(this.contributions.texts)) {\n return this.contributions.texts[0].text;\n }\n\n return \"\";\n }\n\n /**\n * Create a listitem collection from the data and contributions of a list\n */\n createListItemCollection(): ListItemCollection {\n const listitemCollection = new ListItemCollection();\n\n const _embedded = this.getData(\"_embedded\");\n if (_embedded !== null) {\n if (Array.isArray(_embedded)) {\n throw new ConfigurationException(\n `One record panel with multiple tables is not supported, place all types in one panel for the panel with key ${this.key}`\n );\n }\n\n listitemCollection.collection = _embedded.results.map((result) =>\n this.createListItem(result)\n );\n }\n\n return listitemCollection;\n }\n\n /**\n * Create a ListItem\n */\n createListItem(resultItem: Object): ListItemModel {\n const [key] = Object.keys(resultItem);\n const listitemData = resultItem[key];\n const listitemContributions = this.contributions.results[key];\n\n if (this.data.dynamicschema) {\n listitemData.dynamicschema = this.data.dynamicschema;\n }\n\n const listitemModelInput = new ModularUIResponse();\n listitemModelInput.key = key;\n listitemModelInput.data = listitemData;\n listitemModelInput.contributions = listitemContributions;\n\n return new ListItemModel(listitemModelInput);\n }\n\n /**\n * Getting the results\n */\n get listItemCollection(): ListItemCollection {\n if (!this._listItemCollection) {\n this._listItemCollection = this.createListItemCollection();\n }\n\n return this._listItemCollection;\n }\n\n /**\n * Set results\n */\n set listItemCollection(listItemCollection: ListItemCollection) {\n this._listItemCollection = listItemCollection;\n }\n\n /**\n * Getting the detail\n */\n get detail(): ?ListDetailModel {\n return this._detail;\n }\n\n /**\n * Add detail model to the {ListModel}\n */\n set detail(detail: ?ModularUIModel) {\n if (detail instanceof ListDetailModel) {\n const listitemHref = detail.selfhref;\n\n const listitem = this.listItemCollection.find((listItem) =>\n listItem.selfhref.equals(listitemHref)\n );\n\n if (listitem) {\n detail.listitem = listitem;\n }\n\n this._detail = detail;\n }\n\n this.setSelfHref();\n }\n\n /**\n * Retrieve grouping information\n */\n get grouping(): GroupingModel {\n if (!this._grouping) {\n this._grouping = this.setGrouping();\n }\n\n return this._grouping;\n }\n\n /**\n */\n setGrouping(): GroupingModel {\n return new GroupingModel(\n { ...this.data.grouping, dynamicschema: this.data.dynamicschema },\n this.contributions.contexts\n );\n }\n\n /**\n */\n hasGrouping(): boolean {\n return this.grouping.hasGroups();\n }\n\n /**\n * Check if list has results\n */\n hasResults(): boolean {\n return this.listItemCollection.hasItems;\n }\n\n /**\n */\n get shouldHide(): boolean {\n return (\n this.layouthint.has(HIDE_WHEN_EMPTY) &&\n !this.hasResults() &&\n this.actionCollection.isEmpty &&\n !this.filterCollection.hasActiveFilters()\n );\n }\n\n /**\n * Get list item by ID\n */\n getListItemById(id: string | number): ListItemModel | null {\n const decodedId = decodeURIComponent(id.toString());\n return this.listItemCollection.find(\n (result) => result.id.toString() === decodedId\n );\n }\n\n /**\n * Get list item by Href\n */\n getListItemByHref(href: ListHref): ListItemModel | null {\n return this.listItemCollection.find((result) =>\n result.selfhref.equals(href)\n );\n }\n\n /**\n * Getting paging information\n */\n get paging(): PagingModel {\n if (!this._paging) {\n this._paging = this.setPaging();\n }\n return this._paging;\n }\n\n /**\n */\n setPaging(): PagingModel {\n return new PagingModel(this.data.paging, this.contributions.paging);\n }\n\n /**\n * Getting sorting information\n */\n get sorting(): SortingModel {\n if (!this._sorting) {\n this._sorting = this.setSorting();\n }\n\n return this._sorting;\n }\n\n /**\n */\n setSorting(): SortingModel {\n return new SortingModel(\n this.contributions,\n this.getSortingLabels(),\n this.grouping,\n this.data.sorting\n );\n }\n\n /**\n * Getting the filters\n */\n get filterCollection(): FilterCollection {\n if (!this._filterCollection) {\n this._filterCollection = this.setFilters();\n }\n\n return this._filterCollection;\n }\n\n /**\n * Set filterCollection\n */\n set filterCollection(filterCollection: FilterCollection) {\n this._filterCollection = filterCollection;\n }\n\n /**\n */\n setFilters(): FilterCollection {\n return new FilterCollection(this.data.filter, {\n listkey: this.key,\n filter: this.contributions.filter,\n contexts: this.contributions.contexts,\n dynamicschema: this.data.dynamicschema,\n });\n }\n\n /**\n * Indicates if list results are filtered\n */\n isFiltered(): boolean {\n return this.filterCollection.hasActiveFilters();\n }\n\n /**\n * Getting actions\n */\n get actionCollection(): ActionCollection {\n if (!this._actionCollection) {\n this._actionCollection = this.setActionCollection();\n }\n return this._actionCollection;\n }\n\n /**\n */\n setActionCollection(): ActionCollection {\n return new ActionCollection(this.data.actions, this.contributions.actions);\n }\n\n /**\n * Contains this model list data\n */\n hasList(): boolean {\n return this.key != null;\n }\n\n /**\n * Sets self href from links collection\n */\n setSelfHref(): ListHref {\n const selfLink = this.links ? this.links.getLinkByKey(\"self\") : null;\n\n if (selfLink !== null) {\n return new ListHref(selfLink.href, this);\n }\n\n return new ListHref();\n }\n\n /**\n * Getting the self link of this list\n */\n get selfhref(): ListHref {\n if (!this._selfhref) {\n this._selfhref = this.setSelfHref();\n }\n return this._selfhref;\n }\n\n /**\n * Getting the headers of this list\n */\n get headers(): Array<ListHeaderModel> {\n if (!this._headers) {\n this._headers = this.setHeaders();\n }\n\n return this._headers;\n }\n\n /**\n * Set initial headers of list\n */\n setHeaders(): Array<ListHeaderModel> {\n const tempHeaders = [];\n\n if (this.contributions.results) {\n const { results } = this.contributions;\n\n Object.keys(results).forEach((key) => {\n results[key].attributes.forEach((attribute) => {\n const listHeader = new ListHeaderModel(attribute, this.sorting);\n\n const exists = tempHeaders.some((tempHeader) =>\n tempHeader.equals(listHeader)\n );\n\n if (!exists && !listHeader.layouthint.has(CASEVIEW_LINK)) {\n tempHeaders.push(listHeader);\n }\n });\n });\n }\n\n return tempHeaders;\n }\n\n /**\n */\n getSortingLabels(): { [string]: string } {\n const sortingLabels = {};\n\n if (this.contributions.results) {\n const { results } = this.contributions;\n Object.keys(results).forEach((key) => {\n results[key].attributes.forEach((attribute) => {\n const attributeKey = Object.keys(attribute)[0];\n sortingLabels[attributeKey] = attribute[attributeKey].label;\n });\n });\n }\n\n return sortingLabels;\n }\n\n /**\n * Retrieve all actions by type\n */\n getActionsByType(actionType: string): ActionCollection {\n return this.actionCollection.getActionsByType(actionType);\n }\n}\n"],"file":"ListModel.js"}
1
+ {"version":3,"sources":["../../../src/models/list/ListModel.js"],"names":["ModularUIResponse","ListItemCollection","ListDetailModel","ActionCollection","FilterCollection","GroupingModel","ListHeaderModel","ListHref","ListItemModel","PagingModel","ResourceModel","SortingModel","CASEVIEW_LINK","HIDE_WHEN_EMPTY","SHOW_ONE_RESULT_AS_DETAIL","ListModel","layouthint","has","listItemCollection","length","listItem","listDetailLink","selflink","targetModel","models","detail","childModel","type","contributions","label","data","content","text","message","Array","isArray","texts","_listItemCollection","createFromList","_detail","listitemHref","selfhref","listitem","equals","setSelfHref","_grouping","setGrouping","grouping","dynamicschema","contexts","hasGroups","hasItems","hasResults","actionCollection","isEmpty","filterCollection","hasActiveFilters","id","decodedId","decodeURIComponent","toString","result","href","_paging","setPaging","paging","_sorting","setSorting","getSortingLabels","sorting","_filterCollection","setFilters","listkey","key","filter","_actionCollection","setActionCollection","actions","selfLink","links","getLinkByKey","_selfhref","_headers","setHeaders","tempHeaders","results","forEach","attributes","attribute","listHeader","exists","some","tempHeader","push","sortingLabels","attributeKey","actionType","getActionsByType","resourcetype"],"mappings":"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","sourcesContent":["// @flow\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\nimport ListItemCollection from \"../list/ListItemCollection\";\nimport ListDetailModel from \"../list/ListDetailModel\";\nimport ActionCollection from \"../actions/ActionCollection\";\nimport FilterCollection from \"../filters/FilterCollection\";\nimport GroupingModel from \"../grouping/GroupingModel\";\nimport ListHeaderModel from \"../list/ListHeaderModel\";\nimport ListHref from \"../href/ListHref\";\nimport ListItemModel from \"../list/ListItemModel\";\nimport PagingModel from \"../paging/PagingModel\";\nimport ResourceModel from \"../base/ResourceModel\";\nimport SortingModel from \"../sorting/SortingModel\";\nimport {\n CASEVIEW_LINK,\n HIDE_WHEN_EMPTY,\n SHOW_ONE_RESULT_AS_DETAIL,\n} from \"../../constants/LayoutHints\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type LinkModel from \"../links/LinkModel\";\n\n/**\n * Defines a list object\n */\nexport default class ListModel extends ResourceModel {\n _detail: ?ListDetailModel = null;\n _headers: Array<ListHeaderModel>;\n _paging: PagingModel;\n _filterCollection: FilterCollection;\n _sorting: SortingModel;\n _actionCollection: ActionCollection;\n _listItemCollection: ListItemCollection;\n _grouping: GroupingModel;\n _selfhref: ListHref;\n\n /**\n */\n get type(): string {\n return \"List\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n (data.contributions.resourcetype.endsWith(\"List\") ||\n data.contributions.resourcetype.endsWith(\"ListPanel\") ||\n [\n \"DatastoreRelatedDatastorePanel\",\n \"list-related-cases\",\n \"CaseRelatedDataStorePanel\",\n \"RecordPanel\",\n \"EventHistoryPanel\",\n \"NotePanel\",\n \"AppointmentPanel\",\n \"DocumentPanel\",\n \"AssignmentPanel\",\n ].includes(data.contributions.resourcetype))\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n if (\n this.layouthint.has(SHOW_ONE_RESULT_AS_DETAIL) &&\n this.listItemCollection.length === 1\n ) {\n return this.listItemCollection.map((listItem) => {\n const listDetailLink = listItem.selflink;\n listDetailLink.targetModel = ListDetailModel;\n return listDetailLink;\n });\n }\n\n return [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n this.detail = models.find((childModel) => childModel.type === \"ListDetail\");\n }\n\n /**\n * Getting the label of the list\n */\n get label(): string {\n return this.contributions.label;\n }\n\n /**\n * Getting the introduction text\n */\n get introtext(): string {\n if (this.data.content) {\n return this.data.content.text.message;\n }\n\n if (this.contributions.text) {\n return this.contributions.text.message ?? this.contributions.text;\n }\n\n if (Array.isArray(this.contributions.texts)) {\n return this.contributions.texts[0].text;\n }\n\n return \"\";\n }\n\n /**\n * Getting the results\n */\n get listItemCollection(): ListItemCollection {\n if (!this._listItemCollection) {\n this._listItemCollection = ListItemCollection.createFromList(this);\n }\n\n return this._listItemCollection;\n }\n\n /**\n * Set results\n */\n set listItemCollection(listItemCollection: ListItemCollection) {\n this._listItemCollection = listItemCollection;\n }\n\n /**\n * Getting the detail\n */\n get detail(): ?ListDetailModel {\n return this._detail;\n }\n\n /**\n * Add detail model to the {ListModel}\n */\n set detail(detail: ?ModularUIModel) {\n if (detail instanceof ListDetailModel) {\n const listitemHref = detail.selfhref;\n\n const listitem = this.listItemCollection.find((listItem) =>\n listItem.selfhref.equals(listitemHref)\n );\n\n if (listitem) {\n detail.listitem = listitem;\n }\n\n this._detail = detail;\n }\n\n this.setSelfHref();\n }\n\n /**\n * Retrieve grouping information\n */\n get grouping(): GroupingModel {\n if (!this._grouping) {\n this._grouping = this.setGrouping();\n }\n\n return this._grouping;\n }\n\n /**\n */\n setGrouping(): GroupingModel {\n return new GroupingModel(\n { ...this.data.grouping, dynamicschema: this.data.dynamicschema },\n this.contributions.contexts\n );\n }\n\n /**\n */\n hasGrouping(): boolean {\n return this.grouping.hasGroups();\n }\n\n /**\n * Check if list has results\n */\n hasResults(): boolean {\n return this.listItemCollection.hasItems;\n }\n\n /**\n */\n get shouldHide(): boolean {\n return (\n this.layouthint.has(HIDE_WHEN_EMPTY) &&\n !this.hasResults() &&\n this.actionCollection.isEmpty &&\n !this.filterCollection.hasActiveFilters()\n );\n }\n\n /**\n * Get list item by ID\n */\n getListItemById(id: string | number): ListItemModel | null {\n const decodedId = decodeURIComponent(id.toString());\n return this.listItemCollection.find(\n (result) => result.id.toString() === decodedId\n );\n }\n\n /**\n * Get list item by Href\n */\n getListItemByHref(href: ListHref): ListItemModel | null {\n return this.listItemCollection.find((result) =>\n result.selfhref.equals(href)\n );\n }\n\n /**\n * Getting paging information\n */\n get paging(): PagingModel {\n if (!this._paging) {\n this._paging = this.setPaging();\n }\n return this._paging;\n }\n\n /**\n */\n setPaging(): PagingModel {\n return new PagingModel(this.data.paging, this.contributions.paging);\n }\n\n /**\n * Getting sorting information\n */\n get sorting(): SortingModel {\n if (!this._sorting) {\n this._sorting = this.setSorting();\n }\n\n return this._sorting;\n }\n\n /**\n */\n setSorting(): SortingModel {\n return new SortingModel(\n this.contributions,\n this.getSortingLabels(),\n this.grouping,\n this.data.sorting\n );\n }\n\n /**\n * Getting the filters\n */\n get filterCollection(): FilterCollection {\n if (!this._filterCollection) {\n this._filterCollection = this.setFilters();\n }\n\n return this._filterCollection;\n }\n\n /**\n * Set filterCollection\n */\n set filterCollection(filterCollection: FilterCollection) {\n this._filterCollection = filterCollection;\n }\n\n /**\n */\n setFilters(): FilterCollection {\n return new FilterCollection(this.data.filter, {\n listkey: this.key,\n filter: this.contributions.filter,\n contexts: this.contributions.contexts,\n dynamicschema: this.data.dynamicschema,\n });\n }\n\n /**\n * Indicates if list results are filtered\n */\n isFiltered(): boolean {\n return this.filterCollection.hasActiveFilters();\n }\n\n /**\n * Getting actions\n */\n get actionCollection(): ActionCollection {\n if (!this._actionCollection) {\n this._actionCollection = this.setActionCollection();\n }\n return this._actionCollection;\n }\n\n /**\n */\n setActionCollection(): ActionCollection {\n return new ActionCollection(this.data.actions, this.contributions.actions);\n }\n\n /**\n * Contains this model list data\n */\n hasList(): boolean {\n return this.key != null;\n }\n\n /**\n * Sets self href from links collection\n */\n setSelfHref(): ListHref {\n const selfLink = this.links ? this.links.getLinkByKey(\"self\") : null;\n\n if (selfLink !== null) {\n return new ListHref(selfLink.href, this);\n }\n\n return new ListHref();\n }\n\n /**\n * Getting the self link of this list\n */\n get selfhref(): ListHref {\n if (!this._selfhref) {\n this._selfhref = this.setSelfHref();\n }\n return this._selfhref;\n }\n\n /**\n * Getting the headers of this list\n */\n get headers(): Array<ListHeaderModel> {\n if (!this._headers) {\n this._headers = this.setHeaders();\n }\n\n return this._headers;\n }\n\n /**\n * Set initial headers of list\n */\n setHeaders(): Array<ListHeaderModel> {\n const tempHeaders = [];\n\n if (this.contributions.results) {\n const { results } = this.contributions;\n\n Object.keys(results).forEach((key) => {\n results[key].attributes.forEach((attribute) => {\n const listHeader = new ListHeaderModel(attribute, this.sorting);\n\n const exists = tempHeaders.some((tempHeader) =>\n tempHeader.equals(listHeader)\n );\n\n if (!exists && !listHeader.layouthint.has(CASEVIEW_LINK)) {\n tempHeaders.push(listHeader);\n }\n });\n });\n }\n\n return tempHeaders;\n }\n\n /**\n */\n getSortingLabels(): { [string]: string } {\n const sortingLabels = {};\n\n if (this.contributions.results) {\n const { results } = this.contributions;\n Object.keys(results).forEach((key) => {\n results[key].attributes.forEach((attribute) => {\n const attributeKey = Object.keys(attribute)[0];\n sortingLabels[attributeKey] = attribute[attributeKey].label;\n });\n });\n }\n\n return sortingLabels;\n }\n\n /**\n * Retrieve all actions by type\n */\n getActionsByType(actionType: string): ActionCollection {\n return this.actionCollection.getActionsByType(actionType);\n }\n}\n"],"file":"ListModel.js"}
@@ -11,9 +11,9 @@ import _inherits from "@babel/runtime-corejs3/helpers/esm/inherits";
11
11
  import _possibleConstructorReturn from "@babel/runtime-corejs3/helpers/esm/possibleConstructorReturn";
12
12
  import _getPrototypeOf from "@babel/runtime-corejs3/helpers/esm/getPrototypeOf";
13
13
 
14
- 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; }
14
+ 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; }
15
15
 
16
- 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) { _defineProperty(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; }
16
+ 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) { _defineProperty(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; }
17
17
 
18
18
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
19
19
 
@@ -1,4 +1,5 @@
1
1
  import _Reflect$construct from "@babel/runtime-corejs3/core-js-stable/reflect/construct";
2
+ import _createClass from "@babel/runtime-corejs3/helpers/esm/createClass";
2
3
  import _classCallCheck from "@babel/runtime-corejs3/helpers/esm/classCallCheck";
3
4
  import _assertThisInitialized from "@babel/runtime-corejs3/helpers/esm/assertThisInitialized";
4
5
  import _inherits from "@babel/runtime-corejs3/helpers/esm/inherits";
@@ -43,7 +44,7 @@ var ModularUIError = /*#__PURE__*/function (_Error) {
43
44
  return _this;
44
45
  }
45
46
 
46
- return ModularUIError;
47
+ return _createClass(ModularUIError);
47
48
  }( /*#__PURE__*/_wrapNativeSuper(Error));
48
49
 
49
50
  export default ModularUIError;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/modularui/ModularUIError.js"],"names":["ModularUIError","message","response","resource","Error","captureStackTrace"],"mappings":";;;;;;;;;;;;;AACA;AACA;IACMA,c;;;;;AAIJ;AACF;AACE,0BAAYC,OAAZ,EAA6BC,QAA7B,EAA+CC,QAA/C,EAAiE;AAAA;;AAAA;;AAC/D,8BAAMF,OAAN;;AAD+D;;AAAA;;AAG/D,UAAKC,QAAL,GAAgBA,QAAhB;AACA,UAAKC,QAAL,GAAgBA,QAAhB,CAJ+D,CAM/D;AACA;AACA;;AACA,QAAIC,KAAK,CAACC,iBAAV,EAA6B;AAC3BD,MAAAA,KAAK,CAACC,iBAAN,gCAA8BL,cAA9B;AACD;;AAX8D;AAYhE;;;iCAlB0BI,K;;AAqB7B,eAAeJ,cAAf","sourcesContent":["// @flow\n/**\n */\nclass ModularUIError extends Error {\n response: Object;\n resource: string;\n\n /**\n */\n constructor(message: string, response: Object, resource: string) {\n super(message);\n\n this.response = response;\n this.resource = resource;\n\n // Without passing ModularUIError to captureStackTrace, the ModularUIError\n // frame would show up in the .stack property. By passing\n // the constructor, we omit that frame, and retain all frames below it.\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, ModularUIError);\n }\n }\n}\n\nexport default ModularUIError;\n"],"file":"ModularUIError.js"}
1
+ {"version":3,"sources":["../../src/modularui/ModularUIError.js"],"names":["ModularUIError","message","response","resource","Error","captureStackTrace"],"mappings":";;;;;;;;;;;;;;AACA;AACA;IACMA,c;;;;;AAIJ;AACF;AACE,0BAAYC,OAAZ,EAA6BC,QAA7B,EAA+CC,QAA/C,EAAiE;AAAA;;AAAA;;AAC/D,8BAAMF,OAAN;;AAD+D;;AAAA;;AAG/D,UAAKC,QAAL,GAAgBA,QAAhB;AACA,UAAKC,QAAL,GAAgBA,QAAhB,CAJ+D,CAM/D;AACA;AACA;;AACA,QAAIC,KAAK,CAACC,iBAAV,EAA6B;AAC3BD,MAAAA,KAAK,CAACC,iBAAN,gCAA8BL,cAA9B;AACD;;AAX8D;AAYhE;;;iCAlB0BI,K;;AAqB7B,eAAeJ,cAAf","sourcesContent":["// @flow\n/**\n */\nclass ModularUIError extends Error {\n response: Object;\n resource: string;\n\n /**\n */\n constructor(message: string, response: Object, resource: string) {\n super(message);\n\n this.response = response;\n this.resource = resource;\n\n // Without passing ModularUIError to captureStackTrace, the ModularUIError\n // frame would show up in the .stack property. By passing\n // the constructor, we omit that frame, and retain all frames below it.\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, ModularUIError);\n }\n }\n}\n\nexport default ModularUIError;\n"],"file":"ModularUIError.js"}
@@ -28,9 +28,9 @@ import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance
28
28
  import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
29
29
  import _includesInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/includes";
30
30
 
31
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys3(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; }
31
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys3(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; }
32
32
 
33
- 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) { _defineProperty(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; }
33
+ 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) { _defineProperty(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; }
34
34
 
35
35
  import deepmerge from "deepmerge";
36
36
  import { BASE, HTTP_METHODS, TIMEVERSION_FILTER_NAME } from "../constants/Constants";
@@ -504,6 +504,35 @@ var ModularUIRequest = /*#__PURE__*/function () {
504
504
 
505
505
  return _Promise.resolve();
506
506
  }
507
+ /**
508
+ * Retrieve an object of key: link
509
+ */
510
+
511
+ }, {
512
+ key: "dataLinksPerName",
513
+ value: function dataLinksPerName(dataLinks) {
514
+ if (Array.isArray(dataLinks)) {
515
+ var links = {};
516
+
517
+ var _iterator2 = _createForOfIteratorHelper(dataLinks),
518
+ _step2;
519
+
520
+ try {
521
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
522
+ var dataLink = _step2.value;
523
+ links[dataLink.name] = dataLink;
524
+ }
525
+ } catch (err) {
526
+ _iterator2.e(err);
527
+ } finally {
528
+ _iterator2.f();
529
+ }
530
+
531
+ return links;
532
+ }
533
+
534
+ return dataLinks;
535
+ }
507
536
  /**
508
537
  * Check if links are empty and hide them when hide-when-empty hint exists
509
538
  */
@@ -511,53 +540,46 @@ var ModularUIRequest = /*#__PURE__*/function () {
511
540
  }, {
512
541
  key: "processLinks",
513
542
  value: function processLinks(dataLinks, contributionLinks) {
514
- var _this4 = this;
543
+ var linksPerName = this.dataLinksPerName(dataLinks);
515
544
 
516
- var isHiddenListChecks = [];
545
+ var hideWhenEmptyLinks = _filterInstanceProperty(contributionLinks).call(contributionLinks, function (contributionLink) {
546
+ var _contributionLink$lay;
517
547
 
518
- var _iterator2 = _createForOfIteratorHelper(contributionLinks),
519
- _step2;
548
+ return (_contributionLink$lay = contributionLink.layouthint) === null || _contributionLink$lay === void 0 ? void 0 : _includesInstanceProperty(_contributionLink$lay).call(_contributionLink$lay, HIDE_WHEN_EMPTY);
549
+ });
520
550
 
521
- try {
522
- var _loop2 = function _loop2() {
523
- var _contributionLink$lay;
551
+ var isHiddenListChecks = [];
524
552
 
525
- var contributionLink = _step2.value;
553
+ var _iterator3 = _createForOfIteratorHelper(hideWhenEmptyLinks),
554
+ _step3;
526
555
 
527
- if ((_contributionLink$lay = contributionLink.layouthint) !== null && _contributionLink$lay !== void 0 && _includesInstanceProperty(_contributionLink$lay).call(_contributionLink$lay, HIDE_WHEN_EMPTY)) {
528
- var dataLink = Array.isArray(dataLinks) ? _findInstanceProperty(dataLinks).call(dataLinks, function (link) {
529
- return link.name === contributionLink.name;
530
- }) : dataLinks[contributionLink.name];
556
+ try {
557
+ for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
558
+ var contributionLink = _step3.value;
559
+ var dataLink = linksPerName[contributionLink.name];
531
560
 
532
- if (dataLink !== null && dataLink !== void 0 && dataLink.href) {
533
- isHiddenListChecks.push(_this4.isHiddenList(contributionLink.name, dataLink.href));
534
- }
561
+ if (dataLink !== null && dataLink !== void 0 && dataLink.href) {
562
+ isHiddenListChecks.push(this.isHiddenList(contributionLink.name, dataLink.href));
535
563
  }
536
- };
537
-
538
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
539
- _loop2();
540
564
  }
541
565
  } catch (err) {
542
- _iterator2.e(err);
566
+ _iterator3.e(err);
543
567
  } finally {
544
- _iterator2.f();
568
+ _iterator3.f();
545
569
  }
546
570
 
547
571
  return _Promise.all(isHiddenListChecks).then(function (hiddenLinks) {
548
- var newDataLinks;
549
-
550
572
  if (Array.isArray(dataLinks)) {
551
- newDataLinks = _filterInstanceProperty(dataLinks).call(dataLinks, function (dataLink) {
573
+ return _filterInstanceProperty(dataLinks).call(dataLinks, function (dataLink) {
552
574
  return !_includesInstanceProperty(hiddenLinks).call(hiddenLinks, dataLink.name);
553
575
  });
554
- } else {
555
- newDataLinks = {};
576
+ }
556
577
 
557
- for (var dataLinkKey in dataLinks) {
558
- if (!_includesInstanceProperty(hiddenLinks).call(hiddenLinks, dataLinkKey)) {
559
- newDataLinks[dataLinkKey] = dataLinks[dataLinkKey];
560
- }
578
+ var newDataLinks = {};
579
+
580
+ for (var dataLinkKey in dataLinks) {
581
+ if (!_includesInstanceProperty(hiddenLinks).call(hiddenLinks, dataLinkKey)) {
582
+ newDataLinks[dataLinkKey] = dataLinks[dataLinkKey];
561
583
  }
562
584
  }
563
585
 
@@ -667,31 +689,31 @@ var ModularUIRequest = /*#__PURE__*/function () {
667
689
  }, {
668
690
  key: "fetch",
669
691
  value: function fetch() {
670
- var _this5 = this;
692
+ var _this4 = this;
671
693
 
672
694
  return this.fetchDataService().then(function (data) {
673
695
  if (data == null) {
674
- throw new Error("No data received for ".concat(_this5.href.toString()));
696
+ throw new Error("No data received for ".concat(_this4.href.toString()));
675
697
  }
676
698
 
677
- _this5.processDataService(data);
699
+ _this4.processDataService(data);
678
700
 
679
- return _this5.fetchContributionsService();
701
+ return _this4.fetchContributionsService();
680
702
  }).then(function (contributionsData) {
681
703
  if (contributionsData == null) {
682
- throw new Error("No contributions data received for ".concat(_this5.contributionsHref));
704
+ throw new Error("No contributions data received for ".concat(_this4.contributionsHref));
683
705
  }
684
706
 
685
- _this5.processContributionsService(contributionsData);
707
+ _this4.processContributionsService(contributionsData);
686
708
 
687
- return _this5.processAsyncLayoutHints();
709
+ return _this4.processAsyncLayoutHints();
688
710
  }).then(function () {
689
- return _Promise.resolve(_this5.createModel());
711
+ return _Promise.resolve(_this4.createModel());
690
712
  }).then(function (model) {
691
- return _this5.loadDynamicValidations(model);
713
+ return _this4.loadDynamicValidations(model);
692
714
  }).then(function (model) {
693
- if (_this5.withChildModels) {
694
- return _this5.fetchChildModels(model);
715
+ if (_this4.withChildModels) {
716
+ return _this4.fetchChildModels(model);
695
717
  }
696
718
 
697
719
  return _Promise.resolve(model);
@@ -714,13 +736,13 @@ var ModularUIRequest = /*#__PURE__*/function () {
714
736
  }, {
715
737
  key: "fetchChildModels",
716
738
  value: function fetchChildModels(model) {
717
- var _this6 = this;
739
+ var _this5 = this;
718
740
 
719
741
  var childModelLinks = model.getInitialChildModelLinks();
720
742
 
721
743
  var childModelRequests = _mapInstanceProperty(childModelLinks).call(childModelLinks, function (childModelLink) {
722
744
  var request = new ModularUIRequest(childModelLink.href, {
723
- locale: _this6.locale
745
+ locale: _this5.locale
724
746
  });
725
747
 
726
748
  if (childModelLink.targetModel) {
@@ -757,11 +779,11 @@ var ModularUIRequest = /*#__PURE__*/function () {
757
779
  }, {
758
780
  key: "fetchContent",
759
781
  value: function fetchContent(withChildSections) {
760
- var _this7 = this;
782
+ var _this6 = this;
761
783
 
762
784
  return this.fetchFromCache().then(function (model) {
763
785
  if (withChildSections && model instanceof ContentModel && model.childSectionLinks.length > 0) {
764
- return _this7.fetchContentChildSections(model);
786
+ return _this6.fetchContentChildSections(model);
765
787
  }
766
788
 
767
789
  return _Promise.resolve(model);
@@ -775,13 +797,13 @@ var ModularUIRequest = /*#__PURE__*/function () {
775
797
  key: "fetchContentChildSections",
776
798
  value: function fetchContentChildSections(contentModel) {
777
799
  var _context8,
778
- _this8 = this;
800
+ _this7 = this;
779
801
 
780
802
  var newContentModel = contentModel.clone();
781
803
  return _Promise.all(_mapInstanceProperty(_context8 = contentModel.childSectionLinks).call(_context8, function (childSectionLink) {
782
804
  var contentHrefWithEntryDate = childSectionLink.selfhref.addParameter(TIMEVERSION_FILTER_NAME, contentModel.entryDate);
783
805
  var request = new ModularUIRequest(contentHrefWithEntryDate, {
784
- locale: _this8.locale
806
+ locale: _this7.locale
785
807
  });
786
808
  return request.fetchContent(true);
787
809
  })).then(function (sectionModels) {