@beinformed/ui 1.57.1 → 1.57.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 (436) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/esm/constants/Settings.js +14 -6
  3. package/esm/constants/Settings.js.map +1 -1
  4. package/esm/hooks/useAuthentication.js +3 -3
  5. package/esm/hooks/useAuthentication.js.map +1 -1
  6. package/esm/hooks/useModelCatalog.js.map +1 -1
  7. package/esm/hooks/useModularUI.js +9 -8
  8. package/esm/hooks/useModularUI.js.map +1 -1
  9. package/esm/hooks/useModularUIBasic.js +2 -4
  10. package/esm/hooks/useModularUIBasic.js.map +1 -1
  11. package/esm/hooks/useModularUIModel.js.map +1 -1
  12. package/esm/models/actions/ActionCollection.js +2 -3
  13. package/esm/models/actions/ActionCollection.js.map +1 -1
  14. package/esm/models/actions/ActionModel.js +13 -23
  15. package/esm/models/actions/ActionModel.js.map +1 -1
  16. package/esm/models/application/ApplicationModel.js +1 -1
  17. package/esm/models/application/ApplicationModel.js.map +1 -1
  18. package/esm/models/attributes/AttributeCollection.js +6 -3
  19. package/esm/models/attributes/AttributeCollection.js.map +1 -1
  20. package/esm/models/attributes/AttributeModel.js +3 -3
  21. package/esm/models/attributes/AttributeModel.js.map +1 -1
  22. package/esm/models/attributes/AttributeSetModel.js +7 -4
  23. package/esm/models/attributes/AttributeSetModel.js.map +1 -1
  24. package/esm/models/attributes/BooleanAttributeModel.js +6 -3
  25. package/esm/models/attributes/BooleanAttributeModel.js.map +1 -1
  26. package/esm/models/attributes/ChoiceAttributeModel.js +6 -3
  27. package/esm/models/attributes/ChoiceAttributeModel.js.map +1 -1
  28. package/esm/models/attributes/ChoiceAttributeOptionCollection.js +18 -14
  29. package/esm/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
  30. package/esm/models/attributes/ChoiceAttributeOptionModel.js +17 -10
  31. package/esm/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
  32. package/esm/models/attributes/CompositeAttributeChildCollection.js +7 -7
  33. package/esm/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
  34. package/esm/models/attributes/CompositeAttributeModel.js +3 -3
  35. package/esm/models/attributes/CompositeAttributeModel.js.map +1 -1
  36. package/esm/models/attributes/DatetimeAttributeModel.js +2 -2
  37. package/esm/models/attributes/DatetimeAttributeModel.js.map +1 -1
  38. package/esm/models/attributes/StringAttributeModel.js +2 -2
  39. package/esm/models/attributes/StringAttributeModel.js.map +1 -1
  40. package/esm/models/attributes/_createAttribute.js +2 -2
  41. package/esm/models/attributes/_createAttribute.js.map +1 -1
  42. package/esm/models/base/BaseModel.js +27 -1
  43. package/esm/models/base/BaseModel.js.map +1 -1
  44. package/esm/models/base/ResourceModel.js +3 -23
  45. package/esm/models/base/ResourceModel.js.map +1 -1
  46. package/esm/models/caseview/CaseViewModel.js +1 -1
  47. package/esm/models/caseview/CaseViewModel.js.map +1 -1
  48. package/esm/models/concepts/ConceptDetailModel.js +2 -2
  49. package/esm/models/concepts/ConceptDetailModel.js.map +1 -1
  50. package/esm/models/concepts/ConceptIndexModel.js +2 -2
  51. package/esm/models/concepts/ConceptIndexModel.js.map +1 -1
  52. package/esm/models/concepts/ConceptLinkModel.js +4 -10
  53. package/esm/models/concepts/ConceptLinkModel.js.map +1 -1
  54. package/esm/models/concepts/ConceptRelationCollection.js +11 -4
  55. package/esm/models/concepts/ConceptRelationCollection.js.map +1 -1
  56. package/esm/models/concepts/ConceptRelationModel.js +8 -1
  57. package/esm/models/concepts/ConceptRelationModel.js.map +1 -1
  58. package/esm/models/concepts/SourceReferenceCollection.js +2 -4
  59. package/esm/models/concepts/SourceReferenceCollection.js.map +1 -1
  60. package/esm/models/concepts/SourceReferenceModel.js +9 -10
  61. package/esm/models/concepts/SourceReferenceModel.js.map +1 -1
  62. package/esm/models/content/ContentIndexModel.js +2 -2
  63. package/esm/models/content/ContentIndexModel.js.map +1 -1
  64. package/esm/models/content/ContentLinkModel.js +4 -11
  65. package/esm/models/content/ContentLinkModel.js.map +1 -1
  66. package/esm/models/content/ContentModel.js +2 -2
  67. package/esm/models/content/ContentModel.js.map +1 -1
  68. package/esm/models/content/ContentTOCModel.js +7 -7
  69. package/esm/models/content/ContentTOCModel.js.map +1 -1
  70. package/esm/models/content/SectionModel.js +6 -12
  71. package/esm/models/content/SectionModel.js.map +1 -1
  72. package/esm/models/detail/DetailModel.js +9 -3
  73. package/esm/models/detail/DetailModel.js.map +1 -1
  74. package/esm/models/error/ErrorResponse.js +8 -10
  75. package/esm/models/error/ErrorResponse.js.map +1 -1
  76. package/esm/models/filters/AssignmentFilterModel.js +2 -2
  77. package/esm/models/filters/AssignmentFilterModel.js.map +1 -1
  78. package/esm/models/filters/BaseFilterModel.js +3 -3
  79. package/esm/models/filters/BaseFilterModel.js.map +1 -1
  80. package/esm/models/filters/ConceptIndexFilterModel.js +2 -3
  81. package/esm/models/filters/ConceptIndexFilterModel.js.map +1 -1
  82. package/esm/models/filters/FilterCollection.js +8 -7
  83. package/esm/models/filters/FilterCollection.js.map +1 -1
  84. package/esm/models/filters/StringFilterModel.js +2 -2
  85. package/esm/models/filters/StringFilterModel.js.map +1 -1
  86. package/esm/models/form/FormModel.js +4 -4
  87. package/esm/models/form/FormModel.js.map +1 -1
  88. package/esm/models/form/FormObjectModel.js +7 -4
  89. package/esm/models/form/FormObjectModel.js.map +1 -1
  90. package/esm/models/grouping/GroupingModel.js +10 -7
  91. package/esm/models/grouping/GroupingModel.js.map +1 -1
  92. package/esm/models/href/Href.js +9 -8
  93. package/esm/models/href/Href.js.map +1 -1
  94. package/esm/models/links/LinkCollection.js +2 -3
  95. package/esm/models/links/LinkCollection.js.map +1 -1
  96. package/esm/models/links/LinkModel.js +7 -7
  97. package/esm/models/links/LinkModel.js.map +1 -1
  98. package/esm/models/list/ListDetailModel.js +1 -1
  99. package/esm/models/list/ListDetailModel.js.map +1 -1
  100. package/esm/models/list/ListItemCollection.js +1 -1
  101. package/esm/models/list/ListItemCollection.js.map +1 -1
  102. package/esm/models/list/ListItemModel.js +3 -3
  103. package/esm/models/list/ListItemModel.js.map +1 -1
  104. package/esm/models/list/ListModel.js +3 -3
  105. package/esm/models/list/ListModel.js.map +1 -1
  106. package/esm/models/lookup/LookupOptionCollection.js +5 -2
  107. package/esm/models/lookup/LookupOptionCollection.js.map +1 -1
  108. package/esm/models/lookup/LookupOptionsModel.js +2 -2
  109. package/esm/models/lookup/LookupOptionsModel.js.map +1 -1
  110. package/esm/models/panels/GroupingPanelModel.js +1 -1
  111. package/esm/models/panels/GroupingPanelModel.js.map +1 -1
  112. package/esm/models/tab/TabModel.js +2 -2
  113. package/esm/models/tab/TabModel.js.map +1 -1
  114. package/esm/models/taskgroup/TaskGroupModel.js +4 -5
  115. package/esm/models/taskgroup/TaskGroupModel.js.map +1 -1
  116. package/esm/models/types.js.map +1 -1
  117. package/esm/models/user/UserProfileModel.js +4 -1
  118. package/esm/models/user/UserProfileModel.js.map +1 -1
  119. package/esm/modularui/CaptchaRequest.js +3 -3
  120. package/esm/modularui/CaptchaRequest.js.map +1 -1
  121. package/esm/modularui/ModularUIRequest.js +8 -5
  122. package/esm/modularui/ModularUIRequest.js.map +1 -1
  123. package/esm/modularui/ModularUIResponse.js +12 -3
  124. package/esm/modularui/ModularUIResponse.js.map +1 -1
  125. package/esm/modularui/UploadRequest.js +3 -3
  126. package/esm/modularui/UploadRequest.js.map +1 -1
  127. package/esm/react-client/client.js +3 -3
  128. package/esm/react-client/client.js.map +1 -1
  129. package/esm/react-server/renderSSRComplete.js +2 -2
  130. package/esm/react-server/renderSSRComplete.js.map +1 -1
  131. package/esm/react-server/renderSSRMinimal.js +2 -2
  132. package/esm/react-server/renderSSRMinimal.js.map +1 -1
  133. package/esm/redux/_modularui/ModularUIActions.js +8 -2
  134. package/esm/redux/_modularui/ModularUIActions.js.map +1 -1
  135. package/esm/redux/_modularui/ModularUIUtils.js +8 -11
  136. package/esm/redux/_modularui/ModularUIUtils.js.map +1 -1
  137. package/esm/utils/browser/Cookies.js +3 -3
  138. package/esm/utils/browser/Cookies.js.map +1 -1
  139. package/esm/utils/helpers/createHref.js +23 -3
  140. package/esm/utils/helpers/createHref.js.map +1 -1
  141. package/esm/utils/helpers/repositoryResource.js +2 -2
  142. package/esm/utils/helpers/repositoryResource.js.map +1 -1
  143. package/lib/constants/Settings.js +18 -8
  144. package/lib/constants/Settings.js.flow +16 -6
  145. package/lib/constants/Settings.js.map +1 -1
  146. package/lib/hooks/useAuthentication.js +2 -2
  147. package/lib/hooks/useAuthentication.js.flow +3 -3
  148. package/lib/hooks/useAuthentication.js.map +1 -1
  149. package/lib/hooks/useModelCatalog.js.flow +7 -6
  150. package/lib/hooks/useModelCatalog.js.map +1 -1
  151. package/lib/hooks/useModularUI.js +9 -8
  152. package/lib/hooks/useModularUI.js.flow +12 -9
  153. package/lib/hooks/useModularUI.js.map +1 -1
  154. package/lib/hooks/useModularUIBasic.js +2 -4
  155. package/lib/hooks/useModularUIBasic.js.flow +3 -4
  156. package/lib/hooks/useModularUIBasic.js.map +1 -1
  157. package/lib/hooks/useModularUIModel.js.flow +16 -11
  158. package/lib/hooks/useModularUIModel.js.map +1 -1
  159. package/lib/models/actions/ActionCollection.js +2 -2
  160. package/lib/models/actions/ActionCollection.js.flow +3 -8
  161. package/lib/models/actions/ActionCollection.js.map +1 -1
  162. package/lib/models/actions/ActionModel.js +12 -22
  163. package/lib/models/actions/ActionModel.js.flow +7 -24
  164. package/lib/models/actions/ActionModel.js.map +1 -1
  165. package/lib/models/application/ApplicationModel.js +1 -1
  166. package/lib/models/application/ApplicationModel.js.flow +1 -2
  167. package/lib/models/application/ApplicationModel.js.map +1 -1
  168. package/lib/models/attributes/AttributeCollection.js +6 -3
  169. package/lib/models/attributes/AttributeCollection.js.flow +12 -4
  170. package/lib/models/attributes/AttributeCollection.js.map +1 -1
  171. package/lib/models/attributes/AttributeModel.js +3 -3
  172. package/lib/models/attributes/AttributeModel.js.flow +8 -2
  173. package/lib/models/attributes/AttributeModel.js.map +1 -1
  174. package/lib/models/attributes/AttributeSetModel.js +7 -3
  175. package/lib/models/attributes/AttributeSetModel.js.flow +11 -3
  176. package/lib/models/attributes/AttributeSetModel.js.map +1 -1
  177. package/lib/models/attributes/BooleanAttributeModel.js +6 -3
  178. package/lib/models/attributes/BooleanAttributeModel.js.flow +8 -4
  179. package/lib/models/attributes/BooleanAttributeModel.js.map +1 -1
  180. package/lib/models/attributes/ChoiceAttributeModel.js +6 -3
  181. package/lib/models/attributes/ChoiceAttributeModel.js.flow +13 -4
  182. package/lib/models/attributes/ChoiceAttributeModel.js.map +1 -1
  183. package/lib/models/attributes/ChoiceAttributeOptionCollection.js +18 -13
  184. package/lib/models/attributes/ChoiceAttributeOptionCollection.js.flow +30 -28
  185. package/lib/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
  186. package/lib/models/attributes/ChoiceAttributeOptionModel.js +17 -10
  187. package/lib/models/attributes/ChoiceAttributeOptionModel.js.flow +30 -11
  188. package/lib/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
  189. package/lib/models/attributes/CompositeAttributeChildCollection.js +7 -7
  190. package/lib/models/attributes/CompositeAttributeChildCollection.js.flow +8 -1
  191. package/lib/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
  192. package/lib/models/attributes/CompositeAttributeModel.js +3 -3
  193. package/lib/models/attributes/CompositeAttributeModel.js.flow +8 -3
  194. package/lib/models/attributes/CompositeAttributeModel.js.map +1 -1
  195. package/lib/models/attributes/DatetimeAttributeModel.js +2 -2
  196. package/lib/models/attributes/DatetimeAttributeModel.js.flow +7 -2
  197. package/lib/models/attributes/DatetimeAttributeModel.js.map +1 -1
  198. package/lib/models/attributes/StringAttributeModel.js +2 -2
  199. package/lib/models/attributes/StringAttributeModel.js.flow +7 -3
  200. package/lib/models/attributes/StringAttributeModel.js.map +1 -1
  201. package/lib/models/attributes/__tests__/ChoiceAttributeOptionModel.spec.js.flow +1 -1
  202. package/lib/models/attributes/_createAttribute.js +2 -2
  203. package/lib/models/attributes/_createAttribute.js.flow +3 -2
  204. package/lib/models/attributes/_createAttribute.js.map +1 -1
  205. package/lib/models/base/BaseModel.js +27 -1
  206. package/lib/models/base/BaseModel.js.flow +31 -1
  207. package/lib/models/base/BaseModel.js.map +1 -1
  208. package/lib/models/base/ResourceModel.js +3 -22
  209. package/lib/models/base/ResourceModel.js.flow +6 -23
  210. package/lib/models/base/ResourceModel.js.map +1 -1
  211. package/lib/models/base/__tests__/BaseModel.spec.js.flow +4 -0
  212. package/lib/models/caseview/CaseViewModel.js +1 -1
  213. package/lib/models/caseview/CaseViewModel.js.flow +1 -2
  214. package/lib/models/caseview/CaseViewModel.js.map +1 -1
  215. package/lib/models/concepts/ConceptDetailModel.js +2 -2
  216. package/lib/models/concepts/ConceptDetailModel.js.flow +2 -2
  217. package/lib/models/concepts/ConceptDetailModel.js.map +1 -1
  218. package/lib/models/concepts/ConceptIndexModel.js +2 -2
  219. package/lib/models/concepts/ConceptIndexModel.js.flow +9 -6
  220. package/lib/models/concepts/ConceptIndexModel.js.map +1 -1
  221. package/lib/models/concepts/ConceptLinkModel.js +4 -10
  222. package/lib/models/concepts/ConceptLinkModel.js.flow +15 -12
  223. package/lib/models/concepts/ConceptLinkModel.js.map +1 -1
  224. package/lib/models/concepts/ConceptRelationCollection.js +11 -4
  225. package/lib/models/concepts/ConceptRelationCollection.js.flow +17 -3
  226. package/lib/models/concepts/ConceptRelationCollection.js.map +1 -1
  227. package/lib/models/concepts/ConceptRelationModel.js +8 -1
  228. package/lib/models/concepts/ConceptRelationModel.js.flow +18 -2
  229. package/lib/models/concepts/ConceptRelationModel.js.map +1 -1
  230. package/lib/models/concepts/SourceReferenceCollection.js +2 -3
  231. package/lib/models/concepts/SourceReferenceCollection.js.flow +3 -8
  232. package/lib/models/concepts/SourceReferenceCollection.js.map +1 -1
  233. package/lib/models/concepts/SourceReferenceModel.js +8 -8
  234. package/lib/models/concepts/SourceReferenceModel.js.flow +10 -11
  235. package/lib/models/concepts/SourceReferenceModel.js.map +1 -1
  236. package/lib/models/content/ContentIndexModel.js +2 -2
  237. package/lib/models/content/ContentIndexModel.js.flow +10 -5
  238. package/lib/models/content/ContentIndexModel.js.map +1 -1
  239. package/lib/models/content/ContentLinkModel.js +4 -10
  240. package/lib/models/content/ContentLinkModel.js.flow +10 -13
  241. package/lib/models/content/ContentLinkModel.js.map +1 -1
  242. package/lib/models/content/ContentModel.js +2 -2
  243. package/lib/models/content/ContentModel.js.flow +6 -1
  244. package/lib/models/content/ContentModel.js.map +1 -1
  245. package/lib/models/content/ContentTOCModel.js +7 -7
  246. package/lib/models/content/ContentTOCModel.js.flow +19 -11
  247. package/lib/models/content/ContentTOCModel.js.map +1 -1
  248. package/lib/models/content/SectionModel.js +6 -11
  249. package/lib/models/content/SectionModel.js.flow +9 -21
  250. package/lib/models/content/SectionModel.js.map +1 -1
  251. package/lib/models/detail/DetailModel.js +9 -3
  252. package/lib/models/detail/DetailModel.js.flow +3 -4
  253. package/lib/models/detail/DetailModel.js.map +1 -1
  254. package/lib/models/error/ErrorResponse.js +7 -9
  255. package/lib/models/error/ErrorResponse.js.flow +9 -20
  256. package/lib/models/error/ErrorResponse.js.map +1 -1
  257. package/lib/models/filters/AssignmentFilterModel.js +2 -2
  258. package/lib/models/filters/AssignmentFilterModel.js.flow +7 -3
  259. package/lib/models/filters/AssignmentFilterModel.js.map +1 -1
  260. package/lib/models/filters/BaseFilterModel.js +3 -3
  261. package/lib/models/filters/BaseFilterModel.js.flow +16 -7
  262. package/lib/models/filters/BaseFilterModel.js.map +1 -1
  263. package/lib/models/filters/ConceptIndexFilterModel.js +2 -2
  264. package/lib/models/filters/ConceptIndexFilterModel.js.flow +8 -2
  265. package/lib/models/filters/ConceptIndexFilterModel.js.map +1 -1
  266. package/lib/models/filters/FilterCollection.js +8 -7
  267. package/lib/models/filters/FilterCollection.js.flow +13 -7
  268. package/lib/models/filters/FilterCollection.js.map +1 -1
  269. package/lib/models/filters/StringFilterModel.js +2 -2
  270. package/lib/models/filters/StringFilterModel.js.flow +7 -3
  271. package/lib/models/filters/StringFilterModel.js.map +1 -1
  272. package/lib/models/form/FormModel.js +4 -4
  273. package/lib/models/form/FormModel.js.flow +8 -2
  274. package/lib/models/form/FormModel.js.map +1 -1
  275. package/lib/models/form/FormObjectModel.js +7 -4
  276. package/lib/models/form/FormObjectModel.js.flow +17 -4
  277. package/lib/models/form/FormObjectModel.js.map +1 -1
  278. package/lib/models/grouping/GroupingModel.js +10 -7
  279. package/lib/models/grouping/GroupingModel.js.flow +21 -5
  280. package/lib/models/grouping/GroupingModel.js.map +1 -1
  281. package/lib/models/href/Href.js +8 -7
  282. package/lib/models/href/Href.js.flow +17 -10
  283. package/lib/models/href/Href.js.map +1 -1
  284. package/lib/models/href/__tests__/Href.spec.js.flow +5 -8
  285. package/lib/models/links/LinkCollection.js +2 -3
  286. package/lib/models/links/LinkCollection.js.flow +3 -3
  287. package/lib/models/links/LinkCollection.js.map +1 -1
  288. package/lib/models/links/LinkModel.js +7 -7
  289. package/lib/models/links/LinkModel.js.flow +8 -15
  290. package/lib/models/links/LinkModel.js.map +1 -1
  291. package/lib/models/list/ListDetailModel.js +1 -1
  292. package/lib/models/list/ListDetailModel.js.flow +6 -1
  293. package/lib/models/list/ListDetailModel.js.map +1 -1
  294. package/lib/models/list/ListItemCollection.js +1 -1
  295. package/lib/models/list/ListItemCollection.js.flow +1 -2
  296. package/lib/models/list/ListItemCollection.js.map +1 -1
  297. package/lib/models/list/ListItemModel.js +3 -3
  298. package/lib/models/list/ListItemModel.js.flow +4 -4
  299. package/lib/models/list/ListItemModel.js.map +1 -1
  300. package/lib/models/list/ListModel.js +3 -3
  301. package/lib/models/list/ListModel.js.flow +12 -8
  302. package/lib/models/list/ListModel.js.map +1 -1
  303. package/lib/models/lookup/LookupOptionCollection.js +5 -1
  304. package/lib/models/lookup/LookupOptionCollection.js.flow +17 -6
  305. package/lib/models/lookup/LookupOptionCollection.js.map +1 -1
  306. package/lib/models/lookup/LookupOptionsModel.js +2 -2
  307. package/lib/models/lookup/LookupOptionsModel.js.flow +2 -0
  308. package/lib/models/lookup/LookupOptionsModel.js.map +1 -1
  309. package/lib/models/panels/GroupingPanelModel.js +1 -1
  310. package/lib/models/panels/GroupingPanelModel.js.flow +1 -2
  311. package/lib/models/panels/GroupingPanelModel.js.map +1 -1
  312. package/lib/models/tab/TabModel.js +2 -2
  313. package/lib/models/tab/TabModel.js.flow +2 -4
  314. package/lib/models/tab/TabModel.js.map +1 -1
  315. package/lib/models/taskgroup/TaskGroupModel.js +4 -4
  316. package/lib/models/taskgroup/TaskGroupModel.js.flow +5 -6
  317. package/lib/models/taskgroup/TaskGroupModel.js.map +1 -1
  318. package/lib/models/types.js.flow +5 -0
  319. package/lib/models/types.js.map +1 -1
  320. package/lib/models/user/UserProfileModel.js +4 -1
  321. package/lib/models/user/UserProfileModel.js.flow +1 -0
  322. package/lib/models/user/UserProfileModel.js.map +1 -1
  323. package/lib/modularui/CaptchaRequest.js +2 -2
  324. package/lib/modularui/CaptchaRequest.js.flow +7 -3
  325. package/lib/modularui/CaptchaRequest.js.map +1 -1
  326. package/lib/modularui/ModularUIRequest.js +7 -4
  327. package/lib/modularui/ModularUIRequest.js.flow +8 -5
  328. package/lib/modularui/ModularUIRequest.js.map +1 -1
  329. package/lib/modularui/ModularUIResponse.js +11 -2
  330. package/lib/modularui/ModularUIResponse.js.flow +13 -3
  331. package/lib/modularui/ModularUIResponse.js.map +1 -1
  332. package/lib/modularui/UploadRequest.js +2 -2
  333. package/lib/modularui/UploadRequest.js.flow +7 -3
  334. package/lib/modularui/UploadRequest.js.map +1 -1
  335. package/lib/react-client/client.js +2 -2
  336. package/lib/react-client/client.js.flow +7 -3
  337. package/lib/react-client/client.js.map +1 -1
  338. package/lib/react-server/renderSSRComplete.js +1 -1
  339. package/lib/react-server/renderSSRComplete.js.flow +2 -2
  340. package/lib/react-server/renderSSRComplete.js.map +1 -1
  341. package/lib/react-server/renderSSRMinimal.js +1 -1
  342. package/lib/react-server/renderSSRMinimal.js.flow +2 -2
  343. package/lib/react-server/renderSSRMinimal.js.map +1 -1
  344. package/lib/redux/_modularui/ModularUIActions.js +8 -2
  345. package/lib/redux/_modularui/ModularUIActions.js.flow +8 -7
  346. package/lib/redux/_modularui/ModularUIActions.js.map +1 -1
  347. package/lib/redux/_modularui/ModularUIUtils.js +8 -11
  348. package/lib/redux/_modularui/ModularUIUtils.js.flow +13 -14
  349. package/lib/redux/_modularui/ModularUIUtils.js.map +1 -1
  350. package/lib/utils/browser/Cookies.js +2 -2
  351. package/lib/utils/browser/Cookies.js.flow +3 -3
  352. package/lib/utils/browser/Cookies.js.map +1 -1
  353. package/lib/utils/helpers/__tests__/createHref.spec.js.flow +13 -8
  354. package/lib/utils/helpers/createHref.js +23 -3
  355. package/lib/utils/helpers/createHref.js.flow +37 -8
  356. package/lib/utils/helpers/createHref.js.map +1 -1
  357. package/lib/utils/helpers/repositoryResource.js +1 -1
  358. package/lib/utils/helpers/repositoryResource.js.flow +2 -2
  359. package/lib/utils/helpers/repositoryResource.js.map +1 -1
  360. package/package.json +4 -4
  361. package/src/constants/Settings.js +16 -6
  362. package/src/hooks/useAuthentication.js +3 -3
  363. package/src/hooks/useModelCatalog.js +7 -6
  364. package/src/hooks/useModularUI.js +12 -9
  365. package/src/hooks/useModularUIBasic.js +3 -4
  366. package/src/hooks/useModularUIModel.js +16 -11
  367. package/src/models/actions/ActionCollection.js +3 -8
  368. package/src/models/actions/ActionModel.js +7 -24
  369. package/src/models/application/ApplicationModel.js +1 -2
  370. package/src/models/attributes/AttributeCollection.js +12 -4
  371. package/src/models/attributes/AttributeModel.js +8 -2
  372. package/src/models/attributes/AttributeSetModel.js +11 -3
  373. package/src/models/attributes/BooleanAttributeModel.js +8 -4
  374. package/src/models/attributes/ChoiceAttributeModel.js +13 -4
  375. package/src/models/attributes/ChoiceAttributeOptionCollection.js +30 -28
  376. package/src/models/attributes/ChoiceAttributeOptionModel.js +30 -11
  377. package/src/models/attributes/CompositeAttributeChildCollection.js +8 -1
  378. package/src/models/attributes/CompositeAttributeModel.js +8 -3
  379. package/src/models/attributes/DatetimeAttributeModel.js +7 -2
  380. package/src/models/attributes/StringAttributeModel.js +7 -3
  381. package/src/models/attributes/__tests__/ChoiceAttributeOptionModel.spec.js +1 -1
  382. package/src/models/attributes/_createAttribute.js +3 -2
  383. package/src/models/base/BaseModel.js +31 -1
  384. package/src/models/base/ResourceModel.js +6 -23
  385. package/src/models/base/__tests__/BaseModel.spec.js +4 -0
  386. package/src/models/caseview/CaseViewModel.js +1 -2
  387. package/src/models/concepts/ConceptDetailModel.js +2 -2
  388. package/src/models/concepts/ConceptIndexModel.js +9 -6
  389. package/src/models/concepts/ConceptLinkModel.js +15 -12
  390. package/src/models/concepts/ConceptRelationCollection.js +17 -3
  391. package/src/models/concepts/ConceptRelationModel.js +18 -2
  392. package/src/models/concepts/SourceReferenceCollection.js +3 -8
  393. package/src/models/concepts/SourceReferenceModel.js +10 -11
  394. package/src/models/content/ContentIndexModel.js +10 -5
  395. package/src/models/content/ContentLinkModel.js +10 -13
  396. package/src/models/content/ContentModel.js +6 -1
  397. package/src/models/content/ContentTOCModel.js +19 -11
  398. package/src/models/content/SectionModel.js +9 -21
  399. package/src/models/detail/DetailModel.js +3 -4
  400. package/src/models/error/ErrorResponse.js +9 -20
  401. package/src/models/filters/AssignmentFilterModel.js +7 -3
  402. package/src/models/filters/BaseFilterModel.js +16 -7
  403. package/src/models/filters/ConceptIndexFilterModel.js +8 -2
  404. package/src/models/filters/FilterCollection.js +13 -7
  405. package/src/models/filters/StringFilterModel.js +7 -3
  406. package/src/models/form/FormModel.js +8 -2
  407. package/src/models/form/FormObjectModel.js +17 -4
  408. package/src/models/grouping/GroupingModel.js +21 -5
  409. package/src/models/href/Href.js +17 -10
  410. package/src/models/href/__tests__/Href.spec.js +5 -8
  411. package/src/models/links/LinkCollection.js +3 -3
  412. package/src/models/links/LinkModel.js +8 -15
  413. package/src/models/list/ListDetailModel.js +6 -1
  414. package/src/models/list/ListItemCollection.js +1 -2
  415. package/src/models/list/ListItemModel.js +4 -4
  416. package/src/models/list/ListModel.js +12 -8
  417. package/src/models/lookup/LookupOptionCollection.js +17 -6
  418. package/src/models/lookup/LookupOptionsModel.js +2 -0
  419. package/src/models/panels/GroupingPanelModel.js +1 -2
  420. package/src/models/tab/TabModel.js +2 -4
  421. package/src/models/taskgroup/TaskGroupModel.js +5 -6
  422. package/src/models/types.js +5 -0
  423. package/src/models/user/UserProfileModel.js +1 -0
  424. package/src/modularui/CaptchaRequest.js +7 -3
  425. package/src/modularui/ModularUIRequest.js +8 -5
  426. package/src/modularui/ModularUIResponse.js +13 -3
  427. package/src/modularui/UploadRequest.js +7 -3
  428. package/src/react-client/client.js +7 -3
  429. package/src/react-server/renderSSRComplete.js +2 -2
  430. package/src/react-server/renderSSRMinimal.js +2 -2
  431. package/src/redux/_modularui/ModularUIActions.js +8 -7
  432. package/src/redux/_modularui/ModularUIUtils.js +13 -14
  433. package/src/utils/browser/Cookies.js +3 -3
  434. package/src/utils/helpers/__tests__/createHref.spec.js +13 -8
  435. package/src/utils/helpers/createHref.js +37 -8
  436. package/src/utils/helpers/repositoryResource.js +2 -2
@@ -28,20 +28,20 @@ class LinkModel extends _BaseModel.default {
28
28
  /**
29
29
  * Create a Link
30
30
  */
31
- constructor(data, contributions, origin, contextPath) {
32
- super(data, contributions);
31
+ constructor(data, contributions, modelOptions) {
32
+ super(data, contributions, modelOptions);
33
33
  (0, _defineProperty2.default)(this, "_href", void 0);
34
34
  (0, _defineProperty2.default)(this, "_isCacheable", void 0);
35
35
  (0, _defineProperty2.default)(this, "_icon", void 0);
36
36
  (0, _defineProperty2.default)(this, "_targetModel", void 0);
37
- this.createHref(origin, contextPath);
37
+ this.createHref(modelOptions);
38
38
  this._isCacheable = false;
39
39
  }
40
40
 
41
41
  /**
42
42
  * Create a simple Link Model
43
43
  */
44
- static create(name, href, label, origin, contextPath) {
44
+ static create(name, href, label, modelOptions) {
45
45
  const data = {
46
46
  name,
47
47
  href
@@ -49,13 +49,13 @@ class LinkModel extends _BaseModel.default {
49
49
  const contributions = {
50
50
  label
51
51
  };
52
- return new LinkModel(data, contributions, origin, contextPath);
52
+ return new LinkModel(data, contributions, modelOptions);
53
53
  }
54
54
 
55
55
  /**
56
56
  */
57
- createHref(origin, contextPath) {
58
- const href = new _Href.default(this.data.href, this.resourcetype, origin, contextPath);
57
+ createHref(modelOptions) {
58
+ const href = new _Href.default(this.data.href, this.resourcetype, modelOptions);
59
59
  this.handleInitialFilters(href);
60
60
  this.href = href;
61
61
  }
@@ -7,7 +7,7 @@ import Href from "../href/Href";
7
7
  import LinkCollection from "../links/LinkCollection";
8
8
  import { INITIAL_FILTER } from "../../constants/LayoutHints";
9
9
 
10
- import type { ModularUIModel } from "../types";
10
+ import type { ModelOptions, ModularUIModel } from "../types";
11
11
  import Parameter from "../parameter/Parameter";
12
12
 
13
13
  /**
@@ -30,12 +30,11 @@ class LinkModel extends BaseModel {
30
30
  constructor(
31
31
  data: Object,
32
32
  contributions: Object,
33
- origin?: string,
34
- contextPath?: string,
33
+ modelOptions?: ModelOptions,
35
34
  ) {
36
- super(data, contributions);
35
+ super(data, contributions, modelOptions);
37
36
 
38
- this.createHref(origin, contextPath);
37
+ this.createHref(modelOptions);
39
38
 
40
39
  this._isCacheable = false;
41
40
  }
@@ -47,23 +46,17 @@ class LinkModel extends BaseModel {
47
46
  name: string,
48
47
  href: string | Href,
49
48
  label: string,
50
- origin?: string,
51
- contextPath?: string,
49
+ modelOptions?: ModelOptions,
52
50
  ): LinkModel {
53
51
  const data = { name, href };
54
52
  const contributions = { label };
55
- return new LinkModel(data, contributions, origin, contextPath);
53
+ return new LinkModel(data, contributions, modelOptions);
56
54
  }
57
55
 
58
56
  /**
59
57
  */
60
- createHref(origin?: string, contextPath?: string) {
61
- const href = new Href(
62
- this.data.href,
63
- this.resourcetype,
64
- origin,
65
- contextPath,
66
- );
58
+ createHref(modelOptions: ?ModelOptions) {
59
+ const href = new Href(this.data.href, this.resourcetype, modelOptions);
67
60
  this.handleInitialFilters(href);
68
61
 
69
62
  this.href = href;
@@ -1 +1 @@
1
- {"version":3,"file":"LinkModel.js","names":["_objects","require","_ProcessStatusSettingsModel","_interopRequireDefault","_BaseModel","_Href","_LinkCollection","_LayoutHints","_Parameter","LinkModel","BaseModel","constructor","data","contributions","origin","contextPath","_defineProperty2","default","createHref","_isCacheable","create","name","href","label","Href","resourcetype","handleInitialFilters","layouthint","has","INITIAL_FILTER","_context","filters","_filter","call","hint","_startsWith","forEach","param","substr","length","p","Parameter","fromString","value","push","_keys","key","join","addParameter","group","getContribution","_href","links","components","LinkCollection","isActive","link","_context2","icon","_icon","targetModel","_targetModel","isCacheable","filterName","hasProcessStatusSettings","processStatus","ProcessStatusSettingsModel","getData","_default","exports"],"sources":["../../../src/models/links/LinkModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ProcessStatusSettingsModel from \"../process/ProcessStatusSettingsModel\";\nimport BaseModel from \"../base/BaseModel\";\nimport Href from \"../href/Href\";\nimport LinkCollection from \"../links/LinkCollection\";\nimport { INITIAL_FILTER } from \"../../constants/LayoutHints\";\n\nimport type { ModularUIModel } from \"../types\";\nimport Parameter from \"../parameter/Parameter\";\n\n/**\n * Defines a Link. For instance below example of a link to the tab 'books'\n * <br/>\n * \"Books\": {\n * \"href\": \"/books\",\n * \"profile\": \"/profiles/tab\"\n * }\n */\nclass LinkModel extends BaseModel {\n _href: Href;\n _isCacheable: boolean;\n _icon: string;\n _targetModel: ?Class<ModularUIModel>;\n\n /**\n * Create a Link\n */\n constructor(\n data: Object,\n contributions: Object,\n origin?: string,\n contextPath?: string,\n ) {\n super(data, contributions);\n\n this.createHref(origin, contextPath);\n\n this._isCacheable = false;\n }\n\n /**\n * Create a simple Link Model\n */\n static create(\n name: string,\n href: string | Href,\n label: string,\n origin?: string,\n contextPath?: string,\n ): LinkModel {\n const data = { name, href };\n const contributions = { label };\n return new LinkModel(data, contributions, origin, contextPath);\n }\n\n /**\n */\n createHref(origin?: string, contextPath?: string) {\n const href = new Href(\n this.data.href,\n this.resourcetype,\n origin,\n contextPath,\n );\n this.handleInitialFilters(href);\n\n this.href = href;\n }\n\n /**\n * Handle initial filter hints\n * @param href\n */\n handleInitialFilters(href: Href) {\n if (this.layouthint.has(INITIAL_FILTER)) {\n const filters: { [string]: Array<string> } = {};\n this.layouthint\n .filter((hint) => hint.startsWith(INITIAL_FILTER))\n .forEach((hint) => {\n const param = hint.substr(INITIAL_FILTER.length);\n const p = Parameter.fromString(param);\n\n if (p != null) {\n if (!filters[p.name]) {\n filters[p.name] = [];\n }\n\n if (p.value != null) {\n filters[p.name].push(p.value);\n }\n }\n });\n\n Object.keys(filters).forEach((key) => {\n const value = filters[key].join(\",\");\n href.addParameter(key, value);\n });\n }\n }\n\n /**\n * Getting link group\n */\n get group(): string {\n return this.getContribution(\"group\", this.data.group);\n }\n\n /**\n * Getting the key/name of this link\n */\n get key(): string {\n return this.data.name;\n }\n\n /**\n * Retrieve the href of the link\n */\n get href(): Href {\n return this._href;\n }\n\n /**\n * Set the href of the Link\n */\n set href(href: Href) {\n this._href = href;\n }\n\n /**\n * Getting the label of the link\n */\n get label(): string {\n return this.getContribution(\"label\", this.key);\n }\n\n /**\n * Getting the type of the link\n */\n get resourcetype(): string {\n return this.getContribution(\"resourcetype\", \"\");\n }\n\n /**\n */\n get links(): LinkCollection {\n if (this.data.components) {\n return new LinkCollection(\n { components: this.data.components },\n { components: this.contributions.components },\n );\n }\n\n return new LinkCollection();\n }\n\n /**\n * Check if the href startswith the URI of the given href\n */\n isActive(link: ?LinkModel): boolean {\n if (link) {\n return link.href.startsWith(this.href);\n }\n\n return false;\n }\n\n /**\n * Setter for icon of LinkModel\n */\n set icon(icon: string) {\n this._icon = icon;\n }\n\n /**\n * Retrieve icon of LinkModel\n */\n get icon(): string {\n return this._icon;\n }\n\n /**\n */\n get targetModel(): ?Class<ModularUIModel> {\n return this._targetModel;\n }\n\n /**\n */\n set targetModel(targetModel: Class<ModularUIModel>) {\n this._targetModel = targetModel;\n }\n\n /**\n */\n get isCacheable(): boolean {\n return this._isCacheable;\n }\n\n /**\n */\n set isCacheable(isCacheable: boolean) {\n this._isCacheable = isCacheable;\n }\n\n /**\n */\n get filterName(): string {\n return this.data.filter.name;\n }\n\n /**\n */\n get hasProcessStatusSettings(): boolean {\n return (\n has(this.data, \"processStatus\") &&\n has(this.contributions, \"processStatus\")\n );\n }\n\n /**\n */\n get processStatus(): ProcessStatusSettingsModel | null {\n if (this.hasProcessStatusSettings) {\n return new ProcessStatusSettingsModel(\n this.getData(\"processStatus\", {}),\n this.getContribution(\"processStatus\", {}),\n );\n }\n\n return null;\n }\n}\n\nexport default LinkModel;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"LinkModel.js","names":["_objects","require","_ProcessStatusSettingsModel","_interopRequireDefault","_BaseModel","_Href","_LinkCollection","_LayoutHints","_Parameter","LinkModel","BaseModel","constructor","data","contributions","modelOptions","_defineProperty2","default","createHref","_isCacheable","create","name","href","label","Href","resourcetype","handleInitialFilters","layouthint","has","INITIAL_FILTER","_context","filters","_filter","call","hint","_startsWith","forEach","param","substr","length","p","Parameter","fromString","value","push","_keys","key","join","addParameter","group","getContribution","_href","links","components","LinkCollection","isActive","link","_context2","icon","_icon","targetModel","_targetModel","isCacheable","filterName","hasProcessStatusSettings","processStatus","ProcessStatusSettingsModel","getData","_default","exports"],"sources":["../../../src/models/links/LinkModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ProcessStatusSettingsModel from \"../process/ProcessStatusSettingsModel\";\nimport BaseModel from \"../base/BaseModel\";\nimport Href from \"../href/Href\";\nimport LinkCollection from \"../links/LinkCollection\";\nimport { INITIAL_FILTER } from \"../../constants/LayoutHints\";\n\nimport type { ModelOptions, ModularUIModel } from \"../types\";\nimport Parameter from \"../parameter/Parameter\";\n\n/**\n * Defines a Link. For instance below example of a link to the tab 'books'\n * <br/>\n * \"Books\": {\n * \"href\": \"/books\",\n * \"profile\": \"/profiles/tab\"\n * }\n */\nclass LinkModel extends BaseModel {\n _href: Href;\n _isCacheable: boolean;\n _icon: string;\n _targetModel: ?Class<ModularUIModel>;\n\n /**\n * Create a Link\n */\n constructor(\n data: Object,\n contributions: Object,\n modelOptions?: ModelOptions,\n ) {\n super(data, contributions, modelOptions);\n\n this.createHref(modelOptions);\n\n this._isCacheable = false;\n }\n\n /**\n * Create a simple Link Model\n */\n static create(\n name: string,\n href: string | Href,\n label: string,\n modelOptions?: ModelOptions,\n ): LinkModel {\n const data = { name, href };\n const contributions = { label };\n return new LinkModel(data, contributions, modelOptions);\n }\n\n /**\n */\n createHref(modelOptions: ?ModelOptions) {\n const href = new Href(this.data.href, this.resourcetype, modelOptions);\n this.handleInitialFilters(href);\n\n this.href = href;\n }\n\n /**\n * Handle initial filter hints\n * @param href\n */\n handleInitialFilters(href: Href) {\n if (this.layouthint.has(INITIAL_FILTER)) {\n const filters: { [string]: Array<string> } = {};\n this.layouthint\n .filter((hint) => hint.startsWith(INITIAL_FILTER))\n .forEach((hint) => {\n const param = hint.substr(INITIAL_FILTER.length);\n const p = Parameter.fromString(param);\n\n if (p != null) {\n if (!filters[p.name]) {\n filters[p.name] = [];\n }\n\n if (p.value != null) {\n filters[p.name].push(p.value);\n }\n }\n });\n\n Object.keys(filters).forEach((key) => {\n const value = filters[key].join(\",\");\n href.addParameter(key, value);\n });\n }\n }\n\n /**\n * Getting link group\n */\n get group(): string {\n return this.getContribution(\"group\", this.data.group);\n }\n\n /**\n * Getting the key/name of this link\n */\n get key(): string {\n return this.data.name;\n }\n\n /**\n * Retrieve the href of the link\n */\n get href(): Href {\n return this._href;\n }\n\n /**\n * Set the href of the Link\n */\n set href(href: Href) {\n this._href = href;\n }\n\n /**\n * Getting the label of the link\n */\n get label(): string {\n return this.getContribution(\"label\", this.key);\n }\n\n /**\n * Getting the type of the link\n */\n get resourcetype(): string {\n return this.getContribution(\"resourcetype\", \"\");\n }\n\n /**\n */\n get links(): LinkCollection {\n if (this.data.components) {\n return new LinkCollection(\n { components: this.data.components },\n { components: this.contributions.components },\n );\n }\n\n return new LinkCollection();\n }\n\n /**\n * Check if the href startswith the URI of the given href\n */\n isActive(link: ?LinkModel): boolean {\n if (link) {\n return link.href.startsWith(this.href);\n }\n\n return false;\n }\n\n /**\n * Setter for icon of LinkModel\n */\n set icon(icon: string) {\n this._icon = icon;\n }\n\n /**\n * Retrieve icon of LinkModel\n */\n get icon(): string {\n return this._icon;\n }\n\n /**\n */\n get targetModel(): ?Class<ModularUIModel> {\n return this._targetModel;\n }\n\n /**\n */\n set targetModel(targetModel: Class<ModularUIModel>) {\n this._targetModel = targetModel;\n }\n\n /**\n */\n get isCacheable(): boolean {\n return this._isCacheable;\n }\n\n /**\n */\n set isCacheable(isCacheable: boolean) {\n this._isCacheable = isCacheable;\n }\n\n /**\n */\n get filterName(): string {\n return this.data.filter.name;\n }\n\n /**\n */\n get hasProcessStatusSettings(): boolean {\n return (\n has(this.data, \"processStatus\") &&\n has(this.contributions, \"processStatus\")\n );\n }\n\n /**\n */\n get processStatus(): ProcessStatusSettingsModel | null {\n if (this.hasProcessStatusSettings) {\n return new ProcessStatusSettingsModel(\n this.getData(\"processStatus\", {}),\n this.getContribution(\"processStatus\", {}),\n );\n }\n\n return null;\n }\n}\n\nexport default LinkModel;\n"],"mappings":"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","ignoreList":[]}
@@ -227,7 +227,7 @@ class ListDetailModel extends _DetailModel.default {
227
227
  /**
228
228
  */
229
229
  addAttributes(key, eventData, eventContributions) {
230
- this._eventdata.push(new _AttributeSetModel.default(key, eventData, eventContributions));
230
+ this._eventdata.push(new _AttributeSetModel.default(key, eventData, eventContributions, this.modelOptions));
231
231
  }
232
232
 
233
233
  /**
@@ -278,7 +278,12 @@ export default class ListDetailModel extends DetailModel {
278
278
  */
279
279
  addAttributes(key: string, eventData: Object, eventContributions: Object) {
280
280
  this._eventdata.push(
281
- new AttributeSetModel(key, eventData, eventContributions),
281
+ new AttributeSetModel(
282
+ key,
283
+ eventData,
284
+ eventContributions,
285
+ this.modelOptions,
286
+ ),
282
287
  );
283
288
  }
284
289
 
@@ -1 +1 @@
1
- {"version":3,"file":"ListDetailModel.js","names":["_objects","require","_ActionCollection","_interopRequireDefault","_DetailModel","_ContentConfiguration","_AttributeSetModel","_createAttribute","_CompositeAttributeModel","ListDetailModel","DetailModel","constructor","modularUIResponse","_defineProperty2","default","_actionCollection","ActionCollection","_contentConfiguration","ContentConfiguration","contributions","content","setResultSection","setEventData","getInitialChildModelLinks","listitemPanels","listitem","links","getLinksByGroup","all","hasResults","results","push","givenAnswers","setChildModels","models","errors","_attributeCollection","type","modelName","isApplicableModel","data","resourcetype","_endsWith","call","_listitem","actionCollection","panelLinks","contentConfiguration","configuration","introtext","_content","text","message","Array","isArray","texts","has","setResults","setGivenAnswers","resultsData","resultSection","resultsContributions","_context","children","_filter","child","childKey","_keys","createAttribute","key","dynamicschema","CompositeAttributeModel","isResult","indicateContentConfiguration","_results","_context2","givenAnswersData","givenAnswersContributions","filteredContributions","_givenAnswers","hasEventData","eventdata","addAttributes","eventData","eventContributions","_eventdata","AttributeSetModel","forEach","eventDataContribution","eventDataData","i","exports"],"sources":["../../../src/models/list/ListDetailModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ActionCollection from \"../actions/ActionCollection\";\nimport DetailModel from \"../detail/DetailModel\";\nimport ContentConfiguration from \"../contentconfiguration/ContentConfiguration\";\nimport AttributeSetModel from \"../attributes/AttributeSetModel\";\n\nimport createAttribute from \"../attributes/_createAttribute\";\nimport CompositeAttributeModel from \"../attributes/CompositeAttributeModel\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkCollection from \"../links/LinkCollection\";\nimport type ListItemModel from \"../list/ListItemModel\";\nimport type LinkModel from \"../links/LinkModel\";\nimport type ErrorResponse from \"../error/ErrorResponse\";\n\n/**\n * Detail of a list item\n */\nexport default class ListDetailModel extends DetailModel {\n _contentConfiguration: ContentConfiguration;\n _listitem: ListItemModel;\n _givenAnswers: ?CompositeAttributeModel;\n _results: ?CompositeAttributeModel;\n _eventdata: Array<AttributeSetModel>;\n\n /**\n * Construct\n */\n constructor(modularUIResponse: ModularUIResponse) {\n super(modularUIResponse);\n\n this._actionCollection = new ActionCollection();\n\n this._contentConfiguration = new ContentConfiguration(\n this.contributions ? this.contributions.content : {},\n );\n\n this.setResultSection();\n this.setEventData();\n }\n\n /**\n * Add links to expand on initialization of this model\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const listitemPanels = this.listitem\n ? this.listitem.links.getLinksByGroup(\"panel\").all\n : [];\n\n const links = [...super.getInitialChildModelLinks(), ...listitemPanels];\n\n if (this.hasResults) {\n if (this.results) {\n links.push(...this.results.getInitialChildModelLinks());\n }\n if (this.givenAnswers) {\n links.push(...this.givenAnswers.getInitialChildModelLinks());\n }\n }\n\n return links;\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>, errors: Array<ErrorResponse>) {\n this._attributeCollection.setChildModels(models, errors);\n\n if (this.results) {\n this.results.setChildModels(models, errors);\n }\n\n if (this.givenAnswers) {\n this.givenAnswers.setChildModels(models, errors);\n }\n }\n\n /**\n */\n get type(): string {\n return \"ListDetail\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"ListDetailModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n const resourcetype = data.contributions?.resourcetype ?? \"unknown\";\n\n return (\n resourcetype.endsWith(\"ListPanelDetail\") ||\n resourcetype.endsWith(\"ListDetail\") ||\n resourcetype === \"DatastoreRelatedDatastorePanelDetail\" ||\n resourcetype === \"CaseRelatedDataStorePanelDetail\"\n );\n }\n\n /**\n * Set listitem of this listdetail and transfer listitem actions to listdetail actions\n */\n set listitem(listitem: ListItemModel) {\n this._listitem = listitem;\n\n // transfer listitem actions to _actions\n this._actionCollection = listitem.actionCollection;\n }\n\n /**\n * Get listitem\n */\n get listitem(): ListItemModel {\n return this._listitem;\n }\n\n /**\n * Getting panel links\n */\n get panelLinks(): LinkCollection {\n return this.listitem.links.getLinksByGroup(\"panel\");\n }\n\n /**\n * Getting the contentConfiguration\n */\n get contentConfiguration(): ContentConfiguration {\n return this._contentConfiguration;\n }\n\n /**\n */\n set contentConfiguration(configuration: ContentConfiguration) {\n this._contentConfiguration = configuration;\n }\n\n /**\n * Getting the introduction text configured on the case view\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 */\n setResultSection() {\n if (\n has(this.contributions, \"resultSection\") &&\n has(this.data, \"resultSection\")\n ) {\n this.setResults();\n this.setGivenAnswers();\n }\n }\n\n /**\n */\n setResults() {\n if (\n has(this.data, \"resultSection.results\") &&\n has(this.contributions, \"resultSection.results\")\n ) {\n const resultsData = this.data.resultSection.results;\n const resultsContributions = this.contributions.resultSection.results;\n if (resultsContributions.type === \"composite\") {\n resultsContributions.children = resultsContributions.children.filter(\n (child) => {\n const childKey = Object.keys(child)[0];\n return childKey in resultsData;\n },\n );\n }\n\n const results = createAttribute(\n \"results\",\n {\n key: \"results\",\n dynamicschema: this.data.dynamicschema,\n content: this.data.content?.results,\n ...this.data.resultSection,\n },\n resultsContributions,\n );\n\n if (results instanceof CompositeAttributeModel) {\n results.isResult = true;\n results.indicateContentConfiguration(this.contentConfiguration);\n this._results = results;\n }\n }\n }\n\n /**\n */\n setGivenAnswers() {\n if (\n has(this.data, \"resultSection.givenAnswers\") &&\n has(this.contributions, \"resultSection.givenAnswers\")\n ) {\n const givenAnswersData = this.data.resultSection.givenAnswers;\n const givenAnswersContributions =\n this.contributions.resultSection.givenAnswers;\n\n const filteredContributions = {\n ...givenAnswersContributions,\n children: givenAnswersContributions.children.filter((child) => {\n const childKey = Object.keys(child)[0];\n return childKey in givenAnswersData;\n }),\n };\n\n const givenAnswers = createAttribute(\n \"givenAnswers\",\n {\n key: \"givenAnswers\",\n dynamicschema: this.data.dynamicschema,\n content: this.data.content?.givenAnswers,\n ...this.data.resultSection,\n },\n filteredContributions,\n );\n\n if (givenAnswers instanceof CompositeAttributeModel) {\n givenAnswers.isResult = true;\n this._givenAnswers = givenAnswers;\n }\n }\n }\n\n /**\n */\n get givenAnswers(): ?CompositeAttributeModel {\n return this._givenAnswers;\n }\n\n /**\n */\n get hasResults(): boolean {\n return has(this.contributions, \"resultSection\");\n }\n\n /**\n */\n get results(): ?CompositeAttributeModel {\n return this._results;\n }\n\n /**\n */\n get hasEventData(): boolean {\n return (\n has(this.contributions, \"eventdata\") &&\n has(this.data, \"eventdata\") &&\n this.data.eventdata != null &&\n this.contributions.eventdata != null\n );\n }\n\n /**\n */\n addAttributes(key: string, eventData: Object, eventContributions: Object) {\n this._eventdata.push(\n new AttributeSetModel(key, eventData, eventContributions),\n );\n }\n\n /**\n */\n setEventData() {\n if (this.hasEventData) {\n this._eventdata = [];\n\n this.contributions.eventdata.forEach((eventDataContribution) => {\n const [key] = Object.keys(eventDataContribution);\n if (key in this.data.eventdata) {\n if (Array.isArray(this.data.eventdata[key])) {\n this.data.eventdata[key].forEach((eventDataData, i) => {\n this.addAttributes(\n `${key}-${i + 1}`,\n {\n ...eventDataData,\n dynamicschema: this.data.dynamicschema,\n },\n eventDataContribution[key],\n );\n });\n } else {\n this.addAttributes(\n key,\n {\n ...this.data.eventdata[key],\n dynamicschema: this.data.dynamicschema,\n },\n eventDataContribution[key],\n );\n }\n }\n });\n }\n }\n\n /**\n */\n get eventdata(): Array<AttributeSetModel> {\n return this._eventdata;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ListDetailModel.js","names":["_objects","require","_ActionCollection","_interopRequireDefault","_DetailModel","_ContentConfiguration","_AttributeSetModel","_createAttribute","_CompositeAttributeModel","ListDetailModel","DetailModel","constructor","modularUIResponse","_defineProperty2","default","_actionCollection","ActionCollection","_contentConfiguration","ContentConfiguration","contributions","content","setResultSection","setEventData","getInitialChildModelLinks","listitemPanels","listitem","links","getLinksByGroup","all","hasResults","results","push","givenAnswers","setChildModels","models","errors","_attributeCollection","type","modelName","isApplicableModel","data","resourcetype","_endsWith","call","_listitem","actionCollection","panelLinks","contentConfiguration","configuration","introtext","_content","text","message","Array","isArray","texts","has","setResults","setGivenAnswers","resultsData","resultSection","resultsContributions","_context","children","_filter","child","childKey","_keys","createAttribute","key","dynamicschema","CompositeAttributeModel","isResult","indicateContentConfiguration","_results","_context2","givenAnswersData","givenAnswersContributions","filteredContributions","_givenAnswers","hasEventData","eventdata","addAttributes","eventData","eventContributions","_eventdata","AttributeSetModel","modelOptions","forEach","eventDataContribution","eventDataData","i","exports"],"sources":["../../../src/models/list/ListDetailModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport ActionCollection from \"../actions/ActionCollection\";\nimport DetailModel from \"../detail/DetailModel\";\nimport ContentConfiguration from \"../contentconfiguration/ContentConfiguration\";\nimport AttributeSetModel from \"../attributes/AttributeSetModel\";\n\nimport createAttribute from \"../attributes/_createAttribute\";\nimport CompositeAttributeModel from \"../attributes/CompositeAttributeModel\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkCollection from \"../links/LinkCollection\";\nimport type ListItemModel from \"../list/ListItemModel\";\nimport type LinkModel from \"../links/LinkModel\";\nimport type ErrorResponse from \"../error/ErrorResponse\";\n\n/**\n * Detail of a list item\n */\nexport default class ListDetailModel extends DetailModel {\n _contentConfiguration: ContentConfiguration;\n _listitem: ListItemModel;\n _givenAnswers: ?CompositeAttributeModel;\n _results: ?CompositeAttributeModel;\n _eventdata: Array<AttributeSetModel>;\n\n /**\n * Construct\n */\n constructor(modularUIResponse: ModularUIResponse) {\n super(modularUIResponse);\n\n this._actionCollection = new ActionCollection();\n\n this._contentConfiguration = new ContentConfiguration(\n this.contributions ? this.contributions.content : {},\n );\n\n this.setResultSection();\n this.setEventData();\n }\n\n /**\n * Add links to expand on initialization of this model\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const listitemPanels = this.listitem\n ? this.listitem.links.getLinksByGroup(\"panel\").all\n : [];\n\n const links = [...super.getInitialChildModelLinks(), ...listitemPanels];\n\n if (this.hasResults) {\n if (this.results) {\n links.push(...this.results.getInitialChildModelLinks());\n }\n if (this.givenAnswers) {\n links.push(...this.givenAnswers.getInitialChildModelLinks());\n }\n }\n\n return links;\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>, errors: Array<ErrorResponse>) {\n this._attributeCollection.setChildModels(models, errors);\n\n if (this.results) {\n this.results.setChildModels(models, errors);\n }\n\n if (this.givenAnswers) {\n this.givenAnswers.setChildModels(models, errors);\n }\n }\n\n /**\n */\n get type(): string {\n return \"ListDetail\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"ListDetailModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n const resourcetype = data.contributions?.resourcetype ?? \"unknown\";\n\n return (\n resourcetype.endsWith(\"ListPanelDetail\") ||\n resourcetype.endsWith(\"ListDetail\") ||\n resourcetype === \"DatastoreRelatedDatastorePanelDetail\" ||\n resourcetype === \"CaseRelatedDataStorePanelDetail\"\n );\n }\n\n /**\n * Set listitem of this listdetail and transfer listitem actions to listdetail actions\n */\n set listitem(listitem: ListItemModel) {\n this._listitem = listitem;\n\n // transfer listitem actions to _actions\n this._actionCollection = listitem.actionCollection;\n }\n\n /**\n * Get listitem\n */\n get listitem(): ListItemModel {\n return this._listitem;\n }\n\n /**\n * Getting panel links\n */\n get panelLinks(): LinkCollection {\n return this.listitem.links.getLinksByGroup(\"panel\");\n }\n\n /**\n * Getting the contentConfiguration\n */\n get contentConfiguration(): ContentConfiguration {\n return this._contentConfiguration;\n }\n\n /**\n */\n set contentConfiguration(configuration: ContentConfiguration) {\n this._contentConfiguration = configuration;\n }\n\n /**\n * Getting the introduction text configured on the case view\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 */\n setResultSection() {\n if (\n has(this.contributions, \"resultSection\") &&\n has(this.data, \"resultSection\")\n ) {\n this.setResults();\n this.setGivenAnswers();\n }\n }\n\n /**\n */\n setResults() {\n if (\n has(this.data, \"resultSection.results\") &&\n has(this.contributions, \"resultSection.results\")\n ) {\n const resultsData = this.data.resultSection.results;\n const resultsContributions = this.contributions.resultSection.results;\n if (resultsContributions.type === \"composite\") {\n resultsContributions.children = resultsContributions.children.filter(\n (child) => {\n const childKey = Object.keys(child)[0];\n return childKey in resultsData;\n },\n );\n }\n\n const results = createAttribute(\n \"results\",\n {\n key: \"results\",\n dynamicschema: this.data.dynamicschema,\n content: this.data.content?.results,\n ...this.data.resultSection,\n },\n resultsContributions,\n );\n\n if (results instanceof CompositeAttributeModel) {\n results.isResult = true;\n results.indicateContentConfiguration(this.contentConfiguration);\n this._results = results;\n }\n }\n }\n\n /**\n */\n setGivenAnswers() {\n if (\n has(this.data, \"resultSection.givenAnswers\") &&\n has(this.contributions, \"resultSection.givenAnswers\")\n ) {\n const givenAnswersData = this.data.resultSection.givenAnswers;\n const givenAnswersContributions =\n this.contributions.resultSection.givenAnswers;\n\n const filteredContributions = {\n ...givenAnswersContributions,\n children: givenAnswersContributions.children.filter((child) => {\n const childKey = Object.keys(child)[0];\n return childKey in givenAnswersData;\n }),\n };\n\n const givenAnswers = createAttribute(\n \"givenAnswers\",\n {\n key: \"givenAnswers\",\n dynamicschema: this.data.dynamicschema,\n content: this.data.content?.givenAnswers,\n ...this.data.resultSection,\n },\n filteredContributions,\n );\n\n if (givenAnswers instanceof CompositeAttributeModel) {\n givenAnswers.isResult = true;\n this._givenAnswers = givenAnswers;\n }\n }\n }\n\n /**\n */\n get givenAnswers(): ?CompositeAttributeModel {\n return this._givenAnswers;\n }\n\n /**\n */\n get hasResults(): boolean {\n return has(this.contributions, \"resultSection\");\n }\n\n /**\n */\n get results(): ?CompositeAttributeModel {\n return this._results;\n }\n\n /**\n */\n get hasEventData(): boolean {\n return (\n has(this.contributions, \"eventdata\") &&\n has(this.data, \"eventdata\") &&\n this.data.eventdata != null &&\n this.contributions.eventdata != null\n );\n }\n\n /**\n */\n addAttributes(key: string, eventData: Object, eventContributions: Object) {\n this._eventdata.push(\n new AttributeSetModel(\n key,\n eventData,\n eventContributions,\n this.modelOptions,\n ),\n );\n }\n\n /**\n */\n setEventData() {\n if (this.hasEventData) {\n this._eventdata = [];\n\n this.contributions.eventdata.forEach((eventDataContribution) => {\n const [key] = Object.keys(eventDataContribution);\n if (key in this.data.eventdata) {\n if (Array.isArray(this.data.eventdata[key])) {\n this.data.eventdata[key].forEach((eventDataData, i) => {\n this.addAttributes(\n `${key}-${i + 1}`,\n {\n ...eventDataData,\n dynamicschema: this.data.dynamicschema,\n },\n eventDataContribution[key],\n );\n });\n } else {\n this.addAttributes(\n key,\n {\n ...this.data.eventdata[key],\n dynamicschema: this.data.dynamicschema,\n },\n eventDataContribution[key],\n );\n }\n }\n });\n }\n }\n\n /**\n */\n get eventdata(): Array<AttributeSetModel> {\n return this._eventdata;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -32,7 +32,7 @@ class ListItemCollection extends _BaseCollection.default {
32
32
  const listitemData = resultItem[key];
33
33
  listitemData.dynamicschema = dynamicschema;
34
34
  const listitemContributions = list.contributions.results[key];
35
- return _ListItemModel.default.createFromListResult(key, listitemData, listitemContributions, list.origin, list.contextPath);
35
+ return _ListItemModel.default.createFromListResult(key, listitemData, listitemContributions, list.modelOptions);
36
36
  });
37
37
  return new ListItemCollection(collection);
38
38
  }
@@ -36,8 +36,7 @@ class ListItemCollection extends BaseCollection<ListItemModel> {
36
36
  key,
37
37
  listitemData,
38
38
  listitemContributions,
39
- list.origin,
40
- list.contextPath,
39
+ list.modelOptions,
41
40
  );
42
41
  });
43
42
 
@@ -1 +1 @@
1
- {"version":3,"file":"ListItemCollection.js","names":["_BaseCollection","_interopRequireDefault","require","_ActionCollection","_ListItemModel","_ConfigurationException","ListItemCollection","BaseCollection","createFromList","list","_embedded","getData","_context","Array","isArray","ConfigurationException","key","dynamicschema","collection","_map","default","results","call","resultItem","_keys","listitemData","listitemContributions","contributions","ListItemModel","createFromListResult","origin","contextPath","additionalDetailRoutePath","_context2","isEmpty","allRoutes","all","listItem","join","_includes","actionCollection","actions","ActionCollection","forEach","push","_default","exports"],"sources":["../../../src/models/list/ListItemCollection.js"],"sourcesContent":["// @flow\nimport BaseCollection from \"../base/BaseCollection\";\nimport ActionCollection from \"../actions/ActionCollection\";\nimport ListItemModel from \"../list/ListItemModel\";\n\nimport ConfigurationException from \"../../exceptions/ConfigurationException\";\n\nimport type ListModel from \"../list/ListModel\";\n\n/**\n * Collection of list items\n */\nclass ListItemCollection extends BaseCollection<ListItemModel> {\n /**\n * Create a list item collection from the given list\n */\n static createFromList(list: ListModel): ListItemCollection {\n const _embedded = list.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 ${list.key}`,\n );\n }\n\n const dynamicschema = list.getData(\"dynamicschema\");\n\n const collection = _embedded.results.map((resultItem) => {\n const [key] = Object.keys(resultItem);\n const listitemData = resultItem[key];\n listitemData.dynamicschema = dynamicschema;\n\n const listitemContributions = list.contributions.results[key];\n\n return ListItemModel.createFromListResult(\n key,\n listitemData,\n listitemContributions,\n list.origin,\n list.contextPath,\n );\n });\n\n return new ListItemCollection(collection);\n }\n\n return new ListItemCollection();\n }\n\n /**\n */\n get additionalDetailRoutePath(): string {\n if (this.isEmpty) {\n return \"__NON_EXISTING_ROUTE__\";\n }\n\n const allRoutes = this.all\n .map((listItem) => listItem.additionalDetailRoutePath)\n .join(\"|\");\n\n if (allRoutes.includes(\"|\")) {\n return `(${allRoutes})`;\n }\n\n return allRoutes;\n }\n\n /**\n */\n get actionCollection(): ActionCollection {\n const actions = new ActionCollection();\n\n this.all.forEach((listItem) => {\n actions.collection.push(...listItem.actionCollection.all);\n });\n\n return actions;\n }\n}\n\nexport default ListItemCollection;\n"],"mappings":";;;;;;;;;;AACA,IAAAA,eAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,cAAA,GAAAH,sBAAA,CAAAC,OAAA;AAEA,IAAAG,uBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAIA;AACA;AACA;AACA,MAAMI,kBAAkB,SAASC,uBAAc,CAAgB;EAC7D;AACF;AACA;EACE,OAAOC,cAAcA,CAACC,IAAe,EAAsB;IACzD,MAAMC,SAAS,GAAGD,IAAI,CAACE,OAAO,CAAC,WAAW,CAAC;IAC3C,IAAID,SAAS,IAAI,IAAI,EAAE;MAAA,IAAAE,QAAA;MACrB,IAAIC,KAAK,CAACC,OAAO,CAACJ,SAAS,CAAC,EAAE;QAC5B,MAAM,IAAIK,+BAAsB,CAC9B,+GAA+GN,IAAI,CAACO,GAAG,EACzH,CAAC;MACH;MAEA,MAAMC,aAAa,GAAGR,IAAI,CAACE,OAAO,CAAC,eAAe,CAAC;MAEnD,MAAMO,UAAU,GAAG,IAAAC,IAAA,CAAAC,OAAA,EAAAR,QAAA,GAAAF,SAAS,CAACW,OAAO,EAAAC,IAAA,CAAAV,QAAA,EAAMW,UAAU,IAAK;QACvD,MAAM,CAACP,GAAG,CAAC,GAAG,IAAAQ,KAAA,CAAAJ,OAAA,EAAYG,UAAU,CAAC;QACrC,MAAME,YAAY,GAAGF,UAAU,CAACP,GAAG,CAAC;QACpCS,YAAY,CAACR,aAAa,GAAGA,aAAa;QAE1C,MAAMS,qBAAqB,GAAGjB,IAAI,CAACkB,aAAa,CAACN,OAAO,CAACL,GAAG,CAAC;QAE7D,OAAOY,sBAAa,CAACC,oBAAoB,CACvCb,GAAG,EACHS,YAAY,EACZC,qBAAqB,EACrBjB,IAAI,CAACqB,MAAM,EACXrB,IAAI,CAACsB,WACP,CAAC;MACH,CAAC,CAAC;MAEF,OAAO,IAAIzB,kBAAkB,CAACY,UAAU,CAAC;IAC3C;IAEA,OAAO,IAAIZ,kBAAkB,CAAC,CAAC;EACjC;;EAEA;AACF;EACE,IAAI0B,yBAAyBA,CAAA,EAAW;IAAA,IAAAC,SAAA;IACtC,IAAI,IAAI,CAACC,OAAO,EAAE;MAChB,OAAO,wBAAwB;IACjC;IAEA,MAAMC,SAAS,GAAG,IAAAhB,IAAA,CAAAC,OAAA,EAAAa,SAAA,OAAI,CAACG,GAAG,EAAAd,IAAA,CAAAW,SAAA,EAClBI,QAAQ,IAAKA,QAAQ,CAACL,yBAAyB,CAAC,CACrDM,IAAI,CAAC,GAAG,CAAC;IAEZ,IAAI,IAAAC,SAAA,CAAAnB,OAAA,EAAAe,SAAS,EAAAb,IAAA,CAATa,SAAS,EAAU,GAAG,CAAC,EAAE;MAC3B,OAAO,IAAIA,SAAS,GAAG;IACzB;IAEA,OAAOA,SAAS;EAClB;;EAEA;AACF;EACE,IAAIK,gBAAgBA,CAAA,EAAqB;IACvC,MAAMC,OAAO,GAAG,IAAIC,yBAAgB,CAAC,CAAC;IAEtC,IAAI,CAACN,GAAG,CAACO,OAAO,CAAEN,QAAQ,IAAK;MAC7BI,OAAO,CAACvB,UAAU,CAAC0B,IAAI,CAAC,GAAGP,QAAQ,CAACG,gBAAgB,CAACJ,GAAG,CAAC;IAC3D,CAAC,CAAC;IAEF,OAAOK,OAAO;EAChB;AACF;AAAC,IAAAI,QAAA,GAAAC,OAAA,CAAA1B,OAAA,GAEcd,kBAAkB","ignoreList":[]}
1
+ {"version":3,"file":"ListItemCollection.js","names":["_BaseCollection","_interopRequireDefault","require","_ActionCollection","_ListItemModel","_ConfigurationException","ListItemCollection","BaseCollection","createFromList","list","_embedded","getData","_context","Array","isArray","ConfigurationException","key","dynamicschema","collection","_map","default","results","call","resultItem","_keys","listitemData","listitemContributions","contributions","ListItemModel","createFromListResult","modelOptions","additionalDetailRoutePath","_context2","isEmpty","allRoutes","all","listItem","join","_includes","actionCollection","actions","ActionCollection","forEach","push","_default","exports"],"sources":["../../../src/models/list/ListItemCollection.js"],"sourcesContent":["// @flow\nimport BaseCollection from \"../base/BaseCollection\";\nimport ActionCollection from \"../actions/ActionCollection\";\nimport ListItemModel from \"../list/ListItemModel\";\n\nimport ConfigurationException from \"../../exceptions/ConfigurationException\";\n\nimport type ListModel from \"../list/ListModel\";\n\n/**\n * Collection of list items\n */\nclass ListItemCollection extends BaseCollection<ListItemModel> {\n /**\n * Create a list item collection from the given list\n */\n static createFromList(list: ListModel): ListItemCollection {\n const _embedded = list.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 ${list.key}`,\n );\n }\n\n const dynamicschema = list.getData(\"dynamicschema\");\n\n const collection = _embedded.results.map((resultItem) => {\n const [key] = Object.keys(resultItem);\n const listitemData = resultItem[key];\n listitemData.dynamicschema = dynamicschema;\n\n const listitemContributions = list.contributions.results[key];\n\n return ListItemModel.createFromListResult(\n key,\n listitemData,\n listitemContributions,\n list.modelOptions,\n );\n });\n\n return new ListItemCollection(collection);\n }\n\n return new ListItemCollection();\n }\n\n /**\n */\n get additionalDetailRoutePath(): string {\n if (this.isEmpty) {\n return \"__NON_EXISTING_ROUTE__\";\n }\n\n const allRoutes = this.all\n .map((listItem) => listItem.additionalDetailRoutePath)\n .join(\"|\");\n\n if (allRoutes.includes(\"|\")) {\n return `(${allRoutes})`;\n }\n\n return allRoutes;\n }\n\n /**\n */\n get actionCollection(): ActionCollection {\n const actions = new ActionCollection();\n\n this.all.forEach((listItem) => {\n actions.collection.push(...listItem.actionCollection.all);\n });\n\n return actions;\n }\n}\n\nexport default ListItemCollection;\n"],"mappings":";;;;;;;;;;AACA,IAAAA,eAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,cAAA,GAAAH,sBAAA,CAAAC,OAAA;AAEA,IAAAG,uBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAIA;AACA;AACA;AACA,MAAMI,kBAAkB,SAASC,uBAAc,CAAgB;EAC7D;AACF;AACA;EACE,OAAOC,cAAcA,CAACC,IAAe,EAAsB;IACzD,MAAMC,SAAS,GAAGD,IAAI,CAACE,OAAO,CAAC,WAAW,CAAC;IAC3C,IAAID,SAAS,IAAI,IAAI,EAAE;MAAA,IAAAE,QAAA;MACrB,IAAIC,KAAK,CAACC,OAAO,CAACJ,SAAS,CAAC,EAAE;QAC5B,MAAM,IAAIK,+BAAsB,CAC9B,+GAA+GN,IAAI,CAACO,GAAG,EACzH,CAAC;MACH;MAEA,MAAMC,aAAa,GAAGR,IAAI,CAACE,OAAO,CAAC,eAAe,CAAC;MAEnD,MAAMO,UAAU,GAAG,IAAAC,IAAA,CAAAC,OAAA,EAAAR,QAAA,GAAAF,SAAS,CAACW,OAAO,EAAAC,IAAA,CAAAV,QAAA,EAAMW,UAAU,IAAK;QACvD,MAAM,CAACP,GAAG,CAAC,GAAG,IAAAQ,KAAA,CAAAJ,OAAA,EAAYG,UAAU,CAAC;QACrC,MAAME,YAAY,GAAGF,UAAU,CAACP,GAAG,CAAC;QACpCS,YAAY,CAACR,aAAa,GAAGA,aAAa;QAE1C,MAAMS,qBAAqB,GAAGjB,IAAI,CAACkB,aAAa,CAACN,OAAO,CAACL,GAAG,CAAC;QAE7D,OAAOY,sBAAa,CAACC,oBAAoB,CACvCb,GAAG,EACHS,YAAY,EACZC,qBAAqB,EACrBjB,IAAI,CAACqB,YACP,CAAC;MACH,CAAC,CAAC;MAEF,OAAO,IAAIxB,kBAAkB,CAACY,UAAU,CAAC;IAC3C;IAEA,OAAO,IAAIZ,kBAAkB,CAAC,CAAC;EACjC;;EAEA;AACF;EACE,IAAIyB,yBAAyBA,CAAA,EAAW;IAAA,IAAAC,SAAA;IACtC,IAAI,IAAI,CAACC,OAAO,EAAE;MAChB,OAAO,wBAAwB;IACjC;IAEA,MAAMC,SAAS,GAAG,IAAAf,IAAA,CAAAC,OAAA,EAAAY,SAAA,OAAI,CAACG,GAAG,EAAAb,IAAA,CAAAU,SAAA,EAClBI,QAAQ,IAAKA,QAAQ,CAACL,yBAAyB,CAAC,CACrDM,IAAI,CAAC,GAAG,CAAC;IAEZ,IAAI,IAAAC,SAAA,CAAAlB,OAAA,EAAAc,SAAS,EAAAZ,IAAA,CAATY,SAAS,EAAU,GAAG,CAAC,EAAE;MAC3B,OAAO,IAAIA,SAAS,GAAG;IACzB;IAEA,OAAOA,SAAS;EAClB;;EAEA;AACF;EACE,IAAIK,gBAAgBA,CAAA,EAAqB;IACvC,MAAMC,OAAO,GAAG,IAAIC,yBAAgB,CAAC,CAAC;IAEtC,IAAI,CAACN,GAAG,CAACO,OAAO,CAAEN,QAAQ,IAAK;MAC7BI,OAAO,CAACtB,UAAU,CAACyB,IAAI,CAAC,GAAGP,QAAQ,CAACG,gBAAgB,CAACJ,GAAG,CAAC;IAC3D,CAAC,CAAC;IAEF,OAAOK,OAAO;EAChB;AACF;AAAC,IAAAI,QAAA,GAAAC,OAAA,CAAAzB,OAAA,GAEcd,kBAAkB","ignoreList":[]}
@@ -16,13 +16,13 @@ var _LayoutHints = require("../../constants/LayoutHints");
16
16
  class ListItemModel extends _DetailModel.default {
17
17
  /**
18
18
  */
19
- static createFromListResult(key, data, contributions, origin, contextPath) {
19
+ static createFromListResult(key, data, contributions, modelOptions) {
20
20
  const listitemInput = new _ModularUIResponse.default();
21
21
  listitemInput.key = key;
22
22
  listitemInput.data = data;
23
23
  listitemInput.contributions = contributions;
24
- listitemInput.origin = origin;
25
- listitemInput.contextPath = contextPath;
24
+ listitemInput.origin = modelOptions?.origin;
25
+ listitemInput.contextPath = modelOptions?.contextPath;
26
26
  return new ListItemModel(listitemInput);
27
27
  }
28
28
 
@@ -9,6 +9,7 @@ import { CASEVIEW_LINK } from "../../constants/LayoutHints";
9
9
  import type ChoiceAttributeOptionModel from "../attributes/ChoiceAttributeOptionModel";
10
10
  import type ActionCollection from "../actions/ActionCollection";
11
11
  import type LinkCollection from "../links/LinkCollection";
12
+ import type { ModelOptions } from "../types";
12
13
 
13
14
  /**
14
15
  * List Item
@@ -20,15 +21,14 @@ export default class ListItemModel extends DetailModel {
20
21
  key: string,
21
22
  data: Object,
22
23
  contributions: Object,
23
- origin?: string,
24
- contextPath?: string,
24
+ modelOptions?: ModelOptions,
25
25
  ): ListItemModel {
26
26
  const listitemInput = new ModularUIResponse();
27
27
  listitemInput.key = key;
28
28
  listitemInput.data = data;
29
29
  listitemInput.contributions = contributions;
30
- listitemInput.origin = origin;
31
- listitemInput.contextPath = contextPath;
30
+ listitemInput.origin = modelOptions?.origin;
31
+ listitemInput.contextPath = modelOptions?.contextPath;
32
32
 
33
33
  return new ListItemModel(listitemInput);
34
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ListItemModel.js","names":["_DetailModel","_interopRequireDefault","require","_Href","_ModularUIResponse","_LayoutHints","ListItemModel","DetailModel","createFromListResult","key","data","contributions","origin","contextPath","listitemInput","ModularUIResponse","createFromChoiceAttributeOption","option","code","item","attributeCollection","selfhref","selflink","links","getLinkByKey","Href","href","caseviewHref","caseviewLinkAttribute","getAttributeByLayoutHint","CASEVIEW_LINK","caseviewLinkKey","name","caseviewLink","panelLinks","getLinksByGroup","hasPanelLinks","length","getActionsByType","actionType","actionCollection","additionalDetailRoutePath","additionalDetailLinks","_map","default","call","link","path","join","exports"],"sources":["../../../src/models/list/ListItemModel.js"],"sourcesContent":["// @flow\nimport DetailModel from \"../detail/DetailModel\";\nimport Href from \"../href/Href\";\n\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\nimport { CASEVIEW_LINK } from \"../../constants/LayoutHints\";\n\nimport type ChoiceAttributeOptionModel from \"../attributes/ChoiceAttributeOptionModel\";\nimport type ActionCollection from \"../actions/ActionCollection\";\nimport type LinkCollection from \"../links/LinkCollection\";\n\n/**\n * List Item\n */\nexport default class ListItemModel extends DetailModel {\n /**\n */\n static createFromListResult(\n key: string,\n data: Object,\n contributions: Object,\n origin?: string,\n contextPath?: string,\n ): ListItemModel {\n const listitemInput = new ModularUIResponse();\n listitemInput.key = key;\n listitemInput.data = data;\n listitemInput.contributions = contributions;\n listitemInput.origin = origin;\n listitemInput.contextPath = contextPath;\n\n return new ListItemModel(listitemInput);\n }\n\n /**\n */\n static createFromChoiceAttributeOption(\n option: ChoiceAttributeOptionModel,\n ): ListItemModel {\n const listitemInput = new ModularUIResponse();\n listitemInput.key = option.code;\n\n const item = new ListItemModel(listitemInput);\n item.attributeCollection = option.attributeCollection;\n\n return item;\n }\n\n /**\n */\n get selfhref(): Href {\n const selflink = this.links.getLinkByKey(\"self\");\n\n if (selflink === null) {\n return new Href(\"#\");\n }\n\n return selflink.href;\n }\n\n /**\n */\n get caseviewHref(): Href {\n const caseviewLinkAttribute =\n this.attributeCollection.getAttributeByLayoutHint(CASEVIEW_LINK);\n if (caseviewLinkAttribute) {\n const caseviewLinkKey = caseviewLinkAttribute.name;\n const caseviewLink = this.links.getLinkByKey(caseviewLinkKey);\n\n if (caseviewLink) {\n return caseviewLink.href;\n }\n }\n\n return this.selfhref;\n }\n\n /**\n * Getting panel links\n */\n get panelLinks(): LinkCollection {\n return this.links.getLinksByGroup(\"panel\");\n }\n\n /**\n * Check if list item has panel links\n */\n hasPanelLinks(): boolean {\n return this.panelLinks.length > -1;\n }\n\n /**\n * Retrieve all actions by type\n */\n getActionsByType(actionType: string): ActionCollection {\n return this.actionCollection.getActionsByType(actionType);\n }\n\n /**\n */\n get additionalDetailRoutePath(): string {\n const additionalDetailLinks = this.panelLinks;\n\n if (additionalDetailLinks.length === 0) {\n return \"__NON_EXISTING_ROUTE__\";\n }\n\n return additionalDetailLinks.map((link) => link.href.path).join(\"|\");\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ListItemModel.js","names":["_DetailModel","_interopRequireDefault","require","_Href","_ModularUIResponse","_LayoutHints","ListItemModel","DetailModel","createFromListResult","key","data","contributions","modelOptions","listitemInput","ModularUIResponse","origin","contextPath","createFromChoiceAttributeOption","option","code","item","attributeCollection","selfhref","selflink","links","getLinkByKey","Href","href","caseviewHref","caseviewLinkAttribute","getAttributeByLayoutHint","CASEVIEW_LINK","caseviewLinkKey","name","caseviewLink","panelLinks","getLinksByGroup","hasPanelLinks","length","getActionsByType","actionType","actionCollection","additionalDetailRoutePath","additionalDetailLinks","_map","default","call","link","path","join","exports"],"sources":["../../../src/models/list/ListItemModel.js"],"sourcesContent":["// @flow\nimport DetailModel from \"../detail/DetailModel\";\nimport Href from \"../href/Href\";\n\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\nimport { CASEVIEW_LINK } from \"../../constants/LayoutHints\";\n\nimport type ChoiceAttributeOptionModel from \"../attributes/ChoiceAttributeOptionModel\";\nimport type ActionCollection from \"../actions/ActionCollection\";\nimport type LinkCollection from \"../links/LinkCollection\";\nimport type { ModelOptions } from \"../types\";\n\n/**\n * List Item\n */\nexport default class ListItemModel extends DetailModel {\n /**\n */\n static createFromListResult(\n key: string,\n data: Object,\n contributions: Object,\n modelOptions?: ModelOptions,\n ): ListItemModel {\n const listitemInput = new ModularUIResponse();\n listitemInput.key = key;\n listitemInput.data = data;\n listitemInput.contributions = contributions;\n listitemInput.origin = modelOptions?.origin;\n listitemInput.contextPath = modelOptions?.contextPath;\n\n return new ListItemModel(listitemInput);\n }\n\n /**\n */\n static createFromChoiceAttributeOption(\n option: ChoiceAttributeOptionModel,\n ): ListItemModel {\n const listitemInput = new ModularUIResponse();\n listitemInput.key = option.code;\n\n const item = new ListItemModel(listitemInput);\n item.attributeCollection = option.attributeCollection;\n\n return item;\n }\n\n /**\n */\n get selfhref(): Href {\n const selflink = this.links.getLinkByKey(\"self\");\n\n if (selflink === null) {\n return new Href(\"#\");\n }\n\n return selflink.href;\n }\n\n /**\n */\n get caseviewHref(): Href {\n const caseviewLinkAttribute =\n this.attributeCollection.getAttributeByLayoutHint(CASEVIEW_LINK);\n if (caseviewLinkAttribute) {\n const caseviewLinkKey = caseviewLinkAttribute.name;\n const caseviewLink = this.links.getLinkByKey(caseviewLinkKey);\n\n if (caseviewLink) {\n return caseviewLink.href;\n }\n }\n\n return this.selfhref;\n }\n\n /**\n * Getting panel links\n */\n get panelLinks(): LinkCollection {\n return this.links.getLinksByGroup(\"panel\");\n }\n\n /**\n * Check if list item has panel links\n */\n hasPanelLinks(): boolean {\n return this.panelLinks.length > -1;\n }\n\n /**\n * Retrieve all actions by type\n */\n getActionsByType(actionType: string): ActionCollection {\n return this.actionCollection.getActionsByType(actionType);\n }\n\n /**\n */\n get additionalDetailRoutePath(): string {\n const additionalDetailLinks = this.panelLinks;\n\n if (additionalDetailLinks.length === 0) {\n return \"__NON_EXISTING_ROUTE__\";\n }\n\n return additionalDetailLinks.map((link) => link.href.path).join(\"|\");\n }\n}\n"],"mappings":";;;;;;;;AACA,IAAAA,YAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,kBAAA,GAAAH,sBAAA,CAAAC,OAAA;AAEA,IAAAG,YAAA,GAAAH,OAAA;AAOA;AACA;AACA;AACe,MAAMI,aAAa,SAASC,oBAAW,CAAC;EACrD;AACF;EACE,OAAOC,oBAAoBA,CACzBC,GAAW,EACXC,IAAY,EACZC,aAAqB,EACrBC,YAA2B,EACZ;IACf,MAAMC,aAAa,GAAG,IAAIC,0BAAiB,CAAC,CAAC;IAC7CD,aAAa,CAACJ,GAAG,GAAGA,GAAG;IACvBI,aAAa,CAACH,IAAI,GAAGA,IAAI;IACzBG,aAAa,CAACF,aAAa,GAAGA,aAAa;IAC3CE,aAAa,CAACE,MAAM,GAAGH,YAAY,EAAEG,MAAM;IAC3CF,aAAa,CAACG,WAAW,GAAGJ,YAAY,EAAEI,WAAW;IAErD,OAAO,IAAIV,aAAa,CAACO,aAAa,CAAC;EACzC;;EAEA;AACF;EACE,OAAOI,+BAA+BA,CACpCC,MAAkC,EACnB;IACf,MAAML,aAAa,GAAG,IAAIC,0BAAiB,CAAC,CAAC;IAC7CD,aAAa,CAACJ,GAAG,GAAGS,MAAM,CAACC,IAAI;IAE/B,MAAMC,IAAI,GAAG,IAAId,aAAa,CAACO,aAAa,CAAC;IAC7CO,IAAI,CAACC,mBAAmB,GAAGH,MAAM,CAACG,mBAAmB;IAErD,OAAOD,IAAI;EACb;;EAEA;AACF;EACE,IAAIE,QAAQA,CAAA,EAAS;IACnB,MAAMC,QAAQ,GAAG,IAAI,CAACC,KAAK,CAACC,YAAY,CAAC,MAAM,CAAC;IAEhD,IAAIF,QAAQ,KAAK,IAAI,EAAE;MACrB,OAAO,IAAIG,aAAI,CAAC,GAAG,CAAC;IACtB;IAEA,OAAOH,QAAQ,CAACI,IAAI;EACtB;;EAEA;AACF;EACE,IAAIC,YAAYA,CAAA,EAAS;IACvB,MAAMC,qBAAqB,GACzB,IAAI,CAACR,mBAAmB,CAACS,wBAAwB,CAACC,0BAAa,CAAC;IAClE,IAAIF,qBAAqB,EAAE;MACzB,MAAMG,eAAe,GAAGH,qBAAqB,CAACI,IAAI;MAClD,MAAMC,YAAY,GAAG,IAAI,CAACV,KAAK,CAACC,YAAY,CAACO,eAAe,CAAC;MAE7D,IAAIE,YAAY,EAAE;QAChB,OAAOA,YAAY,CAACP,IAAI;MAC1B;IACF;IAEA,OAAO,IAAI,CAACL,QAAQ;EACtB;;EAEA;AACF;AACA;EACE,IAAIa,UAAUA,CAAA,EAAmB;IAC/B,OAAO,IAAI,CAACX,KAAK,CAACY,eAAe,CAAC,OAAO,CAAC;EAC5C;;EAEA;AACF;AACA;EACEC,aAAaA,CAAA,EAAY;IACvB,OAAO,IAAI,CAACF,UAAU,CAACG,MAAM,GAAG,CAAC,CAAC;EACpC;;EAEA;AACF;AACA;EACEC,gBAAgBA,CAACC,UAAkB,EAAoB;IACrD,OAAO,IAAI,CAACC,gBAAgB,CAACF,gBAAgB,CAACC,UAAU,CAAC;EAC3D;;EAEA;AACF;EACE,IAAIE,yBAAyBA,CAAA,EAAW;IACtC,MAAMC,qBAAqB,GAAG,IAAI,CAACR,UAAU;IAE7C,IAAIQ,qBAAqB,CAACL,MAAM,KAAK,CAAC,EAAE;MACtC,OAAO,wBAAwB;IACjC;IAEA,OAAO,IAAAM,IAAA,CAAAC,OAAA,EAAAF,qBAAqB,EAAAG,IAAA,CAArBH,qBAAqB,EAAMI,IAAI,IAAKA,IAAI,CAACpB,IAAI,CAACqB,IAAI,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC;EACtE;AACF;AAACC,OAAA,CAAAL,OAAA,GAAAvC,aAAA","ignoreList":[]}
@@ -160,7 +160,7 @@ class ListModel extends _ResourceModel.default {
160
160
  return new _GroupingModel.default({
161
161
  ...this.data.grouping,
162
162
  dynamicschema: this.data.dynamicschema
163
- }, this.contributions.contexts);
163
+ }, this.contributions.contexts, this.modelOptions);
164
164
  }
165
165
 
166
166
  /**
@@ -256,7 +256,7 @@ class ListModel extends _ResourceModel.default {
256
256
  filter: (0, _filter.default)(this.contributions),
257
257
  contexts: this.contributions.contexts,
258
258
  dynamicschema: this.data.dynamicschema
259
- });
259
+ }, this.modelOptions);
260
260
  }
261
261
 
262
262
  /**
@@ -279,7 +279,7 @@ class ListModel extends _ResourceModel.default {
279
279
  /**
280
280
  */
281
281
  setActionCollection() {
282
- return new _ActionCollection.default(this.data.actions, this.contributions.actions, this.origin, this.contextPath);
282
+ return new _ActionCollection.default(this.data.actions, this.contributions.actions, this.modelOptions);
283
283
  }
284
284
 
285
285
  /**
@@ -180,6 +180,7 @@ export default class ListModel extends ResourceModel {
180
180
  return new GroupingModel(
181
181
  { ...this.data.grouping, dynamicschema: this.data.dynamicschema },
182
182
  this.contributions.contexts,
183
+ this.modelOptions,
183
184
  );
184
185
  }
185
186
 
@@ -285,12 +286,16 @@ export default class ListModel extends ResourceModel {
285
286
  /**
286
287
  */
287
288
  setFilters(): FilterCollection {
288
- return new FilterCollection(this.data.filter, {
289
- listkey: this.key,
290
- filter: this.contributions.filter,
291
- contexts: this.contributions.contexts,
292
- dynamicschema: this.data.dynamicschema,
293
- });
289
+ return new FilterCollection(
290
+ this.data.filter,
291
+ {
292
+ listkey: this.key,
293
+ filter: this.contributions.filter,
294
+ contexts: this.contributions.contexts,
295
+ dynamicschema: this.data.dynamicschema,
296
+ },
297
+ this.modelOptions,
298
+ );
294
299
  }
295
300
 
296
301
  /**
@@ -316,8 +321,7 @@ export default class ListModel extends ResourceModel {
316
321
  return new ActionCollection(
317
322
  this.data.actions,
318
323
  this.contributions.actions,
319
- this.origin,
320
- this.contextPath,
324
+ this.modelOptions,
321
325
  );
322
326
  }
323
327
 
@@ -1 +1 @@
1
- {"version":3,"file":"ListModel.js","names":["_ModularUIResponse","_interopRequireDefault","require","_ListItemCollection","_ListDetailModel","_ActionCollection","_FilterCollection","_GroupingModel","_ListHeaderModel","_ListHref","_ListItemModel","_PagingModel","_ResourceModel","_SortingModel","_LayoutHints","ListModel","ResourceModel","constructor","arguments","_defineProperty2","default","type","modelName","isApplicableModel","data","_context","resourceType","contributions","resourcetype","_endsWith","call","_includes","getInitialChildModelLinks","layouthint","has","SHOW_ONE_RESULT_AS_DETAIL","listItemCollection","length","_context2","_map","listItem","listDetailLink","selflink","targetModel","ListDetailModel","setChildModels","models","detail","_find","childModel","label","introtext","content","text","message","Array","isArray","texts","_listItemCollection","ListItemCollection","createFromList","_detail","_context3","listitemHref","selfhref","listitem","equals","setSelfHref","grouping","_grouping","setGrouping","GroupingModel","dynamicschema","contexts","hasGrouping","hasGroups","hasResults","hasItems","shouldHide","HIDE_WHEN_EMPTY","actionCollection","isEmpty","filterCollection","hasActiveFilters","getListItemById","id","_context4","decodedId","decodeURIComponent","toString","result","getListItemByHref","href","_context5","paging","_paging","setPaging","PagingModel","sorting","_sorting","setSorting","SortingModel","getSortingLabels","_filterCollection","setFilters","FilterCollection","_filter","listkey","key","filter","isFiltered","_actionCollection","setActionCollection","ActionCollection","actions","origin","contextPath","hasList","selfLink","links","getLinkByKey","ListHref","_selfhref","headers","_headers","setHeaders","tempHeaders","results","_keys","forEach","attributes","attribute","listHeader","ListHeaderModel","exists","some","tempHeader","CASEVIEW_LINK","push","sortingLabels","attributeKey","getActionsByType","actionType","getAdditionalDetailLabel","resultTypes","resultType","link","_links","panel","find","panelLink","exports"],"sources":["../../../src/models/list/ListModel.js"],"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 get modelName(): string {\n return \"ListModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n const resourceType = data.contributions?.resourcetype ?? \"\";\n return (\n resourceType.endsWith(\"List\") ||\n resourceType.endsWith(\"ListPanel\") ||\n resourceType.endsWith(\"RelatedDataStorePanel\") ||\n resourceType.endsWith(\"RelatedDatastorePanel\") ||\n [\n \"list-related-cases\",\n \"RecordPanel\",\n \"EventHistoryPanel\",\n \"NotePanel\",\n \"AppointmentPanel\",\n \"DocumentPanel\",\n \"AssignmentPanel\",\n ].includes(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(\n this.data.actions,\n this.contributions.actions,\n this.origin,\n this.contextPath,\n );\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: { [string]: string } = {};\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 /**\n * Retrieves the label of the first additional detail link by resource type\n */\n getAdditionalDetailLabel(resourceType: string): string | null {\n const resultTypes = Object.keys(this.contributions.results);\n\n for (const resultType of resultTypes) {\n const link = this.contributions.results[resultType]._links?.panel?.find(\n (panelLink) => panelLink.resourcetype === resourceType,\n );\n if (link) {\n return link.label;\n }\n }\n\n return null;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ListModel.js","names":["_ModularUIResponse","_interopRequireDefault","require","_ListItemCollection","_ListDetailModel","_ActionCollection","_FilterCollection","_GroupingModel","_ListHeaderModel","_ListHref","_ListItemModel","_PagingModel","_ResourceModel","_SortingModel","_LayoutHints","ListModel","ResourceModel","constructor","arguments","_defineProperty2","default","type","modelName","isApplicableModel","data","_context","resourceType","contributions","resourcetype","_endsWith","call","_includes","getInitialChildModelLinks","layouthint","has","SHOW_ONE_RESULT_AS_DETAIL","listItemCollection","length","_context2","_map","listItem","listDetailLink","selflink","targetModel","ListDetailModel","setChildModels","models","detail","_find","childModel","label","introtext","content","text","message","Array","isArray","texts","_listItemCollection","ListItemCollection","createFromList","_detail","_context3","listitemHref","selfhref","listitem","equals","setSelfHref","grouping","_grouping","setGrouping","GroupingModel","dynamicschema","contexts","modelOptions","hasGrouping","hasGroups","hasResults","hasItems","shouldHide","HIDE_WHEN_EMPTY","actionCollection","isEmpty","filterCollection","hasActiveFilters","getListItemById","id","_context4","decodedId","decodeURIComponent","toString","result","getListItemByHref","href","_context5","paging","_paging","setPaging","PagingModel","sorting","_sorting","setSorting","SortingModel","getSortingLabels","_filterCollection","setFilters","FilterCollection","_filter","listkey","key","filter","isFiltered","_actionCollection","setActionCollection","ActionCollection","actions","hasList","selfLink","links","getLinkByKey","ListHref","_selfhref","headers","_headers","setHeaders","tempHeaders","results","_keys","forEach","attributes","attribute","listHeader","ListHeaderModel","exists","some","tempHeader","CASEVIEW_LINK","push","sortingLabels","attributeKey","getActionsByType","actionType","getAdditionalDetailLabel","resultTypes","resultType","link","_links","panel","find","panelLink","exports"],"sources":["../../../src/models/list/ListModel.js"],"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 get modelName(): string {\n return \"ListModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n const resourceType = data.contributions?.resourcetype ?? \"\";\n return (\n resourceType.endsWith(\"List\") ||\n resourceType.endsWith(\"ListPanel\") ||\n resourceType.endsWith(\"RelatedDataStorePanel\") ||\n resourceType.endsWith(\"RelatedDatastorePanel\") ||\n [\n \"list-related-cases\",\n \"RecordPanel\",\n \"EventHistoryPanel\",\n \"NotePanel\",\n \"AppointmentPanel\",\n \"DocumentPanel\",\n \"AssignmentPanel\",\n ].includes(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 this.modelOptions,\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(\n this.data.filter,\n {\n listkey: this.key,\n filter: this.contributions.filter,\n contexts: this.contributions.contexts,\n dynamicschema: this.data.dynamicschema,\n },\n this.modelOptions,\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(\n this.data.actions,\n this.contributions.actions,\n this.modelOptions,\n );\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: { [string]: string } = {};\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 /**\n * Retrieves the label of the first additional detail link by resource type\n */\n getAdditionalDetailLabel(resourceType: string): string | null {\n const resultTypes = Object.keys(this.contributions.results);\n\n for (const resultType of resultTypes) {\n const link = this.contributions.results[resultType]._links?.panel?.find(\n (panelLink) => panelLink.resourcetype === resourceType,\n );\n if (link) {\n return link.label;\n }\n }\n\n return null;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -7,12 +7,13 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = void 0;
8
8
  var _ResourceCollection = _interopRequireDefault(require("../base/ResourceCollection"));
9
9
  var _ChoiceAttributeOptionModel = _interopRequireDefault(require("../attributes/ChoiceAttributeOptionModel"));
10
+ var _utils = require("../../utils");
10
11
  /**
11
12
  */
12
13
  class LookupOptionCollection extends _ResourceCollection.default {
13
14
  /**
14
15
  */
15
- static create(data, contributions) {
16
+ static create(data, contributions, modelOptions) {
16
17
  const collection = new LookupOptionCollection();
17
18
  if (data.options && contributions.options) {
18
19
  data.options.forEach(option => {
@@ -20,6 +21,9 @@ class LookupOptionCollection extends _ResourceCollection.default {
20
21
  ...option,
21
22
  optionType: this.getOptionType(option, contributions),
22
23
  elementsContributions: contributions.options[0].elements
24
+ }, {
25
+ ...modelOptions,
26
+ referenceDate: _utils.DateUtil.now()
23
27
  }));
24
28
  });
25
29
  }